/* landing-v1417.css */
/* Public entry, deliberately independent of the authenticated portal layout. */
body.lp15-landing{--lp-bg:#f6f7fb;--lp-surface:#fff;--lp-soft:#edf0f6;--lp-ink:#172035;--lp-muted:#5c687c;--lp-line:#dce2ec;--lp-red:#ce1741;--lp-tint:#fae7ee;--lp-shadow:0 24px 80px #15203b12;margin:0;background:var(--lp-bg);color:var(--lp-ink);font:400 16px/1.65 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-.012em;color-scheme:light}
body.lp15-landing[data-theme=dark]{--lp-bg:#0b1220;--lp-surface:#131e30;--lp-soft:#19263a;--lp-ink:#f4f6fb;--lp-muted:#a7b4ca;--lp-line:#2a3850;--lp-red:#ff5b7b;--lp-tint:#302032;--lp-shadow:0 25px 80px #0003;color-scheme:dark}
.lp15-landing *{box-sizing:border-box;min-width:0}.lp15-landing :is(button,input){font:inherit}.lp15-landing button{cursor:pointer}.lp15-landing :is(h1,h2,h3,p,figure){margin:0}.lp15-landing a{color:inherit;text-decoration:none}.lp15-landing :is(a,button,input,summary):focus-visible{outline:3px solid #347df1;outline-offset:4px}.lp15-landing [hidden]{display:none!important}.lp15-landing :is(h1,h2,h3){font-weight:760;letter-spacing:-.045em;line-height:1.16}.lp15-landing :is(h1,h2) em{font-style:normal;color:var(--lp-red)}
.lp15-container,.lp15-site>.portal-footer{width:calc(100% - clamp(36px,8vw,220px));margin-inline:auto;max-width:none}.lp15-site{overflow:clip}.lp15-kicker{display:flex;align-items:center;gap:9px;font-size:10px;font-weight:760;letter-spacing:.15em;line-height:1.6;color:var(--lp-red)}.lp15-kicker>span{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}
.lp15-nav{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:102px;border-bottom:1px solid var(--lp-line)}.lp15-brand{display:flex;align-items:center;gap:13px;font-size:25px;font-weight:800;line-height:1.16;letter-spacing:-.04em;flex-shrink:0}.lp15-brand img{width:39px;height:47px;object-fit:contain}.lp15-brand small{display:block;font-size:8px;letter-spacing:.19em;color:var(--lp-muted);margin-top:7px}.lp15-nav nav{display:flex;gap:28px;font-size:12px;font-weight:650;color:var(--lp-muted)}.lp15-nav-actions{display:flex;align-items:center;gap:22px}.lp15-nav a:hover{color:var(--lp-red)}.lp15-nav-login{display:flex;align-items:center;gap:20px;min-height:44px;font-weight:700;font-size:13px}.lp15-nav-login span{font-size:20px}.lp15-theme{display:flex;padding:4px;border:1px solid var(--lp-line);border-radius:11px;background:var(--lp-soft);gap:3px}.lp15-theme button{display:block;min-height:36px;min-width:36px;padding:6px 10px;border:0;border-radius:7px;background:transparent;color:var(--lp-muted);font-size:12px;font-weight:700}.lp15-theme button.active{background:var(--lp-surface);color:var(--lp-ink);box-shadow:0 2px 5px #0001}
.lp15-dark{display:none!important}.lp15-landing[data-theme=dark] .lp15-dark{display:block!important}.lp15-landing[data-theme=dark] .lp15-light{display:none!important}.lp15-skip{position:fixed;top:10px;left:20px;z-index:300;transform:translateY(-160%);background:var(--lp-surface);padding:12px 20px;border-radius:10px}.lp15-skip:focus{transform:none}
.lp15-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);align-items:center;gap:clamp(40px,8vw,190px);padding-block:70px 85px;isolation:isolate}.lp15-hero:before{content:"";position:absolute;z-index:-1;pointer-events:none;top:3%;right:-12%;width:65%;height:85%;background:radial-gradient(ellipse at center,#e4275310,transparent 64%)}.lp15-hero-copy h1{font-size:clamp(57px,5.4vw,136px);font-weight:820;letter-spacing:-.065em;line-height:1.04;margin:26px 0 29px}.lp15-hero-copy h1 em{display:inline-block;position:relative}.lp15-hero-copy h1 em:after{content:"";display:block;height:5px;width:56px;background:currentColor;margin-top:23px}.lp15-lead{max-width:650px;font-size:clamp(16px,1.1vw,24px);line-height:1.85;color:var(--lp-muted)}.lp15-actions{display:flex;align-items:center;gap:27px;flex-wrap:wrap;margin-top:30px}.lp15-button{display:inline-flex;align-items:center;justify-content:center;gap:36px;min-height:52px;padding:14px 22px;border-radius:10px;border:1px solid #d31844;background:#d31844;color:#fff!important;font-size:13px;font-weight:700;box-shadow:0 8px 25px #d3184420}.lp15-button:hover{background:#b01037;border-color:#b01037}.lp15-button>span{font-size:20px;font-weight:400}.lp15-text-link{display:inline-flex;align-items:center;gap:16px;font-size:12px;font-weight:650;min-height:44px}.lp15-text-link:hover{color:var(--lp-red)}.lp15-hero-bottom{display:flex;gap:20px;flex-wrap:wrap;margin-top:32px;padding-top:22px;border-top:1px solid var(--lp-line);max-width:650px}.lp15-hero-bottom>span{display:flex;gap:8px;align-items:center;font-size:10px;color:var(--lp-muted);font-weight:550}.lp15-hero-bottom svg{width:17px;height:17px;stroke-width:1.8}
.lp15-access{position:relative;max-width:560px;width:100%;justify-self:end;background:var(--lp-surface);border:1px solid var(--lp-line);border-radius:22px;box-shadow:var(--lp-shadow);scroll-margin-top:24px}.lp15-access:before{content:"";position:absolute;top:25px;bottom:25px;left:-10px;width:3px;border-radius:3px;background:#d31844}.lp15-access-top{display:flex;align-items:center;gap:11px;border-bottom:1px solid var(--lp-line);padding:20px 30px;font-size:8px;letter-spacing:.15em;font-weight:700;color:var(--lp-muted)}.lp15-access-mark{width:28px;height:28px;display:grid;place-items:center;color:var(--lp-red)}.lp15-access-mark svg{width:25px;height:25px}.lp15-access-dot{margin-left:auto;width:6px;height:6px;border-radius:50%;background:#399079;flex-shrink:0}.lp15-login-card{padding:32px 36px 29px}.lp15-login-card h2{font-size:clamp(25px,2vw,37px);margin:10px 0 10px}.lp15-login-card>p:not(.lp15-kicker){color:var(--lp-muted);font-size:12px}.lp15-login-form{margin-top:28px;display:grid;gap:18px}.lp15-login-form label{display:grid;gap:8px;font-size:11px;font-weight:650}.lp15-login-form input{width:100%;height:51px;padding:12px 14px;border:1px solid var(--lp-line);border-radius:9px;background:var(--lp-bg);color:var(--lp-ink);font-size:16px;outline-offset:3px}.lp15-login-form input::placeholder{color:var(--lp-muted);font-size:13px;opacity:.9}.lp15-login-form .password-reveal{position:relative}.lp15-login-form .password-reveal input{padding-right:88px}.lp15-login-form [data-toggle-password]{position:absolute;right:8px;top:6px;min-height:39px;border:0;border-radius:5px;background:transparent;color:var(--lp-muted);font-size:11px;padding:5px 10px}.lp15-login-form [data-toggle-password]:hover{background:var(--lp-soft);color:var(--lp-ink)}.lp15-login-meta{text-align:right;margin-top:-7px;font-size:11px;color:var(--lp-muted)}.lp15-login-meta a:hover{color:var(--lp-red)}.lp15-login-form>.btn{min-height:51px;border:1px solid #d31844;background:#d31844;color:white;border-radius:9px;font-size:13px;font-weight:700}.lp15-login-form>.btn:hover{background:#b01037}.lp15-auth-switch{margin-top:24px;font-size:11px;color:var(--lp-muted)}.lp15-auth-switch a{font-weight:650;color:var(--lp-red);margin-left:6px}.lp15-auth-switch .rp1404-registration-closed{display:block;padding-top:20px;border-top:1px solid var(--lp-line)}.lp15-auth-switch b{font-weight:650;color:var(--lp-ink);font-size:11px;display:block}.lp15-auth-switch small{display:block;font-size:10px;line-height:1.7;margin-top:5px;max-width:370px}.lp15-access-footer{border-top:1px solid var(--lp-line);border-radius:0 0 22px 22px;background:var(--lp-soft);padding:16px 32px;display:flex;gap:11px;align-items:center;color:var(--lp-muted);font-size:10px}.lp15-access-footer>span{font-size:19px;color:var(--lp-red)}
.lp15-strip{background:var(--lp-surface);border-block:1px solid var(--lp-line)}.lp15-strip>.lp15-container{display:grid;grid-template-columns:1.15fr repeat(3,1fr);gap:30px;align-items:center;padding-block:27px}.lp15-strip p{color:var(--lp-muted);font-size:11px;line-height:1.7}.lp15-strip strong{color:var(--lp-ink);font-size:13px;font-weight:700}.lp15-strip>.lp15-container>div{display:flex;align-items:center;gap:18px;border-left:1px solid var(--lp-line);padding-left:26px}.lp15-strip b{color:var(--lp-red);font-size:10px;letter-spacing:.08em}.lp15-strip span{font-size:12px;font-weight:650}
.lp15-modules{padding-block:90px}.lp15-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:36px}.lp15-section-head h2,.lp15-together h2,.lp15-faq h2{font-size:clamp(29px,2.6vw,57px);line-height:1.18;margin-top:14px}.lp15-section-head>p{max-width:380px;color:var(--lp-muted);font-size:13px;line-height:1.9}.lp15-module-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:18px}.lp15-module{display:flex;flex-direction:column;background:var(--lp-surface);border:1px solid var(--lp-line);border-radius:16px;padding:30px;min-width:0}.lp15-module-top{display:flex;align-items:center;gap:15px;justify-content:space-between;margin-bottom:31px}.lp15-module-top>span:last-child{font-size:8px;letter-spacing:.12em;color:var(--lp-muted);font-weight:650}.lp15-icon{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--lp-line);border-radius:12px;color:var(--lp-red)}.lp15-icon svg{width:24px;height:24px}.lp15-module h3{font-size:clamp(21px,1.6vw,35px);line-height:1.22;margin-bottom:16px}.lp15-module p{font-size:12px;color:var(--lp-muted);line-height:1.9;max-width:350px}.lp15-module-foot{margin-top:auto;padding-top:25px;font-size:8px;letter-spacing:.1em;color:var(--lp-muted);font-weight:650}.lp15-module-main{grid-row:span 2;background:#cb1740;color:white;border-color:#cb1740;position:relative;overflow:hidden;isolation:isolate}.lp15-module-main .lp15-module-top>span:last-child{color:#ffceda}.lp15-module-main .lp15-icon{color:white;border-color:#ffffff45}.lp15-module-main h3{font-size:clamp(25px,2.2vw,48px)}.lp15-module-main p{color:#ffdae2}.lp15-module-main ul{padding:0;margin:25px 0 40px;list-style:none;font-size:11px;line-height:2.5;color:#fff}.lp15-module-main li:before{content:"✓";margin-right:10px}.lp15-module-statement{margin-top:auto;padding-top:25px;border-top:1px solid #ffffff40;letter-spacing:.19em;font-size:10px;color:#ffcad7;line-height:1.4}.lp15-module-statement>span{display:block;letter-spacing:-.055em;font-size:clamp(45px,4.1vw,85px);font-weight:800;color:white}.lp15-module-water .lp15-icon{color:#2383a6;background:var(--lp-soft)}
.lp15-together{display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,8vw,150px);padding-block:25px 85px}.lp15-together-copy>p:not(.lp15-kicker){color:var(--lp-muted);font-size:14px;max-width:480px;margin-top:22px;line-height:1.9}.lp15-together .lp15-text-link{margin-top:26px}.lp15-principles article{display:flex;align-items:flex-start;gap:23px;padding:25px 0;border-bottom:1px solid var(--lp-line)}.lp15-principles article:first-child{padding-top:0}.lp15-principles article>span{color:var(--lp-red);font-size:11px;font-weight:700;padding-top:4px}.lp15-principles h3{font-size:19px;line-height:1.4}.lp15-principles p{font-size:12px;color:var(--lp-muted);line-height:1.85;margin-top:9px}
.lp15-callout{--callout-bg:linear-gradient(115deg,#f5e7ec,#faf5f6);--callout-ink:#202534;--callout-muted:#715261;--callout-line:#dec3ce;--callout-accent:#a9143c;--callout-icon:#b41c4310;--callout-pattern:#a6385410;display:flex;align-items:center;gap:35px;padding:43px 50px;background:var(--callout-bg);border:1px solid var(--callout-line);border-radius:19px;color:var(--callout-ink);position:relative;isolation:isolate;overflow:hidden}.lp15-callout:before{content:"";position:absolute;z-index:-1;width:400px;height:400px;border:1px solid var(--callout-pattern);transform:rotate(30deg);right:130px;top:-250px;border-radius:50px}.lp15-callout:after{content:"";position:absolute;z-index:-1;width:400px;height:400px;border:1px solid var(--callout-pattern);transform:rotate(30deg);right:230px;top:10px;border-radius:50px}.lp15-callout-mark{display:grid;place-items:center;width:70px;height:70px;border-radius:19px;background:var(--callout-icon);border:1px solid var(--callout-line);color:var(--callout-accent);flex-shrink:0}.lp15-callout-mark svg{width:36px;height:36px}.lp15-callout p{font-size:10px;letter-spacing:.15em;font-weight:650;color:var(--callout-muted);margin-bottom:11px}.lp15-callout h2{font-size:clamp(27px,2.9vw,60px);line-height:1.12}.lp15-callout .lp15-button{margin-left:auto;flex-shrink:0;background:#be173d;border-color:#be173d;color:#fff!important;box-shadow:none}
.lp15-faq{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;padding-block:95px}.lp15-faq header>p:last-child{color:var(--lp-muted);font-size:13px;margin-top:20px}.lp15-faq details{border-bottom:1px solid var(--lp-line)}.lp15-faq details:first-child{border-top:1px solid var(--lp-line)}.lp15-faq summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;list-style:none;cursor:pointer;font-size:14px;font-weight:650}.lp15-faq summary::-webkit-details-marker{display:none}.lp15-faq summary>span{font-size:22px;line-height:1;color:var(--lp-red);font-weight:400}.lp15-faq details[open] summary>span{transform:rotate(45deg)}.lp15-faq details>p{font-size:12px;color:var(--lp-muted);padding-bottom:25px;line-height:1.9;max-width:650px}.lp15-faq a{color:var(--lp-red);text-decoration:underline}
.lp15-site>.portal-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:35px;padding-block:30px 40px;border-top:1px solid var(--lp-line);font-size:11px;color:var(--lp-muted)}.lp15-site .portal-footer-brand strong{font-size:17px;color:var(--lp-ink);display:block;margin-bottom:6px}.lp15-site .portal-footer-brand span{display:block;max-width:400px;font-size:10px}.lp15-site .portal-footer-links{display:flex;gap:14px 24px;flex-wrap:wrap;justify-content:flex-end;max-width:620px}.lp15-site .portal-footer-links a:hover{color:var(--lp-red)}
.lp15-landing .flash{padding:12px 15px;margin-top:18px;border:1px solid var(--lp-line);border-left:3px solid var(--lp-red);background:var(--lp-soft);border-radius:8px;font-size:12px;line-height:1.6}.lp15-landing .recaptcha-wrap{max-width:100%;overflow-x:auto}.lp15-landing .full{grid-column:1/-1}.lp15-landing .release-test-banner{display:flex;justify-content:center;align-items:center;gap:15px;padding:10px 20px;background:var(--lp-soft);border-bottom:1px solid var(--lp-line);font-size:11px;flex-wrap:wrap}.lp15-landing .release-test-banner strong{color:#ab770a}.lp15-landing .release-test-banner a{font-weight:700}
.lp15-landing .rp-dev-notice{position:fixed;inset:0;display:grid;place-items:center;z-index:9999;padding:20px}.lp15-landing .rp-dev-notice-backdrop{position:absolute;inset:0;background:#040a17b8;backdrop-filter:blur(5px)}.lp15-landing .rp-dev-notice-card{position:relative;width:min(580px,100%);padding:36px;border:1px solid var(--lp-line);border-radius:20px;background:var(--lp-surface);box-shadow:var(--lp-shadow);max-height:calc(100dvh - 40px);overflow:auto}.lp15-landing .rp-dev-notice-kicker{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--lp-red)}.lp15-landing .rp-dev-notice-icon{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--lp-red);border-radius:13px;color:var(--lp-red);font-size:25px;margin:22px 0}.lp15-landing .rp-dev-notice h2{font-size:27px;margin-bottom:18px}.lp15-landing .rp-dev-notice p{font-size:13px;line-height:1.8;color:var(--lp-muted)}.lp15-landing .rp-dev-notice-points{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.lp15-landing .rp-dev-notice-points span{font-size:9px;padding:5px 9px;background:var(--lp-soft);border-radius:6px}.lp15-landing .rp-dev-notice-accept{display:block;width:100%;min-height:49px;background:#d31844;color:white;border:0;border-radius:9px;font-size:13px;font-weight:700;margin-top:22px}.lp15-landing .rp-dev-notice small{display:block;text-align:center;font-size:10px;color:var(--lp-muted);margin-top:13px}html.rp-dev-notice-accepted .rp-dev-notice{display:none!important}.lp15-landing.rp-dev-notice-open{overflow:hidden}.lp15-landing .back-to-top-btn{position:fixed;right:20px;bottom:20px;z-index:20;display:flex;align-items:center;gap:8px;padding:10px 15px;min-height:44px;border:1px solid var(--lp-line);border-radius:10px;background:var(--lp-surface);color:var(--lp-ink);box-shadow:var(--lp-shadow);font-size:11px;visibility:hidden;opacity:0;pointer-events:none}.lp15-landing .back-to-top-btn.is-visible{visibility:visible;opacity:1;pointer-events:auto}
@media(min-width:1900px){.lp15-hero{grid-template-columns:1.15fr .85fr}.lp15-access{max-width:640px}.lp15-login-card{padding:40px 45px}.lp15-login-form{gap:22px}.lp15-login-form input,.lp15-login-form>.btn{min-height:56px}.lp15-access-top{padding-inline:40px}.lp15-module{padding:36px}}
@media(max-width:1100px){.lp15-nav nav{gap:17px;font-size:11px}.lp15-brand{font-size:21px}.lp15-nav-actions{gap:14px}.lp15-nav-login{display:none}.lp15-hero{gap:35px;grid-template-columns:1.05fr 1fr;padding-block:48px 65px}.lp15-hero-copy h1{font-size:clamp(49px,5.9vw,65px)}.lp15-lead{font-size:15px}.lp15-login-card{padding:26px}.lp15-access-top{padding:17px 23px;font-size:7px}.lp15-access-footer{padding:15px 25px}.lp15-actions{gap:12px}.lp15-hero-bottom{gap:12px}.lp15-section-head{gap:30px}.lp15-section-head>p{max-width:270px}.lp15-module{padding:23px}.lp15-module-top{gap:10px;margin-bottom:23px}.lp15-module-grid{grid-template-columns:1fr 1fr}.lp15-module-main{grid-row:span 2}.lp15-module-water{grid-column:1/-1}.lp15-module-water h3 br{display:none}.lp15-module-water p{max-width:600px}.lp15-strip>.lp15-container{gap:20px}.lp15-strip>.lp15-container>div{padding-left:15px;gap:12px}.lp15-strip span{font-size:10px}}
@media(max-width:800px){.lp15-nav{min-height:86px;flex-wrap:wrap;gap:13px;padding-block:17px}.lp15-nav nav{order:3;width:100%;justify-content:space-between;border-top:1px solid var(--lp-line);padding-top:15px;font-size:11px}.lp15-hero{grid-template-columns:1fr;gap:40px;padding-block:40px 50px}.lp15-hero-copy h1{font-size:clamp(48px,8.8vw,82px)}.lp15-hero-copy{max-width:none}.lp15-lead{max-width:620px;font-size:16px}.lp15-access{max-width:none;justify-self:stretch}.lp15-login-card{padding:30px}.lp15-login-card h2{font-size:29px}.lp15-login-form{grid-template-columns:1fr 1fr;gap:18px}.lp15-login-form .lp15-login-meta{grid-column:1/-1}.lp15-login-form>.btn{grid-column:1/-1}.lp15-login-form>.recaptcha-wrap{grid-column:1/-1}.lp15-auth-switch small{max-width:none}.lp15-strip>.lp15-container{grid-template-columns:1fr 1fr;padding-block:25px}.lp15-strip>.lp15-container>div{border-left:0;padding-left:0}.lp15-strip>.lp15-container>div:nth-child(even){border-left:1px solid var(--lp-line);padding-left:20px}.lp15-section-head{display:block}.lp15-section-head>p{margin-top:20px;max-width:520px}.lp15-section-head h2,.lp15-together h2,.lp15-faq h2{font-size:35px}.lp15-modules{padding-block:55px}.lp15-together{grid-template-columns:1fr;gap:35px;padding-bottom:50px}.lp15-together-copy>p:not(.lp15-kicker){max-width:550px}.lp15-together .lp15-text-link{margin-top:12px}.lp15-callout{padding:30px;gap:23px;flex-wrap:wrap}.lp15-callout-mark{width:50px;height:50px;border-radius:13px}.lp15-callout-mark svg{width:27px;height:27px}.lp15-callout .lp15-button{margin-left:auto}.lp15-faq{grid-template-columns:1fr;gap:30px;padding-block:55px}.lp15-site>.portal-footer{flex-direction:column;gap:22px}.lp15-site .portal-footer-links{justify-content:flex-start}}
@media(max-width:480px){.lp15-container,.lp15-site>.portal-footer{width:calc(100% - 36px)}.lp15-brand{font-size:20px;gap:8px}.lp15-brand img{width:31px;height:37px}.lp15-brand small{font-size:6px;letter-spacing:.14em}.lp15-theme{gap:1px;padding:3px;border-radius:9px}.lp15-theme button{min-width:29px;min-height:34px;font-size:10px;padding:6px 7px}.lp15-nav-actions{gap:0}.lp15-nav nav{font-size:10px;gap:10px}.lp15-hero{padding-top:34px;gap:34px}.lp15-kicker{font-size:8px;letter-spacing:.12em}.lp15-hero-copy h1{font-size:clamp(43px,11.4vw,60px);margin:20px 0}.lp15-hero-copy h1 em:after{height:4px;width:42px;margin-top:18px}.lp15-lead{font-size:14px;line-height:1.9}.lp15-actions{margin-top:23px;gap:13px}.lp15-button{font-size:12px;padding:13px 18px;gap:28px}.lp15-text-link{font-size:11px}.lp15-hero-bottom{gap:9px 18px;margin-top:19px;padding-top:18px}.lp15-hero-bottom>span{font-size:9px}.lp15-hero-bottom svg{width:15px;height:15px}.lp15-access{border-radius:16px}.lp15-access:before{left:-5px;width:2px}.lp15-access-top{padding:16px 20px;font-size:6px;letter-spacing:.1em;gap:8px}.lp15-access-mark{width:23px;height:23px}.lp15-access-mark svg{width:21px;height:21px}.lp15-login-card{padding:24px 20px}.lp15-login-card h2{font-size:26px}.lp15-login-card>p:not(.lp15-kicker){font-size:11px}.lp15-login-form{grid-template-columns:1fr;gap:17px;margin-top:23px}.lp15-access-footer{padding:13px 20px;font-size:9px;border-radius:0 0 16px 16px}.lp15-strip span{font-size:10px;line-height:1.5}.lp15-strip>.lp15-container{gap:22px 16px}.lp15-strip strong{font-size:11px}.lp15-strip p{font-size:10px}.lp15-strip>.lp15-container>div{gap:9px}.lp15-strip>.lp15-container>div:nth-child(even){padding-left:14px}.lp15-section-head h2,.lp15-together h2,.lp15-faq h2{font-size:29px}.lp15-section-head h2 br{display:none}.lp15-section-head>p{font-size:12px}.lp15-module-grid{grid-template-columns:1fr;gap:14px}.lp15-module-main{grid-row:auto}.lp15-module{padding:25px}.lp15-module-main h3{font-size:33px}.lp15-module-main ul{margin-bottom:23px}.lp15-module-main p{max-width:none}.lp15-module-statement{font-size:8px}.lp15-module-statement>span{font-size:48px}.lp15-module-top{margin-bottom:20px}.lp15-module h3{font-size:26px}.lp15-module p{font-size:12px}.lp15-together-copy>p:not(.lp15-kicker){font-size:13px}.lp15-principles h3{font-size:18px}.lp15-principles article{gap:15px}.lp15-callout{padding:26px;gap:19px}.lp15-callout-mark{display:none}.lp15-callout h2{font-size:33px}.lp15-callout .lp15-button{margin-left:0}.lp15-faq summary{font-size:13px;padding-block:21px}.lp15-site .portal-footer-links{font-size:10px;gap:10px 19px}.lp15-landing .rp-dev-notice-card{padding:25px}.lp15-landing .rp-dev-notice h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){.lp15-landing *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.lp15-landing .captcha-box{grid-column:1/-1;min-width:0;max-width:100%;font-size:11px;color:var(--lp-muted)}.lp15-landing .captcha-box .g-recaptcha{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;padding:3px 0 6px}.lp15-landing .captcha-box p{font-size:10px;line-height:1.7;margin-top:8px}.lp15-landing .captcha-v3-row{display:flex;align-items:center;gap:10px;padding:12px;background:var(--lp-soft);border:1px solid var(--lp-line);border-radius:8px}.lp15-landing .captcha-v3-icon{color:var(--lp-red);font-size:19px}.lp15-landing .captcha-v3-copy{font-size:11px}.lp15-landing .captcha-v3-copy p{font-size:10px}

/* 1.4.16 — a distinctive, calm return to the original product-led entry. */
body.lp15-landing{--lp-bg:#f5f3f1;--lp-soft:#eeecea;--lp-ink:#202534;--lp-muted:#626675;--lp-line:#dedbd8;--lp-red:#b9183d;--lp-surface:#fff;--lp-tint:#f8e7eb}
body.lp15-landing[data-theme=dark]{--lp-bg:#0b101b;--lp-soft:#18202d;--lp-surface:#141c29;--lp-ink:#f4f1ef;--lp-muted:#b3b9c7;--lp-line:#303745;--lp-red:#ff6583;--lp-tint:#30202c}
.lp15-container,.lp15-site>.portal-footer{width:calc(100% - clamp(32px,7vw,160px))}
.lp15-nav{min-height:96px;border:0}.lp15-nav nav{gap:28px}.lp15-nav-login{background:var(--lp-ink);color:var(--lp-bg);padding:0 18px;border-radius:30px}.lp15-nav-login:hover{color:var(--lp-bg)!important;opacity:.85}
.lp16-hero{width:calc(100% - 32px);padding:clamp(32px,4.5vw,110px) clamp(24px,6vw,144px);gap:clamp(32px,6vw,130px);border:1px solid var(--lp-line);border-radius:28px;overflow:hidden;background:radial-gradient(ellipse at 58% 15%,#c8466518,transparent 52%),linear-gradient(125deg,var(--lp-surface),var(--lp-bg));min-height:710px}
.lp16-hero:before{display:none}.lp15-landing[data-theme=dark] .lp16-hero{background:radial-gradient(ellipse at 66% 10%,#9c254730,transparent 60%),linear-gradient(120deg,#131c2b,#111724 75%)}
.lp15-hero-copy,.lp15-access{z-index:1}.lp15-hero-copy h1{font-size:clamp(66px,6.4vw,156px);line-height:.99;letter-spacing:-.07em;margin:24px 0 26px;font-weight:780}.lp15-hero-copy h1 em{font-style:italic;font-family:Georgia,'Times New Roman',serif;font-weight:500;letter-spacing:-.065em}.lp15-hero-copy h1 em:after{display:none}.lp15-hero-copy h1>span{font-size:.70em;font-weight:420;letter-spacing:-.055em}.lp15-lead{max-width:580px;font-size:clamp(15px,1.07vw,21px);line-height:1.8}.lp15-kicker{font-size:10px}.lp15-actions{gap:24px;margin-top:26px}.lp15-button{border-radius:30px;padding:13px 23px;background:#be173d;border-color:#be173d;box-shadow:0 7px 18px #b9183d18}.lp15-hero-bottom{display:none}.lp16-proof{display:flex;gap:23px;margin-top:36px;padding-top:22px;border-top:1px solid var(--lp-line);font-size:10px;color:var(--lp-red)}.lp16-proof span{display:grid;gap:5px}.lp16-proof b{font-size:11px;font-weight:550;color:var(--lp-muted)}
.lp16-orbit{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}.lp16-orbit i{position:absolute;left:43%;top:-44%;width:90vw;height:90vw;border:1px solid #a35a6b12;border-radius:50%}.lp16-orbit i:nth-child(2){margin:45px}.lp16-orbit i:nth-child(3){margin:90px}.lp15-landing[data-theme=dark] .lp16-orbit i{border-color:#f4adbc09}
.lp15-access{max-width:470px;border-radius:20px;box-shadow:0 28px 65px #0f172b12}.lp15-access:before{width:45px;height:3px;top:-1px;left:32px;bottom:auto}.lp15-access-top{padding:20px 28px;font-size:9px}.lp15-login-card{padding:26px 30px}.lp15-login-card h2{font-size:30px}.lp15-login-card>p:not(.lp15-kicker){font-size:13px}.lp15-login-form label{font-size:12px}.lp15-login-form{gap:17px}.lp15-login-form input{border-radius:9px;background:var(--lp-bg);height:49px}.lp15-login-form .btn.primary{border-radius:9px;background:#be173d}.lp15-access-footer{border-radius:0 0 20px 20px}.lp15-auth-switch small{line-height:1.6}
.lp16-intro{padding-block:86px 0;display:grid;grid-template-columns:1.4fr 1fr;gap:18px 80px;align-items:end}.lp16-intro .lp15-kicker{grid-column:1/-1}.lp16-intro h2{font-size:clamp(32px,3vw,64px);font-weight:650}.lp16-intro>p:last-child{color:var(--lp-muted);max-width:440px;font-size:15px}.lp15-modules{padding-top:42px}.lp15-modules>.lp15-section-head{display:none}.lp15-module{border-radius:18px}.lp15-module-main{--feature-bg:linear-gradient(150deg,#f8eef1,#f2e6eb);--feature-ink:#202534;--feature-muted:#625362;--feature-accent:#9f1839;--feature-line:#d9bac5;background:var(--feature-bg);color:var(--feature-ink);border-color:var(--feature-line)}
body.lp15-landing[data-theme=dark] .lp15-module-main{--feature-bg:linear-gradient(150deg,#282030,#172132);--feature-ink:#f4f1ef;--feature-muted:#bac1d0;--feature-accent:#ff86a0;--feature-line:#614052}
.lp15-module-main p,.lp15-module-main ul{color:var(--feature-muted);opacity:1}.lp15-module-main .lp15-icon{background:transparent;color:var(--feature-accent);border-color:var(--feature-line)}.lp15-module-main .lp15-module-statement{color:var(--feature-muted);border-color:var(--feature-line);opacity:1}.lp15-module-main .lp15-module-statement>span{color:var(--feature-accent)}.lp15-module-main .lp15-module-top>span:last-child{color:var(--feature-accent);font-size:10px}.lp15-module-main ul li:before{display:inline-block;background:transparent;color:var(--feature-accent)}
.lp16-start{padding-block:80px;border-top:1px solid var(--lp-line);display:grid;grid-template-columns:1fr 1fr;gap:80px}.lp16-start h2{font-size:clamp(35px,3.5vw,72px);margin:20px 0}.lp16-start>div>p:last-child{max-width:490px;color:var(--lp-muted);font-size:15px}.lp16-start ol{list-style:none;margin:0;padding:0;display:grid;align-content:center}.lp16-start li{display:flex;gap:24px;padding:27px 0;border-bottom:1px solid var(--lp-line)}.lp16-start li>span{font-size:13px;color:var(--lp-red)}.lp16-start h3{font-size:22px;margin-bottom:10px}.lp16-start li p{color:var(--lp-muted);font-size:14px}.lp15-callout{border-radius:20px}
@media(min-width:1900px){.lp16-hero{grid-template-columns:1.3fr 1fr}.lp15-access{max-width:570px}.lp15-login-card{padding:40px}.lp15-login-card h2{font-size:40px}.lp15-login-form input{height:58px}.lp15-login-form label{font-size:15px}.lp16-proof b{font-size:14px}}
@media(max-width:1100px){.lp15-nav nav{display:none}.lp16-hero{padding:42px 32px;gap:32px;grid-template-columns:1.05fr 1fr;min-height:650px}.lp15-hero-copy h1{font-size:67px}.lp15-login-card{padding:24px}.lp15-login-card h2{font-size:27px}.lp16-proof{flex-wrap:wrap;gap:15px}.lp16-intro{gap:22px 35px}.lp16-start{gap:35px}}
@media(max-width:760px){.lp15-nav{min-height:88px;gap:12px}.lp15-nav-login{display:none}.lp15-nav-actions{gap:8px}.lp15-brand{font-size:21px}.lp15-brand img{width:30px;height:38px}.lp15-theme button{min-width:32px;padding-inline:8px}.lp16-hero{width:calc(100% - 20px);padding:38px 24px;grid-template-columns:1fr;border-radius:20px;gap:38px}.lp15-hero-copy h1{font-size:clamp(59px,12vw,88px)}.lp15-lead{font-size:15px}.lp16-proof{justify-content:space-between;gap:10px}.lp16-proof b{font-size:10px}.lp15-access{max-width:none;justify-self:stretch}.lp15-login-card{padding:26px}.lp15-login-card h2{font-size:30px}.lp16-intro{padding-top:58px;grid-template-columns:1fr;gap:18px}.lp16-intro h2{font-size:34px}.lp16-start{grid-template-columns:1fr;padding-block:46px;gap:12px}.lp16-start h2{font-size:40px}.lp15-actions{gap:10px}.lp15-text-link{font-size:12px}.lp15-module-grid{grid-template-columns:1fr}.lp15-module-main{grid-row:auto}.lp16-orbit{display:none}}
@media(max-width:360px){.lp15-brand{font-size:18px;gap:7px}.lp15-brand small{font-size:6px}.lp15-brand img{width:25px}.lp15-theme button{padding-inline:6px;min-width:28px}.lp16-hero{padding:30px 18px}.lp15-hero-copy h1{font-size:56px}.lp15-login-card{padding:22px 18px}.lp15-access-top{padding:16px 18px}.lp16-proof{flex-wrap:wrap}}

.lp15-landing .lp15-nav-login{color:var(--lp-bg)}
@media(max-width:1000px){.lp16-hero{grid-template-columns:1fr}.lp15-access{max-width:none;justify-self:stretch}.lp15-hero-copy h1{font-size:clamp(42px,13.3vw,88px)}}
@media(max-width:360px){.lp15-hero-copy h1{font-size:42px}}

/* 1.4.17: both highlighted sections follow the selected resolved theme. */
body.lp15-landing[data-theme=dark] .lp15-callout{--callout-bg:linear-gradient(115deg,#192b45,#0f182b);--callout-ink:#f4f1ef;--callout-muted:#b5c2d7;--callout-line:#314561;--callout-accent:#ff86a0;--callout-icon:#ffffff0a;--callout-pattern:#ffffff0b}
.lp15-callout .lp15-button:hover{background:#a91235;border-color:#a91235}

/* app.css */
: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;}
}

/* header-v1270.css */
/* Retter-Portal v1.2.70 – isolated header layout loaded after app.css */
html body .topbar,
html body .topbar *{
  box-sizing:border-box;
}
html body .topbar{
  position:sticky!important;
  top:0!important;
  z-index:1200!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  border-radius:0!important;
  background:rgba(7,13,24,.94)!important;
  border:0!important;
  border-bottom:1px solid rgba(148,163,184,.14)!important;
  box-shadow:0 10px 30px rgba(2,6,23,.18)!important;
  backdrop-filter:blur(22px) saturate(1.3)!important;
  -webkit-backdrop-filter:blur(22px) saturate(1.3)!important;
  transform:none!important;
}
body[data-theme="light"] .topbar{
  background:rgba(255,255,255,.95)!important;
  border-bottom-color:rgba(100,116,139,.18)!important;
  box-shadow:0 10px 30px rgba(15,23,42,.08)!important;
}

/* hard reset against legacy mobile header rules */
html body .topbar :is(.topbar-desktop-shell,.topbar-mobile-shell,.topbar-mobile-primary,.topbar-mobile-secondary,.topbar-mobile-context,.topbar-title,.topbar-context,.topbar-actions,.topbar-user-cluster,.topbar-account-info,.topbar-mobile-brand,.topbar-mobile-account,.department-context-switch,.department-context-static,.theme-switch,.topbar-logout,.topbar-mobile-logout){
  position:static!important;
  inset:auto!important;
  float:none!important;
  clear:none!important;
  transform:none!important;
  translate:none!important;
  rotate:none!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
  max-height:none!important;
}
html body .topbar :is(.topbar-product,.topbar-eyebrow,.topbar-mobile-product,.topbar-mobile-version,.topbar-mobile-name,.user-chip,.topbar-role-badge,.department-context-switch>span,.department-context-static>span,.department-context-static>strong){
  writing-mode:horizontal-tb!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
  white-space:nowrap!important;
}

/* Desktop */
html body .topbar .topbar-desktop-shell{
  display:grid!important;
  grid-template-columns:minmax(190px,auto) minmax(320px,560px) minmax(420px,1fr)!important;
  align-items:center!important;
  gap:18px!important;
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  min-height:74px!important;
  margin:0!important;
  padding:10px 24px!important;
}
html body .topbar .topbar-mobile-shell{display:none!important;}
html body .topbar .topbar-desktop-shell .topbar-title{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
  width:auto!important;
  margin:0!important;
}
html body .topbar .topbar-desktop-shell .topbar-logo-pair{
  position:relative!important;
  display:block!important;
  width:34px!important;
  min-width:34px!important;
  height:34px!important;
  flex:0 0 34px!important;
  overflow:hidden!important;
}
html body .topbar .topbar-desktop-shell .topbar-logo-pair .topbar-logo{
  position:absolute!important;
  inset:0!important;
  width:34px!important;
  min-width:34px!important;
  height:34px!important;
  object-fit:contain!important;
}
html body .topbar .topbar-desktop-shell .topbar-product{display:block!important;min-width:0!important;overflow:visible!important;}
html body .topbar .topbar-desktop-shell .topbar-eyebrow{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  min-width:0!important;
  margin:0!important;
  color:var(--muted)!important;
  font-size:.72rem!important;
  font-weight:950!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
  line-height:1!important;
}
html body .topbar .topbar-desktop-shell .topbar-version{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:25px!important;
  padding:4px 7px!important;
  border:1px solid var(--line)!important;
  border-radius:999px!important;
  background:var(--surface-2)!important;
  color:var(--text)!important;
  font-size:.66rem!important;
  font-weight:950!important;
  letter-spacing:.02em!important;
}
html body .topbar .topbar-desktop-shell .topbar-context{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  width:100%!important;
  margin:0!important;
}
html body .topbar .topbar-desktop-shell .department-context-switch,
html body .topbar .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:100%!important;
  min-width:0!important;
  max-width:560px!important;
  min-height:46px!important;
  margin:0!important;
  padding:5px 6px 5px 12px!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-desktop-shell .department-context-switch>span,
html body .topbar .topbar-desktop-shell .department-context-static>span{
  color:var(--muted)!important;
  font-size:.66rem!important;
  font-weight:950!important;
  letter-spacing:.1em!important;
  text-transform:uppercase!important;
}
html body .topbar .topbar-desktop-shell .department-context-switch select{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  height:36px!important;
  min-height:36px!important;
  margin:0!important;
  padding:0 34px 0 12px!important;
  border:1px solid var(--line-soft)!important;
  border-radius:12px!important;
  background:var(--surface-2)!important;
  color:var(--text)!important;
  font-size:.9rem!important;
  font-weight:950!important;
  line-height:1!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
html body .topbar .topbar-desktop-shell .department-context-static strong{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  color:var(--text)!important;
  font-size:.9rem!important;
  font-weight:950!important;
}
html body .topbar .topbar-desktop-shell .topbar-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  min-width:0!important;
  width:100%!important;
  margin:0!important;
}
html body .topbar .topbar-desktop-shell .theme-switch{
  display:flex!important;
  align-items:center!important;
  gap:2px!important;
  flex:0 0 auto!important;
  width:auto!important;
  height:40px!important;
  margin:0!important;
  padding:3px!important;
  border:1px solid var(--line)!important;
  border-radius:999px!important;
  background:var(--surface)!important;
}
html body .topbar .topbar-desktop-shell .theme-switch .theme-dot{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:31px!important;
  min-width:31px!important;
  height:31px!important;
  min-height:31px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  font-size:.72rem!important;
}
html body .topbar .topbar-desktop-shell .theme-switch .theme-dot.auto{width:auto!important;min-width:45px!important;padding:0 8px!important;}
html body .topbar .topbar-desktop-shell .topbar-user-cluster{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  min-width:0!important;
  margin:0!important;
}
html body .topbar .topbar-desktop-shell .topbar-account-info{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  min-width:0!important;
  max-width:300px!important;
  margin:0!important;
  padding:4px 5px!important;
  border:1px solid var(--line-soft)!important;
  border-radius:14px!important;
  background:rgba(148,163,184,.06)!important;
}
html body .topbar .topbar-desktop-shell .topbar-role-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  max-width:100px!important;
  min-height:30px!important;
  margin:0!important;
  padding:5px 9px!important;
  border-radius:999px!important;
  font-size:.61rem!important;
  line-height:1!important;
  flex:0 0 auto!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
html body .topbar .topbar-desktop-shell .user-chip,
html body .topbar .topbar-desktop-shell .user-chip.has-role-badge{
  display:block!important;
  min-width:0!important;
  max-width:170px!important;
  margin:0!important;
  padding:0 7px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:var(--text)!important;
  font-size:.84rem!important;
  font-weight:950!important;
  line-height:1.15!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
html body .topbar .topbar-desktop-shell .topbar-logout{
  display:block!important;
  flex:0 0 auto!important;
  width:auto!important;
  margin:0!important;
}
html body .topbar .topbar-desktop-shell .topbar-logout .btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:82px!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  padding:0 14px!important;
  border-radius:14px!important;
  font-size:.82rem!important;
  white-space:nowrap!important;
}

/* Tablet */
@media (min-width:761px) and (max-width:1180px){
  html body .topbar .topbar-desktop-shell{
    grid-template-columns:minmax(180px,auto) minmax(0,1fr)!important;
    grid-template-areas:"brand actions" "context context"!important;
    gap:9px 14px!important;
    min-height:0!important;
    padding:9px 14px 11px!important;
  }
  html body .topbar .topbar-desktop-shell .topbar-title{grid-area:brand!important;}
  html body .topbar .topbar-desktop-shell .topbar-context{grid-area:context!important;justify-content:flex-start!important;}
  html body .topbar .topbar-desktop-shell .topbar-actions{grid-area:actions!important;gap:7px!important;}
  html body .topbar .topbar-desktop-shell .department-context-switch,
  html body .topbar .topbar-desktop-shell .department-context-static{max-width:620px!important;}
  html body .topbar .topbar-desktop-shell .topbar-account-info{max-width:245px!important;}
  html body .topbar .topbar-desktop-shell .user-chip,
  html body .topbar .topbar-desktop-shell .user-chip.has-role-badge{max-width:125px!important;}
  html body .topbar .topbar-desktop-shell .topbar-logout .btn{min-width:74px!important;padding-inline:11px!important;}
}

/* Mobile */
@media (max-width:760px){
  html body .topbar{
    position:relative!important;
    top:auto!important;
    z-index:1200!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    border-radius:0 0 18px 18px!important;
  }
  html body .topbar .topbar-desktop-shell{display:none!important;}
  html body .topbar .topbar-mobile-shell{
    position:relative!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-auto-rows:auto!important;
    align-items:stretch!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:10px!important;
    overflow:visible!important;
  }
  html body .topbar .topbar-mobile-shell :is(.topbar-mobile-primary,.topbar-mobile-context,.topbar-mobile-secondary){
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
  }
  html body .topbar .topbar-mobile-primary{
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) 78px!important;
    grid-template-rows:44px!important;
    align-items:center!important;
    gap:8px!important;
  }
  html body .topbar .topbar-mobile-primary .menu-toggle{
    position:static!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid var(--line)!important;
    border-radius:14px!important;
    background:var(--surface)!important;
    color:var(--text)!important;
    font-size:1rem!important;
    line-height:1!important;
  }
  html body .topbar .topbar-mobile-brand{
    position:static!important;
    display:grid!important;
    grid-template-columns:26px minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:6px!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:44px!important;
    min-height:44px!important;
    margin:0!important;
    padding:0 8px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:14px!important;
    background:rgba(148,163,184,.06)!important;
    overflow:hidden!important;
  }
  html body .topbar .topbar-mobile-logo-pair{
    position:relative!important;
    display:block!important;
    width:26px!important;
    min-width:26px!important;
    max-width:26px!important;
    height:26px!important;
    min-height:26px!important;
    max-height:26px!important;
    margin:0!important;
    overflow:hidden!important;
  }
  html body .topbar .topbar-mobile-logo-pair .topbar-logo{
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:26px!important;
    min-width:26px!important;
    max-width:26px!important;
    height:26px!important;
    min-height:26px!important;
    max-height:26px!important;
    margin:0!important;
    object-fit:contain!important;
  }
  html body .topbar .topbar-mobile-product{
    display:block!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    color:var(--muted)!important;
    font-size:.66rem!important;
    font-weight:950!important;
    letter-spacing:.07em!important;
    text-transform:uppercase!important;
    line-height:1!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .topbar-mobile-version{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:0!important;
    max-width:78px!important;
    height:27px!important;
    min-height:27px!important;
    margin:0!important;
    padding:0 7px!important;
    border:1px solid var(--line)!important;
    border-radius:999px!important;
    background:var(--surface-2)!important;
    color:var(--text)!important;
    font-size:.61rem!important;
    font-weight:950!important;
    line-height:1!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .topbar-mobile-primary .topbar-mobile-logout{
    position:static!important;
    display:block!important;
    width:78px!important;
    min-width:78px!important;
    max-width:78px!important;
    height:44px!important;
    margin:0!important;
  }
  html body .topbar .topbar-mobile-primary .topbar-mobile-logout .btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:78px!important;
    min-width:78px!important;
    max-width:78px!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    margin:0!important;
    padding:0 8px!important;
    border-radius:14px!important;
    font-size:.78rem!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  html body .topbar .topbar-mobile-context{
    position:static!important;
    display:block!important;
  }
  html body .topbar .topbar-mobile-context .department-context-switch,
  html body .topbar .topbar-mobile-context .department-context-static{
    position:static!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:none!important;
    height:48px!important;
    min-height:48px!important;
    max-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,.06)!important;
    overflow:hidden!important;
  }
  html body .topbar .topbar-mobile-context .department-context-switch>span,
  html body .topbar .topbar-mobile-context .department-context-static>span{
    display:block!important;
    width:auto!important;
    min-width:max-content!important;
    max-width:none!important;
    margin:0!important;
    color:var(--muted)!important;
    font-size:.63rem!important;
    font-weight:950!important;
    letter-spacing:.1em!important;
    text-transform:uppercase!important;
    line-height:1!important;
  }
  html body .topbar .topbar-mobile-context .department-context-switch select{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:38px!important;
    min-height:38px!important;
    max-height:38px!important;
    margin:0!important;
    padding:0 34px 0 11px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:12px!important;
    background:var(--surface-2)!important;
    color:var(--text)!important;
    font-size:.89rem!important;
    font-weight:950!important;
    line-height:1!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .topbar-mobile-context .department-context-static strong{
    display:block!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    color:var(--text)!important;
    font-size:.89rem!important;
    font-weight:950!important;
    line-height:1!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .topbar-mobile-secondary{
    position:static!important;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    gap:8px!important;
  }
  html body .topbar .topbar-mobile-secondary .theme-switch{
    position:static!important;
    display:flex!important;
    align-items:center!important;
    gap:2px!important;
    width:auto!important;
    min-width:0!important;
    height:38px!important;
    min-height:38px!important;
    max-height:38px!important;
    margin:0!important;
    padding:3px!important;
    border:1px solid var(--line)!important;
    border-radius:999px!important;
    background:var(--surface)!important;
  }
  html body .topbar .topbar-mobile-secondary .theme-dot{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:30px!important;
    min-width:30px!important;
    max-width:30px!important;
    height:30px!important;
    min-height:30px!important;
    max-height:30px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:999px!important;
    font-size:.7rem!important;
    line-height:1!important;
  }
  html body .topbar .topbar-mobile-secondary .theme-dot.auto{width:43px!important;min-width:43px!important;max-width:43px!important;padding:0!important;}
  html body .topbar .topbar-mobile-account{
    position:static!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:none!important;
    height:38px!important;
    min-height:38px!important;
    max-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,.06)!important;
    overflow:hidden!important;
  }
  html body .topbar .topbar-mobile-account .topbar-role-badge{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:0!important;
    max-width:92px!important;
    height:28px!important;
    min-height:28px!important;
    max-height:28px!important;
    margin:0!important;
    padding:0 8px!important;
    border-radius:999px!important;
    font-size:.6rem!important;
    line-height:1!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .topbar-mobile-name{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    color:var(--text)!important;
    font-size:.82rem!important;
    font-weight:950!important;
    line-height:1!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
}

@media (max-width:390px){
  html body .topbar .topbar-mobile-shell{padding:8px!important;gap:7px!important;}
  html body .topbar .topbar-mobile-primary{grid-template-columns:42px minmax(0,1fr) 70px!important;gap:7px!important;grid-template-rows:42px!important;}
  html body .topbar .topbar-mobile-primary .menu-toggle{width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;max-height:42px!important;}
  html body .topbar .topbar-mobile-brand{height:42px!important;min-height:42px!important;padding-inline:6px!important;gap:4px!important;grid-template-columns:23px minmax(0,1fr) auto!important;}
  html body .topbar .topbar-mobile-logo-pair,
  html body .topbar .topbar-mobile-logo-pair .topbar-logo{width:23px!important;min-width:23px!important;max-width:23px!important;height:23px!important;min-height:23px!important;max-height:23px!important;}
  html body .topbar .topbar-mobile-product{font-size:.58rem!important;letter-spacing:.045em!important;}
  html body .topbar .topbar-mobile-version{max-width:70px!important;font-size:.56rem!important;padding-inline:5px!important;}
  html body .topbar .topbar-mobile-primary .topbar-mobile-logout,
  html body .topbar .topbar-mobile-primary .topbar-mobile-logout .btn{width:70px!important;min-width:70px!important;max-width:70px!important;height:42px!important;min-height:42px!important;max-height:42px!important;font-size:.73rem!important;}
  html body .topbar .topbar-mobile-secondary{grid-template-columns:1fr!important;gap:7px!important;}
  html body .topbar .topbar-mobile-secondary .theme-switch{justify-self:start!important;}
  html body .topbar .topbar-mobile-account{height:38px!important;min-height:38px!important;max-height:38px!important;}
}

/* header-mobile-v1271.css */
/* Retter-Portal v1.2.71 – isolated mobile header. Desktop rules remain untouched. */
html body .rp-mobile-header{display:none!important;}

@media (max-width:760px){
  html body .app-shell .main > .topbar,
  html body .topbar{
    position:relative!important;
    top:auto!important;
    display:block!important;
    grid-template-columns:none!important;
    grid-template-rows:none!important;
    grid-template-areas:none!important;
    align-items:stretch!important;
    justify-items:stretch!important;
    gap:0!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    border-radius:0 0 18px 18px!important;
  }
  html body .topbar .topbar-desktop-shell,
  html body .topbar .topbar-mobile-shell{display:none!important;}

  html body .topbar .rp-mobile-header,
  html body .topbar .rp-mobile-header *{
    box-sizing:border-box!important;
    writing-mode:horizontal-tb!important;
    text-orientation:mixed!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
    transform:none!important;
    translate:none!important;
    rotate:none!important;
  }

  html body .topbar .rp-mobile-header{
    position:relative!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-auto-rows:auto!important;
    align-items:stretch!important;
    gap:9px!important;
    isolation:isolate!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:10px 12px 12px!important;
    overflow:visible!important;
  }

  html body .topbar .rp-mobile-header :is(
    .rp-mobile-header__top,
    .rp-mobile-header__brand,
    .rp-mobile-header__context,
    .rp-mobile-header__department,
    .rp-mobile-header__bottom,
    .rp-mobile-header__theme,
    .rp-mobile-header__account,
    .rp-mobile-header__logout
  ){
    position:relative!important;
    inset:auto!important;
    float:none!important;
    clear:none!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    overflow:visible!important;
  }

  html body .topbar .rp-mobile-header__top{
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) 76px!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
  }

  html body .topbar .rp-mobile-header__menu{
    position:static!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid var(--line)!important;
    border-radius:14px!important;
    background:var(--surface)!important;
    color:var(--text)!important;
    box-shadow:var(--shadow-sm)!important;
    font:900 1rem/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  }

  html body .topbar .rp-mobile-header__brand{
    display:grid!important;
    grid-template-columns:28px minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:7px!important;
    width:100%!important;
    min-height:44px!important;
    padding:5px 8px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:14px!important;
    background:rgba(148,163,184,.06)!important;
    box-shadow:var(--shadow-sm)!important;
    overflow:hidden!important;
  }

  html body .topbar .rp-mobile-header__logo{
    position:relative!important;
    display:block!important;
    width:28px!important;
    min-width:28px!important;
    max-width:28px!important;
    height:28px!important;
    min-height:28px!important;
    max-height:28px!important;
    overflow:hidden!important;
  }
  html body .topbar .rp-mobile-header__logo img{
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:28px!important;
    min-width:28px!important;
    max-width:28px!important;
    height:28px!important;
    min-height:28px!important;
    max-height:28px!important;
    margin:0!important;
    object-fit:contain!important;
  }

  html body .topbar .rp-mobile-header__product{
    display:block!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    color:var(--muted)!important;
    font:950 .65rem/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    letter-spacing:.07em!important;
    text-transform:uppercase!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  html body .topbar .rp-mobile-header__version{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:52px!important;
    max-width:72px!important;
    height:27px!important;
    min-height:27px!important;
    max-height:27px!important;
    margin:0!important;
    padding:0 7px!important;
    border:1px solid var(--line)!important;
    border-radius:999px!important;
    background:var(--surface-2)!important;
    color:var(--text)!important;
    font:950 .61rem/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  html body .topbar .rp-mobile-header__logout{
    display:block!important;
    width:76px!important;
    min-width:76px!important;
    max-width:76px!important;
  }
  html body .topbar .rp-mobile-header__logout .btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:76px!important;
    min-width:76px!important;
    max-width:76px!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    margin:0!important;
    padding:0 8px!important;
    border-radius:14px!important;
    font-size:.78rem!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  html body .topbar .rp-mobile-header__context{
    display:block!important;
    width:100%!important;
  }

  html body .topbar .rp-mobile-header__department{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    gap:9px!important;
    width:100%!important;
    min-height:48px!important;
    padding:5px 6px 5px 11px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:15px!important;
    background:rgba(148,163,184,.06)!important;
    box-shadow:var(--shadow-sm)!important;
    overflow:hidden!important;
  }
  html body .topbar .rp-mobile-header__department>span{
    display:block!important;
    width:auto!important;
    min-width:max-content!important;
    max-width:none!important;
    color:var(--muted)!important;
    font:950 .63rem/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    letter-spacing:.1em!important;
    text-transform:uppercase!important;
    white-space:nowrap!important;
  }
  html body .topbar .rp-mobile-header__department select,
  html body .topbar .rp-mobile-header__department strong{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:38px!important;
    min-height:38px!important;
    max-height:38px!important;
    margin:0!important;
    padding:0 34px 0 11px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:12px!important;
    background:var(--surface-2)!important;
    color:var(--text)!important;
    font:950 .89rem/38px system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .rp-mobile-header__department strong{padding-right:11px!important;}

  html body .topbar .rp-mobile-header__bottom{
    display:grid!important;
    grid-template-columns:118px minmax(0,1fr)!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
  }

  html body .topbar .rp-mobile-header__theme{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:2px!important;
    width:118px!important;
    min-width:118px!important;
    max-width:118px!important;
    height:40px!important;
    min-height:40px!important;
    max-height:40px!important;
    padding:3px!important;
    border:1px solid var(--line)!important;
    border-radius:999px!important;
    background:var(--surface)!important;
    box-shadow:var(--shadow-sm)!important;
  }
  html body .topbar .rp-mobile-header__theme .theme-dot{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 auto!important;
    width:30px!important;
    min-width:30px!important;
    max-width:30px!important;
    height:32px!important;
    min-height:32px!important;
    max-height:32px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:999px!important;
    background:transparent!important;
    color:var(--muted)!important;
    font-size:.72rem!important;
    line-height:1!important;
  }
  html body .topbar .rp-mobile-header__theme .theme-dot.auto{
    width:48px!important;
    min-width:48px!important;
    max-width:48px!important;
    font-size:.72rem!important;
    font-weight:950!important;
  }
  html body .topbar .rp-mobile-header__theme .theme-dot.active,
  html body .topbar .rp-mobile-header__theme .theme-dot[aria-pressed="true"]{
    background:var(--surface-2)!important;
    color:var(--text)!important;
  }

  html body .topbar .rp-mobile-header__account{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    gap:7px!important;
    width:100%!important;
    min-height:40px!important;
    padding:4px 7px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:14px!important;
    background:rgba(148,163,184,.06)!important;
    box-shadow:var(--shadow-sm)!important;
    overflow:hidden!important;
  }
  html body .topbar .rp-mobile-header__account .topbar-role-badge{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:0!important;
    max-width:92px!important;
    height:30px!important;
    min-height:30px!important;
    max-height:30px!important;
    margin:0!important;
    padding:0 8px!important;
    border-radius:999px!important;
    font-size:.6rem!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .rp-mobile-header__name{
    display:block!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    color:var(--text)!important;
    font:950 .82rem/1.1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
}

@media (max-width:390px){
  html body .topbar .rp-mobile-header{padding:8px 9px 10px!important;gap:8px!important;}
  html body .topbar .rp-mobile-header__top{grid-template-columns:42px minmax(0,1fr) 70px!important;gap:7px!important;}
  html body .topbar .rp-mobile-header__menu{width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;max-height:42px!important;}
  html body .topbar .rp-mobile-header__brand{min-height:42px!important;grid-template-columns:25px minmax(0,1fr) auto!important;gap:5px!important;padding-inline:6px!important;}
  html body .topbar .rp-mobile-header__logo,
  html body .topbar .rp-mobile-header__logo img{width:25px!important;min-width:25px!important;max-width:25px!important;height:25px!important;min-height:25px!important;max-height:25px!important;}
  html body .topbar .rp-mobile-header__product{font-size:.57rem!important;letter-spacing:.045em!important;}
  html body .topbar .rp-mobile-header__version{min-width:48px!important;max-width:64px!important;padding-inline:5px!important;font-size:.56rem!important;}
  html body .topbar .rp-mobile-header__logout,
  html body .topbar .rp-mobile-header__logout .btn{width:70px!important;min-width:70px!important;max-width:70px!important;height:42px!important;min-height:42px!important;max-height:42px!important;font-size:.73rem!important;}
  html body .topbar .rp-mobile-header__department{gap:7px!important;padding-left:9px!important;}
  html body .topbar .rp-mobile-header__department>span{font-size:.58rem!important;letter-spacing:.075em!important;}
  html body .topbar .rp-mobile-header__department select,
  html body .topbar .rp-mobile-header__department strong{font-size:.82rem!important;}
  html body .topbar .rp-mobile-header__bottom{grid-template-columns:112px minmax(0,1fr)!important;gap:7px!important;}
  html body .topbar .rp-mobile-header__theme{width:112px!important;min-width:112px!important;max-width:112px!important;}
  html body .topbar .rp-mobile-header__theme .theme-dot{width:28px!important;min-width:28px!important;max-width:28px!important;}
  html body .topbar .rp-mobile-header__theme .theme-dot.auto{width:47px!important;min-width:47px!important;max-width:47px!important;}
  html body .topbar .rp-mobile-header__account{gap:5px!important;padding-inline:5px!important;}
  html body .topbar .rp-mobile-header__account .topbar-role-badge{max-width:78px!important;padding-inline:6px!important;font-size:.54rem!important;}
  html body .topbar .rp-mobile-header__name{font-size:.76rem!important;}
}

/* Final mobile placement reset against legacy named grid areas and orders. */
@media (max-width:760px){
  html body .app-shell .main > .topbar .rp-mobile-header__top{
    grid-template-columns:44px minmax(0,1fr) 76px!important;
    grid-template-rows:44px!important;
    grid-auto-columns:0!important;
    grid-auto-rows:0!important;
    min-height:44px!important;
    max-height:44px!important;
  }
  html body .app-shell .main > .topbar .rp-mobile-header__menu{
    grid-column:1!important;grid-row:1!important;order:0!important;justify-self:stretch!important;align-self:stretch!important;
  }
  html body .app-shell .main > .topbar .rp-mobile-header__brand{
    grid-column:2!important;grid-row:1!important;order:0!important;justify-self:stretch!important;align-self:stretch!important;
    width:100%!important;height:44px!important;min-height:44px!important;max-height:44px!important;
  }
  html body .app-shell .main > .topbar .rp-mobile-header__logo{grid-column:1!important;grid-row:1!important;order:0!important;}
  html body .app-shell .main > .topbar .rp-mobile-header__product{grid-column:2!important;grid-row:1!important;order:0!important;}
  html body .app-shell .main > .topbar .rp-mobile-header__version{grid-column:3!important;grid-row:1!important;order:0!important;}
  html body .app-shell .main > .topbar form.rp-mobile-header__logout{
    grid-column:3!important;grid-row:1!important;grid-area:auto!important;order:0!important;justify-self:stretch!important;align-self:stretch!important;
    width:76px!important;height:44px!important;min-height:44px!important;max-height:44px!important;
  }
  html body .app-shell .main > .topbar .rp-mobile-header__context{
    grid-column:1!important;grid-row:auto!important;order:0!important;width:100%!important;
  }
  html body .app-shell .main > .topbar .rp-mobile-header__department{
    grid-template-columns:auto minmax(0,1fr)!important;
    grid-template-rows:38px!important;
    grid-auto-columns:0!important;
    grid-auto-rows:0!important;
    width:100%!important;height:48px!important;min-height:48px!important;max-height:48px!important;
  }
  html body .app-shell .main > .topbar .rp-mobile-header__department>span{grid-column:1!important;grid-row:1!important;order:0!important;align-self:center!important;}
  html body .app-shell .main > .topbar .rp-mobile-header__department>select,
  html body .app-shell .main > .topbar .rp-mobile-header__department>strong{grid-column:2!important;grid-row:1!important;order:0!important;align-self:center!important;}
  html body .app-shell .main > .topbar .rp-mobile-header__bottom{
    grid-template-columns:118px minmax(0,1fr)!important;
    grid-template-rows:40px!important;
    grid-auto-columns:0!important;
    grid-auto-rows:0!important;
    min-height:40px!important;max-height:40px!important;
  }
  html body .app-shell .main > .topbar form.rp-mobile-header__theme{
    grid-column:1!important;grid-row:1!important;grid-area:auto!important;order:0!important;justify-self:stretch!important;align-self:stretch!important;
    width:118px!important;height:40px!important;min-height:40px!important;max-height:40px!important;
  }
  html body .app-shell .main > .topbar .rp-mobile-header__account{
    grid-column:2!important;grid-row:1!important;grid-area:auto!important;order:0!important;justify-self:stretch!important;align-self:stretch!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    grid-template-rows:32px!important;
    grid-auto-columns:0!important;
    grid-auto-rows:0!important;
    width:100%!important;height:40px!important;min-height:40px!important;max-height:40px!important;
  }
  html body .app-shell .main > .topbar .rp-mobile-header__account .topbar-role-badge{
    grid-column:1!important;grid-row:1!important;grid-area:auto!important;order:0!important;justify-self:start!important;align-self:center!important;
  }
  html body .app-shell .main > .topbar .rp-mobile-header__name{
    grid-column:2!important;grid-row:1!important;grid-area:auto!important;order:0!important;justify-self:stretch!important;align-self:center!important;
  }
  html body .app-shell .main > .topbar .rp-mobile-header__account:not(:has(.topbar-role-badge)) .rp-mobile-header__name{grid-column:1/-1!important;}
}
@media (max-width:390px){
  html body .app-shell .main > .topbar .rp-mobile-header__top{grid-template-columns:42px minmax(0,1fr) 70px!important;grid-template-rows:42px!important;min-height:42px!important;max-height:42px!important;}
  html body .app-shell .main > .topbar .rp-mobile-header__brand{height:42px!important;min-height:42px!important;max-height:42px!important;}
  html body .app-shell .main > .topbar form.rp-mobile-header__logout{width:70px!important;height:42px!important;min-height:42px!important;max-height:42px!important;}
  html body .app-shell .main > .topbar .rp-mobile-header__bottom{grid-template-columns:112px minmax(0,1fr)!important;}
  html body .app-shell .main > .topbar form.rp-mobile-header__theme{width:112px!important;min-width:112px!important;max-width:112px!important;}
}

/* header-tablet-v1275.css */
/* Retter-Portal v1.2.72 – isolated tablet layout. Mobile <=760px and desktop >1180px stay untouched. */
html body .topbar .topbar-tablet-menu{display:none!important;}

@media (min-width:761px) and (max-width:1180px){
  html,body{max-width:100%!important;overflow-x:hidden!important;}
  html body .app-shell{min-width:0!important;max-width:100%!important;}
  html body .main,
  html body .content{min-width:0!important;max-width:100%!important;overflow-x:clip!important;}
  html body .content{padding:clamp(15px,2vw,22px)!important;}
  html body .content > *,
  html body .content :is(.page-head,.page-hero,.card,.toolbar,.grid,.stat-grid,.form-grid,.detail-grid,.info-grid,.table-wrap,.data-table-card,.checks-table-wrap){
    min-width:0!important;
    max-width:100%!important;
  }

  /* Header: stable two-row desktop-like tablet arrangement. */
  html body .topbar .topbar-desktop-shell{
    display:grid!important;
    grid-template-columns:minmax(136px,1fr) minmax(0,auto)!important;
    grid-template-areas:"brand actions" "context context"!important;
    align-items:center!important;
    gap:8px 12px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:0!important;
    padding:8px 12px 10px!important;
    overflow:visible!important;
  }
  html body .topbar .topbar-desktop-shell > *{min-width:0!important;max-width:100%!important;}
  html body .topbar .topbar-title{
    grid-area:brand!important;
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
  }
  html body .topbar .topbar-logo-pair{
    width:31px!important;
    min-width:31px!important;
    height:31px!important;
    flex:0 0 31px!important;
  }
  html body .topbar .topbar-logo-pair .topbar-logo{width:31px!important;height:31px!important;}
  html body .topbar .topbar-product{min-width:0!important;max-width:100%!important;overflow:hidden!important;}
  html body .topbar .topbar-eyebrow{
    display:flex!important;
    align-items:center!important;
    gap:5px!important;
    min-width:0!important;
    max-width:100%!important;
    font-size:clamp(.58rem,1vw,.68rem)!important;
    letter-spacing:.065em!important;
    overflow:hidden!important;
  }
  html body .topbar .topbar-eyebrow > span:first-child{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  html body .topbar .topbar-version{
    flex:0 0 auto!important;
    min-width:0!important;
    max-width:62px!important;
    min-height:24px!important;
    padding:3px 6px!important;
    font-size:.59rem!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  html body .topbar .topbar-context{
    grid-area:context!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    overflow:hidden!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:100%!important;
    min-height:43px!important;
    padding:4px 5px 4px 10px!important;
    border-radius:14px!important;
    overflow:hidden!important;
  }
  html body .topbar .department-context-switch > span,
  html body .topbar .department-context-static > span{
    min-width:max-content!important;
    max-width:82px!important;
    font-size:clamp(.54rem,.9vw,.62rem)!important;
    letter-spacing:.08em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .department-context-switch select,
  html body .topbar .department-context-static strong{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:34px!important;
    min-height:34px!important;
    margin:0!important;
    padding:0 31px 0 10px!important;
    border-radius:11px!important;
    font-size:clamp(.76rem,1.35vw,.88rem)!important;
    line-height:34px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .department-context-static strong{padding-right:10px!important;}

  html body .topbar .topbar-actions{
    grid-area:actions!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:6px!important;
    width:auto!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  html body .topbar .theme-switch{
    display:flex!important;
    flex:0 0 auto!important;
    width:auto!important;
    height:36px!important;
    min-height:36px!important;
    padding:2px!important;
    gap:1px!important;
  }
  html body .topbar .theme-switch .theme-dot{
    width:27px!important;
    min-width:27px!important;
    height:30px!important;
    min-height:30px!important;
    padding:0!important;
    font-size:.65rem!important;
  }
  html body .topbar .theme-switch .theme-dot.auto{
    width:auto!important;
    min-width:41px!important;
    padding:0 6px!important;
  }
  html body .topbar .topbar-user-cluster{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:6px!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  html body .topbar .topbar-account-info{
    display:flex!important;
    align-items:center!important;
    gap:5px!important;
    min-width:0!important;
    max-width:clamp(145px,25vw,220px)!important;
    padding:3px 4px!important;
    overflow:hidden!important;
  }
  html body .topbar .topbar-role-badge{
    flex:0 1 auto!important;
    min-width:0!important;
    max-width:78px!important;
    min-height:27px!important;
    padding:4px 7px!important;
    font-size:.55rem!important;
    overflow:hidden!important;
    text-overflow:ellipsis!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:clamp(72px,11vw,118px)!important;
    padding:0 3px!important;
    font-size:clamp(.7rem,1.2vw,.8rem)!important;
    line-height:1.1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .topbar-logout{flex:0 0 auto!important;min-width:0!important;}
  html body .topbar .topbar-logout .btn{
    min-width:64px!important;
    height:36px!important;
    min-height:36px!important;
    padding:0 9px!important;
    border-radius:12px!important;
    font-size:.72rem!important;
    white-space:nowrap!important;
  }

  /* Tablet content: no overlap or page-wide horizontal overflow. */
  html body .content :is(.page-head,.page-hero,.card-head,.hero-actions,.actions,.toolbar){
    min-width:0!important;
  }
  html body .content :is(.page-head,.page-hero,.card-head){
    gap:clamp(12px,2vw,18px)!important;
  }
  html body .content :is(.hero-actions,.actions,.toolbar){
    flex-wrap:wrap!important;
  }
  html body .content :is(.btn,.pill,.status,.role,.badge,.secure-pill){
    max-width:100%!important;
    min-width:0!important;
    white-space:nowrap!important;
    line-height:1.1!important;
  }
  html body .content :is(.pill,.status,.role,.badge,.secure-pill){
    padding:clamp(5px,.8vw,7px) clamp(8px,1vw,11px)!important;
    font-size:clamp(.64rem,1vw,.77rem)!important;
  }
  html body .content .table-wrap{
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    overscroll-behavior-inline:contain!important;
    -webkit-overflow-scrolling:touch!important;
  }
  html body .content .table-wrap table{
    width:max(100%,760px)!important;
    min-width:760px!important;
    table-layout:auto!important;
  }
  html body .content .table-wrap :is(th,td){
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
  }
}

/* Wider tablet landscape: keep the header in one clean row when there is enough room. */
@media (min-width:1041px) and (max-width:1180px){
  html body .topbar .topbar-desktop-shell{
    grid-template-columns:minmax(132px,170px) minmax(210px,1fr) minmax(340px,auto)!important;
    grid-template-areas:"brand context actions"!important;
    gap:8px 10px!important;
    padding:8px 12px!important;
  }
  html body .topbar .topbar-context{align-self:center!important;}
  html body .topbar .department-context-switch,
  html body .topbar .department-context-static{min-height:40px!important;}
}

/* Small tablets: sidebar becomes an overlay and the menu button appears. */
@media (min-width:761px) and (max-width:860px){
  html body .app-shell{display:block!important;min-height:100dvh!important;}
  html body .main{width:100%!important;max-width:100%!important;}
  html body .sidebar{
    position:fixed!important;
    inset:0 auto 0 0!important;
    width:min(82vw,290px)!important;
    max-width:min(82vw,290px)!important;
    z-index:2400!important;
    transform:translateX(-105%)!important;
    transition:transform .2s ease!important;
  }
  html body.sidebar-open .sidebar{transform:translateX(0)!important;}
  html body .topbar .topbar-desktop-shell{
    grid-template-columns:42px minmax(108px,1fr) minmax(0,auto)!important;
    grid-template-areas:"menu brand actions" "context context context"!important;
    gap:8px!important;
    padding:8px 10px 10px!important;
  }
  html body .topbar .topbar-tablet-menu{
    grid-area:menu!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid var(--line)!important;
    border-radius:13px!important;
    background:var(--surface)!important;
    color:var(--text)!important;
    box-shadow:var(--shadow-sm)!important;
    font-size:.95rem!important;
    line-height:1!important;
  }
  html body .topbar .topbar-actions{gap:4px!important;}
  html body .topbar .topbar-account-info{max-width:150px!important;}
  html body .topbar .topbar-role-badge{max-width:68px!important;font-size:.5rem!important;padding-inline:5px!important;}
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge{max-width:72px!important;font-size:.67rem!important;}
  html body .topbar .topbar-logout .btn{min-width:58px!important;padding-inline:7px!important;font-size:.68rem!important;}
  html body .content{padding:14px 12px 22px!important;}
}

/* Medium tablets with visible sidebar: make the sidebar narrower to protect content width. */
@media (min-width:861px) and (max-width:1039px){
  html body .app-shell{grid-template-columns:clamp(196px,23vw,220px) minmax(0,1fr)!important;}
  html body .sidebar{width:auto!important;min-width:0!important;padding-inline:10px!important;}
  html body .sidebar .brand{padding-inline:5px!important;}
  html body .sidebar nav a{gap:8px!important;padding-inline:8px!important;font-size:clamp(.76rem,1.15vw,.9rem)!important;}
  html body .sidebar nav a span{flex:0 0 28px!important;}
  html body .topbar .topbar-account-info{max-width:175px!important;}
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge{max-width:82px!important;}
}

/* v1.2.74: header logo remains intentionally removed from markup. */
html body .topbar .topbar-title{gap:0!important;}

/* Large iPad/tablet landscape only. Desktop with mouse/trackpad remains untouched. */
@media (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  html,body{max-width:100%!important;overflow-x:hidden!important;}
  html body .app-shell{grid-template-columns:220px minmax(0,1fr)!important;min-width:0!important;max-width:100%!important;}
  html body .sidebar{width:220px!important;min-width:220px!important;max-width:220px!important;}
  html body .main,html body .content{min-width:0!important;max-width:100%!important;}
  html body .topbar .topbar-tablet-menu{display:none!important;}
  html body .topbar .topbar-desktop-shell{
    display:grid!important;
    grid-template-columns:minmax(125px,155px) minmax(250px,1fr) minmax(330px,auto)!important;
    grid-template-areas:"brand context actions"!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:66px!important;
    padding:8px 12px!important;
    overflow:hidden!important;
  }
  html body .topbar .topbar-title{grid-area:brand!important;min-width:0!important;overflow:hidden!important;}
  html body .topbar .topbar-eyebrow{font-size:.62rem!important;letter-spacing:.06em!important;gap:4px!important;white-space:nowrap!important;overflow:hidden!important;}
  html body .topbar .topbar-eyebrow>span:first-child{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  html body .topbar .topbar-version{flex:0 0 auto!important;min-height:24px!important;padding:3px 6px!important;font-size:.58rem!important;}
  html body .topbar .topbar-context{grid-area:context!important;min-width:0!important;}
  html body .topbar .department-context-switch,html body .topbar .department-context-static{
    width:100%!important;max-width:100%!important;min-width:0!important;min-height:42px!important;padding:4px 5px 4px 9px!important;gap:7px!important;border-radius:14px!important;overflow:hidden!important;
  }
  html body .topbar .department-context-switch>span,html body .topbar .department-context-static>span{font-size:.58rem!important;letter-spacing:.07em!important;white-space:nowrap!important;}
  html body .topbar .department-context-switch select,html body .topbar .department-context-static strong{height:33px!important;min-height:33px!important;padding:0 30px 0 10px!important;font-size:.8rem!important;line-height:33px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  html body .topbar .topbar-actions{grid-area:actions!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;min-width:0!important;overflow:hidden!important;}
  html body .topbar .theme-switch{height:36px!important;min-height:36px!important;padding:2px!important;gap:1px!important;}
  html body .topbar .theme-switch .theme-dot{width:27px!important;min-width:27px!important;height:30px!important;min-height:30px!important;font-size:.64rem!important;}
  html body .topbar .theme-switch .theme-dot.auto{min-width:41px!important;padding:0 6px!important;}
  html body .topbar .topbar-user-cluster{display:flex!important;align-items:center!important;gap:5px!important;min-width:0!important;overflow:hidden!important;}
  html body .topbar .topbar-account-info{display:flex!important;align-items:center!important;gap:5px!important;min-width:0!important;max-width:190px!important;padding:3px 4px!important;overflow:hidden!important;}
  html body .topbar .topbar-role-badge{max-width:72px!important;min-height:27px!important;padding:4px 6px!important;font-size:.52rem!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{min-width:0!important;max-width:92px!important;padding:0 3px!important;font-size:.72rem!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  html body .topbar .topbar-logout .btn{min-width:64px!important;height:36px!important;min-height:36px!important;padding:0 8px!important;font-size:.7rem!important;white-space:nowrap!important;}
  html body .content{padding:18px!important;overflow-x:hidden!important;}
  html body .content .table-wrap,html body .content .data-table-card,html body .content .checks-table-wrap{max-width:100%!important;overflow-x:auto!important;overflow-y:visible!important;-webkit-overflow-scrolling:touch!important;}
  html body .content :is(th,td){word-break:normal!important;overflow-wrap:break-word!important;hyphens:none!important;}
}

/* v1.2.75 – tablet-only polish. Mobile <=760px and desktop with mouse remain unchanged. */
@media (min-width:761px) and (max-width:1180px),
       (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  html body .topbar .topbar-desktop-shell{
    align-items:center!important;
    column-gap:10px!important;
  }
  html body .topbar .topbar-title,
  html body .topbar .topbar-context,
  html body .topbar .topbar-actions{align-self:center!important;}

  /* Keep the fire-department label inside its field instead of letting it float into the row above. */
  html body .topbar .department-context-switch,
  html body .topbar .department-context-static{
    grid-template-columns:74px minmax(0,1fr)!important;
    align-items:center!important;
    gap:8px!important;
    min-height:42px!important;
    padding:4px 5px 4px 10px!important;
    overflow:hidden!important;
  }
  html body .topbar .department-context-switch>span,
  html body .topbar .department-context-static>span{
    position:static!important;
    inset:auto!important;
    align-self:center!important;
    width:auto!important;
    min-width:0!important;
    max-width:74px!important;
    margin:0!important;
    padding:0!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .department-context-switch select,
  html body .topbar .department-context-static strong{
    min-width:0!important;
    max-width:100%!important;
    height:34px!important;
    min-height:34px!important;
    line-height:34px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  html body .topbar .topbar-actions,
  html body .topbar .topbar-user-cluster,
  html body .topbar .topbar-account-info{
    min-width:0!important;
    overflow:hidden!important;
  }
  html body .topbar .topbar-actions{gap:7px!important;}
  html body .topbar .topbar-user-cluster{gap:7px!important;}
  html body .topbar .topbar-account-info{gap:6px!important;}
  html body .topbar .topbar-role-badge,
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge{
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  /* General tablet content sizing: desktop-like, but without squeezing. */
  html body .content{padding:clamp(16px,1.7vw,20px)!important;}
  html body .content .rp55-dash-hero{
    grid-template-columns:minmax(0,1.12fr) minmax(285px,.88fr)!important;
    align-items:center!important;
    gap:clamp(22px,2.5vw,32px)!important;
    padding:clamp(28px,3vw,34px)!important;
  }
  html body .content .rp55-dash-copy{min-width:0!important;max-width:760px!important;}
  html body .content .rp55-dash-copy h1{
    max-width:720px!important;
    font-size:clamp(2.55rem,4.2vw,3.55rem)!important;
    line-height:.98!important;
    text-wrap:balance!important;
    overflow-wrap:normal!important;
  }
  html body .content .rp55-dash-copy .muted{
    max-width:700px!important;
    font-size:clamp(.92rem,1.35vw,1.02rem)!important;
  }
  html body .content .rp55-dash-tags{gap:8px!important;margin-top:16px!important;}
  html body .content .rp55-dash-tags span{
    min-width:0!important;
    padding:8px 10px!important;
    font-size:clamp(.72rem,1vw,.82rem)!important;
    white-space:nowrap!important;
  }
  html body .content .rp55-dash-actions{
    width:100%!important;
    min-width:0!important;
    max-width:360px!important;
    justify-self:end!important;
    align-self:center!important;
    gap:9px!important;
  }
  html body .content .rp55-dash-actions .btn{
    width:100%!important;
    min-width:0!important;
    min-height:42px!important;
    padding:8px 12px!important;
    white-space:nowrap!important;
  }

  html body .content :is(.pill,.status,.role,.badge,.secure-pill){
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:max-content!important;
    max-width:100%!important;
    min-height:30px!important;
    line-height:1.1!important;
    white-space:nowrap!important;
  }
  html body .content .table-wrap :is(th,td){
    writing-mode:horizontal-tb!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
  }
  html body .content .table-wrap th{white-space:normal!important;line-height:1.15!important;}
}

/* Compact tablets: stack only the dashboard hero, rather than compressing both columns. */
@media (min-width:761px) and (max-width:1040px){
  html body .content .rp55-dash-hero{
    grid-template-columns:1fr!important;
    gap:20px!important;
  }
  html body .content .rp55-dash-actions{
    max-width:none!important;
    justify-self:stretch!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  html body .content .rp55-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}

/* iPad/large touch landscape: preserve one clean header row with predictable proportions. */
@media (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  html body .app-shell{grid-template-columns:210px minmax(0,1fr)!important;}
  html body .sidebar{width:210px!important;min-width:210px!important;max-width:210px!important;}
  html body .topbar .topbar-desktop-shell{
    grid-template-columns:minmax(170px,190px) minmax(290px,1fr) minmax(365px,auto)!important;
    grid-template-areas:"brand context actions"!important;
    min-height:64px!important;
    padding:8px 14px!important;
    gap:10px!important;
    overflow:hidden!important;
  }
  html body .topbar .topbar-eyebrow{font-size:.64rem!important;letter-spacing:.065em!important;}
  html body .topbar .topbar-version{font-size:.59rem!important;}
  html body .topbar .topbar-context{display:flex!important;justify-content:center!important;}
  html body .topbar .department-context-switch,
  html body .topbar .department-context-static{max-width:430px!important;}
  html body .topbar .topbar-actions{justify-content:flex-end!important;}
  html body .topbar .topbar-account-info{max-width:205px!important;}
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge{max-width:108px!important;font-size:.74rem!important;}
  html body .topbar .topbar-role-badge{max-width:76px!important;font-size:.54rem!important;}
  html body .topbar .topbar-logout .btn{min-width:70px!important;padding-inline:10px!important;}
}

/* responsive-v1276.css */
/* Retter-Portal v1.2.76
   Nur Inhaltsbereich: Smartphone-/Tablet-Stabilität und portalisierte Smart-Suchen.
   Header-Dateien bleiben bewusst unberührt. */

/* Smart-Suchen werden durch app.js direkt unter <body> eingehängt. Dadurch können
   Karten, Formulare, Tabellen und die iOS-Tastatur die Trefferliste nicht verdecken. */
html body .smart-select-results.smart-select-popover{
  position:fixed!important;
  left:var(--smart-popover-left)!important;
  top:var(--smart-popover-top)!important;
  right:auto!important;
  bottom:auto!important;
  width:var(--smart-popover-width)!important;
  min-width:0!important;
  max-width:calc(100vw - 20px)!important;
  max-height:var(--smart-popover-max-height)!important;
  margin:0!important;
  padding:8px!important;
  display:grid!important;
  gap:6px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  border:1px solid rgba(148,163,184,.28)!important;
  border-radius:18px!important;
  background:#111c30!important;
  box-shadow:0 28px 90px rgba(0,0,0,.48)!important;
  z-index:2147483646!important;
  transform:none!important;
  isolation:isolate!important;
  -webkit-overflow-scrolling:touch!important;
}
html body[data-theme="light"] .smart-select-results.smart-select-popover{
  background:#fff!important;
  border-color:rgba(100,116,139,.28)!important;
  box-shadow:0 28px 80px rgba(15,23,42,.24)!important;
}
html body .smart-select-results.smart-select-popover .smart-select-option{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  padding:11px 12px!important;
  border-radius:13px!important;
  text-align:left!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}
html body .smart-select-results.smart-select-popover .smart-select-option strong,
html body .smart-select-results.smart-select-popover .smart-select-option small{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  line-height:1.25!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}

/* Ein leerer Fahrzeugplatz besitzt nichts, das entfernt werden könnte. */
html body [data-incident-vehicle-remove][hidden]{display:none!important;}

/* Robuste Grundregeln ausschließlich im Seiteninhalt. */
html body .app-shell .main .content,
html body .app-shell .main .content :where(.card,.form-grid,.form-subcard,.grid,.table-wrap,.data-table-card,.checks-table-wrap,label,.form-section,.actions){
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
html body .app-shell .main .content :where(input,select,textarea,button,.btn){
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
html body .app-shell .main .content :where(h1,h2,h3,h4,p,span,strong,small,label,th,td){
  word-break:normal!important;
  overflow-wrap:break-word!important;
  hyphens:none!important;
}
html body .app-shell .main .content .form-section{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:12px!important;
  flex-wrap:wrap!important;
}
html body .app-shell .main .content .form-section > strong{
  flex:0 0 auto!important;
  line-height:1.25!important;
}
html body .app-shell .main .content .form-section > span{
  flex:1 1 320px!important;
  min-width:0!important;
  line-height:1.45!important;
}
html body .app-shell .main .content :where(.pill,.status,.role){
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:fit-content!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:34px!important;
  padding:7px 12px!important;
  line-height:1.12!important;
  text-align:center!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}

/* Tablet: desktopähnlich, aber ohne gequetschte Tabellen/Formulare. */
@media (min-width:761px) and (max-width:1180px){
  html body .app-shell .main .content{
    padding-left:clamp(16px,2.4vw,24px)!important;
    padding-right:clamp(16px,2.4vw,24px)!important;
  }
  html body .app-shell .main .content :where(.form-grid,.form-grid.two,.form-grid.three,.grid.two,.grid.three){
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
    align-items:start!important;
  }
  html body .app-shell .main .content :where(.full,.form-subcard,.form-actions,.smart-person-picker){
    grid-column:1/-1!important;
  }
  html body .app-shell .main .content :where(.card,.form-subcard){
    padding:clamp(16px,2.2vw,22px)!important;
    border-radius:22px!important;
  }
  html body .app-shell .main .content :where(.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;
  }
  html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) table{
    table-layout:auto!important;
    width:100%!important;
    min-width:max-content!important;
  }
  html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) :where(th,td){
    min-width:84px!important;
    max-width:260px!important;
    padding:12px 10px!important;
    line-height:1.28!important;
    vertical-align:middle!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
  }
  html body .app-shell .main .content :where(.table-wrap,.data-table-card,.checks-table-wrap) td:has(:is(.pill,.status,.role)){
    min-width:130px!important;
  }
  html body .app-shell .main .content :where(.pill,.status,.role){
    font-size:clamp(.72rem,1.25vw,.86rem)!important;
    padding:7px 10px!important;
  }
  html body .app-shell .main .content .page-head{
    gap:18px!important;
    padding:clamp(22px,3vw,34px)!important;
  }
  html body .app-shell .main .content .page-head h1{
    font-size:clamp(2.4rem,5.1vw,4.4rem)!important;
    line-height:.98!important;
  }
  html body .app-shell .main .content .incident-vehicle-meta-grid{
    grid-template-columns:minmax(170px,240px) minmax(0,1fr)!important;
  }
}

/* Smartphone: keine überlappenden Kästchen, keine buchstabenweisen Umbrüche. */
@media (max-width:760px){
  html body .app-shell .main .content{
    padding:14px!important;
    overflow-x:hidden!important;
  }
  html body .app-shell .main .content :where(.card,.form-subcard,.table-wrap,.data-table-card,.checks-table-wrap){
    width:100%!important;
    max-width:100%!important;
    padding:16px!important;
    border-radius:20px!important;
    overflow:visible!important;
  }
  html body .app-shell .main .content :where(.form-grid,.form-grid.two,.form-grid.three,.form-grid.four,.grid.two,.grid.three,.incident-vehicle-meta-grid,.incident-vehicle-row-head,.incident-crew-grid,.unit-choice-grid){
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:13px!important;
    align-items:start!important;
  }
  html body .app-shell .main .content :where(.full,.form-subcard,.form-actions,.smart-person-picker){
    grid-column:1!important;
  }
  html body .app-shell .main .content label{
    display:grid!important;
    width:100%!important;
    min-width:0!important;
    gap:7px!important;
    line-height:1.25!important;
  }
  html body .app-shell .main .content :where(input,select,textarea){
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    font-size:16px!important; /* verhindert iOS-Zoom und Layoutsprünge */
  }
  html body .app-shell .main .content .form-section{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:6px!important;
  }
  html body .app-shell .main .content .form-section > :where(strong,span){
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  html body .app-shell .main .content .incident-vehicle-row{
    padding:13px!important;
    gap:13px!important;
    border-radius:18px!important;
  }
  html body .app-shell .main .content .incident-vehicle-row-head .incident-vehicle-remove,
  html body .app-shell .main .content [data-incident-vehicle-remove]{
    justify-self:start!important;
    width:auto!important;
  }
  html body .app-shell .main .content .smart-select-field{
    position:relative!important;
    z-index:auto!important;
    overflow:visible!important;
  }
  html body .app-shell .main .content .smart-select-field.is-open{
    z-index:2147483000!important;
  }
  html body .app-shell .main .content :where(.pill,.status,.role){
    min-height:36px!important;
    padding:8px 11px!important;
    font-size:.83rem!important;
    line-height:1.15!important;
  }
  html body .app-shell .main .content .page-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
    padding:20px!important;
  }
  html body .app-shell .main .content .page-head h1{
    font-size:clamp(2rem,10vw,3.2rem)!important;
    line-height:1!important;
  }
  html body .app-shell .main .content .page-head .actions,
  html body .app-shell .main .content .form-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:9px!important;
    width:100%!important;
  }
  html body .app-shell .main .content .page-head .actions .btn,
  html body .app-shell .main .content .form-actions .btn{
    width:100%!important;
    justify-content:center!important;
  }
}

/* tablet-v1277.css */
/* Retter-Portal v1.2.77 – ausschließlich Tablet-Feinschliff.
   Smartphone <=760px und normaler Desktop >1180px mit Maus bleiben unverändert. */

@media (min-width:761px) and (max-width:1180px){
  html,body{max-width:100%!important;overflow-x:hidden!important;}
  html body .app-shell{min-width:0!important;max-width:100%!important;}
  html body .main{min-width:0!important;max-width:100%!important;}

  /* Die Sidebar bleibt lesbar statt Texte und Kürzel zusammenzuquetschen. */
  html body .app-shell{grid-template-columns:244px minmax(0,1fr)!important;}
  html body .sidebar{
    width:244px!important;
    min-width:244px!important;
    max-width:244px!important;
    padding-inline:13px!important;
  }
  html body .sidebar .brand{padding-inline:7px!important;}
  html body .sidebar nav a{
    min-width:0!important;
    min-height:46px!important;
    gap:10px!important;
    padding:10px 10px!important;
    font-size:.88rem!important;
    line-height:1.22!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
  }
  html body .sidebar nav a span{
    flex:0 0 30px!important;
    width:30px!important;
    min-width:30px!important;
    height:30px!important;
  }
  html body .sidebar .nav-section{margin-inline:9px!important;}

  /* Tablet-Header: gleiche Höhen, klare Abstände und kontrolliertes Kürzen. */
  html body .topbar{min-width:0!important;overflow:visible!important;}
  html body .topbar .topbar-desktop-shell{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    align-items:center!important;
    padding:9px 14px!important;
  }
  html body .topbar .topbar-title,
  html body .topbar .topbar-context,
  html body .topbar .topbar-actions{align-self:center!important;min-width:0!important;}
  html body .topbar .topbar-title{padding-right:2px!important;}
  html body .topbar .topbar-eyebrow{
    margin:0!important;
    min-height:42px!important;
    align-items:center!important;
    gap:6px!important;
    font-size:.62rem!important;
    letter-spacing:.07em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
  }
  html body .topbar .topbar-eyebrow>span:first-child{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  html body .topbar .topbar-version{
    flex:0 0 auto!important;
    min-height:26px!important;
    height:26px!important;
    padding:0 7px!important;
    font-size:.59rem!important;
    line-height:26px!important;
  }

  html body .topbar .department-context-switch,
  html body .topbar .department-context-static{
    display:grid!important;
    grid-template-columns:76px minmax(0,1fr)!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    margin:0!important;
    padding:4px 5px 4px 10px!important;
    border-radius:14px!important;
    overflow:hidden!important;
  }
  html body .topbar .department-context-switch>span,
  html body .topbar .department-context-static>span{
    position:static!important;
    inset:auto!important;
    display:block!important;
    align-self:center!important;
    width:76px!important;
    min-width:76px!important;
    max-width:76px!important;
    margin:0!important;
    padding:0!important;
    font-size:.58rem!important;
    line-height:1!important;
    letter-spacing:.08em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .department-context-switch select,
  html body .topbar .department-context-static strong{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:34px!important;
    min-height:34px!important;
    max-height:34px!important;
    margin:0!important;
    padding:0 31px 0 10px!important;
    font-size:.79rem!important;
    line-height:34px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .department-context-static strong{padding-right:10px!important;}

  html body .topbar .topbar-actions,
  html body .topbar .topbar-user-cluster{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    min-width:0!important;
    height:42px!important;
    min-height:42px!important;
    gap:7px!important;
    overflow:hidden!important;
  }
  html body .topbar .theme-switch{
    flex:0 0 auto!important;
    height:40px!important;
    min-height:40px!important;
    padding:3px!important;
  }
  html body .topbar .theme-switch .theme-dot{
    width:28px!important;
    min-width:28px!important;
    height:32px!important;
    min-height:32px!important;
  }
  html body .topbar .theme-switch .theme-dot.auto{min-width:43px!important;padding-inline:7px!important;}
  html body .topbar .topbar-account-info{
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
    max-width:190px!important;
    height:40px!important;
    min-height:40px!important;
    gap:6px!important;
    padding:4px 6px!important;
    overflow:hidden!important;
  }
  html body .topbar .topbar-role-badge{
    flex:0 1 auto!important;
    max-width:76px!important;
    min-height:28px!important;
    padding:5px 7px!important;
    font-size:.53rem!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{
    flex:1 1 auto!important;
    min-width:0!important;
    max-width:100px!important;
    padding:0 2px!important;
    font-size:.73rem!important;
    line-height:1.1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .topbar-logout{flex:0 0 auto!important;}
  html body .topbar .topbar-logout .btn{
    height:40px!important;
    min-height:40px!important;
    min-width:70px!important;
    padding:0 10px!important;
    font-size:.72rem!important;
    white-space:nowrap!important;
  }

  /* Tabellen bleiben wie am PC, werden aber nicht in unlesbare Spalten gepresst. */
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap){
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    overscroll-behavior-inline:contain!important;
    -webkit-overflow-scrolling:touch!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table{
    width:max(100%,840px)!important;
    min-width:840px!important;
    table-layout:auto!important;
  }
  html body .app-shell .main .content .incident-list-table{width:max(100%,900px)!important;min-width:900px!important;}
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) :is(th,td){
    min-width:82px!important;
    padding:12px 11px!important;
    vertical-align:middle!important;
    line-height:1.25!important;
    writing-mode:horizontal-tb!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) th{
    white-space:nowrap!important;
    font-size:.69rem!important;
    letter-spacing:.07em!important;
  }
  html body .app-shell .main .content .incident-title-cell{
    min-width:190px!important;
    max-width:230px!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
  }
  html body .app-shell .main .content .incident-action-cell{min-width:104px!important;}
  html body .app-shell .main .content :is(.pill,.status,.role,.badge,.secure-pill,.incident-status-pill){
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:max-content!important;
    min-width:max-content!important;
    max-width:none!important;
    min-height:34px!important;
    padding:7px 11px!important;
    font-size:.74rem!important;
    line-height:1.05!important;
    white-space:nowrap!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
  }
  html body .app-shell .main .content td:has(:is(.pill,.status,.role,.badge,.incident-status-pill)){min-width:132px!important;}
  html body .app-shell .main .content td .btn,
  html body .app-shell .main .content td button{
    min-width:max-content!important;
    white-space:nowrap!important;
  }
}

/* Mittlere Tablets mit sichtbarer Sidebar: eine echte, ruhige Kopfzeile. */
@media (min-width:960px) and (max-width:1180px){
  html body .topbar .topbar-desktop-shell{
    display:grid!important;
    grid-template-columns:minmax(132px,150px) minmax(215px,1fr) minmax(310px,auto)!important;
    grid-template-areas:"brand context actions"!important;
    column-gap:14px!important;
    row-gap:0!important;
    min-height:60px!important;
  }
  html body .topbar .topbar-title{grid-area:brand!important;}
  html body .topbar .topbar-context{grid-area:context!important;}
  html body .topbar .topbar-actions{grid-area:actions!important;}
}

/* Knappere Tabletbreiten: Feuerwehr bekommt eine eigene Zeile statt Überlappungen. */
@media (min-width:861px) and (max-width:959px){
  html body .topbar .topbar-desktop-shell{
    display:grid!important;
    grid-template-columns:minmax(130px,1fr) minmax(0,auto)!important;
    grid-template-areas:"brand actions" "context context"!important;
    column-gap:12px!important;
    row-gap:8px!important;
    padding-bottom:10px!important;
  }
  html body .topbar .topbar-title{grid-area:brand!important;}
  html body .topbar .topbar-context{grid-area:context!important;}
  html body .topbar .topbar-actions{grid-area:actions!important;}
}

/* Kleine Tablets behalten die bereits funktionierende Overlay-Sidebar. */
@media (min-width:761px) and (max-width:860px){
  html body .app-shell{display:block!important;}
  html body .sidebar{
    position:fixed!important;
    width:min(84vw,300px)!important;
    min-width:0!important;
    max-width:min(84vw,300px)!important;
  }
}

/* Große iPads im Querformat: nur Touch-Geräte, normale Desktops bleiben unberührt. */
@media (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  html body .app-shell{grid-template-columns:248px minmax(0,1fr)!important;}
  html body .sidebar{width:248px!important;min-width:248px!important;max-width:248px!important;padding-inline:13px!important;}
  html body .sidebar nav a{gap:10px!important;padding:10px!important;font-size:.88rem!important;line-height:1.22!important;word-break:normal!important;overflow-wrap:normal!important;}
  html body .sidebar nav a span{flex:0 0 30px!important;width:30px!important;min-width:30px!important;}
  html body .topbar .topbar-desktop-shell{
    grid-template-columns:minmax(160px,178px) minmax(285px,1fr) minmax(350px,auto)!important;
    grid-template-areas:"brand context actions"!important;
    align-items:center!important;
    gap:14px!important;
    min-height:62px!important;
    padding:9px 14px!important;
  }
  html body .topbar .department-context-switch,
  html body .topbar .department-context-static{height:42px!important;min-height:42px!important;max-height:42px!important;align-items:center!important;}
  html body .topbar .topbar-actions,
  html body .topbar .topbar-user-cluster{height:42px!important;min-height:42px!important;gap:7px!important;}
  html body .topbar .topbar-account-info{max-width:205px!important;height:40px!important;min-height:40px!important;}
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge{max-width:108px!important;}
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap){overflow-x:auto!important;overflow-y:visible!important;}
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table{width:max(100%,900px)!important;min-width:900px!important;table-layout:auto!important;}
  html body .app-shell .main .content .incident-list-table{width:max(100%,940px)!important;min-width:940px!important;}
  html body .app-shell .main .content :is(th,td){word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;}
  html body .app-shell .main .content :is(.pill,.status,.role,.badge,.incident-status-pill){min-height:34px!important;padding:7px 11px!important;white-space:nowrap!important;}
}

/* polish-v1278.css */
/* Retter-Portal v1.2.78
   - Select-Pfeile in Formularen mit sauberem Innenabstand
   - Tablet-Header gezielt ausrichten, ohne Smartphone- oder Desktop-Header zu verändern */

/* Native Select-Pfeile in Inhaltsformularen nicht direkt am rechten Rand. */
html body .app-shell .main .content select:not([multiple]){
  -webkit-appearance:none!important;
  appearance:none!important;
  padding-right:52px!important;
  background-image:
    linear-gradient(45deg,transparent 50%,currentColor 50%),
    linear-gradient(135deg,currentColor 50%,transparent 50%)!important;
  background-position:
    calc(100% - 29px) 50%,
    calc(100% - 22px) 50%!important;
  background-size:7px 7px,7px 7px!important;
  background-repeat:no-repeat!important;
}

/* Klassische Tabletbreiten sowie große Touch-Tablets im Querformat. */
@media (min-width:761px) and (max-width:1180px),
       (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  html body .topbar .topbar-desktop-shell{
    display:grid!important;
    grid-template-columns:minmax(150px,172px) minmax(245px,1fr) max-content!important;
    grid-template-areas:"brand context actions"!important;
    align-items:center!important;
    column-gap:16px!important;
    row-gap:0!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:64px!important;
    padding:9px 14px!important;
  }

  html body .topbar .topbar-tablet-menu{display:none!important;}
  html body .topbar .topbar-title{
    grid-area:brand!important;
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
    height:44px!important;
    margin:0!important;
    padding:0!important;
  }
  html body .topbar .topbar-eyebrow{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    min-height:44px!important;
    height:44px!important;
    margin:0!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  html body .topbar .topbar-eyebrow>span:first-child{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  html body .topbar .topbar-version{
    flex:0 0 auto!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:26px!important;
    height:26px!important;
    margin:0!important;
    padding:0 8px!important;
    line-height:26px!important;
  }

  html body .topbar .topbar-context{
    grid-area:context!important;
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
    height:44px!important;
    margin:0!important;
    padding: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;
    min-width:0!important;
    max-width:100%!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    margin:0!important;
    padding:4px 6px 4px 11px!important;
    border-radius:15px!important;
    overflow:hidden!important;
  }
  html body .topbar .department-context-switch>span,
  html body .topbar .department-context-static>span{
    position:static!important;
    inset:auto!important;
    display:flex!important;
    align-items:center!important;
    width:auto!important;
    min-width:max-content!important;
    max-width:none!important;
    height:36px!important;
    margin:0!important;
    padding:0!important;
    line-height:36px!important;
    white-space:nowrap!important;
  }
  html body .topbar .department-context-switch select,
  html body .topbar .department-context-static strong{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:36px!important;
    min-height:36px!important;
    max-height:36px!important;
    margin:0!important;
    padding-top:0!important;
    padding-bottom:0!important;
    line-height:36px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  html body .topbar .topbar-actions{
    grid-area:actions!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    min-width:0!important;
    height:44px!important;
    min-height:44px!important;
    margin:0!important;
    padding:0!important;
    gap:8px!important;
    overflow:visible!important;
  }
  html body .topbar .topbar-user-cluster{
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
    height:44px!important;
    min-height:44px!important;
    gap:8px!important;
    overflow:visible!important;
  }
  html body .topbar .theme-switch,
  html body .topbar .topbar-account-info,
  html body .topbar .topbar-logout,
  html body .topbar .topbar-logout .btn{
    align-self:center!important;
    margin-top:0!important;
    margin-bottom:0!important;
  }
  html body .topbar .topbar-account-info{
    min-width:0!important;
    max-width:190px!important;
    height:40px!important;
    min-height:40px!important;
  }
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge{
    min-width:0!important;
    max-width:104px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
}

/* Schmalere Tablets: zweite, saubere Kontextzeile statt Zusammenquetschen. */
@media (min-width:761px) and (max-width:980px){
  html body .topbar .topbar-desktop-shell{
    grid-template-columns:minmax(150px,1fr) max-content!important;
    grid-template-areas:"brand actions" "context context"!important;
    column-gap:14px!important;
    row-gap:8px!important;
    min-height:106px!important;
    padding-bottom:10px!important;
  }
  html body .topbar .topbar-context{height:44px!important;}
  html body .topbar .department-context-switch,
  html body .topbar .department-context-static{max-width:none!important;}
}

/* tablet-v1279.css */
/* Retter-Portal v1.2.79 – tablet-only layout repair.
   Smartphone <=760px and normal desktop >1180px stay unchanged.
   Large iPads in landscape are targeted only as coarse pointer devices. */

@media (min-width:761px) and (max-width:1180px),
       (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  :root{--rp-tablet-sidebar:232px!important;}

  html,body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  html body .app-shell{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }

  /* Sidebar and content use the exact same width variable: no overlap and no dead gap. */
  html body .sidebar{
    position:fixed!important;
    inset:0 auto 0 0!important;
    width:var(--rp-tablet-sidebar)!important;
    min-width:var(--rp-tablet-sidebar)!important;
    max-width:var(--rp-tablet-sidebar)!important;
    height:100dvh!important;
    padding:16px 12px 22px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    z-index:1400!important;
  }
  html body .main{
    width:calc(100% - var(--rp-tablet-sidebar))!important;
    min-width:0!important;
    max-width:calc(100% - var(--rp-tablet-sidebar))!important;
    margin-left:var(--rp-tablet-sidebar)!important;
    overflow:visible!important;
  }
  html body .content{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:18px 18px 34px!important;
    overflow-x:hidden!important;
  }

  html body .sidebar .brand{
    width:100%!important;
    min-width:0!important;
    margin-bottom:12px!important;
    padding:7px 5px 14px!important;
  }
  html body .sidebar .brand-logo{
    display:block!important;
    width:100%!important;
    max-width:205px!important;
    height:auto!important;
    object-fit:contain!important;
    object-position:left center!important;
  }
  html body .sidebar .nav-section{
    margin:17px 9px 8px!important;
    font-size:.64rem!important;
    letter-spacing:.12em!important;
  }
  html body .sidebar nav a{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
    min-height:44px!important;
    gap:9px!important;
    margin:3px 0!important;
    padding:9px 10px!important;
    font-size:.86rem!important;
    line-height:1.2!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
  }
  html body .sidebar nav a span{
    flex:0 0 30px!important;
    width:30px!important;
    min-width:30px!important;
    height:30px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
  }

  /* One coherent header row where the available width permits it. */
  html body .topbar{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:visible!important;
  }
  html body .topbar .topbar-desktop-shell{
    display:grid!important;
    grid-template-columns:minmax(150px,174px) minmax(240px,1fr) max-content!important;
    grid-template-areas:"brand context actions"!important;
    align-items:center!important;
    column-gap:14px!important;
    row-gap:0!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:64px!important;
    margin:0!important;
    padding:9px 14px!important;
    overflow:visible!important;
  }
  html body .topbar .topbar-title{
    grid-area:brand!important;
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }
  html body .topbar .topbar-eyebrow{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    height:42px!important;
    min-height:42px!important;
    margin:0!important;
    font-size:.62rem!important;
    line-height:1!important;
    letter-spacing:.08em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
  }
  html body .topbar .topbar-eyebrow>span:first-child{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  html body .topbar .topbar-version{
    flex:0 0 auto!important;
    height:26px!important;
    min-height:26px!important;
    margin:0!important;
    padding:0 8px!important;
    font-size:.58rem!important;
    line-height:26px!important;
  }

  html body .topbar .topbar-context{
    grid-area:context!important;
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;
  }
  html body .topbar .department-context-switch,
  html body .topbar .department-context-static{
    display:grid!important;
    grid-template-columns:74px minmax(0,1fr)!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    margin:0!important;
    padding:4px 5px 4px 10px!important;
    border-radius:14px!important;
    overflow:hidden!important;
  }
  html body .topbar .department-context-switch>span,
  html body .topbar .department-context-static>span{
    position:static!important;
    inset:auto!important;
    display:flex!important;
    align-items:center!important;
    width:74px!important;
    min-width:74px!important;
    max-width:74px!important;
    height:34px!important;
    margin:0!important;
    padding:0!important;
    font-size:.57rem!important;
    line-height:1!important;
    letter-spacing:.08em!important;
    white-space:nowrap!important;
  }
  html body .topbar .department-context-switch select,
  html body .topbar .department-context-static strong{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:34px!important;
    min-height:34px!important;
    max-height:34px!important;
    margin:0!important;
    padding:0 34px 0 10px!important;
    font-size:.78rem!important;
    line-height:34px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  html body .topbar .topbar-actions{
    grid-area:actions!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    width:auto!important;
    min-width:0!important;
    height:42px!important;
    min-height:42px!important;
    margin:0!important;
    padding:0!important;
    gap:8px!important;
    overflow:visible!important;
  }
  html body .topbar .theme-switch{
    flex:0 0 auto!important;
    height:40px!important;
    min-height:40px!important;
    margin:0!important;
    padding:3px!important;
  }
  html body .topbar .theme-switch .theme-dot{
    width:28px!important;
    min-width:28px!important;
    height:32px!important;
    min-height:32px!important;
    padding:0!important;
    font-size:.65rem!important;
  }
  html body .topbar .theme-switch .theme-dot.auto{
    width:auto!important;
    min-width:43px!important;
    padding:0 7px!important;
  }
  html body .topbar .topbar-user-cluster{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    width:auto!important;
    min-width:0!important;
    height:42px!important;
    min-height:42px!important;
    margin:0!important;
    gap:8px!important;
    overflow:visible!important;
  }
  html body .topbar .topbar-account-info{
    display:flex!important;
    align-items:center!important;
    width:auto!important;
    min-width:0!important;
    max-width:205px!important;
    height:40px!important;
    min-height:40px!important;
    margin:0!important;
    padding:4px 6px!important;
    gap:6px!important;
    overflow:hidden!important;
  }
  html body .topbar .topbar-role-badge{
    flex:0 1 auto!important;
    min-width:0!important;
    max-width:78px!important;
    min-height:28px!important;
    padding:5px 7px!important;
    font-size:.53rem!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{
    flex:1 1 auto!important;
    display:block!important;
    min-width:0!important;
    max-width:108px!important;
    padding:0 2px!important;
    font-size:.73rem!important;
    line-height:1.1!important;
    text-align:left!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .topbar .topbar-logout{
    flex:0 0 auto!important;
    margin:0!important;
  }
  html body .topbar .topbar-logout .btn{
    height:40px!important;
    min-height:40px!important;
    min-width:70px!important;
    margin:0!important;
    padding:0 10px!important;
    font-size:.72rem!important;
    white-space:nowrap!important;
  }

  /* Tablet content must never slide under the fixed sidebar. */
  html body .content>*{
    min-width:0!important;
    max-width:100%!important;
  }
  html body .content :is(.page-head,.page-hero,.card,.toolbar,.pagination,.grid,.form-grid,.detail-grid,.info-grid,.table-wrap,.data-table-card,.checks-table-wrap){
    min-width:0!important;
    max-width:100%!important;
  }
  html body .content :is(.page-head,.page-hero){
    gap:16px!important;
  }
  html body .content :is(.pill,.status,.role,.badge,.secure-pill,.incident-status-pill){
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:max-content!important;
    min-width:max-content!important;
    max-width:100%!important;
    min-height:34px!important;
    padding:7px 11px!important;
    font-size:.73rem!important;
    line-height:1.08!important;
    white-space:nowrap!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
  }
  html body .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;
    overscroll-behavior-inline:contain!important;
    -webkit-overflow-scrolling:touch!important;
  }
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table{
    width:max(100%,820px)!important;
    min-width:820px!important;
    table-layout:auto!important;
  }
  html body .content .incident-list-table{
    width:max(100%,880px)!important;
    min-width:880px!important;
  }
  html body .content :is(th,td){
    word-break:normal!important;
    overflow-wrap:break-word!important;
    hyphens:none!important;
  }
}

/* Medium tablets need a second row, but the sidebar/content geometry stays identical. */
@media (min-width:761px) and (max-width:1080px){
  html body .topbar .topbar-desktop-shell{
    grid-template-columns:minmax(145px,1fr) max-content!important;
    grid-template-areas:"brand actions" "context context"!important;
    column-gap:12px!important;
    row-gap:8px!important;
    min-height:106px!important;
    padding-bottom:10px!important;
  }
  html body .topbar .topbar-context{height:42px!important;}
}

/* Portrait/small tablets use the existing overlay-sidebar pattern. */
@media (min-width:761px) and (max-width:900px){
  :root{--rp-tablet-sidebar:0px!important;}
  html body .sidebar{
    width:min(84vw,310px)!important;
    min-width:0!important;
    max-width:min(84vw,310px)!important;
    transform:translateX(calc(-100% - 18px))!important;
    transition:transform .22s ease!important;
    z-index:4400!important;
  }
  html body.sidebar-open .sidebar{transform:translateX(0)!important;}
  html body .main{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
  }
  html body .topbar .topbar-desktop-shell{
    grid-template-columns:42px minmax(130px,1fr) max-content!important;
    grid-template-areas:"menu brand actions" "context context context"!important;
  }
  html body .topbar .topbar-tablet-menu{
    grid-area:menu!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    padding:0!important;
    border:1px solid var(--line)!important;
    border-radius:13px!important;
    background:var(--surface)!important;
    color:var(--text)!important;
  }
}

/* tablet-v1280.css */
/* Retter-Portal v1.2.80 – tablet-only polish.
   Smartphone <=760px and normal desktop >1366px remain untouched. */
@media (min-width:761px) and (max-width:1180px),
       (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  /* Exactly one sidebar logo is visible. The generic tablet rule in v1.2.79
     must not override the theme-specific logo visibility. */
  html body .sidebar .brand-logo.logo-light,
  html body .sidebar .brand-logo.logo-dark{display:none!important;}
  html body[data-theme="light"] .sidebar .brand-logo.logo-light{display:block!important;}
  html body[data-theme="dark"] .sidebar .brand-logo.logo-dark{display:block!important;}

  html body .sidebar .brand-logo-wrap{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    min-width:0!important;
    min-height:64px!important;
    overflow:hidden!important;
  }
  html body .sidebar .brand-logo{
    width:min(204px,100%)!important;
    max-width:100%!important;
    height:auto!important;
    object-fit:contain!important;
    object-position:left center!important;
  }

  /* Stable one-row header for landscape tablets. */
  html body .topbar .topbar-desktop-shell{
    grid-template-columns:minmax(188px,210px) minmax(250px,1fr) minmax(360px,max-content)!important;
    grid-template-areas:"brand context actions"!important;
    align-items:center!important;
    column-gap:16px!important;
    row-gap:0!important;
    min-height:66px!important;
    padding:9px 16px!important;
  }
  html body .topbar .topbar-title,
  html body .topbar .topbar-context,
  html body .topbar .topbar-actions{
    min-width:0!important;
    height:44px!important;
    min-height:44px!important;
    align-self:center!important;
  }
  html body .topbar .topbar-title{overflow:hidden!important;}
  html body .topbar .topbar-eyebrow{
    gap:7px!important;
    width:100%!important;
    min-width:0!important;
    height:44px!important;
    overflow:hidden!important;
  }
  html body .topbar .topbar-eyebrow>span:first-child{
    flex:1 1 auto!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  html body .topbar .topbar-version{
    flex:0 0 auto!important;
    margin-left:2px!important;
  }

  html body .topbar .topbar-context{
    display:flex!important;
    align-items:center!important;
    justify-content:stretch!important;
    padding-left:2px!important;
  }
  html body .topbar .department-context-switch,
  html body .topbar .department-context-static{
    grid-template-columns:72px minmax(0,1fr)!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    margin:0!important;
    padding:4px 5px 4px 10px!important;
    overflow:hidden!important;
  }
  html body .topbar .department-context-switch>span,
  html body .topbar .department-context-static>span{
    display:flex!important;
    align-items:center!important;
    width:72px!important;
    min-width:72px!important;
    max-width:72px!important;
    height:34px!important;
    line-height:1!important;
  }
  html body .topbar .department-context-switch select,
  html body .topbar .department-context-static strong{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:34px!important;
    min-height:34px!important;
    line-height:34px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  html body .topbar .topbar-actions{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:8px!important;
    overflow:hidden!important;
  }
  html body .topbar .theme-switch,
  html body .topbar .topbar-user-cluster,
  html body .topbar .topbar-account-info,
  html body .topbar .topbar-logout,
  html body .topbar .topbar-logout .btn{
    align-self:center!important;
    margin-top:0!important;
    margin-bottom:0!important;
  }
  html body .topbar .topbar-account-info{
    max-width:210px!important;
    min-width:0!important;
    overflow:hidden!important;
  }
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge{
    max-width:112px!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  /* Tablet content: readable pills, stable table cells, no character-by-character breaks. */
  html body .content :is(.pill,.status,.role,.badge,.secure-pill,.incident-status-pill,.topbar-role-badge){
    min-width:0!important;
    width:auto!important;
    max-width:100%!important;
    min-height:34px!important;
    padding:7px 10px!important;
    line-height:1.05!important;
    white-space:nowrap!important;
    word-break:keep-all!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
  }
  html body .content :is(th,td){
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
  }
  html body .content :is(th,td) :is(.pill,.status,.role,.badge,.incident-status-pill){
    font-size:clamp(.68rem,1.1vw,.78rem)!important;
  }
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap){
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
  }
}

/* Medium/portrait tablets: use two clean rows instead of forcing overlaps. */
@media (min-width:761px) and (max-width:1100px){
  html body .topbar .topbar-desktop-shell{
    grid-template-columns:minmax(170px,1fr) max-content!important;
    grid-template-areas:"brand actions" "context context"!important;
    column-gap:12px!important;
    row-gap:8px!important;
    min-height:108px!important;
    padding:9px 14px 10px!important;
  }
  html body .topbar .topbar-context{padding-left:0!important;}
  html body .topbar .department-context-switch,
  html body .topbar .department-context-static{max-width:100%!important;}
}

/* tablet-v1281.css */
/* Retter-Portal v1.2.81 – tablet content polish only.
   Header, desktop and smartphone layout stay untouched. */
@media (min-width:761px) and (max-width:1180px),
       (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  /* Forms keep a calm two-column desktop-like layout without squeezing controls. */
  html body .content .incident-form{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:16px!important;
    align-items:start!important;
  }
  html body .content .incident-form > label,
  html body .content .incident-form > .smart-select-field{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-content:start!important;
    gap:9px!important;
    min-width:0!important;
    width:100%!important;
    min-height:104px!important;
    height:auto!important;
    margin:0!important;
    padding:14px!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }
  html body .content .incident-form > label.full,
  html body .content .incident-form > section.full,
  html body .content .incident-form > .full,
  html body .content .incident-form > .incident-command-smart-select{
    grid-column:1 / -1!important;
  }
  html body .content .incident-form > label > input,
  html body .content .incident-form > label > select,
  html body .content .incident-form > label > textarea,
  html body .content .incident-form > .smart-select-field input,
  html body .content .incident-form > .smart-select-field select{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:48px!important;
    height:48px!important;
    margin:0!important;
    padding-top:0!important;
    padding-bottom:0!important;
    box-sizing:border-box!important;
  }
  html body .content .incident-form > label > textarea{
    height:auto!important;
    min-height:104px!important;
    padding-top:13px!important;
    padding-bottom:13px!important;
  }
  html body .content .incident-form > label:has(input[type="date"]),
  html body .content .incident-form > label:has(input[type="time"]){
    min-height:104px!important;
  }
  html body .content .incident-form input[type="date"],
  html body .content .incident-form input[type="time"]{
    position:static!important;
    inset:auto!important;
    transform:none!important;
    line-height:48px!important;
  }
  html body .content .incident-form .incident-command-smart-select{
    min-height:104px!important;
  }
  html body .content .incident-form .incident-command-smart-select .smart-select-results{
    max-width:100%!important;
  }
  html body .content .incident-form .form-subcard,
  html body .content .incident-form .incident-vehicle-builder{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  /* Pills and small controls keep enough breathing room on tablets. */
  html body .content :is(.pill,.status,.role,.badge,.incident-status-pill,.secure-pill){
    min-height:36px!important;
    padding:8px 12px!important;
    line-height:1.15!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  html body .content :is(select,.btn,button.btn,a.btn){
    min-height:42px!important;
  }
}

/* Portrait tablets get one column instead of compressed paired fields. */
@media (min-width:761px) and (max-width:900px){
  html body .content .incident-form{
    grid-template-columns:minmax(0,1fr)!important;
  }
  html body .content .incident-form > label,
  html body .content .incident-form > .smart-select-field,
  html body .content .incident-form > label.full,
  html body .content .incident-form > section.full,
  html body .content .incident-form > .full,
  html body .content .incident-form > .incident-command-smart-select{
    grid-column:1!important;
  }
}

/* responsive-v1282.css */
/* Retter-Portal v1.2.83
   Content-only responsive polish. Header files/layout remain untouched. */

/* Dashboard: dates such as 10.11.2026 must stay completely inside narrow metric cards. */
html body .rp55-own-metrics .agt-date-metric,
html body .dashboard-member-metrics .agt-date-metric,
html body .dashboard-own-compact .agt-date-metric{
  min-width:0!important;
  overflow:hidden!important;
}
html body .rp55-own-metrics .agt-date-metric span,
html body .dashboard-member-metrics .agt-date-metric span,
html body .dashboard-own-compact .agt-date-metric span{
  font-size:clamp(.64rem,.74vw,.76rem)!important;
  line-height:1.14!important;
  letter-spacing:.065em!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
html body .rp55-own-metrics .agt-date-metric strong,
html body .dashboard-member-metrics .agt-date-metric strong,
html body .dashboard-own-compact .agt-date-metric strong{
  max-width:100%!important;
  font-size:clamp(.98rem,1.18vw,1.34rem)!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  white-space:nowrap!important;
  font-variant-numeric:tabular-nums!important;
  overflow:hidden!important;
  text-overflow:clip!important;
}

/* Tablet form layout: keep Einsatzleitung in the normal two-column flow. */
@media (min-width:761px) and (max-width:1180px),
       (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  html body .content .incident-form > .incident-command-smart-select{
    grid-column:auto!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  html body .content .incident-form > :is(label,.smart-select-field,.form-subcard,section){
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  html body .content .incident-form :is(input,select,textarea){
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    font-size:clamp(.92rem,1.4vw,1rem)!important;
  }
  html body .content .incident-form select{
    padding-right:46px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body .content .incident-form > :is(label,.smart-select-field) > label,
  html body .content .incident-form > label{
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }
  html body .content .incident-form .smart-select-field input{
    text-overflow:ellipsis!important;
  }
  html body .content .incident-form input[type="date"],
  html body .content .incident-form input[type="time"]{
    padding-left:14px!important;
    padding-right:14px!important;
    text-align:center!important;
    font-variant-numeric:tabular-nums!important;
  }
  html body .content :is(.pill,.status,.role,.badge,.incident-status-pill,.secure-pill){
    max-width:100%!important;
    box-sizing:border-box!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
    text-align:center!important;
  }
}

/* Portrait tablet: one column remains intentional, but every control stays within its card. */
@media (min-width:761px) and (max-width:900px){
  html body .content .incident-form > .incident-command-smart-select{
    grid-column:1!important;
  }
}

/* tablet-v1283.css */
/* Retter-Portal v1.2.83 – ausschließlich Tablet-Inhaltskorrekturen.
   Desktop-, Smartphone- und sämtliche Header-Dateien bleiben unverändert. */

@media (min-width:761px) and (max-width:1180px),
       (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  /* Das Einsatzformular bleibt zweispaltig, aber jedes Feld erhält exakt denselben Platz. */
  html body .app-shell .main .content .incident-form{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:16px!important;
    align-items:stretch!important;
  }
  html body .app-shell .main .content .incident-form > :is(label,.smart-select-field){
    align-self:stretch!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:104px!important;
    height:100%!important;
    margin:0!important;
    padding:14px!important;
    box-sizing:border-box!important;
  }
  html body .app-shell .main .content .incident-form > label,
  html body .app-shell .main .content .incident-form > .incident-command-smart-select,
  html body .app-shell .main .content .incident-form > .incident-command-smart-select > label{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-content:start!important;
    gap:9px!important;
  }
  html body .app-shell .main .content .incident-form > .incident-command-smart-select > label{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
  }
  html body .app-shell .main .content .incident-form > :is(label,.smart-select-field) :is(input,select,textarea){
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  /* Beteiligte Löschzüge: Titel und Erklärung sauber untereinander statt gequetscht nebeneinander. */
  html body .app-shell .main .content .incident-unit-select{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    padding:18px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }
  html body .app-shell .main .content .incident-unit-select > .form-section{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:6px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
  }
  html body .app-shell .main .content .incident-unit-select > .form-section > strong,
  html body .app-shell .main .content .incident-unit-select > .form-section > span{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    text-align:left!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
  }
  html body .app-shell .main .content .incident-unit-select > .form-section > strong{
    font-size:1rem!important;
    line-height:1.25!important;
  }
  html body .app-shell .main .content .incident-unit-select > .form-section > span{
    font-size:.88rem!important;
    line-height:1.45!important;
  }

  /* Einheiten selbst bleiben linksbündig und werden nicht an entgegengesetzte Ränder gedrückt. */
  html body .app-shell .main .content .incident-unit-select .unit-choice-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
  }
  html body .app-shell .main .content .incident-unit-select .unit-choice{
    display:grid!important;
    grid-template-columns:22px minmax(0,1fr)!important;
    align-items:center!important;
    justify-content:start!important;
    gap:12px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:64px!important;
    margin:0!important;
    padding:13px 14px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }
  html body .app-shell .main .content .incident-unit-select .unit-choice > input{
    position:static!important;
    width:18px!important;
    min-width:18px!important;
    max-width:18px!important;
    height:18px!important;
    min-height:18px!important;
    margin:0!important;
    padding:0!important;
    justify-self:start!important;
  }
  html body .app-shell .main .content .incident-unit-select .unit-choice > span{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:3px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    text-align:left!important;
    overflow:hidden!important;
  }
  html body .app-shell .main .content .incident-unit-select .unit-choice :is(strong,small){
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    text-align:left!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
  }

  /* Vollbreitenfelder folgen sauber unter dem Raster. */
  html body .app-shell .main .content .incident-form > :is(.full,section.full,.form-subcard.full){
    grid-column:1 / -1!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
}

@media (min-width:761px) and (max-width:930px){
  html body .app-shell .main .content .incident-form{
    grid-template-columns:minmax(0,1fr)!important;
  }
  html body .app-shell .main .content .incident-form > :is(label,.smart-select-field,.full,section.full,.form-subcard.full){
    grid-column:1!important;
  }
  html body .app-shell .main .content .incident-unit-select .unit-choice-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
}

/* content-v1284.css */
/* Retter-Portal v1.2.84 – ausschließlich Inhaltskorrekturen.
   Desktop-, Tablet- und Smartphone-Header bleiben unverändert. */

/* Ein leerer Fahrzeugdatensatz hat nichts zu entfernen. */
html body [data-incident-vehicle-remove][hidden]{
  display:none!important;
}

/* Öffentliche Startseite: das Beispiel-Badge darf auf Smartphones nie getrennt werden. */
html body .rp55-preview-head > span{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  width:max-content!important;
  min-width:max-content!important;
  max-width:none!important;
  white-space:nowrap!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}

/* Tablets: Formularkarten müssen ihre Bedienelemente vollständig enthalten. */
@media (min-width:761px) and (max-width:1180px),
       (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  html body .app-shell .main .content .incident-form{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-auto-rows:auto!important;
    align-items:start!important;
    gap:18px!important;
  }

  html body .app-shell .main .content .incident-form > label,
  html body .app-shell .main .content .incident-form > .incident-command-smart-select{
    align-self:start!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    gap:9px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    min-height:108px!important;
    margin:0!important;
    padding:14px!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }

  html body .app-shell .main .content .incident-form > .incident-command-smart-select > label{
    display:flex!important;
    flex-direction:column!important;
    gap:9px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    background:none!important;
    border:0!important;
    box-shadow:none!important;
    overflow:visible!important;
  }

  html body .app-shell .main .content .incident-form > label > :is(input,select,textarea),
  html body .app-shell .main .content .incident-form > .incident-command-smart-select input{
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    display:block!important;
    flex:0 0 auto!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    box-sizing:border-box!important;
  }

  html body .app-shell .main .content .incident-form > label > :is(input,select),
  html body .app-shell .main .content .incident-form > .incident-command-smart-select input{
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
    line-height:1.2!important;
  }

  html body .app-shell .main .content .incident-form input[type="date"],
  html body .app-shell .main .content .incident-form input[type="time"]{
    padding:0 14px!important;
    line-height:normal!important;
    text-align:center!important;
    font-variant-numeric:tabular-nums!important;
  }

  html body .app-shell .main .content .incident-form > label > textarea{
    min-height:112px!important;
    height:auto!important;
    padding:13px 14px!important;
  }

  html body .app-shell .main .content .incident-form > :is(.full,section.full,.form-subcard.full){
    grid-column:1 / -1!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }

  html body .app-shell .main .content .incident-unit-select{
    overflow:visible!important;
  }

  html body .app-shell .main .content .incident-unit-select .form-section,
  html body .app-shell .main .content .incident-unit-select .unit-choice-grid{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }

  html body .app-shell .main .content .incident-unit-select .unit-choice{
    min-width:0!important;
    max-width:100%!important;
  }
}

/* Schmale Tablets: lieber eine klare Spalte als gequetschte oder überlaufende Karten. */
@media (min-width:761px) and (max-width:930px){
  html body .app-shell .main .content .incident-form{
    grid-template-columns:minmax(0,1fr)!important;
  }
  html body .app-shell .main .content .incident-form > :is(label,.smart-select-field,.full,section.full,.form-subcard.full){
    grid-column:1!important;
  }
}

/* content-v1285.css */
/* Retter-Portal v1.2.85 – ausschließlich Tablet-Korrekturen im Einsatzformular.
   Header, Desktop- und Smartphone-Ansicht bleiben unverändert. */
@media (min-width:761px) and (max-width:1180px),
       (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  /* Datum und Uhrzeit: Safari/iPad darf keine intrinsische Breite über die Karte hinaus erzwingen. */
  html body .app-shell .main .content .incident-form > label.incident-datetime-field{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto 50px!important;
    align-content:start!important;
    gap:9px!important;
    inline-size:100%!important;
    width:100%!important;
    min-inline-size:0!important;
    min-width:0!important;
    max-inline-size:100%!important;
    max-width:100%!important;
    min-height:108px!important;
    height:108px!important;
    margin:0!important;
    padding:14px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }
  html body .app-shell .main .content .incident-form > label.incident-datetime-field > input{
    position:static!important;
    inset:auto!important;
    transform:none!important;
    display:block!important;
    justify-self:stretch!important;
    align-self:stretch!important;
    inline-size:100%!important;
    width:100%!important;
    min-inline-size:0!important;
    min-width:0!important;
    max-inline-size:100%!important;
    max-width:100%!important;
    block-size:50px!important;
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
    margin:0!important;
    padding:0 40px 0 14px!important;
    border-radius:14px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    text-align:center!important;
    font-variant-numeric:tabular-nums!important;
  }
  @supports (width:-webkit-fill-available){
    html body .app-shell .main .content .incident-form > label.incident-datetime-field > input{
      inline-size:-webkit-fill-available!important;
      width:-webkit-fill-available!important;
    }
  }
  html body .app-shell .main .content .incident-form > label.incident-datetime-field > input::-webkit-date-and-time-value{
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
    text-align:center!important;
  }
  html body .app-shell .main .content .incident-form > label.incident-datetime-field > input::-webkit-calendar-picker-indicator{
    flex:0 0 auto!important;
    margin:0!important;
  }

  /* Einsatzleitung erhält dieselbe sichtbare Karte wie Status und die übrigen Felder. */
  html body .app-shell .main .content .incident-form > .incident-command-smart-select{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto 50px!important;
    align-content:start!important;
    gap:9px!important;
    inline-size:100%!important;
    width:100%!important;
    min-inline-size:0!important;
    min-width:0!important;
    max-inline-size:100%!important;
    max-width:100%!important;
    min-height:108px!important;
    height:108px!important;
    margin:0!important;
    padding:14px!important;
    border:1px solid rgba(118,134,157,.16)!important;
    border-radius:18px!important;
    background:rgba(148,163,184,.075)!important;
    box-shadow:none!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }
  body[data-theme="dark"] .app-shell .main .content .incident-form > .incident-command-smart-select{
    background:rgba(255,255,255,.035)!important;
    border-color:rgba(255,255,255,.07)!important;
  }
  @media (prefers-color-scheme:dark){
    body[data-theme="system"] .app-shell .main .content .incident-form > .incident-command-smart-select{
      background:rgba(255,255,255,.035)!important;
      border-color:rgba(255,255,255,.07)!important;
    }
  }
  html body .app-shell .main .content .incident-form > .incident-command-smart-select > label{
    display:contents!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  html body .app-shell .main .content .incident-form > .incident-command-smart-select input{
    position:static!important;
    inset:auto!important;
    transform:none!important;
    display:block!important;
    justify-self:stretch!important;
    align-self:stretch!important;
    inline-size:100%!important;
    width:100%!important;
    min-inline-size:0!important;
    min-width:0!important;
    max-inline-size:100%!important;
    max-width:100%!important;
    block-size:50px!important;
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
    margin:0!important;
    padding:0 14px!important;
    border:1px solid var(--line)!important;
    border-radius:14px!important;
    background:var(--surface-2)!important;
    color:var(--text)!important;
    box-sizing:border-box!important;
  }
}

/* content-v1286.css */
/* Retter-Portal v1.2.86 – Fahrzeug-Zusatzfelder mobil nur nach Auswahl anzeigen. */
html body [data-incident-vehicle-row] [data-vehicle-extra][hidden],
html body [data-incident-vehicle-row].is-empty-vehicle-row [data-vehicle-extra],
html body [data-incident-vehicle-row].is-empty-vehicle-row .incident-crew-box,
html body [data-incident-vehicle-row].is-empty-vehicle-row details.incident-crew-box{
  display:none!important;
}

html body [data-incident-vehicle-row].has-vehicle [data-vehicle-extra]:not([hidden]){
  display:grid!important;
}

/* person-picker-v1287.css */
/* v1.2.87 – reliable person filtering, including iOS Safari. */
.person-choice.is-filtered-out,
.person-choice[aria-hidden="true"]{
  display:none!important;
}
.person-choice-grid.has-no-person-results::after{
  content:"Keine passenden Personen gefunden.";
  display:block;
  grid-column:1 / -1;
  padding:14px;
  border:1px dashed var(--line);
  border-radius:14px;
  color:var(--muted);
  font-weight:800;
  text-align:center;
}

/* person-picker-v1288.css */
/* v1.2.88 – force person-picker filtering to affect the rendered list on iOS Safari. */
html body [data-person-picker] [data-person-picker-list] > .person-choice.is-filtered-out,
html body [data-person-picker] [data-person-picker-list] > .person-choice[hidden],
html body [data-person-picker] [data-person-picker-list] > .person-choice[aria-hidden="true"]{
  display:none!important;
  visibility:hidden!important;
}
html body [data-person-picker] [data-person-picker-list].has-no-person-results{
  min-height:64px;
}
html body [data-person-picker] [data-person-picker-list].has-no-person-results::after{
  content:"Keine passenden Personen gefunden.";
  display:block;
  grid-column:1 / -1;
  padding:14px;
  border:1px dashed var(--line);
  border-radius:14px;
  color:var(--muted);
  font-weight:800;
  text-align:center;
}

/* landing-v1290.css */
/* Retter-Portal v1.2.90 – vollständige öffentliche Startseite.
   Ausschließlich auf .rp90-site begrenzt. */
.rp90-site{
  --rp90-red:#c8102e;
  --rp90-red-strong:#e11d48;
  --rp90-blue:#2563eb;
  --rp90-teal:#0f9f8f;
  --rp90-ink:var(--text);
  --rp90-muted:var(--muted);
  --rp90-panel:color-mix(in srgb,var(--surface) 96%,transparent);
  --rp90-panel-2:color-mix(in srgb,var(--surface-2) 94%,transparent);
  --rp90-line:var(--line-soft);
  width:100%;
  min-height:100vh;
  padding:18px 28px 34px;
  overflow-x:hidden;
}
.rp90-site main,.rp90-site>.portal-footer{width:min(1540px,100%);margin-inline:auto}
.rp90-nav{
  position:sticky;top:14px;z-index:30;
  width:min(1540px,100%);margin:0 auto;
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px;
  min-height:72px;padding:10px 12px 10px 16px;border-radius:22px;
  background:color-mix(in srgb,var(--surface) 88%,transparent);
  border:1px solid var(--rp90-line);
  box-shadow:0 16px 44px rgba(2,8,23,.13);
  backdrop-filter:blur(22px) saturate(1.25);
}
.rp90-brand{display:flex;align-items:center;gap:11px;min-width:210px}.rp90-brand-mark{position:relative;display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:var(--rp90-panel-2);border:1px solid var(--rp90-line)}.rp90-brand-mark img{position:absolute;width:34px;height:34px;object-fit:contain}.rp90-brand-copy strong{display:block;font-size:1.04rem;letter-spacing:-.035em}.rp90-brand-copy small{display:block;margin-top:2px;color:var(--rp90-muted);font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.rp90-nav-links{display:flex;justify-content:center;gap:4px}.rp90-nav-links a{padding:9px 12px;border-radius:11px;color:var(--rp90-muted);font-size:.88rem;font-weight:900}.rp90-nav-links a:hover{background:color-mix(in srgb,var(--rp90-red) 9%,transparent);color:var(--rp90-ink)}.rp90-nav-actions{display:flex;align-items:center;gap:8px}.rp90-login-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 13px;border-radius:12px;border:1px solid var(--rp90-line);background:var(--rp90-panel-2);font-weight:900}.rp90-nav-cta{min-height:42px;padding-inline:14px}.rp90-theme-switch{height:42px;box-shadow:none;background:var(--rp90-panel-2);border:1px solid var(--rp90-line)}.rp90-theme-switch button{color:var(--rp90-muted)}
.rp90-hero{
  display:grid;grid-template-columns:minmax(0,1.18fr) minmax(390px,.82fr);gap:34px;align-items:start;
  margin-top:20px;padding:48px;border-radius:32px;
  background:
    radial-gradient(circle at 0 0,color-mix(in srgb,var(--rp90-red) 15%,transparent),transparent 32%),
    radial-gradient(circle at 100% 8%,color-mix(in srgb,var(--rp90-blue) 14%,transparent),transparent 30%),
    linear-gradient(145deg,var(--rp90-panel),color-mix(in srgb,var(--surface-2) 92%,transparent));
  border:1px solid var(--rp90-line);box-shadow:0 26px 80px rgba(2,8,23,.12);
}
.rp90-hero-copy{min-width:0;padding:10px 4px 4px}.rp90-eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 14px;color:var(--rp90-muted);font-size:.72rem;font-weight:950;text-transform:uppercase;letter-spacing:.14em}.rp90-eyebrow>span{width:9px;height:9px;border-radius:50%;background:var(--rp90-red-strong);box-shadow:0 0 0 5px color-mix(in srgb,var(--rp90-red) 12%,transparent)}.rp90-hero h1{max-width:950px;margin:0;font-size:clamp(3.5rem,5.6vw,6.7rem);line-height:.94;letter-spacing:-.07em;text-wrap:balance}.rp90-lead{max-width:850px;margin:24px 0 0;color:var(--rp90-muted);font-size:clamp(1.02rem,1.18vw,1.23rem);font-weight:700;line-height:1.65}.rp90-hero-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:28px}.rp90-hero-actions .btn{min-height:50px;padding-inline:18px}.rp90-secondary{background:var(--rp90-panel-2);border-color:var(--rp90-line);box-shadow:none}.rp90-assurance{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:30px}.rp90-assurance>div{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:start;min-width:0;padding:13px;border-radius:16px;background:color-mix(in srgb,var(--surface-2) 82%,transparent);border:1px solid var(--rp90-line)}.rp90-assurance b{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:color-mix(in srgb,var(--rp90-red) 11%,transparent);color:var(--rp90-red-strong);font-size:.68rem;letter-spacing:.08em}.rp90-assurance span{min-width:0}.rp90-assurance strong,.rp90-assurance small{display:block}.rp90-assurance strong{font-size:.9rem}.rp90-assurance small{margin-top:3px;color:var(--rp90-muted);font-size:.76rem;line-height:1.35}
.rp90-access{display:grid;gap:14px;min-width:0}.rp90-login-card,.rp90-access-summary{padding:24px;border-radius:24px;background:var(--rp90-panel);border:1px solid var(--rp90-line);box-shadow:0 20px 55px rgba(2,8,23,.13)}.rp90-login-card{position:relative;overflow:hidden}.rp90-login-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--rp90-red),#7c3aed,var(--rp90-blue),var(--rp90-teal))}.rp90-login-head{display:flex;justify-content:space-between;gap:14px;align-items:start}.rp90-login-head h2{font-size:2.15rem;letter-spacing:-.055em}.rp90-login-head .rp90-eyebrow{margin-bottom:8px}.rp90-secure-badge{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:6px 10px;border-radius:999px;background:#dcfce7;color:#047857;border:1px solid #bbf7d0;font-size:.75rem;font-weight:950;white-space:nowrap}body[data-theme="dark"] .rp90-secure-badge{background:rgba(6,95,70,.28);color:#a7f3d0;border-color:rgba(52,211,153,.28)}.rp90-login-intro{margin:10px 0 18px;color:var(--rp90-muted);font-size:.94rem;line-height:1.55}.rp90-login-form{display:grid;gap:13px}.rp90-login-form label{gap:7px}.rp90-login-form input{min-height:46px}.rp90-login-form .password-reveal button{height:46px}.rp90-login-meta{display:flex;justify-content:flex-end}.rp90-login-meta a,.rp90-auth-switch a{color:var(--accent);font-weight:900}.rp90-login-form>.btn{width:100%;min-height:46px}.rp90-auth-switch{display:flex;justify-content:space-between;gap:12px;margin-top:16px;color:var(--rp90-muted);font-size:.9rem}.rp90-access-summary{padding:19px}.rp90-summary-head span{display:block;color:var(--rp90-muted);font-size:.7rem;font-weight:950;text-transform:uppercase;letter-spacing:.13em}.rp90-summary-head strong{display:block;margin-top:5px;font-size:1.25rem;letter-spacing:-.035em}.rp90-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px}.rp90-summary-grid article{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;min-width:0;padding:11px;border-radius:14px;background:var(--rp90-panel-2);border:1px solid var(--rp90-line)}.rp90-summary-grid b{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:color-mix(in srgb,var(--rp90-red) 10%,transparent);color:var(--rp90-red-strong);font-size:.72rem;letter-spacing:.08em}.rp90-summary-grid span,.rp90-summary-grid strong,.rp90-summary-grid small{display:block;min-width:0}.rp90-summary-grid strong{font-size:.86rem}.rp90-summary-grid small{margin-top:2px;color:var(--rp90-muted);font-size:.7rem;line-height:1.25}
.rp90-value-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:18px;overflow:hidden;border:1px solid var(--rp90-line);border-radius:22px;background:var(--rp90-line);box-shadow:0 14px 40px rgba(2,8,23,.07)}.rp90-value-strip div{min-width:0;padding:18px;background:var(--rp90-panel)}.rp90-value-strip strong,.rp90-value-strip span{display:block}.rp90-value-strip strong{font-size:.96rem}.rp90-value-strip span{margin-top:5px;color:var(--rp90-muted);font-size:.82rem;line-height:1.45}
.rp90-section{margin-top:18px;padding:36px;border-radius:28px;background:var(--rp90-panel);border:1px solid var(--rp90-line);box-shadow:0 18px 55px rgba(2,8,23,.08)}.rp90-section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.55fr);gap:36px;align-items:end}.rp90-section-head>div{min-width:0}.rp90-section-head h2,.rp90-product-copy h2,.rp90-security-copy h2,.rp90-cta h2{margin:0;font-size:clamp(2.25rem,3.7vw,4.5rem);line-height:.99;letter-spacing:-.06em;text-wrap:balance}.rp90-section-head>p{margin:0;color:var(--rp90-muted);font-weight:700;line-height:1.6}.rp90-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:28px}.rp90-module-grid article{display:grid;grid-template-columns:46px minmax(0,1fr);gap:14px;min-width:0;min-height:165px;padding:20px;border-radius:20px;background:var(--rp90-panel-2);border:1px solid var(--rp90-line);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.rp90-module-grid article:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--rp90-red) 32%,var(--rp90-line));box-shadow:0 18px 40px rgba(2,8,23,.1)}.rp90-module-grid>article>span{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:linear-gradient(145deg,color-mix(in srgb,var(--rp90-red) 16%,transparent),color-mix(in srgb,var(--rp90-blue) 12%,transparent));color:var(--rp90-red-strong);font-size:.74rem;font-weight:950;letter-spacing:.09em}.rp90-module-grid strong{display:block;font-size:1.05rem}.rp90-module-grid p{margin:8px 0 0;color:var(--rp90-muted);font-size:.9rem;line-height:1.52}
.rp90-product{display:grid;grid-template-columns:minmax(0,.8fr) minmax(520px,1.2fr);gap:36px;align-items:center}.rp90-product-copy p{color:var(--rp90-muted);font-weight:700;line-height:1.62}.rp90-product-copy ul{display:grid;gap:9px;margin:24px 0 0;padding:0;list-style:none}.rp90-product-copy li{position:relative;padding-left:27px;font-weight:850}.rp90-product-copy li:before{content:"✓";position:absolute;left:0;top:-1px;color:var(--rp90-teal);font-weight:950}.rp90-ui-preview{overflow:hidden;border-radius:23px;background:#08111f;color:#fff;border:1px solid rgba(255,255,255,.12);box-shadow:0 26px 65px rgba(2,8,23,.28)}.rp90-ui-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 16px;border-bottom:1px solid rgba(255,255,255,.08);background:#0c1728;font-size:.78rem;font-weight:900}.rp90-ui-top span{display:flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.08em}.rp90-ui-top i{width:9px;height:9px;border-radius:50%;background:#e11d48;box-shadow:0 0 0 5px rgba(225,29,72,.12)}.rp90-ui-top em{max-width:48%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#aebbd0;font-style:normal}.rp90-ui-body{display:grid;grid-template-columns:145px minmax(0,1fr);min-height:360px}.rp90-ui-sidebar{display:grid;align-content:start;gap:6px;padding:18px 12px;background:#0a1423;border-right:1px solid rgba(255,255,255,.07)}.rp90-ui-sidebar b{margin:2px 8px 10px;color:#708098;font-size:.64rem;text-transform:uppercase;letter-spacing:.12em}.rp90-ui-sidebar span{padding:9px 10px;border-radius:10px;color:#aebbd0;font-size:.78rem;font-weight:850}.rp90-ui-sidebar span.active{background:linear-gradient(135deg,#c8102e,#991b1b);color:#fff}.rp90-ui-content{display:grid;align-content:start;gap:12px;padding:20px}.rp90-ui-title span{display:block;color:#fb7185;font-size:.66rem;font-weight:950;text-transform:uppercase;letter-spacing:.13em}.rp90-ui-title strong{display:block;margin-top:6px;font-size:1.65rem;letter-spacing:-.045em}.rp90-ui-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.rp90-ui-stats article{padding:13px;border-radius:14px;background:#111f33;border:1px solid rgba(255,255,255,.07)}.rp90-ui-stats small{display:block;color:#8fa0b8;font-size:.67rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.rp90-ui-stats b{display:block;margin-top:5px;font-size:1.65rem}.rp90-ui-row{display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px;border-radius:14px;background:#111f33;border:1px solid rgba(255,255,255,.07)}.rp90-ui-row>span{width:8px;height:34px;border-radius:99px;background:linear-gradient(#e11d48,#2563eb)}.rp90-ui-row b,.rp90-ui-row small{display:block}.rp90-ui-row b{font-size:.83rem}.rp90-ui-row small{margin-top:2px;color:#8fa0b8;font-size:.7rem}.rp90-ui-row em{padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.07);color:#cbd5e1;font-size:.65rem;font-style:normal;font-weight:900}
.rp90-security{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:34px;align-items:center}.rp90-security-copy p{color:var(--rp90-muted);font-weight:700;line-height:1.62}.rp90-security-copy .btn{margin-top:8px}.rp90-security-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.rp90-security-grid article{display:grid;grid-template-columns:50px minmax(0,1fr);gap:13px;min-width:0;padding:17px;border-radius:18px;background:var(--rp90-panel-2);border:1px solid var(--rp90-line)}.rp90-security-grid b{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;background:linear-gradient(145deg,#9f1239,#172554);color:#fff;font-size:.72rem;letter-spacing:.08em}.rp90-security-grid strong,.rp90-security-grid small{display:block}.rp90-security-grid strong{font-size:.94rem}.rp90-security-grid small{margin-top:4px;color:var(--rp90-muted);font-size:.78rem;line-height:1.4}.rp90-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-top:26px}.rp90-steps article{position:relative;min-width:0;padding:19px;border-radius:18px;background:var(--rp90-panel-2);border:1px solid var(--rp90-line)}.rp90-steps span{display:grid;place-items:center;width:38px;height:38px;margin-bottom:16px;border-radius:12px;background:#111827;color:#fff;font-weight:950}.rp90-steps strong{display:block}.rp90-steps p{margin:7px 0 0;color:var(--rp90-muted);font-size:.84rem;line-height:1.45}.rp90-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;width:min(1540px,100%);margin:18px auto 0;padding:38px;border-radius:28px;background:radial-gradient(circle at 0 50%,color-mix(in srgb,var(--rp90-red) 18%,transparent),transparent 35%),radial-gradient(circle at 100% 0,color-mix(in srgb,var(--rp90-blue) 18%,transparent),transparent 35%),var(--rp90-panel);border:1px solid var(--rp90-line);box-shadow:0 20px 60px rgba(2,8,23,.1)}.rp90-cta>div{min-width:0}.rp90-cta p:last-child{max-width:760px;margin-bottom:0;color:var(--rp90-muted);font-weight:700}.rp90-cta>.btn{min-width:185px;min-height:52px}.rp90-site>.portal-footer{margin-top:18px}
@media(max-width:1250px){.rp90-nav{grid-template-columns:auto 1fr}.rp90-nav-links{display:none}.rp90-nav-actions{justify-self:end}.rp90-hero{grid-template-columns:1fr;gap:24px}.rp90-hero h1{max-width:1050px}.rp90-access{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.rp90-product{grid-template-columns:1fr}.rp90-product-copy{max-width:900px}.rp90-section-head{grid-template-columns:1fr;gap:12px}.rp90-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.rp90-site{padding:12px}.rp90-nav{position:relative;top:auto;grid-template-columns:1fr auto;padding:10px 11px}.rp90-brand{min-width:0}.rp90-brand-copy small{display:none}.rp90-nav-actions .rp90-nav-cta,.rp90-theme-switch{display:none}.rp90-hero{margin-top:14px;padding:24px;border-radius:25px}.rp90-hero h1{font-size:clamp(2.8rem,10vw,5rem)}.rp90-assurance{grid-template-columns:1fr}.rp90-access{grid-template-columns:1fr}.rp90-value-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.rp90-section{padding:24px;border-radius:24px}.rp90-module-grid{grid-template-columns:1fr}.rp90-security{grid-template-columns:1fr}.rp90-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.rp90-cta{grid-template-columns:1fr;padding:27px}.rp90-cta>.btn{width:100%}}
@media(max-width:600px){.rp90-site{padding:8px}.rp90-nav{min-height:62px;border-radius:18px}.rp90-brand-mark{width:42px;height:42px}.rp90-brand-mark img{width:31px;height:31px}.rp90-brand-copy strong{font-size:.95rem}.rp90-login-link{min-height:40px;padding-inline:12px}.rp90-hero{padding:19px}.rp90-hero-copy{padding:0}.rp90-hero h1{font-size:clamp(2.45rem,12.5vw,3.8rem);line-height:.97}.rp90-lead{font-size:.96rem;line-height:1.55}.rp90-hero-actions{display:grid;grid-template-columns:1fr}.rp90-hero-actions .btn{width:100%}.rp90-login-card,.rp90-access-summary{padding:18px;border-radius:20px}.rp90-login-head h2{font-size:1.85rem}.rp90-auth-switch{display:grid;gap:5px}.rp90-summary-grid{grid-template-columns:1fr}.rp90-value-strip{grid-template-columns:1fr;border-radius:20px}.rp90-section{padding:19px;border-radius:21px}.rp90-section-head h2,.rp90-product-copy h2,.rp90-security-copy h2,.rp90-cta h2{font-size:clamp(2rem,10vw,3rem)}.rp90-module-grid article{grid-template-columns:42px minmax(0,1fr);min-height:0;padding:16px}.rp90-module-grid>article>span{width:42px;height:42px}.rp90-product{gap:22px}.rp90-ui-body{grid-template-columns:1fr;min-height:0}.rp90-ui-sidebar{display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid rgba(255,255,255,.07);padding:10px}.rp90-ui-sidebar b{display:none}.rp90-ui-sidebar span{white-space:nowrap}.rp90-ui-content{padding:14px}.rp90-ui-stats{gap:6px}.rp90-ui-stats article{padding:10px}.rp90-ui-stats b{font-size:1.35rem}.rp90-ui-row{grid-template-columns:7px minmax(0,1fr)}.rp90-ui-row em{display:none}.rp90-security-grid{grid-template-columns:1fr}.rp90-steps{grid-template-columns:1fr}.rp90-cta{padding:21px;border-radius:21px}.rp90-site>.portal-footer{padding:18px!important}.rp90-site .scroll-top,.rp90-site [data-scroll-top]{width:54px!important;height:54px!important;right:14px!important;bottom:14px!important;border-radius:18px!important}}

/* landing-v1291.css */
/* Retter-Portal v1.2.91 – öffentliche Startseite über die verfügbare Breite führen.
   Nur die ausgeloggte Startseite ist betroffen. */
.rp90-site{
  padding-left:clamp(12px,1.35vw,24px)!important;
  padding-right:clamp(12px,1.35vw,24px)!important;
}

/* Navigation, sämtliche Inhaltsbereiche und Footer nutzen dieselbe Außenkante. */
.rp90-site > .rp90-nav,
.rp90-site > main,
.rp90-site > .portal-footer{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* Der Abschlussbereich liegt innerhalb von main und folgt ebenfalls der vollen Breite. */
.rp90-site .rp90-cta{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* Footer über dieselbe Breite wie alle anderen Startseiten-Karten. */
.rp90-site > .portal-footer{
  box-sizing:border-box!important;
  margin-top:18px!important;
}

/* Auf sehr großen Monitoren darf der Inhalt die Fläche sinnvoll nutzen,
   während Fließtexte weiterhin angenehm lesbar bleiben. */
@media (min-width:1700px){
  .rp90-site .rp90-hero{
    grid-template-columns:minmax(0,1.28fr) minmax(410px,.72fr)!important;
  }
  .rp90-site .rp90-hero-copy,
  .rp90-site .rp90-product-copy,
  .rp90-site .rp90-security-copy{
    max-width:980px!important;
  }
  .rp90-site .rp90-section-head > p{
    max-width:720px!important;
    justify-self:end!important;
  }
}

@media (max-width:900px){
  .rp90-site{
    padding-left:12px!important;
    padding-right:12px!important;
  }
}

@media (max-width:600px){
  .rp90-site{
    padding-left:8px!important;
    padding-right:8px!important;
  }
}

/* landing-v1292.css */
/* Retter-Portal v1.2.92 – ausgewogene, FWPortal-inspirierte Inhaltsbreite.
   Ausschließlich die öffentliche Startseite ist betroffen. */
.rp90-site{
  --rp92-shell-max:1600px;
  --rp92-inner-max:1460px;
  padding-left:clamp(14px,2.6vw,52px)!important;
  padding-right:clamp(14px,2.6vw,52px)!important;
}

/* Die Startseite bleibt großzügig, bekommt auf breiten Monitoren aber wieder
   eine klare, mittig ausgerichtete Inhaltsachse. */
.rp90-site > .rp90-nav,
.rp90-site > main,
.rp90-site > .portal-footer{
  width:100%!important;
  max-width:var(--rp92-shell-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

.rp90-site > main{
  display:block!important;
}

.rp90-site > main > :is(.rp90-hero,.rp90-value-strip,.rp90-section,.rp90-cta){
  width:100%!important;
  max-width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}

/* Hero: nicht gequetscht, aber optisch sauber in der Seitenmitte gebündelt. */
@media (min-width:1101px){
  .rp90-site .rp90-hero{
    grid-template-columns:minmax(0,1.14fr) minmax(390px,.86fr)!important;
    gap:clamp(36px,3.2vw,58px)!important;
    padding-left:clamp(44px,4.2vw,72px)!important;
    padding-right:clamp(44px,4.2vw,72px)!important;
  }
  .rp90-site .rp90-hero-copy{
    max-width:900px!important;
  }
  .rp90-site .rp90-access{
    width:100%!important;
    max-width:460px!important;
    justify-self:end!important;
  }

  /* Sektionen besitzen außen dieselben Kanten; die eigentlichen Inhalte
     laufen innen auf einer ruhigeren, professionellen Breite. */
  .rp90-site .rp90-section{
    padding-left:clamp(42px,4vw,66px)!important;
    padding-right:clamp(42px,4vw,66px)!important;
  }
  .rp90-site .rp90-section > :is(.rp90-section-head,.rp90-module-grid,.rp90-steps){
    width:100%!important;
    max-width:var(--rp92-inner-max)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .rp90-site .rp90-product,
  .rp90-site .rp90-security{
    grid-template-columns:minmax(0,.84fr) minmax(520px,1.16fr)!important;
    gap:clamp(38px,4vw,68px)!important;
  }
  .rp90-site .rp90-product-copy,
  .rp90-site .rp90-security-copy{
    max-width:680px!important;
  }
  .rp90-site .rp90-value-strip,
  .rp90-site .rp90-cta{
    max-width:1520px!important;
  }
}

/* Große Monitore nutzen die Fläche, ohne dass Inhalte an den Bildschirmrand
   wandern oder wieder schmal zusammengedrückt wirken. */
@media (min-width:1800px){
  .rp90-site{
    --rp92-shell-max:1660px;
    --rp92-inner-max:1500px;
  }
}

/* Tablet und Smartphone behalten ihre bisherige optimierte Breite. */
@media (max-width:1100px){
  .rp90-site{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  .rp90-site > .rp90-nav,
  .rp90-site > main,
  .rp90-site > .portal-footer{
    max-width:100%!important;
  }
}

@media (max-width:600px){
  .rp90-site{
    padding-left:8px!important;
    padding-right:8px!important;
  }
}

/* landing-v1293.css */
/* Retter-Portal v1.2.93 – ausschließlich Feinausrichtung des Theme-Schalters
   in der öffentlichen Startseiten-Navigation. */
.rp90-site .rp90-theme-switch{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  height:44px!important;
  min-height:44px!important;
  padding:4px!important;
  line-height:1!important;
}

.rp90-site .rp90-theme-switch > button{
  display:grid!important;
  place-items:center!important;
  flex:0 0 34px!important;
  width:34px!important;
  min-width:34px!important;
  max-width:34px!important;
  height:34px!important;
  min-height:34px!important;
  max-height:34px!important;
  margin:0!important;
  padding:0!important;
  line-height:1!important;
  box-sizing:border-box!important;
  vertical-align:middle!important;
}

.rp90-site .rp90-theme-switch > button[data-theme-set="light"],
.rp90-site .rp90-theme-switch > button[data-theme-set="dark"]{
  font-size:1rem!important;
  padding-bottom:1px!important;
}

.rp90-site .rp90-theme-switch > button[data-theme-set="system"]{
  flex-basis:48px!important;
  width:48px!important;
  min-width:48px!important;
  max-width:48px!important;
  padding:0 8px!important;
  font-size:.74rem!important;
  line-height:1!important;
}

/* landing-v1294.css */
/* Retter-Portal v1.2.94 – ausschließlich Tablet-Optimierung der öffentlichen Startseite.
   Desktop- und Smartphone-Darstellung bleiben unverändert. */

/* Große Tablets im Querformat: Hero bleibt zweispaltig, der rechte Bereich
   wird jedoch sauber untereinander aufgebaut, damit Login und Portalübersicht
   nicht mehr nebeneinander zusammengedrückt werden. */
@media (min-width:1101px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  .rp90-site .rp90-hero{
    grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr)!important;
    gap:28px!important;
    padding:34px!important;
    align-items:start!important;
  }
  .rp90-site .rp90-hero-copy{
    max-width:none!important;
    padding-top:8px!important;
  }
  .rp90-site .rp90-hero h1{
    font-size:clamp(3.5rem,5.4vw,5.45rem)!important;
    line-height:.96!important;
  }
  .rp90-site .rp90-access{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
    width:100%!important;
    min-width:0!important;
    max-width:470px!important;
    justify-self:end!important;
  }
  .rp90-site .rp90-login-card,
  .rp90-site .rp90-access-summary{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  .rp90-site .rp90-login-card{
    padding:22px!important;
  }
  .rp90-site .rp90-access-summary{
    padding:18px!important;
  }
  .rp90-site .rp90-login-form,
  .rp90-site .rp90-login-form label,
  .rp90-site .password-reveal{
    min-width:0!important;
    max-width:100%!important;
  }
  .rp90-site .password-reveal{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:8px!important;
  }
  .rp90-site .password-reveal input{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  .rp90-site .rp90-summary-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .rp90-site .rp90-summary-grid article{
    min-width:0!important;
  }
  .rp90-site .rp90-summary-grid strong,
  .rp90-site .rp90-summary-grid small{
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }
}

/* Mittlere Tablets: Hero und Loginbereich nutzen die volle Breite. Login und
   Portalübersicht dürfen nebeneinander stehen, erhalten aber stabile Spalten. */
@media (min-width:901px) and (max-width:1100px) and (hover:none) and (pointer:coarse){
  .rp90-site .rp90-hero{
    grid-template-columns:minmax(0,1fr)!important;
    gap:24px!important;
    padding:30px!important;
  }
  .rp90-site .rp90-access{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:16px!important;
    width:100%!important;
    max-width:none!important;
  }
  .rp90-site .rp90-login-card,
  .rp90-site .rp90-access-summary{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  .rp90-site .password-reveal{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:8px!important;
    min-width:0!important;
  }
  .rp90-site .password-reveal input{
    width:100%!important;
    min-width:0!important;
  }
  .rp90-site .rp90-summary-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* Gemeinsame Tablet-Sicherungen gegen abgeschnittene oder überlappende Inhalte. */
@media (min-width:901px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  .rp90-site .rp90-nav,
  .rp90-site .rp90-hero,
  .rp90-site .rp90-value-strip,
  .rp90-site .rp90-section,
  .rp90-site .rp90-cta,
  .rp90-site .portal-footer{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  .rp90-site .rp90-nav-actions{
    min-width:0!important;
    gap:7px!important;
  }
  .rp90-site .rp90-nav-actions > *{
    flex:0 0 auto!important;
  }
  .rp90-site .rp90-login-head{
    min-width:0!important;
  }
  .rp90-site .rp90-login-head > div{
    min-width:0!important;
  }
  .rp90-site .rp90-login-intro,
  .rp90-site .rp90-auth-switch,
  .rp90-site .rp90-summary-grid article,
  .rp90-site .rp90-assurance > div{
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }
  .rp90-site .rp90-auth-switch{
    align-items:center!important;
  }
}

/* admin-v1295.css */
/* Retter-Portal v1.2.95 – complete Admin-Verwaltung refresh.
   Scoped to admin pages only. Public site, dashboard and operational modules stay untouched. */

body.admin-surface{
  --admin-accent:#e11d48;
  --admin-accent-soft:rgba(225,29,72,.10);
  --admin-info:#2563eb;
  --admin-good:#059669;
  --admin-warning:#d97706;
}
body.admin-surface .content{
  width:min(1720px,100%);
  padding-top:22px;
}

/* Internal admin command bar */
.admin-command-nav{
  position:sticky;
  top:78px;
  z-index:4;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  width:100%;
  margin:0 0 22px;
  padding:10px;
  border:1px solid var(--line);
  border-radius:18px;
  background:color-mix(in srgb,var(--surface-2) 88%,transparent);
  box-shadow:0 14px 36px rgba(15,23,42,.10);
  backdrop-filter:blur(20px) saturate(1.15);
  overflow-x:auto;
  scrollbar-width:none;
}
.admin-command-nav::-webkit-scrollbar{display:none}
.admin-command-nav__group{display:flex;align-items:center;gap:6px;min-width:max-content}
.admin-command-nav__label{
  padding:0 8px;
  color:var(--muted-2);
  font-size:.68rem;
  font-weight:950;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.admin-command-nav a{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:8px 12px;
  border:1px solid transparent;
  border-radius:12px;
  color:var(--muted);
  font-size:.86rem;
  font-weight:900;
  white-space:nowrap;
  transition:.16s ease;
}
.admin-command-nav a:hover{color:var(--text);background:var(--surface);border-color:var(--line)}
.admin-command-nav a.is-active{
  color:#fff;
  background:linear-gradient(135deg,#d80f2c,#94132a);
  box-shadow:0 10px 24px rgba(200,16,46,.22);
}

/* Shared admin header */
.admin-page-hero{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:28px;
  margin-bottom:20px;
  padding:28px 30px;
  border:1px solid var(--line);
  border-radius:26px;
  background:
    radial-gradient(circle at 94% 0,rgba(37,99,235,.15),transparent 23rem),
    radial-gradient(circle at 0 100%,rgba(225,29,72,.11),transparent 25rem),
    var(--surface);
  box-shadow:var(--shadow);
  overflow:hidden;
}
.admin-page-hero>div:first-child{max-width:920px;min-width:0}
.admin-page-hero h1{font-size:clamp(2.25rem,4vw,4.25rem);max-width:100%;text-wrap:balance}
.admin-page-hero p.muted{max-width:850px;margin:12px 0 0;font-size:1rem;line-height:1.6}
.admin-page-hero__actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;min-width:max-content}

/* Stats */
.admin-stat-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin:0 0 20px;
}
.admin-stat-grid--overview{grid-template-columns:repeat(5,minmax(0,1fr))}
.admin-stat-grid article{
  position:relative;
  display:grid;
  align-content:center;
  min-width:0;
  min-height:116px;
  padding:18px 20px;
  border:1px solid var(--line);
  border-radius:20px;
  background:var(--surface);
  box-shadow:var(--shadow-sm);
  overflow:hidden;
}
.admin-stat-grid article:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,#e11d48,#2563eb)}
.admin-stat-grid article.needs-attention:before{background:var(--admin-warning)}
.admin-stat-grid span{color:var(--muted);font-size:.74rem;font-weight:950;text-transform:uppercase;letter-spacing:.09em}
.admin-stat-grid strong{margin-top:4px;font-size:2.35rem;line-height:1;letter-spacing:-.055em}
.admin-stat-grid small{margin-top:8px;color:var(--muted-2);font-weight:800}

/* Overview hub */
.admin-hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:22px}
.admin-hub-card{
  display:grid;
  grid-template-columns:48px minmax(0,1fr) auto;
  align-items:center;
  gap:15px;
  min-width:0;
  min-height:132px;
  padding:18px;
  border:1px solid var(--line);
  border-radius:21px;
  background:var(--surface);
  box-shadow:var(--shadow-sm);
  transition:.18s ease;
}
.admin-hub-card:hover{transform:translateY(-2px);border-color:rgba(225,29,72,.35);box-shadow:0 20px 42px rgba(15,23,42,.13)}
.admin-hub-card__icon,.admin-list-avatar,.admin-account-avatar{
  display:grid;
  place-items:center;
  flex:0 0 auto;
  width:48px;
  height:48px;
  border-radius:15px;
  color:#fff;
  background:linear-gradient(135deg,#d80f2c,#64152a);
  font-size:.78rem;
  font-weight:950;
  letter-spacing:.06em;
}
.admin-hub-card div{min-width:0}
.admin-hub-card h2{font-size:1.08rem;letter-spacing:-.025em}
.admin-hub-card p{margin:6px 0 0;color:var(--muted);font-size:.88rem;line-height:1.45}
.admin-hub-card>strong{color:var(--admin-accent);font-size:.84rem;white-space:nowrap}
.admin-overview-grid{align-items:start}
.admin-compact-list,.admin-activity-list{display:grid;gap:8px}
.admin-compact-list>a{
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:11px;
  border:1px solid var(--line-soft);
  border-radius:15px;
  background:rgba(148,163,184,.045);
}
.admin-list-avatar{width:42px;height:42px;border-radius:13px}
.admin-compact-list strong,.admin-compact-list small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-compact-list small{margin-top:3px;color:var(--muted);font-size:.78rem}
.admin-activity-list article{display:grid;grid-template-columns:12px minmax(0,1fr);gap:10px;padding:10px 4px;border-bottom:1px solid var(--line-soft)}
.admin-activity-dot{width:9px;height:9px;margin-top:7px;border-radius:999px;background:var(--admin-accent);box-shadow:0 0 0 5px var(--admin-accent-soft)}
.admin-activity-list strong,.admin-activity-list small{display:block}
.admin-activity-list small{margin-top:3px;color:var(--muted);font-size:.78rem}
.admin-security-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px}
.admin-security-points{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.admin-security-points>span:not(.secure-pill){padding:8px 11px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.8rem;font-weight:900;background:var(--surface-2)}
.admin-changelog-details>summary,.admin-create-account>summary,.admin-account-editor>summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.admin-changelog-details>summary::-webkit-details-marker,.admin-create-account>summary::-webkit-details-marker,.admin-account-editor>summary::-webkit-details-marker{display:none}
.admin-changelog-details>summary span:first-child,.admin-create-account>summary span:first-child{display:grid;gap:3px}
.admin-changelog-details>summary small,.admin-create-account>summary small{color:var(--muted);font-weight:750}
.admin-changelog-details[open]>summary,.admin-create-account[open]>summary{padding-bottom:16px;border-bottom:1px solid var(--line-soft);margin-bottom:18px}

/* Filters */
.admin-filter-card{padding:20px}
.admin-account-filter{
  display:grid;
  grid-template-columns:minmax(260px,1.7fr) minmax(170px,.75fr) minmax(170px,.75fr) auto auto;
  gap:10px;
  align-items:center;
}
.admin-account-filter>*{min-width:0;margin:0}
.admin-create-account{padding:20px}
.admin-create-account__form,.admin-account-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-top:2px;
}
.admin-create-account__form label,.admin-account-form label{
  min-width:0;
  padding:13px;
  border:1px solid var(--line-soft);
  border-radius:15px;
  background:rgba(148,163,184,.045);
}
.admin-create-account__form input,.admin-create-account__form select,.admin-account-form input,.admin-account-form select{min-height:46px}
.admin-switch-field{align-content:start}
.admin-switch-line{display:flex;align-items:center;gap:10px;min-height:46px;color:var(--text);font-weight:850}
.admin-switch-line input{width:auto;min-height:0;margin:0}
.admin-field-wide{grid-column:1/-1}
.password-reveal{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.password-reveal .btn{width:auto;min-width:88px;box-shadow:none}

/* Unified account cards */
.admin-account-list{display:grid;gap:14px}
.admin-account-card{
  scroll-margin-top:156px;
  border:1px solid var(--line);
  border-radius:22px;
  background:var(--surface);
  box-shadow:var(--shadow-sm);
  overflow:visible;
}
.admin-account-card__head{
  display:grid;
  grid-template-columns:52px minmax(0,1fr) auto;
  align-items:center;
  gap:15px;
  min-width:0;
  padding:18px;
}
.admin-account-avatar{width:52px;height:52px;border-radius:17px;font-size:1.15rem}
.admin-account-identity{min-width:0}
.admin-account-title-line{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}
.admin-account-title-line h2{min-width:0;max-width:100%;font-size:1.14rem;letter-spacing:-.025em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-account-identity>p{margin:5px 0 0;color:var(--muted);font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-account-meta{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:9px;color:var(--muted-2);font-size:.77rem;font-weight:800}
.admin-account-meta span{position:relative;white-space:nowrap}
.admin-account-meta span+span:before{content:"·";position:absolute;left:-8px;color:var(--muted-2)}
.admin-account-quicklinks{display:flex;align-items:center;justify-content:flex-end;gap:8px}
.admin-account-quicklinks .btn{box-shadow:none}
.admin-account-editor{border-top:1px solid var(--line-soft)}
.admin-account-editor>summary{padding:13px 18px;color:var(--text);font-weight:900;background:rgba(148,163,184,.045)}
.admin-account-editor>summary span{display:block}
.admin-account-editor>summary small{color:var(--muted);font-size:.78rem;font-weight:750}
.admin-account-editor[open]>summary{border-bottom:1px solid var(--line-soft)}
.admin-account-editor__body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px}
.admin-account-editor__section{min-width:0;padding:17px;border:1px solid var(--line-soft);border-radius:18px;background:rgba(148,163,184,.035)}
.admin-section-heading{margin-bottom:14px}
.admin-section-heading h3{font-size:1.05rem;letter-spacing:-.025em}
.admin-section-heading p{margin:5px 0 0;font-size:.84rem;line-height:1.45}
.admin-danger-zone{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:18px;border-color:rgba(225,29,72,.22);background:rgba(225,29,72,.045)}
.admin-danger-zone .admin-section-heading{margin:0;max-width:760px}
.admin-empty-state{display:flex;flex-direction:column;align-items:center;gap:7px;padding:34px!important;text-align:center}
.admin-empty-state span{color:var(--muted)}

/* Access workflow */
.admin-workflow-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:28px}
.admin-workflow-card{min-width:0;margin:0!important;padding:18px!important;overflow:visible!important}
.admin-workflow-step{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:start;margin-bottom:16px}
.admin-workflow-step>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--admin-accent-soft);color:var(--admin-accent);font-weight:950}
.admin-workflow-step h2{font-size:1.08rem;letter-spacing:-.025em}
.admin-workflow-step p{margin:5px 0 0;font-size:.82rem;line-height:1.45}
.admin-workflow-card .form-grid{gap:11px}
.admin-workflow-card .smart-select-field,.admin-workflow-card label{min-width:0}
.admin-workflow-card .smart-select-results{z-index:140!important}
.admin-assignment-section{margin-top:26px}
.admin-assignment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.admin-assignment-grid>.card{margin:0}
.admin-assignment-wide{grid-column:1/-1}

/* Existing admin templates get a consistent visual language without changing their functionality. */
.admin-surface .page-head,.admin-surface .page-hero{
  padding:24px 26px;
  border:1px solid var(--line);
  border-radius:24px;
  background:var(--surface);
  box-shadow:var(--shadow-sm);
}
.admin-surface .page-head h1,.admin-surface .page-hero h1{font-size:clamp(2rem,3vw,3.35rem)}
.admin-surface .page-head .muted,.admin-surface .page-hero .muted{max-width:900px}
.admin-surface .card{box-shadow:var(--shadow-sm);border-color:var(--line);overflow:visible}
.admin-surface .card h2,.admin-surface .card h3{letter-spacing:-.025em}
.admin-surface .toolbar{border-color:var(--line);box-shadow:none}
.admin-surface .table-wrap{overflow:auto!important;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm)}
.admin-surface table{min-width:720px}
.admin-surface th{position:sticky;top:0;z-index:1;background:var(--surface-2)}
.admin-surface td,.admin-surface th{vertical-align:middle}
.admin-surface .form-grid>label,.admin-surface .inline-form>label{min-width:0}
.admin-surface input,.admin-surface select,.admin-surface textarea{min-width:0;max-width:100%}
.admin-surface .grid.two,.admin-surface .grid.three{align-items:start}
.admin-surface .smart-select-results{z-index:150!important}
.admin-surface .pill.off{background:rgba(225,29,72,.09);color:#be123c}

/* Light mode admin contrast */
body.admin-surface[data-theme="light"] .admin-command-nav,
body.admin-surface[data-theme="light"] .admin-account-card,
body.admin-surface[data-theme="light"] .admin-page-hero,
body.admin-surface[data-theme="light"] .admin-stat-grid article,
body.admin-surface[data-theme="light"] .admin-hub-card{background:rgba(255,255,255,.92)}
body.admin-surface[data-theme="light"] .admin-account-editor__section,
body.admin-surface[data-theme="light"] .admin-create-account__form label,
body.admin-surface[data-theme="light"] .admin-account-form label{background:#f8fafc}

/* Tablet */
@media (max-width:1280px){
  .admin-stat-grid--overview{grid-template-columns:repeat(3,minmax(0,1fr))}
  .admin-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-workflow-grid{grid-template-columns:1fr}
  .admin-workflow-card{display:grid;grid-template-columns:minmax(230px,.65fr) minmax(0,1fr);gap:18px;align-items:start}
  .admin-workflow-step{margin:0}
  .admin-account-filter{grid-template-columns:minmax(220px,1fr) minmax(150px,.55fr) minmax(150px,.55fr) auto}
  .admin-account-filter>a{grid-column:1/-1;width:max-content}
}

@media (max-width:1024px){
  .admin-command-nav{top:112px}
  .admin-page-hero{align-items:flex-start;flex-direction:column;padding:24px}
  .admin-page-hero__actions{justify-content:flex-start;min-width:0}
  .admin-stat-grid,.admin-stat-grid--overview{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-account-filter{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-account-filter input{grid-column:1/-1}
  .admin-account-card__head{grid-template-columns:48px minmax(0,1fr)}
  .admin-account-quicklinks{grid-column:1/-1;justify-content:flex-start;padding-left:63px}
  .admin-account-editor__body{grid-template-columns:1fr}
  .admin-danger-zone{grid-column:auto}
  .admin-assignment-grid{grid-template-columns:1fr}
  .admin-assignment-wide{grid-column:auto}
  .admin-security-summary{grid-template-columns:1fr}
  .admin-security-points{justify-content:flex-start}
}

/* Smartphone */
@media (max-width:760px){
  body.admin-surface .content{padding:14px!important}
  .admin-command-nav{position:relative;top:auto;margin-bottom:14px;padding:8px;border-radius:15px;justify-content:flex-start}
  .admin-command-nav__group{gap:4px}
  .admin-command-nav__label{display:none}
  .admin-command-nav a{min-height:36px;padding:7px 10px;font-size:.8rem}
  .admin-page-hero{padding:20px;border-radius:20px;gap:18px}
  .admin-page-hero h1{font-size:clamp(2rem,10vw,3rem)}
  .admin-page-hero__actions{display:grid;grid-template-columns:1fr;width:100%}
  .admin-page-hero__actions .btn{width:100%}
  .admin-stat-grid,.admin-stat-grid--overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .admin-stat-grid article{min-height:98px;padding:14px}
  .admin-stat-grid strong{font-size:1.9rem}
  .admin-stat-grid small{font-size:.72rem}
  .admin-hub-grid{grid-template-columns:1fr;gap:10px}
  .admin-hub-card{grid-template-columns:42px minmax(0,1fr);min-height:0;padding:14px}
  .admin-hub-card__icon{width:42px;height:42px}
  .admin-hub-card>strong{grid-column:2}
  .admin-overview-grid{grid-template-columns:1fr!important}
  .admin-account-filter{grid-template-columns:1fr}
  .admin-account-filter>*{grid-column:auto!important;width:100%!important}
  .admin-create-account__form,.admin-account-form{grid-template-columns:1fr}
  .admin-field-wide{grid-column:auto}
  .password-reveal{grid-template-columns:minmax(0,1fr) auto}
  .password-reveal .btn{width:auto!important;min-width:76px;padding-inline:9px}
  .admin-account-card__head{grid-template-columns:42px minmax(0,1fr);gap:11px;padding:14px}
  .admin-account-avatar{width:42px;height:42px;border-radius:13px}
  .admin-account-title-line{align-items:flex-start}
  .admin-account-title-line h2{width:100%;font-size:1rem}
  .admin-account-meta{display:grid;grid-template-columns:1fr;gap:4px;margin-top:7px}
  .admin-account-meta span+span:before{display:none}
  .admin-account-quicklinks{padding-left:53px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
  .admin-account-quicklinks .btn{width:100%}
  .admin-account-editor>summary{padding:12px 14px}
  .admin-account-editor__body{padding:12px;gap:10px}
  .admin-account-editor__section{padding:13px;border-radius:15px}
  .admin-danger-zone{display:block}
  .admin-danger-zone form{margin-top:12px}
  .admin-danger-zone .btn{width:100%}
  .admin-workflow-card{display:block;padding:14px!important}
  .admin-workflow-step{margin-bottom:14px}
  .admin-assignment-grid .table-wrap{overflow:auto!important}
  .admin-surface .page-head,.admin-surface .page-hero{padding:18px;border-radius:19px}
  .admin-surface .page-head .actions,.admin-surface .page-hero .actions{display:grid;width:100%;grid-template-columns:1fr}
  .admin-surface .page-head .actions .btn,.admin-surface .page-hero .actions .btn{width:100%}
  .admin-surface table{min-width:680px}
}

@media (max-width:390px){
  .admin-stat-grid,.admin-stat-grid--overview{grid-template-columns:1fr 1fr}
  .admin-stat-grid article{padding:12px;min-height:92px}
  .admin-stat-grid span{font-size:.64rem}
  .admin-stat-grid strong{font-size:1.65rem}
  .admin-account-title-line .role,.admin-account-title-line .pill{font-size:.67rem;padding:5px 8px}
}

/* admin-v1296.css */
/* Retter-Portal v1.2.96 – account-centered admin management only. */
body.admin-surface .admin-account-filter--extended{
  grid-template-columns:minmax(300px,1.65fr) minmax(180px,.8fr) minmax(170px,.72fr) minmax(170px,.72fr) auto auto;
}
body.admin-surface .admin-access-filter{
  grid-template-columns:minmax(320px,1fr) auto auto;
}

body.admin-surface .admin-account-editor__body{
  align-items:start;
}
body.admin-surface .admin-account-personnel,
body.admin-surface .admin-account-access-section,
body.admin-surface .admin-account-groups-section{
  overflow:visible;
}
body.admin-surface .admin-current-link{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  min-width:0;
  margin-bottom:14px;
  padding:14px;
  border:1px solid var(--line-soft);
  border-radius:15px;
  background:rgba(37,99,235,.045);
}
body.admin-surface .admin-current-link>div{min-width:0}
body.admin-surface .admin-current-link span,
body.admin-surface .admin-current-link strong,
body.admin-surface .admin-current-link small{display:block;min-width:0}
body.admin-surface .admin-current-link span{
  color:var(--muted-2);
  font-size:.68rem;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.admin-surface .admin-current-link strong{
  margin-top:4px;
  overflow:hidden;
  color:var(--text);
  font-size:.96rem;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.admin-surface .admin-current-link small{
  margin-top:4px;
  overflow:hidden;
  color:var(--muted);
  font-size:.78rem;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.admin-surface .admin-current-link--empty{
  grid-template-columns:minmax(0,1fr);
  background:rgba(148,163,184,.04);
}

body.admin-surface .admin-account-assignment-form{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:11px;
  min-width:0;
}
body.admin-surface .admin-account-assignment-form--split{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
body.admin-surface .admin-account-assignment-form>*{min-width:0;margin:0}
body.admin-surface .admin-account-assignment-form>label,
body.admin-surface .admin-account-assignment-form>.smart-select-field{
  min-width:0;
  padding:12px;
  border:1px solid var(--line-soft);
  border-radius:14px;
  background:rgba(148,163,184,.04);
}
body.admin-surface .admin-account-assignment-form :is(input,select){
  width:100%;
  min-width:0;
  max-width:100%;
  min-height:44px;
}
body.admin-surface .admin-account-assignment-form .smart-select-results{
  z-index:260!important;
}
body.admin-surface .admin-account-assignment-form .form-actions{
  justify-content:flex-start;
}

body.admin-surface .admin-inline-assignment-list{
  display:grid;
  gap:8px;
  min-width:0;
  margin-bottom:13px;
}
body.admin-surface .admin-inline-assignment-list article{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  min-width:0;
  padding:11px 12px;
  border:1px solid var(--line-soft);
  border-radius:14px;
  background:rgba(148,163,184,.035);
}
body.admin-surface .admin-inline-assignment-list article>div{min-width:0}
body.admin-surface .admin-inline-assignment-list strong,
body.admin-surface .admin-inline-assignment-list small{
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.admin-surface .admin-inline-assignment-list strong{font-size:.9rem}
body.admin-surface .admin-inline-assignment-list small{margin-top:3px;color:var(--muted);font-size:.75rem}
body.admin-surface .admin-inline-assignment-list form{margin:0}
body.admin-surface .admin-inline-empty{
  padding:13px;
  border:1px dashed var(--line);
  border-radius:14px;
  color:var(--muted);
  font-size:.82rem;
  text-align:center;
}

body.admin-surface .admin-account-card:has(.admin-account-editor[open]){
  border-color:rgba(225,29,72,.24);
  box-shadow:0 20px 50px rgba(15,23,42,.14);
}
body.admin-surface .admin-account-editor[open]>summary{
  background:linear-gradient(90deg,rgba(225,29,72,.07),rgba(37,99,235,.04));
}

@media (max-width:1360px){
  body.admin-surface .admin-account-filter--extended{
    grid-template-columns:minmax(260px,1.4fr) repeat(3,minmax(150px,.7fr)) auto;
  }
  body.admin-surface .admin-account-filter--extended>a{grid-column:1/-1;width:max-content}
}

@media (max-width:1120px){
  body.admin-surface .admin-account-filter--extended{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  body.admin-surface .admin-account-filter--extended input{grid-column:1/-1}
  body.admin-surface .admin-account-filter--extended>a{grid-column:auto;width:100%}
  body.admin-surface .admin-account-filter--extended .btn{width:100%}
}

@media (max-width:1024px){
  body.admin-surface .admin-current-link{grid-template-columns:minmax(0,1fr)}
  body.admin-surface .admin-current-link .btn{width:100%}
  body.admin-surface .admin-account-assignment-form--split{grid-template-columns:minmax(0,1fr)}
}

@media (max-width:760px){
  body.admin-surface .admin-account-filter--extended,
  body.admin-surface .admin-access-filter{
    grid-template-columns:minmax(0,1fr);
  }
  body.admin-surface .admin-account-filter--extended>*{
    grid-column:auto!important;
    width:100%!important;
  }
  body.admin-surface .admin-account-meta span{
    white-space:normal;
    overflow-wrap:anywhere;
  }
  body.admin-surface .admin-current-link{padding:12px}
  body.admin-surface .admin-current-link strong,
  body.admin-surface .admin-current-link small{white-space:normal;overflow-wrap:anywhere}
  body.admin-surface .admin-inline-assignment-list article{
    grid-template-columns:minmax(0,1fr);
    align-items:stretch;
  }
  body.admin-surface .admin-inline-assignment-list .btn{width:100%}
  body.admin-surface .admin-account-assignment-form>label,
  body.admin-surface .admin-account-assignment-form>.smart-select-field{padding:10px}
}

/* login-log-v134.css */
/* Retter-Portal v1.3.4 – Login-Ortung und Anbieterdetails, nur Admin-Login-Log. */
body.admin-surface .login-ip-cell{
  min-width:260px;
  vertical-align:top;
}
body.admin-surface .login-ip-cell>strong,
body.admin-surface .login-ip-cell>small{
  display:block;
  min-width:0;
}
body.admin-surface .login-lookup-state.is-pending{
  color:var(--warning-text,#f59e0b);
  font-weight:850;
}
body.admin-surface .login-network-details{
  width:100%;
  min-width:0;
  margin-top:10px;
  border:1px solid var(--line-soft);
  border-radius:14px;
  background:rgba(148,163,184,.045);
  overflow:hidden;
}
body.admin-surface .login-network-details>summary{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:3px;
  min-width:0;
  padding:10px 12px;
  cursor:pointer;
  list-style:none;
  user-select:none;
}
body.admin-surface .login-network-details>summary::-webkit-details-marker{display:none}
body.admin-surface .login-network-details>summary:after{
  content:'›';
  position:absolute;
  right:12px;
  align-self:center;
  color:var(--muted);
  font-size:1.25rem;
  transform:rotate(90deg);
  transition:transform .16s ease;
}
body.admin-surface .login-network-details[open]>summary:after{transform:rotate(-90deg)}
body.admin-surface .login-network-details>summary{
  position:relative;
  padding-right:36px;
}
body.admin-surface .login-network-details>summary span{
  font-size:.78rem;
  font-weight:950;
  color:var(--text);
}
body.admin-surface .login-network-details>summary small{
  min-width:0;
  overflow:hidden;
  color:var(--muted);
  font-size:.7rem;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.admin-surface .login-network-details__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  min-width:0;
  padding:0 10px 10px;
}
body.admin-surface .login-network-details__grid>div{
  min-width:0;
  padding:9px 10px;
  border:1px solid var(--line-soft);
  border-radius:11px;
  background:var(--surface-2);
}
body.admin-surface .login-network-details__grid span,
body.admin-surface .login-network-details__grid strong,
body.admin-surface .login-network-details__grid small{
  display:block;
  min-width:0;
  overflow-wrap:anywhere;
}
body.admin-surface .login-network-details__grid span{
  color:var(--muted-2);
  font-size:.62rem;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
}
body.admin-surface .login-network-details__grid strong{
  margin-top:4px;
  color:var(--text);
  font-size:.76rem;
  line-height:1.28;
}
body.admin-surface .login-network-details__grid small{
  margin-top:3px;
  color:var(--muted);
  font-size:.66rem;
}
body.admin-surface .login-geo-refresh-form{
  margin:0;
  padding:0 10px 10px;
}
body.admin-surface .login-geo-refresh-form .btn{width:100%}

@media(max-width:1180px){
  body.admin-surface .login-ip-cell{min-width:230px}
  body.admin-surface .login-network-details__grid{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:760px){
  body.admin-surface .login-ip-cell{min-width:0;width:100%}
  body.admin-surface .login-network-details{margin-top:12px}
  body.admin-surface .login-network-details__grid{grid-template-columns:minmax(0,1fr)}
}

/* inventory-v1297.css */
/* Retter-Portal v1.2.97 – Inventory and PSA categories only. */

/* Long, structured category names stay usable without pushing controls apart. */
html body .content .inventory-toolbar select[name="category"],
html body .content form[action*="/inventory"] select[name="category"],
html body .content .personnel-psa-card select[name="category"]{
  min-width:0!important;
  max-width:100%!important;
  padding-right:46px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

html body .content select[name="category"] optgroup{
  font-weight:800;
}

html body .content select[name="category"] option{
  font-weight:600;
}

/* The wider category catalogue receives enough room in the inventory filter. */
html body .content .inventory-toolbar{
  grid-template-columns:minmax(220px,1.15fr) minmax(190px,.85fr) minmax(260px,1.2fr) minmax(170px,.7fr) auto!important;
  align-items:end!important;
}

@media (min-width:761px) and (max-width:1180px),
       (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  /* The former half-width PSA form was too narrow on iPads. Both actions now use the full card width. */
  html body .content .personnel-psa-card .psa-actions-grid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:18px!important;
    width:100%!important;
    max-width:100%!important;
  }

  html body .content .personnel-psa-card .psa-assign-form,
  html body .content .personnel-psa-card .psa-create-form{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  html body .content .personnel-psa-card .psa-create-form{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:15px!important;
  }

  html body .content .personnel-psa-card .psa-create-form > label{
    min-width:0!important;
    max-width:100%!important;
    width:100%!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  html body .content .personnel-psa-card .psa-create-form :is(input,select,textarea){
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  html body .content .personnel-psa-card .psa-create-form input[type="date"]{
    -webkit-appearance:none!important;
    appearance:none!important;
    position:static!important;
    inset:auto!important;
    transform:none!important;
    height:48px!important;
    min-height:48px!important;
    padding:0 14px!important;
    line-height:48px!important;
    text-align:center!important;
    font-variant-numeric:tabular-nums!important;
  }

  html body .content .inventory-toolbar{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }

  html body .content .inventory-toolbar > :is(input,select,button){
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
}

@media (max-width:900px){
  html body .content .personnel-psa-card .psa-create-form{
    grid-template-columns:minmax(0,1fr)!important;
  }
  html body .content .personnel-psa-card .psa-create-form > .full,
  html body .content .personnel-psa-card .psa-create-form > label{
    grid-column:1!important;
  }
}

/* inventory-v1298.css */
/* Retter-Portal v1.2.98 – inventory date fields on tablets only. */
@media (min-width:761px) and (max-width:1180px),
       (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  /* iPad Safari gives native date inputs an intrinsic width. Keep both
     Kaufdatum and Nächste Prüfung strictly inside their form cards. */
  html body .app-shell .main .content .inventory-form{
    min-width:0!important;
    max-width:100%!important;
  }

  html body .app-shell .main .content .inventory-form > label{
    min-width:0!important;
    max-width:100%!important;
    width:100%!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  html body .app-shell .main .content .inventory-form > label:has(input[type="date"]){
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-content:start!important;
    gap:9px!important;
  }

  html body .app-shell .main .content .inventory-form input[type="date"]{
    -webkit-appearance:none!important;
    appearance:none!important;
    position:static!important;
    inset:auto!important;
    transform:none!important;
    display:block!important;
    inline-size:100%!important;
    width:100%!important;
    min-inline-size:0!important;
    min-width:0!important;
    max-inline-size:100%!important;
    max-width:100%!important;
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
    margin:0!important;
    padding:0 14px!important;
    line-height:48px!important;
    text-align:center!important;
    font-size:16px!important;
    font-variant-numeric:tabular-nums!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }

  html body .app-shell .main .content .inventory-form input[type="date"]::-webkit-date-and-time-value{
    min-width:0!important;
    margin:0!important;
    text-align:center!important;
  }
}

/* inventory-v1299.css */
/* Retter-Portal v1.2.99 – inventory table polish on tablets only. */

/* Dynamically generated local-filter empty rows must really disappear again. */
html body .content .inventory-table-wrap [data-local-filter-empty-row][hidden],
html body .content .inventory-table-wrap [data-local-filter-empty][hidden]{
  display:none!important;
}

.inventory-table-shell{
  position:relative;
  min-width:0;
  max-width:100%;
}

.inventory-scroll-guide{
  display:none;
}

@media (min-width:761px) and (max-width:1180px),
       (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  /* A visible affordance is preferable to requiring users to change Safari zoom. */
  html body .content .inventory-table-shell.has-horizontal-overflow .inventory-scroll-guide:not([hidden]){
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    width:max-content!important;
    max-width:100%!important;
    min-height:36px!important;
    margin:0 0 10px auto!important;
    padding:7px 11px!important;
    border:1px solid var(--line-soft)!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.055)!important;
    color:var(--muted)!important;
    box-shadow:0 8px 24px rgba(2,6,23,.10)!important;
    font-size:.76rem!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  html body[data-theme="light"] .content .inventory-table-shell.has-horizontal-overflow .inventory-scroll-guide:not([hidden]){
    background:rgba(255,255,255,.88)!important;
    border-color:rgba(116,132,154,.25)!important;
  }
  html body .content .inventory-scroll-guide > span{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:22px!important;
    height:22px!important;
    border-radius:999px!important;
    background:rgba(200,16,46,.14)!important;
    color:#ff4d64!important;
    font-size:1rem!important;
    font-weight:1000!important;
  }
  html body .content .inventory-scroll-guide strong{
    color:var(--text)!important;
    font-weight:950!important;
  }
  html body .content .inventory-scroll-guide small{
    color:var(--muted)!important;
    font-size:inherit!important;
    font-weight:750!important;
  }

  html body .content .inventory-table-shell.has-horizontal-overflow:not(.is-at-end)::after{
    content:"";
    position:absolute;
    z-index:3;
    top:46px;
    right:0;
    bottom:0;
    width:34px;
    pointer-events:none;
    border-radius:0 24px 24px 0;
    background:linear-gradient(90deg,transparent,rgba(7,15,29,.84));
  }
  html body[data-theme="light"] .content .inventory-table-shell.has-horizontal-overflow:not(.is-at-end)::after{
    background:linear-gradient(90deg,transparent,rgba(241,245,249,.94));
  }

  html body .content .inventory-table-wrap{
    overscroll-behavior-inline:contain!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-gutter:stable!important;
  }
  html body .content .inventory-table-wrap::-webkit-scrollbar{
    height:10px!important;
  }
  html body .content .inventory-table-wrap::-webkit-scrollbar-track{
    background:rgba(148,163,184,.10)!important;
    border-radius:999px!important;
  }
  html body .content .inventory-table-wrap::-webkit-scrollbar-thumb{
    background:rgba(148,163,184,.42)!important;
    border:2px solid transparent!important;
    background-clip:padding-box!important;
    border-radius:999px!important;
  }

  /* Keep tablet status pills compact and vertically centred at every browser zoom. */
  html body .content .inventory-table td:nth-child(4){
    min-width:104px!important;
    vertical-align:middle!important;
  }
  html body .content .inventory-table td:nth-child(4) .status{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:32px!important;
    height:32px!important;
    margin:0!important;
    padding:0 10px!important;
    border-radius:999px!important;
    font-size:.75rem!important;
    font-weight:950!important;
    line-height:1!important;
    letter-spacing:-.01em!important;
    white-space:nowrap!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    box-sizing:border-box!important;
  }
}

@media (min-width:761px) and (max-width:920px){
  html body .content .inventory-scroll-guide small{display:none!important;}
}

/* inventory-v1300.css */
/* Retter-Portal v1.3.0 – inventory status and service vehicle polish. */

@media (min-width:761px) and (max-width:1180px),
       (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  /* Stable status chip even with Safari page zoom at 85%. */
  html body .content .inventory-table td:nth-child(4){
    min-width:118px!important;
    padding-top:12px!important;
    padding-bottom:12px!important;
    vertical-align:middle!important;
  }
  html body .content .inventory-table td:nth-child(4) .status{
    display:inline-grid!important;
    place-items:center!important;
    width:max-content!important;
    min-width:88px!important;
    max-width:108px!important;
    min-height:34px!important;
    height:34px!important;
    margin:0!important;
    padding:0 12px!important;
    border-radius:999px!important;
    font-size:.73rem!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    box-sizing:border-box!important;
    transform:none!important;
  }

  html body .content .service-vehicle-builder{
    min-width:0!important;
    max-width:100%!important;
    overflow:visible!important;
  }
  html body .content .service-vehicle-builder .incident-vehicle-row,
  html body .content .service-vehicle-builder .incident-vehicle-row-head,
  html body .content .service-vehicle-builder .incident-vehicle-meta-grid{
    min-width:0!important;
    max-width:100%!important;
  }
}

/* inventory-v132.css */
/* Retter-Portal v1.3.2 – mobile inventory filter only. */
@media (max-width:760px){
  /* Keep every inventory filter inside the card. The Löschzug selector must
     never share a cramped row with the search field on phones. */
  html body .app-shell .main .content .inventory-toolbar{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:11px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }

  html body .app-shell .main .content .inventory-toolbar > :is(input,select,button,.btn){
    grid-column:1!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    box-sizing:border-box!important;
  }

  html body .app-shell .main .content .inventory-toolbar select{
    min-height:48px!important;
    height:48px!important;
    padding:0 44px 0 14px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  html body .app-shell .main .content .inventory-toolbar input{
    min-height:48px!important;
    height:48px!important;
    padding:0 14px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
}

/* header-support-v133.css */
/* Retter-Portal v1.3.3 – isolated header and support-category polish only. */

/* Accounts without an elevated portal role get the same calm account container
   as accounts that also show a role badge. */
html body .topbar .topbar-desktop-shell .topbar-account-info.name-only{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:150px!important;
  max-width:280px!important;
  min-height:42px!important;
  margin:0!important;
  padding:4px 12px!important;
  border:1px solid var(--line-soft)!important;
  border-radius:14px!important;
  background:rgba(148,163,184,.06)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
html body .topbar .topbar-desktop-shell .topbar-account-info.name-only .user-chip{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  max-width:250px!important;
  min-height:32px!important;
  margin:0!important;
  padding:0 8px!important;
  border:0!important;
  background:transparent!important;
  color:var(--text)!important;
  font-size:.9rem!important;
  font-weight:950!important;
  line-height:1.15!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* Make the selected ticket category unmistakable without changing the form. */
html body .support-form .support-choice-card{
  position:relative!important;
  overflow:hidden!important;
}
html body .support-form .support-choice-card:has(input:checked){
  border-color:var(--accent)!important;
  outline:3px solid color-mix(in srgb,var(--accent) 28%,transparent)!important;
  outline-offset:0!important;
  background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 15%,var(--surface)),color-mix(in srgb,var(--accent) 7%,var(--surface-2)))!important;
  box-shadow:0 14px 34px color-mix(in srgb,var(--accent) 18%,transparent),inset 0 0 0 1px color-mix(in srgb,var(--accent) 55%,transparent)!important;
}
html body .support-form .support-choice-card:has(input:checked)::after{
  content:"Ausgewählt";
  position:absolute;
  top:10px;
  right:10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:25px;
  padding:4px 8px;
  border-radius:999px;
  background:var(--accent);
  color:#fff;
  font-size:.61rem;
  font-weight:950;
  line-height:1;
  letter-spacing:.06em;
  text-transform:uppercase;
  box-shadow:0 8px 20px color-mix(in srgb,var(--accent) 24%,transparent);
}

@media (min-width:761px) and (max-width:1180px),
       (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  html body .topbar .topbar-desktop-shell .topbar-account-info.name-only{
    min-width:135px!important;
    max-width:230px!important;
    padding-inline:9px!important;
  }
  html body .topbar .topbar-desktop-shell .topbar-account-info.name-only .user-chip{
    max-width:205px!important;
    font-size:.84rem!important;
  }
}

@media (max-width:680px){
  html body .support-form .support-choice-card:has(input:checked)::after{
    top:9px;
    right:9px;
  }
}

/* liquid-glass-v135.css */
/* Retter-Portal v1.3.5 – restrained liquid-glass visual refresh.
   Layout, navigation order and application structure remain unchanged. */

:root{
  --glass-bg:rgba(255,255,255,.66);
  --glass-bg-strong:rgba(255,255,255,.79);
  --glass-bg-soft:rgba(248,250,252,.50);
  --glass-line:rgba(255,255,255,.72);
  --glass-line-soft:rgba(100,116,139,.18);
  --glass-shadow:0 20px 58px rgba(15,23,42,.10),inset 0 1px 0 rgba(255,255,255,.76);
  --glass-shadow-soft:0 10px 30px rgba(15,23,42,.075),inset 0 1px 0 rgba(255,255,255,.64);
  --glass-red:rgba(200,16,46,.14);
  --glass-blue:rgba(37,99,235,.12);
  --glass-teal:rgba(15,159,143,.10);
}
body[data-theme="dark"]{
  --glass-bg:rgba(12,21,36,.66);
  --glass-bg-strong:rgba(16,27,45,.80);
  --glass-bg-soft:rgba(24,38,60,.42);
  --glass-line:rgba(255,255,255,.105);
  --glass-line-soft:rgba(255,255,255,.075);
  --glass-shadow:0 22px 64px rgba(0,0,0,.31),inset 0 1px 0 rgba(255,255,255,.075);
  --glass-shadow-soft:0 12px 34px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.055);
  --glass-red:rgba(225,29,72,.14);
  --glass-blue:rgba(59,130,246,.12);
  --glass-teal:rgba(45,212,191,.09);
}
@media (prefers-color-scheme:dark){
  body[data-theme="system"]{
    --glass-bg:rgba(12,21,36,.66);
    --glass-bg-strong:rgba(16,27,45,.80);
    --glass-bg-soft:rgba(24,38,60,.42);
    --glass-line:rgba(255,255,255,.105);
    --glass-line-soft:rgba(255,255,255,.075);
    --glass-shadow:0 22px 64px rgba(0,0,0,.31),inset 0 1px 0 rgba(255,255,255,.075);
    --glass-shadow-soft:0 12px 34px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.055);
    --glass-red:rgba(225,29,72,.14);
    --glass-blue:rgba(59,130,246,.12);
    --glass-teal:rgba(45,212,191,.09);
  }
}

/* A calmer, premium background without changing content dimensions. */
html body{
  background:
    radial-gradient(circle at 12% -5%,var(--glass-red),transparent 31rem),
    radial-gradient(circle at 88% 0,var(--glass-blue),transparent 35rem),
    radial-gradient(circle at 55% 102%,var(--glass-teal),transparent 34rem),
    linear-gradient(145deg,var(--bg),var(--bg2))!important;
}
html body:before{
  opacity:.58;
  background-size:56px 56px!important;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.72),transparent 88%)!important;
}

/* Main glass surfaces. */
html body :is(
  .card,.stat-card,.toolbar,.pagination,.page-head,.page-hero,.login-card,
  .rp55-focus-card,.rp55-own-card,.rp55-table-card,.rp55-kpi-card,
  .admin-panel,.admin-card,.admin-account-card,.admin-overview-card,
  .form-subcard,.smart-person-picker,.detail-item,.info-grid>div
){
  background:
    linear-gradient(145deg,var(--glass-bg-strong),var(--glass-bg)),
    radial-gradient(circle at 0 0,var(--glass-red),transparent 42%),
    radial-gradient(circle at 100% 0,var(--glass-blue),transparent 44%)!important;
  border-color:var(--glass-line)!important;
  box-shadow:var(--glass-shadow)!important;
  -webkit-backdrop-filter:blur(20px) saturate(1.18)!important;
  backdrop-filter:blur(20px) saturate(1.18)!important;
}

/* Nested elements stay quieter than the main panels. */
html body :is(
  .rp55-own-metrics article,.rp55-focus-grid article,.rp55-priority-list a,
  .timeline-item,.department-chip,.person-choice,.admin-inline-assignment-list article,
  .admin-current-link,.check,.calendar-day,.youth-day
){
  background:linear-gradient(145deg,var(--glass-bg-soft),color-mix(in srgb,var(--glass-bg-soft) 76%,transparent))!important;
  border-color:var(--glass-line-soft)!important;
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--glass-line) 72%,transparent),0 8px 22px rgba(15,23,42,.045)!important;
  -webkit-backdrop-filter:blur(12px) saturate(1.08)!important;
  backdrop-filter:blur(12px) saturate(1.08)!important;
}
body[data-theme="dark"] :is(.rp55-own-metrics article,.rp55-focus-grid article,.rp55-priority-list a,.timeline-item,.department-chip,.person-choice,.admin-inline-assignment-list article,.admin-current-link,.check,.calendar-day,.youth-day){
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 24px rgba(0,0,0,.13)!important;
}

/* Header and sidebar receive the same material language. */
html body .topbar{
  background:color-mix(in srgb,var(--glass-bg-strong) 90%,transparent)!important;
  border-bottom-color:var(--glass-line-soft)!important;
  box-shadow:0 12px 38px rgba(15,23,42,.07),inset 0 -1px 0 rgba(255,255,255,.16)!important;
  -webkit-backdrop-filter:blur(24px) saturate(1.25)!important;
  backdrop-filter:blur(24px) saturate(1.25)!important;
}
html body .sidebar{
  background:
    radial-gradient(circle at 15% 0,rgba(200,16,46,.13),transparent 25rem),
    radial-gradient(circle at 100% 16%,rgba(37,99,235,.11),transparent 22rem),
    linear-gradient(180deg,#050b16 0%,#08111f 52%,#0c1727 100%)!important;
  border-right-color:rgba(255,255,255,.075)!important;
  box-shadow:20px 0 58px rgba(2,6,23,.26),inset -1px 0 0 rgba(255,255,255,.035)!important;
}
html body .sidebar nav a{
  border-color:transparent!important;
  transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
html body .sidebar nav a:hover{
  transform:translateX(2px);
  background:rgba(255,255,255,.075)!important;
  border-color:rgba(255,255,255,.075)!important;
}
html body .sidebar nav a.active{
  background:linear-gradient(135deg,rgba(200,16,46,.96),rgba(158,19,43,.88))!important;
  border-color:rgba(255,255,255,.12)!important;
  box-shadow:0 14px 34px rgba(200,16,46,.24),inset 0 1px 0 rgba(255,255,255,.16)!important;
}

/* Controls look inset and tactile instead of flat. */
html body :is(input,select,textarea){
  background:linear-gradient(145deg,color-mix(in srgb,var(--surface-2) 82%,transparent),color-mix(in srgb,var(--surface) 72%,transparent))!important;
  border-color:var(--glass-line-soft)!important;
  box-shadow:inset 0 1px 2px rgba(15,23,42,.055),0 1px 0 rgba(255,255,255,.30)!important;
  -webkit-backdrop-filter:blur(10px)!important;
  backdrop-filter:blur(10px)!important;
}
body[data-theme="dark"] :is(input,select,textarea){
  box-shadow:inset 0 1px 3px rgba(0,0,0,.24),0 1px 0 rgba(255,255,255,.035)!important;
}
html body :is(input,select,textarea):focus{
  border-color:color-mix(in srgb,var(--primary) 66%,var(--glass-line-soft))!important;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 15%,transparent),inset 0 1px 2px rgba(15,23,42,.05)!important;
}

html body .btn{
  background:linear-gradient(145deg,var(--glass-bg-strong),var(--glass-bg-soft))!important;
  border-color:var(--glass-line-soft)!important;
  box-shadow:var(--glass-shadow-soft)!important;
  -webkit-backdrop-filter:blur(14px) saturate(1.12)!important;
  backdrop-filter:blur(14px) saturate(1.12)!important;
}
html body .btn:hover{
  transform:translateY(-1px);
  border-color:color-mix(in srgb,var(--primary) 28%,var(--glass-line-soft))!important;
  box-shadow:0 16px 38px rgba(15,23,42,.12),inset 0 1px 0 rgba(255,255,255,.72)!important;
}
html body .btn.primary{
  color:#fff!important;
  border-color:rgba(255,255,255,.13)!important;
  background:linear-gradient(135deg,#df1237,#b40f2d 58%,#861126)!important;
  box-shadow:0 16px 38px rgba(200,16,46,.25),inset 0 1px 0 rgba(255,255,255,.23)!important;
}
html body .btn.primary:hover{
  box-shadow:0 21px 48px rgba(200,16,46,.32),inset 0 1px 0 rgba(255,255,255,.27)!important;
}
html body .btn.danger{
  background:linear-gradient(145deg,rgba(255,241,242,.90),rgba(255,228,230,.72))!important;
}

html body :is(.pill,.status,.role,.secure-pill){
  background:linear-gradient(145deg,var(--glass-bg-strong),var(--glass-bg-soft))!important;
  border-color:var(--glass-line-soft)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.48),0 6px 18px rgba(15,23,42,.055)!important;
  -webkit-backdrop-filter:blur(12px)!important;
  backdrop-filter:blur(12px)!important;
}
html body :is(.status.Aktiv,.status.Verfügbar,.status.Genehmigt,.ok){
  background:linear-gradient(145deg,rgba(209,250,229,.90),rgba(167,243,208,.66))!important;
  color:#047857!important;
  border-color:rgba(16,185,129,.24)!important;
}
body[data-theme="dark"] :is(.status.Aktiv,.status.Verfügbar,.status.Genehmigt,.ok){
  background:linear-gradient(145deg,rgba(6,95,70,.38),rgba(4,120,87,.22))!important;
  color:#a7f3d0!important;
  border-color:rgba(52,211,153,.20)!important;
}

/* Tables retain structure but gain a cleaner glass hierarchy. */
html body .table-wrap{
  background:color-mix(in srgb,var(--glass-bg) 72%,transparent)!important;
  border-color:var(--glass-line-soft)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.32)!important;
  -webkit-backdrop-filter:blur(15px)!important;
  backdrop-filter:blur(15px)!important;
}
html body table thead th{
  background:linear-gradient(180deg,color-mix(in srgb,var(--glass-bg-strong) 86%,transparent),color-mix(in srgb,var(--glass-bg-soft) 84%,transparent))!important;
  border-bottom-color:var(--glass-line-soft)!important;
}
html body table tbody tr:hover td{
  background:color-mix(in srgb,var(--primary) 5%,transparent)!important;
}

/* Dashboard label fix: never split single words into isolated letters. */
html body .dashboard-member-metrics,
html body .dashboard-own-compact{
  grid-template-columns:repeat(auto-fit,minmax(164px,1fr))!important;
}
html body .rp55-own-metrics article span{
  max-width:100%!important;
  font-size:clamp(.66rem,.78vw,.78rem)!important;
  line-height:1.16!important;
  letter-spacing:.055em!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  white-space:nowrap!important;
}
html body .rp55-own-metrics article.date-metric span{
  white-space:normal!important;
  text-wrap:balance!important;
}
html body .rp55-own-metrics article strong{
  max-width:100%!important;
  overflow:hidden!important;
  font-variant-numeric:tabular-nums!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
}

/* Subtle highlights make the material feel dimensional without visual noise. */
html body :is(.page-head,.page-hero,.rp55-dash-hero,.card,.toolbar){
  position:relative;
  isolation:isolate;
}
html body :is(.page-head,.page-hero,.rp55-dash-hero,.card,.toolbar)::after{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  background:linear-gradient(115deg,rgba(255,255,255,.20),transparent 28%,transparent 72%,rgba(255,255,255,.07));
  opacity:.72;
}
body[data-theme="dark"] :is(.page-head,.page-hero,.rp55-dash-hero,.card,.toolbar)::after{
  opacity:.26;
}

@media (max-width:1100px){
  html body .dashboard-member-metrics,
  html body .dashboard-own-compact{
    grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;
  }
  html body .rp55-own-metrics article span{
    font-size:.68rem!important;
    letter-spacing:.045em!important;
  }
}

@media (max-width:520px){
  html body .dashboard-member-metrics,
  html body .dashboard-own-compact{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  html body .rp55-own-metrics article{
    padding:14px 12px!important;
  }
  html body .rp55-own-metrics article span{
    font-size:.62rem!important;
    letter-spacing:.025em!important;
  }
  html body .rp55-own-metrics article.date-metric span{
    font-size:.60rem!important;
  }
}

@media (prefers-reduced-motion:reduce){
  html body *{scroll-behavior:auto!important}
  html body .btn,
  html body .sidebar nav a{transition:none!important}
}

/* liquid-glass-v136.css */
/* Retter-Portal v1.3.6 – stärkerer Liquid-Glass-Look.
   Nur Material, Licht, Transparenz und Tiefe werden verändert; Layout und Struktur bleiben bestehen. */
:root{
  --glass-136-bg:rgba(255,255,255,.54);
  --glass-136-bg-strong:rgba(255,255,255,.72);
  --glass-136-bg-soft:rgba(248,250,252,.40);
  --glass-136-line:rgba(255,255,255,.82);
  --glass-136-line-soft:rgba(100,116,139,.20);
  --glass-136-shadow:0 28px 78px rgba(15,23,42,.14),0 8px 24px rgba(15,23,42,.06),inset 0 1px 0 rgba(255,255,255,.88),inset 0 -1px 0 rgba(148,163,184,.08);
  --glass-136-shadow-soft:0 16px 42px rgba(15,23,42,.10),inset 0 1px 0 rgba(255,255,255,.76);
  --glass-136-red:rgba(225,29,72,.18);
  --glass-136-blue:rgba(37,99,235,.16);
  --glass-136-teal:rgba(20,184,166,.13);
  --glass-136-violet:rgba(124,58,237,.10);
}
body[data-theme="dark"]{
  --glass-136-bg:rgba(8,17,31,.53);
  --glass-136-bg-strong:rgba(15,27,46,.72);
  --glass-136-bg-soft:rgba(24,39,62,.34);
  --glass-136-line:rgba(255,255,255,.15);
  --glass-136-line-soft:rgba(255,255,255,.085);
  --glass-136-shadow:0 32px 86px rgba(0,0,0,.42),0 10px 30px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.11),inset 0 -1px 0 rgba(255,255,255,.025);
  --glass-136-shadow-soft:0 18px 48px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.075);
  --glass-136-red:rgba(244,63,94,.18);
  --glass-136-blue:rgba(59,130,246,.17);
  --glass-136-teal:rgba(45,212,191,.12);
  --glass-136-violet:rgba(139,92,246,.12);
}
@media (prefers-color-scheme:dark){
  body[data-theme="system"]{
    --glass-136-bg:rgba(8,17,31,.53);
    --glass-136-bg-strong:rgba(15,27,46,.72);
    --glass-136-bg-soft:rgba(24,39,62,.34);
    --glass-136-line:rgba(255,255,255,.15);
    --glass-136-line-soft:rgba(255,255,255,.085);
    --glass-136-shadow:0 32px 86px rgba(0,0,0,.42),0 10px 30px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.11),inset 0 -1px 0 rgba(255,255,255,.025);
    --glass-136-shadow-soft:0 18px 48px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.075);
    --glass-136-red:rgba(244,63,94,.18);
    --glass-136-blue:rgba(59,130,246,.17);
    --glass-136-teal:rgba(45,212,191,.12);
    --glass-136-violet:rgba(139,92,246,.12);
  }
}

/* Bewegte Lichtflächen hinter dem eigentlichen Portal erzeugen Tiefe, ohne Inhalte zu verschieben. */
html body{
  background:
    radial-gradient(ellipse at 4% -10%,var(--glass-136-red),transparent 34rem),
    radial-gradient(ellipse at 95% 2%,var(--glass-136-blue),transparent 39rem),
    radial-gradient(ellipse at 52% 108%,var(--glass-136-teal),transparent 40rem),
    radial-gradient(ellipse at 66% 36%,var(--glass-136-violet),transparent 31rem),
    linear-gradient(145deg,var(--bg),var(--bg2))!important;
  background-attachment:fixed!important;
}
html body .app-shell::before{
  content:"";
  position:fixed;
  z-index:-1;
  inset:-18vh -12vw;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 30%,var(--glass-136-red),transparent 20%),
    radial-gradient(circle at 78% 18%,var(--glass-136-blue),transparent 22%),
    radial-gradient(circle at 56% 82%,var(--glass-136-teal),transparent 21%);
  filter:blur(70px);
  opacity:.62;
}

/* Große Oberflächen: deutlich transparenter, stärker gebrochenes Licht und feinere Innenkante. */
html body :is(
  .card,.stat-card,.toolbar,.pagination,.page-head,.page-hero,.login-card,
  .rp55-focus-card,.rp55-own-card,.rp55-table-card,.rp55-kpi-card,.rp55-dash-hero,
  .admin-panel,.admin-card,.admin-account-card,.admin-overview-card,.admin-command-nav,
  .form-subcard,.smart-person-picker,.detail-item,.info-grid>div,.table-wrap
){
  background:
    linear-gradient(118deg,rgba(255,255,255,.22),transparent 23%,transparent 68%,rgba(255,255,255,.065)),
    radial-gradient(circle at 0 0,var(--glass-136-red),transparent 42%),
    radial-gradient(circle at 100% 0,var(--glass-136-blue),transparent 44%),
    linear-gradient(145deg,var(--glass-136-bg-strong),var(--glass-136-bg))!important;
  border-color:var(--glass-136-line)!important;
  box-shadow:var(--glass-136-shadow)!important;
  -webkit-backdrop-filter:blur(30px) saturate(1.32) contrast(1.02)!important;
  backdrop-filter:blur(30px) saturate(1.32) contrast(1.02)!important;
}
body[data-theme="dark"] :is(
  .card,.stat-card,.toolbar,.pagination,.page-head,.page-hero,.login-card,
  .rp55-focus-card,.rp55-own-card,.rp55-table-card,.rp55-kpi-card,.rp55-dash-hero,
  .admin-panel,.admin-card,.admin-account-card,.admin-overview-card,.admin-command-nav,
  .form-subcard,.smart-person-picker,.detail-item,.info-grid>div,.table-wrap
){
  background:
    linear-gradient(118deg,rgba(255,255,255,.075),transparent 24%,transparent 68%,rgba(255,255,255,.025)),
    radial-gradient(circle at 0 0,var(--glass-136-red),transparent 45%),
    radial-gradient(circle at 100% 0,var(--glass-136-blue),transparent 47%),
    linear-gradient(145deg,var(--glass-136-bg-strong),var(--glass-136-bg))!important;
}

/* Kleine Karten und Kennzahlen wirken wie eingelassene Glaselemente. */
html body :is(
  .rp55-own-metrics article,.rp55-focus-grid article,.rp55-priority-list a,
  .timeline-item,.department-chip,.person-choice,.admin-inline-assignment-list article,
  .admin-current-link,.check,.calendar-day,.youth-day,.admin-command-nav a,
  .dashboard-grid article,.stat-grid article
){
  background:
    linear-gradient(135deg,rgba(255,255,255,.16),transparent 42%),
    linear-gradient(145deg,var(--glass-136-bg-soft),color-mix(in srgb,var(--glass-136-bg-soft) 68%,transparent))!important;
  border-color:var(--glass-136-line-soft)!important;
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--glass-136-line) 75%,transparent),0 12px 30px rgba(15,23,42,.075)!important;
  -webkit-backdrop-filter:blur(18px) saturate(1.18)!important;
  backdrop-filter:blur(18px) saturate(1.18)!important;
}
body[data-theme="dark"] :is(
  .rp55-own-metrics article,.rp55-focus-grid article,.rp55-priority-list a,
  .timeline-item,.department-chip,.person-choice,.admin-inline-assignment-list article,
  .admin-current-link,.check,.calendar-day,.youth-day,.admin-command-nav a,
  .dashboard-grid article,.stat-grid article
){
  box-shadow:inset 0 1px 0 rgba(255,255,255,.065),0 14px 34px rgba(0,0,0,.18)!important;
}

/* Header und Sidebar als eigenständige Glasschichten. */
html body .topbar{
  background:
    linear-gradient(115deg,rgba(255,255,255,.15),transparent 36%),
    color-mix(in srgb,var(--glass-136-bg-strong) 82%,transparent)!important;
  border-bottom-color:var(--glass-136-line-soft)!important;
  box-shadow:0 18px 50px rgba(15,23,42,.11),inset 0 -1px 0 rgba(255,255,255,.16)!important;
  -webkit-backdrop-filter:blur(34px) saturate(1.38)!important;
  backdrop-filter:blur(34px) saturate(1.38)!important;
}
html body .sidebar{
  background:
    linear-gradient(145deg,rgba(255,255,255,.035),transparent 26%),
    radial-gradient(circle at 12% 0,rgba(225,29,72,.18),transparent 24rem),
    radial-gradient(circle at 100% 18%,rgba(59,130,246,.15),transparent 23rem),
    linear-gradient(180deg,rgba(3,9,20,.90),rgba(7,18,34,.87) 55%,rgba(11,25,43,.91))!important;
  border-right-color:rgba(255,255,255,.10)!important;
  box-shadow:24px 0 70px rgba(2,6,23,.34),inset -1px 0 0 rgba(255,255,255,.055)!important;
  -webkit-backdrop-filter:blur(30px) saturate(1.28)!important;
  backdrop-filter:blur(30px) saturate(1.28)!important;
}
html body .sidebar .brand{
  background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.025))!important;
  border-color:rgba(255,255,255,.09)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 16px 42px rgba(0,0,0,.20)!important;
  -webkit-backdrop-filter:blur(18px)!important;
  backdrop-filter:blur(18px)!important;
}
html body .sidebar nav a:hover{
  background:linear-gradient(135deg,rgba(255,255,255,.11),rgba(255,255,255,.055))!important;
  border-color:rgba(255,255,255,.105)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 10px 24px rgba(0,0,0,.13)!important;
}
html body .sidebar nav a.active{
  background:linear-gradient(135deg,rgba(238,20,64,.98),rgba(172,16,49,.88) 62%,rgba(116,13,42,.91))!important;
  border-color:rgba(255,255,255,.17)!important;
  box-shadow:0 18px 46px rgba(225,29,72,.31),inset 0 1px 0 rgba(255,255,255,.24),inset 0 -1px 0 rgba(0,0,0,.12)!important;
}

/* Formfelder und Auswahlmenüs erhalten sichtbarere Glasbrechung. */
html body :is(input,select,textarea){
  background:
    linear-gradient(145deg,rgba(255,255,255,.11),transparent 38%),
    linear-gradient(145deg,color-mix(in srgb,var(--surface-2) 70%,transparent),color-mix(in srgb,var(--surface) 58%,transparent))!important;
  border-color:var(--glass-136-line-soft)!important;
  box-shadow:inset 0 2px 5px rgba(15,23,42,.08),0 1px 0 rgba(255,255,255,.42)!important;
  -webkit-backdrop-filter:blur(16px) saturate(1.15)!important;
  backdrop-filter:blur(16px) saturate(1.15)!important;
}
body[data-theme="dark"] :is(input,select,textarea){
  box-shadow:inset 0 2px 6px rgba(0,0,0,.30),0 1px 0 rgba(255,255,255,.05)!important;
}
html body :is(input,select,textarea):focus{
  border-color:color-mix(in srgb,var(--primary) 74%,var(--glass-136-line-soft))!important;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 17%,transparent),0 12px 28px color-mix(in srgb,var(--primary) 10%,transparent),inset 0 1px 3px rgba(15,23,42,.05)!important;
}
html body .smart-select-results{
  background:
    linear-gradient(135deg,rgba(255,255,255,.14),transparent 35%),
    color-mix(in srgb,var(--glass-136-bg-strong) 94%,var(--surface))!important;
  border-color:var(--glass-136-line)!important;
  box-shadow:0 28px 78px rgba(15,23,42,.20),inset 0 1px 0 rgba(255,255,255,.55)!important;
  -webkit-backdrop-filter:blur(34px) saturate(1.35)!important;
  backdrop-filter:blur(34px) saturate(1.35)!important;
}
body[data-theme="dark"] .smart-select-results{
  background:linear-gradient(135deg,rgba(255,255,255,.055),transparent 34%),rgba(8,17,31,.91)!important;
  box-shadow:0 30px 86px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.08)!important;
}

/* Buttons und Status-Pills wirken wie polierte Glasflächen. */
html body .btn{
  background:
    linear-gradient(145deg,rgba(255,255,255,.24),transparent 46%),
    linear-gradient(145deg,var(--glass-136-bg-strong),var(--glass-136-bg-soft))!important;
  border-color:var(--glass-136-line-soft)!important;
  box-shadow:var(--glass-136-shadow-soft)!important;
  -webkit-backdrop-filter:blur(20px) saturate(1.24)!important;
  backdrop-filter:blur(20px) saturate(1.24)!important;
}
html body .btn:hover{
  transform:translateY(-2px);
  border-color:color-mix(in srgb,var(--primary) 36%,var(--glass-136-line-soft))!important;
  box-shadow:0 20px 48px rgba(15,23,42,.16),inset 0 1px 0 rgba(255,255,255,.84)!important;
}
html body .btn.primary{
  background:
    linear-gradient(145deg,rgba(255,255,255,.19),transparent 42%),
    linear-gradient(135deg,#ef1745,#c30f35 56%,#8e1029)!important;
  border-color:rgba(255,255,255,.19)!important;
  box-shadow:0 20px 48px rgba(200,16,46,.34),inset 0 1px 0 rgba(255,255,255,.30),inset 0 -1px 0 rgba(95,5,27,.25)!important;
}
html body :is(.pill,.status,.role,.secure-pill){
  background:
    linear-gradient(145deg,rgba(255,255,255,.20),transparent 44%),
    linear-gradient(145deg,var(--glass-136-bg-strong),var(--glass-136-bg-soft))!important;
  border-color:var(--glass-136-line-soft)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.62),0 9px 24px rgba(15,23,42,.085)!important;
  -webkit-backdrop-filter:blur(18px) saturate(1.18)!important;
  backdrop-filter:blur(18px) saturate(1.18)!important;
}

/* Tabellen bleiben klar lesbar, zeigen aber stärker die Materialtiefe. */
html body .table-wrap{
  background:color-mix(in srgb,var(--glass-136-bg) 73%,transparent)!important;
  border-color:var(--glass-136-line-soft)!important;
}
html body table thead th{
  background:
    linear-gradient(180deg,rgba(255,255,255,.15),transparent),
    color-mix(in srgb,var(--glass-136-bg-strong) 84%,transparent)!important;
  border-bottom-color:var(--glass-136-line-soft)!important;
  -webkit-backdrop-filter:blur(20px)!important;
  backdrop-filter:blur(20px)!important;
}
html body table tbody td{
  background:color-mix(in srgb,var(--glass-136-bg-soft) 30%,transparent)!important;
}
html body table tbody tr:hover td{
  background:color-mix(in srgb,var(--primary) 8%,var(--glass-136-bg-soft))!important;
}

/* Admin-interne Navigation bleibt die einzige Detailnavigation und erhält eine klarere Glasleiste. */
html body.admin-surface .admin-command-nav{
  background:
    linear-gradient(118deg,rgba(255,255,255,.18),transparent 28%),
    linear-gradient(145deg,var(--glass-136-bg-strong),var(--glass-136-bg))!important;
  border-color:var(--glass-136-line)!important;
  box-shadow:0 24px 64px rgba(15,23,42,.13),inset 0 1px 0 rgba(255,255,255,.74)!important;
}
html body.admin-surface .admin-command-nav a.is-active{
  background:linear-gradient(135deg,rgba(225,29,72,.98),rgba(154,18,47,.88))!important;
  border-color:rgba(255,255,255,.17)!important;
  color:#fff!important;
  box-shadow:0 12px 30px rgba(225,29,72,.27),inset 0 1px 0 rgba(255,255,255,.23)!important;
}

@supports not ((-webkit-backdrop-filter:blur(2px)) or (backdrop-filter:blur(2px))){
  html body :is(.card,.toolbar,.pagination,.page-head,.page-hero,.admin-panel,.admin-card,.admin-command-nav,.table-wrap){
    background:var(--surface)!important;
  }
}

@media (max-width:860px){
  html body :is(.card,.toolbar,.pagination,.page-head,.page-hero,.admin-panel,.admin-card,.admin-command-nav,.table-wrap){
    -webkit-backdrop-filter:blur(22px) saturate(1.22)!important;
    backdrop-filter:blur(22px) saturate(1.22)!important;
  }
  html body .sidebar,
  html body .topbar{
    -webkit-backdrop-filter:blur(24px) saturate(1.25)!important;
    backdrop-filter:blur(24px) saturate(1.25)!important;
  }
}

@media (prefers-reduced-transparency:reduce){
  html body :is(.card,.toolbar,.pagination,.page-head,.page-hero,.admin-panel,.admin-card,.admin-command-nav,.table-wrap){
    background:var(--surface)!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
}

/* liquid-glass-v137.css */
/* Retter-Portal v1.3.7 – ruhige, hochwertige Glasoptik.
   Die überzeichnete v1.3.6-Lichtbrechung wird bewusst zurückgenommen.
   Struktur, Abstände und Breakpoints bleiben unverändert. */
:root{
  --rp137-glass:rgba(255,255,255,.76);
  --rp137-glass-strong:rgba(255,255,255,.88);
  --rp137-glass-soft:rgba(248,250,252,.62);
  --rp137-glass-line:rgba(100,116,139,.20);
  --rp137-glass-highlight:rgba(255,255,255,.72);
  --rp137-shadow:0 18px 52px rgba(15,23,42,.10),inset 0 1px 0 rgba(255,255,255,.72);
  --rp137-shadow-soft:0 9px 25px rgba(15,23,42,.07),inset 0 1px 0 rgba(255,255,255,.55);
}
body[data-theme="dark"]{
  --rp137-glass:rgba(10,20,35,.80);
  --rp137-glass-strong:rgba(13,25,43,.90);
  --rp137-glass-soft:rgba(20,34,55,.70);
  --rp137-glass-line:rgba(148,163,184,.15);
  --rp137-glass-highlight:rgba(255,255,255,.075);
  --rp137-shadow:0 20px 56px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.065);
  --rp137-shadow-soft:0 10px 28px rgba(0,0,0,.19),inset 0 1px 0 rgba(255,255,255,.045);
}
@media(prefers-color-scheme:dark){
  body[data-theme="system"]{
    --rp137-glass:rgba(10,20,35,.80);
    --rp137-glass-strong:rgba(13,25,43,.90);
    --rp137-glass-soft:rgba(20,34,55,.70);
    --rp137-glass-line:rgba(148,163,184,.15);
    --rp137-glass-highlight:rgba(255,255,255,.075);
    --rp137-shadow:0 20px 56px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.065);
    --rp137-shadow-soft:0 10px 28px rgba(0,0,0,.19),inset 0 1px 0 rgba(255,255,255,.045);
  }
}

html body{
  background:
    radial-gradient(circle at 8% -8%,rgba(200,16,46,.085),transparent 31rem),
    radial-gradient(circle at 93% 2%,rgba(37,99,235,.075),transparent 34rem),
    linear-gradient(145deg,var(--bg),var(--bg2))!important;
}
html body:before{opacity:.34!important}

/* Nur große Flächen sind echtes Glas. Verschachtelte Elemente bleiben ruhig. */
html body :is(
  .card,.stat-card,.toolbar,.pagination,.page-head,.page-hero,.login-card,
  .rp55-focus-card,.rp55-own-card,.rp55-table-card,.rp55-kpi-card,.rp55-dash-hero,
  .admin-panel,.admin-card,.admin-account-card,.admin-overview-card,.admin-command-nav,
  .form-subcard,.smart-person-picker,.detail-item,.info-grid>div,.table-wrap
){
  background-image:none!important;
  background:linear-gradient(180deg,var(--rp137-glass-strong),var(--rp137-glass))!important;
  border-color:var(--rp137-glass-line)!important;
  box-shadow:var(--rp137-shadow)!important;
  -webkit-backdrop-filter:blur(18px) saturate(1.08)!important;
  backdrop-filter:blur(18px) saturate(1.08)!important;
}

html body :is(
  .rp55-own-metrics article,.rp55-focus-grid article,.rp55-priority-list a,
  .timeline-item,.department-chip,.person-choice,.admin-inline-assignment-list article,
  .admin-current-link,.check,.calendar-day,.youth-day,.admin-command-nav a,
  .dashboard-grid article,.stat-grid article
){
  background-image:none!important;
  background:var(--rp137-glass-soft)!important;
  border-color:var(--rp137-glass-line)!important;
  box-shadow:var(--rp137-shadow-soft)!important;
  -webkit-backdrop-filter:blur(10px) saturate(1.04)!important;
  backdrop-filter:blur(10px) saturate(1.04)!important;
}

/* Header und Sidebar: dunkel, klar und ohne bunte Nebelwand. */
html body .topbar{
  background-image:none!important;
  background:color-mix(in srgb,var(--rp137-glass-strong) 94%,transparent)!important;
  border-bottom-color:var(--rp137-glass-line)!important;
  box-shadow:0 11px 34px rgba(2,8,23,.10),inset 0 -1px 0 var(--rp137-glass-highlight)!important;
  -webkit-backdrop-filter:blur(20px) saturate(1.08)!important;
  backdrop-filter:blur(20px) saturate(1.08)!important;
}
html body .sidebar{
  background-image:none!important;
  background:linear-gradient(180deg,#070e1a 0%,#0a1423 54%,#0d192a 100%)!important;
  border-right-color:rgba(148,163,184,.11)!important;
  box-shadow:14px 0 42px rgba(2,6,23,.26),inset -1px 0 0 rgba(255,255,255,.035)!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
html body .sidebar .brand{
  background-image:none!important;
  background:rgba(255,255,255,.035)!important;
  border-color:rgba(148,163,184,.11)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045)!important;
}
html body .sidebar nav a:hover{
  background-image:none!important;
  background:rgba(148,163,184,.075)!important;
  border-color:rgba(148,163,184,.10)!important;
  box-shadow:none!important;
  transform:translateX(1px)!important;
}
html body .sidebar nav a.active{
  background-image:none!important;
  background:linear-gradient(135deg,#df1238,#b50f30)!important;
  border-color:rgba(255,255,255,.12)!important;
  box-shadow:0 12px 30px rgba(200,16,46,.24),inset 0 1px 0 rgba(255,255,255,.17)!important;
}

/* Formulare sind lesbar und nicht milchig. */
html body :is(input,select,textarea){
  background-image:none!important;
  background:color-mix(in srgb,var(--surface-2) 91%,transparent)!important;
  border-color:var(--rp137-glass-line)!important;
  box-shadow:inset 0 1px 2px rgba(15,23,42,.08)!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
body[data-theme="dark"] :is(input,select,textarea){
  background:rgba(9,20,36,.84)!important;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.27)!important;
}
html body :is(input,select,textarea):focus{
  border-color:color-mix(in srgb,var(--primary) 64%,var(--rp137-glass-line))!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 13%,transparent),inset 0 1px 2px rgba(15,23,42,.06)!important;
}
html body .smart-select-results{
  background-image:none!important;
  background:var(--rp137-glass-strong)!important;
  border-color:var(--rp137-glass-line)!important;
  box-shadow:0 22px 58px rgba(2,8,23,.24),inset 0 1px 0 var(--rp137-glass-highlight)!important;
  -webkit-backdrop-filter:blur(20px) saturate(1.06)!important;
  backdrop-filter:blur(20px) saturate(1.06)!important;
}

/* Buttons: poliert, aber nicht plastisch überzeichnet. */
html body .btn{
  background-image:none!important;
  background:linear-gradient(180deg,var(--rp137-glass-strong),var(--rp137-glass-soft))!important;
  border-color:var(--rp137-glass-line)!important;
  box-shadow:var(--rp137-shadow-soft)!important;
  -webkit-backdrop-filter:blur(10px) saturate(1.04)!important;
  backdrop-filter:blur(10px) saturate(1.04)!important;
}
html body .btn:hover{
  transform:translateY(-1px)!important;
  border-color:color-mix(in srgb,var(--primary) 28%,var(--rp137-glass-line))!important;
  box-shadow:0 13px 32px rgba(15,23,42,.12),inset 0 1px 0 var(--rp137-glass-highlight)!important;
}
html body .btn.primary{
  background-image:none!important;
  background:linear-gradient(135deg,#e3133d,#b70f31)!important;
  border-color:rgba(255,255,255,.12)!important;
  box-shadow:0 13px 32px rgba(200,16,46,.25),inset 0 1px 0 rgba(255,255,255,.20)!important;
}
html body .btn.danger:not(.primary){
  background-image:none!important;
}

html body :is(.pill,.status,.role,.secure-pill){
  background-image:none!important;
  background:var(--rp137-glass-soft)!important;
  border-color:var(--rp137-glass-line)!important;
  box-shadow:inset 0 1px 0 var(--rp137-glass-highlight)!important;
  -webkit-backdrop-filter:blur(8px)!important;
  backdrop-filter:blur(8px)!important;
}

/* Tabellen benötigen Kontrast statt zusätzlicher Lichtreflexe. */
html body .table-wrap{
  background-image:none!important;
  background:var(--rp137-glass)!important;
}
html body table thead th{
  background-image:none!important;
  background:color-mix(in srgb,var(--rp137-glass-strong) 94%,var(--surface-2))!important;
  border-bottom-color:var(--rp137-glass-line)!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
html body table tbody td{
  background:transparent!important;
}
html body table tbody tr:hover td{
  background:color-mix(in srgb,var(--primary) 5%,transparent)!important;
}

html body.admin-surface .admin-command-nav{
  background-image:none!important;
  background:linear-gradient(180deg,var(--rp137-glass-strong),var(--rp137-glass))!important;
  border-color:var(--rp137-glass-line)!important;
  box-shadow:var(--rp137-shadow)!important;
}
html body.admin-surface .admin-command-nav a.is-active{
  background-image:none!important;
  background:linear-gradient(135deg,#df1238,#ad102f)!important;
  box-shadow:0 10px 26px rgba(200,16,46,.22)!important;
}

@supports not ((-webkit-backdrop-filter:blur(2px)) or (backdrop-filter:blur(2px))){
  html body :is(.card,.toolbar,.pagination,.page-head,.page-hero,.admin-panel,.admin-card,.admin-command-nav,.table-wrap){
    background:var(--surface)!important;
  }
}
@media(prefers-reduced-transparency:reduce){
  html body :is(.card,.toolbar,.pagination,.page-head,.page-hero,.admin-panel,.admin-card,.admin-command-nav,.table-wrap){
    background:var(--surface)!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
}

/* login-log-v137.css */
/* Retter-Portal v1.3.7 – stabile Accountauswahl und lesbare Login-Details. */
body.admin-surface .admin-login-toolbar{
  grid-template-columns:minmax(300px,1.05fr) minmax(280px,1fr) minmax(175px,.48fr) auto auto!important;
  align-items:end!important;
  overflow:visible!important;
}
body.admin-surface .admin-login-account-picker{
  min-width:0;
  width:100%;
  overflow:visible!important;
}
body.admin-surface .admin-login-account-picker>label{
  display:grid;
  gap:7px;
  min-width:0;
  margin:0;
}
body.admin-surface .admin-login-account-picker input{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}
body.admin-surface .admin-login-account-picker .smart-select-results{
  z-index:500!important;
}
body.admin-surface .admin-login-account-picker .smart-select-option{
  color:var(--text)!important;
  background:transparent!important;
}
body.admin-surface .admin-login-account-picker .smart-select-option:hover,
body.admin-surface .admin-login-account-picker .smart-select-option.is-active{
  background:color-mix(in srgb,var(--primary) 9%,transparent)!important;
}
body.admin-surface .admin-login-account-picker .smart-select-option.is-selected{
  border-color:color-mix(in srgb,var(--primary) 34%,var(--line))!important;
  background:color-mix(in srgb,var(--primary) 12%,transparent)!important;
}
/* Fallback, falls ein Browser den nativen Select dennoch öffnet. */
body.admin-surface .admin-login-toolbar select,
body.admin-surface .admin-login-toolbar select option{
  color:var(--text)!important;
  background:var(--surface)!important;
}
body[data-theme="dark"].admin-surface .admin-login-toolbar select,
body[data-theme="dark"].admin-surface .admin-login-toolbar select option{
  color:#f8fafc!important;
  background:#0b1627!important;
  color-scheme:dark;
}

body.admin-surface .login-client-details{
  min-width:0;
  margin-top:9px;
  border-top:1px solid var(--line-soft);
  padding-top:8px;
}
body.admin-surface .login-client-details>summary{
  cursor:pointer;
  color:var(--muted);
  font-size:.68rem;
  font-weight:850;
  list-style:none;
}
body.admin-surface .login-client-details>summary::-webkit-details-marker{display:none}
body.admin-surface .login-client-details>summary:before{content:'＋';margin-right:5px;color:var(--muted)}
body.admin-surface .login-client-details[open]>summary:before{content:'−'}
body.admin-surface .login-client-details code{
  display:block;
  max-width:100%;
  margin-top:8px;
  padding:9px;
  border:1px solid var(--line-soft);
  border-radius:10px;
  background:var(--surface-2);
  color:var(--muted);
  font-size:.64rem;
  line-height:1.42;
  white-space:normal;
  overflow-wrap:anywhere;
}
body.admin-surface .login-network-details__grid>div:first-child{
  grid-column:1/-1;
}
body.admin-surface .login-network-details__grid>div:first-child small{
  margin-top:5px;
}

@media(max-width:1220px){
  body.admin-surface .admin-login-toolbar{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.admin-surface .admin-login-account-picker,
  body.admin-surface .admin-login-toolbar>input[type="search"]{
    grid-column:auto!important;
  }
}
@media(max-width:760px){
  body.admin-surface .admin-login-toolbar{
    grid-template-columns:minmax(0,1fr)!important;
  }
  body.admin-surface .admin-login-toolbar>*{
    grid-column:1!important;
    width:100%!important;
  }
}

/* v138.css */
/* Retter-Portal v1.3.8 – polished glass, mobile cleanup and new modules. */
:root{
  --v138-glass-bg:rgba(255,255,255,.82);
  --v138-glass-bg-strong:rgba(255,255,255,.92);
  --v138-glass-bg-soft:rgba(248,250,252,.68);
  --v138-glass-line:rgba(100,116,139,.20);
  --v138-glass-highlight:rgba(255,255,255,.88);
  --v138-glass-shadow:0 20px 58px rgba(15,23,42,.12),inset 0 1px 0 rgba(255,255,255,.82),inset 0 -1px 0 rgba(148,163,184,.06);
  --v138-glass-shadow-soft:0 10px 30px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.7);
}
body[data-theme="dark"]{
  --v138-glass-bg:rgba(10,22,39,.79);
  --v138-glass-bg-strong:rgba(14,29,49,.90);
  --v138-glass-bg-soft:rgba(21,39,62,.68);
  --v138-glass-line:rgba(148,163,184,.16);
  --v138-glass-highlight:rgba(255,255,255,.085);
  --v138-glass-shadow:0 22px 64px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.075),inset 0 -1px 0 rgba(255,255,255,.018);
  --v138-glass-shadow-soft:0 11px 32px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.055);
}
html body{
  background:
    radial-gradient(circle at 8% -10%,rgba(200,16,46,.11),transparent 31rem),
    radial-gradient(circle at 95% 0,rgba(37,99,235,.10),transparent 35rem),
    radial-gradient(circle at 55% 105%,rgba(15,159,143,.055),transparent 38rem),
    linear-gradient(145deg,var(--bg),var(--bg2))!important;
}
html body :is(.card,.page-hero,.page-head,.toolbar,.pagination,.table-wrap,.form-subcard,.smart-person-picker,.admin-panel,.admin-card,.admin-command-nav){
  background:
    linear-gradient(155deg,color-mix(in srgb,var(--v138-glass-highlight) 26%,transparent),transparent 30%),
    linear-gradient(180deg,var(--v138-glass-bg-strong),var(--v138-glass-bg))!important;
  border-color:var(--v138-glass-line)!important;
  box-shadow:var(--v138-glass-shadow)!important;
  -webkit-backdrop-filter:blur(22px) saturate(1.13)!important;
  backdrop-filter:blur(22px) saturate(1.13)!important;
}
html body :is(.rp55-own-metrics article,.rp55-focus-grid article,.rp55-priority-list a,.timeline-item,.person-choice,.detail-item,.info-grid>div,.calendar-day,.youth-day,.admin-command-nav a){
  background:
    linear-gradient(150deg,color-mix(in srgb,var(--v138-glass-highlight) 20%,transparent),transparent 35%),
    var(--v138-glass-bg-soft)!important;
  border-color:var(--v138-glass-line)!important;
  box-shadow:var(--v138-glass-shadow-soft)!important;
  -webkit-backdrop-filter:blur(13px) saturate(1.08)!important;
  backdrop-filter:blur(13px) saturate(1.08)!important;
}
html body .topbar{
  background:linear-gradient(180deg,color-mix(in srgb,var(--v138-glass-bg-strong) 96%,transparent),color-mix(in srgb,var(--v138-glass-bg) 94%,transparent))!important;
  border-bottom-color:var(--v138-glass-line)!important;
  box-shadow:0 13px 38px rgba(2,8,23,.14),inset 0 -1px 0 var(--v138-glass-highlight)!important;
  -webkit-backdrop-filter:blur(24px) saturate(1.16)!important;
  backdrop-filter:blur(24px) saturate(1.16)!important;
}
html body :is(input,select,textarea){
  background:color-mix(in srgb,var(--surface-2) 94%,transparent)!important;
  border-color:var(--v138-glass-line)!important;
  box-shadow:inset 0 1px 3px rgba(15,23,42,.09),0 1px 0 var(--v138-glass-highlight)!important;
}
body[data-theme="dark"] :is(input,select,textarea){background:rgba(8,19,34,.86)!important}
html body :is(input,select,textarea):focus{
  border-color:color-mix(in srgb,var(--primary) 70%,var(--v138-glass-line))!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 14%,transparent),inset 0 1px 2px rgba(15,23,42,.06)!important;
}
html body .btn:not(.primary){
  background:linear-gradient(180deg,var(--v138-glass-bg-strong),var(--v138-glass-bg-soft))!important;
  border-color:var(--v138-glass-line)!important;
  box-shadow:var(--v138-glass-shadow-soft)!important;
}
html body :is(.pill,.status,.role,.secure-pill){
  background:linear-gradient(180deg,color-mix(in srgb,var(--v138-glass-bg-strong) 70%,transparent),var(--v138-glass-bg-soft))!important;
  border-color:var(--v138-glass-line)!important;
  box-shadow:inset 0 1px 0 var(--v138-glass-highlight)!important;
}

/* Header notifications */
.topbar-notification-link,.rp-mobile-header__notifications{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:7px 11px;border:1px solid var(--v138-glass-line);border-radius:13px;background:var(--v138-glass-bg-soft);color:var(--text);font-weight:900;box-shadow:var(--v138-glass-shadow-soft)}
.topbar-notification-link em,.rp-mobile-header__notifications em{display:grid;place-items:center;min-width:23px;height:23px;padding:0 6px;border-radius:999px;background:var(--primary);color:#fff;font-size:.72rem;font-style:normal}
.topbar-notification-link span{font-size:.85rem;color:var(--muted)}
.rp-mobile-header__notifications span{font-size:.75rem}
.nav-count{margin-left:auto;min-width:22px;padding:2px 6px;border-radius:999px;background:rgba(255,255,255,.16);font-size:.67rem;font-style:normal;text-align:center}

/* System banners */
.v138-system-banners{display:grid;gap:8px;padding:12px clamp(14px,2vw,28px) 0}
.v138-system-banner{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:13px 16px;border:1px solid var(--v138-glass-line);border-radius:16px;background:var(--v138-glass-bg-strong);box-shadow:var(--v138-glass-shadow-soft);backdrop-filter:blur(18px)}
.v138-system-banner strong,.v138-system-banner p{display:block;margin:0}.v138-system-banner p{margin-top:3px;color:var(--muted);font-size:.84rem}.v138-system-banner>span{white-space:nowrap;font-size:.72rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.v138-system-banner.level-warnung{border-color:rgba(245,158,11,.38)}.v138-system-banner.level-kritisch{border-color:rgba(225,29,72,.48);box-shadow:0 12px 32px rgba(225,29,72,.12)}

/* Shared v1.3.8 module layout */
.v138-page-hero{display:flex;justify-content:space-between;align-items:center;gap:24px}.v138-page-hero>div{min-width:0}.v138-page-hero .eyebrow{margin-bottom:7px}.v138-page-hero h1{margin:0}.v138-page-hero p:last-child{max-width:930px;margin:12px 0 0;color:var(--muted);font-weight:700;line-height:1.55}
.v138-two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.v138-filter-card{padding:16px}.v138-filter-grid{display:grid;grid-template-columns:minmax(240px,1.4fr) repeat(2,minmax(150px,.7fr)) auto;gap:10px}.v138-filter-grid>*{min-width:0}.v138-inline-form{display:flex;gap:9px;align-items:center;margin-top:14px}.v138-inline-form select{min-width:0;flex:1}.v138-form{overflow:visible}.v138-settings-form .check-line{padding:12px;border:1px solid var(--line-soft);border-radius:14px;background:rgba(148,163,184,.04)}
.v138-category-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v138-category-options h3{grid-column:1/-1;margin:0 0 3px}

/* Feed */
.v138-feed-list{display:grid;gap:10px}.v138-feed-item{display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;padding:15px;border:1px solid var(--v138-glass-line);border-radius:17px;background:var(--v138-glass-bg-soft);box-shadow:var(--v138-glass-shadow-soft);color:var(--text)}.v138-feed-item:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 35%,var(--v138-glass-line))}.v138-feed-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:linear-gradient(145deg,rgba(225,29,72,.18),rgba(37,99,235,.14));color:var(--primary);font-size:.72rem;font-weight:950;letter-spacing:.08em}.v138-feed-item strong{display:block;margin-top:7px;font-size:1rem}.v138-feed-item p{margin:6px 0 0;color:var(--muted);line-height:1.45}.v138-feed-meta{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.v138-feed-meta small{color:var(--muted)}

/* Notifications */
.v138-notification-list{display:grid;gap:10px}.v138-notification{padding:15px;border:1px solid var(--v138-glass-line);border-radius:17px;background:var(--v138-glass-bg-soft)}.v138-notification.is-unread{border-left:4px solid var(--primary);background:linear-gradient(90deg,color-mix(in srgb,var(--primary) 7%,transparent),var(--v138-glass-bg-soft))}.v138-notification-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.v138-notification>strong{display:block;margin-top:10px;font-size:1rem}.v138-notification p{margin:6px 0 0;color:var(--muted)}.v138-notification .form-actions{margin-top:11px}

/* Tasks */
.v138-task-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.v138-task-card{display:block;min-width:0;padding:20px;color:var(--text)}.v138-task-card h2{margin:16px 0 0;font-size:1.18rem}.v138-task-card p{display:-webkit-box;overflow:hidden;margin:8px 0 0;color:var(--muted);line-height:1.45;-webkit-line-clamp:3;-webkit-box-orient:vertical}.v138-task-card-head{display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap}.v138-task-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:18px}.v138-task-meta span{min-width:0;padding:10px;border-radius:13px;background:rgba(148,163,184,.055);color:var(--muted);font-size:.76rem}.v138-task-meta b{display:block;margin-bottom:4px;color:var(--text);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em}.v138-assignee-list{display:grid;gap:8px}.v138-assignee-list>div{padding:12px;border:1px solid var(--line-soft);border-radius:14px;background:rgba(148,163,184,.04)}.v138-assignee-list span,.v138-assignee-list strong{display:block}.v138-assignee-list span{color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.07em}.v138-assignee-list strong{margin-top:3px}.v138-comments{display:grid;gap:10px}.v138-comments article{padding:14px;border:1px solid var(--line-soft);border-radius:15px;background:rgba(148,163,184,.04)}.v138-comments article>div{display:flex;justify-content:space-between;gap:10px}.v138-comments p{margin:8px 0 0}.v138-comment-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:14px}.v138-comment-form textarea{min-height:90px}

/* Qualification matrix */
.v138-qualification-tools{align-items:start}.v138-matrix-card{overflow:hidden}.v138-matrix-wrap{overflow:auto;max-width:100%;border:1px solid var(--line-soft);border-radius:17px}.v138-matrix{min-width:max-content;border-collapse:separate;border-spacing:0}.v138-matrix th,.v138-matrix td{min-width:150px;padding:10px;border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);text-align:center;vertical-align:middle}.v138-matrix thead th{position:sticky;top:0;z-index:4;background:var(--surface-2)!important}.v138-matrix .v138-matrix-person{position:sticky;left:0;z-index:5;min-width:210px;text-align:left;background:var(--surface)!important}.v138-matrix thead .v138-matrix-person{z-index:6}.v138-matrix th span,.v138-matrix th small,.v138-matrix-person strong,.v138-matrix-person small{display:block}.v138-matrix th small,.v138-matrix-person small{margin-top:4px;color:var(--muted);font-size:.68rem}.v138-qual-cell{position:relative;display:grid;place-items:center;gap:3px;min-height:58px;padding:8px;border-radius:13px;background:rgba(148,163,184,.055);font-size:.76rem;font-weight:900}.v138-qual-cell.valid{background:rgba(16,185,129,.13);color:#059669}.v138-qual-cell.due{background:rgba(245,158,11,.16);color:#d97706}.v138-qual-cell.expired{background:rgba(225,29,72,.14);color:#e11d48}.v138-qual-cell form{position:absolute;right:4px;top:4px}.v138-qual-cell button{display:grid;place-items:center;width:21px;height:21px;border:0;border-radius:7px;background:rgba(0,0,0,.08);color:inherit;font-weight:950;cursor:pointer}

/* Assets */
.v138-damage-grid,.v138-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.v138-damage-card,.v138-template-grid article{min-width:0;padding:17px;border:1px solid var(--v138-glass-line);border-radius:18px;background:var(--v138-glass-bg-soft);box-shadow:var(--v138-glass-shadow-soft)}.v138-damage-card h3,.v138-template-grid h3{margin:14px 0 5px}.v138-damage-card p,.v138-template-grid p{color:var(--muted);line-height:1.45}.v138-damage-card>small{display:block;margin-top:12px;color:var(--muted)}.v138-template-grid ul{margin:12px 0 0;padding-left:18px;color:var(--muted);font-size:.82rem;line-height:1.55}

/* Commercial */
.v138-commercial-grid{display:grid;gap:12px}.v138-commercial-card{padding:0;overflow:hidden}.v138-commercial-card>summary{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;cursor:pointer;list-style:none}.v138-commercial-card>summary::-webkit-details-marker{display:none}.v138-commercial-card>summary>div{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.v138-commercial-card>summary strong,.v138-commercial-card>summary small{display:block}.v138-commercial-card>summary small{margin-top:3px;color:var(--muted)}.v138-commercial-card>form{padding:0 20px 20px;border-top:1px solid var(--line-soft)}.v138-commercial-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.v138-commercial-stats span{padding:12px;border:1px solid var(--line-soft);border-radius:14px;background:rgba(148,163,184,.04);color:var(--muted);font-size:.75rem}.v138-commercial-stats b{display:block;color:var(--text);font-size:1.1rem}.v138-system-message-list{display:grid;gap:9px}.v138-system-message-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:13px;border:1px solid var(--line-soft);border-radius:14px;background:rgba(148,163,184,.04)}.v138-system-message-list strong,.v138-system-message-list small{display:block}.v138-system-message-list strong{margin-top:5px}.v138-system-message-list small{margin-top:3px;color:var(--muted)}.v138-system-message-list p{grid-column:1/-1;margin:0;color:var(--muted)}

/* Fix weird nested mobile card effect globally. */
@media(max-width:760px){
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table.responsive-table,
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table.responsive-table :is(tbody,tr,td){background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table.responsive-table tbody tr{padding:0!important;border:1px solid var(--v138-glass-line)!important;border-radius:18px!important;background:linear-gradient(180deg,var(--v138-glass-bg-strong),var(--v138-glass-bg))!important;box-shadow:var(--v138-glass-shadow-soft)!important;overflow:hidden!important}
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table.responsive-table tbody td{margin:0!important;padding:12px 15px!important;border:0!important;border-bottom:1px solid var(--line-soft)!important;border-radius:0!important;min-height:0!important}
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table.responsive-table tbody td:last-child{border-bottom:0!important}
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table.responsive-table tbody td::before{margin:0 0 5px!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important}
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table.responsive-table tbody td:empty{display:none!important}
  .v138-page-hero{display:grid;grid-template-columns:1fr;align-items:start}.v138-page-hero .btn{width:100%}
  .v138-two-column,.v138-task-grid,.v138-damage-grid,.v138-template-grid{grid-template-columns:1fr}.v138-filter-grid{grid-template-columns:1fr}.v138-category-options{grid-template-columns:1fr}.v138-task-meta{grid-template-columns:1fr}.v138-comment-form{grid-template-columns:1fr}.v138-comment-form .btn{width:100%}.v138-commercial-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.v138-commercial-card>summary{align-items:flex-start;flex-direction:column}.v138-system-message-list article{grid-template-columns:1fr}.v138-system-message-list .btn{width:100%}.topbar-notification-link{display:none}.v138-system-banner{align-items:flex-start;flex-direction:column}.v138-matrix .v138-matrix-person{min-width:170px}.rp-mobile-header__bottom{grid-template-columns:minmax(0,1fr)!important}.rp-mobile-header__notifications{width:100%;order:3}
}
@media(min-width:761px) and (max-width:1180px){.v138-task-grid,.v138-damage-grid,.v138-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v138-two-column{grid-template-columns:1fr}.v138-filter-grid{grid-template-columns:minmax(220px,1fr) repeat(2,minmax(140px,.65fr))}.v138-commercial-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v1.3.8 refinement: slightly more glass depth without the cheap neon/milky look. */
html body :is(.card,.page-hero,.page-head,.toolbar,.pagination,.table-wrap,.form-subcard,.smart-person-picker,.admin-panel,.admin-card,.admin-command-nav){
  background:
    linear-gradient(132deg,color-mix(in srgb,var(--v138-glass-highlight) 34%,transparent) 0,transparent 27%),
    linear-gradient(180deg,color-mix(in srgb,var(--v138-glass-bg-strong) 97%,transparent),color-mix(in srgb,var(--v138-glass-bg) 96%,transparent))!important;
  border-color:color-mix(in srgb,var(--v138-glass-line) 84%,var(--v138-glass-highlight))!important;
  box-shadow:0 23px 66px rgba(2,8,23,.15),inset 0 1px 0 var(--v138-glass-highlight),inset 0 -1px 0 rgba(148,163,184,.045)!important;
  -webkit-backdrop-filter:blur(25px) saturate(1.16)!important;
  backdrop-filter:blur(25px) saturate(1.16)!important;
}
body[data-theme="dark"] :is(.card,.page-hero,.page-head,.toolbar,.pagination,.table-wrap,.form-subcard,.smart-person-picker,.admin-panel,.admin-card,.admin-command-nav){
  box-shadow:0 24px 70px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.085),inset 0 -1px 0 rgba(255,255,255,.018)!important;
}
html body :is(input,select,textarea){
  -webkit-backdrop-filter:blur(10px) saturate(1.05);
  backdrop-filter:blur(10px) saturate(1.05);
}

/* Commercial/operator overview */
.v138-commercial-summary-pills{justify-content:flex-end}
.v138-commercial-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:18px 20px 12px;border-top:1px solid var(--line-soft)}
.v138-commercial-overview article{min-width:0;padding:14px;border:1px solid var(--v138-glass-line);border-radius:15px;background:var(--v138-glass-bg-soft);box-shadow:var(--v138-glass-shadow-soft)}
.v138-commercial-overview small,.v138-commercial-overview strong,.v138-commercial-overview span{display:block;min-width:0}
.v138-commercial-overview small{color:var(--muted);font-size:.68rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.v138-commercial-overview strong{margin-top:6px;font-size:1.35rem;letter-spacing:-.035em}
.v138-commercial-overview span{margin-top:4px;color:var(--muted);font-size:.75rem;line-height:1.35}
.v138-storage-meter{height:8px;margin:0 20px 18px;overflow:hidden;border:1px solid var(--v138-glass-line);border-radius:999px;background:rgba(148,163,184,.09)}
.v138-storage-meter span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),#2563eb,#0f9f8f)}
.v138-feature-switches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;min-width:0;margin:0;padding:14px;border:1px solid var(--line-soft);border-radius:16px;background:rgba(148,163,184,.035)}
.v138-feature-switches legend{padding:0 8px;color:var(--muted);font-size:.72rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.v138-feature-switches .check-line{min-width:0;margin:0;padding:10px;border:1px solid var(--line-soft);border-radius:13px;background:var(--v138-glass-bg-soft)}

/* Multiple assignees and file areas */
.v138-form select[multiple]{min-height:180px;padding:8px}
.v138-form select[multiple] option{padding:8px 10px;border-radius:8px}
.v138-damage-files{margin-top:14px;border:1px solid var(--line-soft);border-radius:15px;background:rgba(148,163,184,.03)}
.v138-damage-files>summary{padding:11px 13px;cursor:pointer;color:var(--text);font-size:.82rem;font-weight:900}
.v138-damage-files>.attachment-card{margin:0;border:0!important;border-top:1px solid var(--line-soft)!important;border-radius:0 0 15px 15px!important;box-shadow:none!important;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.v138-damage-files .attachment-card .card-head{padding-top:0}

/* Mobile/tablet visual hygiene: one card per record, no card inside card on focus/tap. */
@media(max-width:760px){
  html body .content table.responsive-table tbody tr,
  html body .content table.checks-table tbody tr{isolation:isolate}
  html body .content table.responsive-table tbody tr :is(.detail-item,.info-grid>div,.form-subcard,.card),
  html body .content table.checks-table tbody tr :is(.detail-item,.info-grid>div,.form-subcard,.card){background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  html body .content table.responsive-table tbody :is(td,td:focus,td:focus-within),
  html body .content table.checks-table tbody :is(td,td:focus,td:focus-within){outline:0!important;box-shadow:none!important;background:transparent!important}
  html body .content :is(input,select,textarea):focus{transform:none!important}
  .v138-commercial-overview{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px}
  .v138-storage-meter{margin-inline:14px}
  .v138-feature-switches{grid-template-columns:1fr}
  .v138-commercial-summary-pills{justify-content:flex-start}
  .v138-form select[multiple]{min-height:150px}
}
@media(min-width:761px) and (max-width:1180px){
  .v138-commercial-overview{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Check escalation and series protocols */
.check-escalation{display:block;margin-top:5px;font-size:.68rem;font-weight:900;line-height:1.25}
.critical-overdue{color:#e11d48!important}.due-now{color:#f59e0b!important}.overdue{color:#ef4444!important}.due-soon{color:#2563eb!important}
.v138-series-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v138-series-checklist span{display:grid;grid-template-columns:30px minmax(0,1fr);gap:9px;align-items:center;padding:10px 12px;border:1px solid var(--line-soft);border-radius:13px;background:var(--v138-glass-bg-soft)}.v138-series-checklist b{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:rgba(37,99,235,.12);color:#2563eb}
.v138-series-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.v138-series-item{min-width:0}.v138-series-item.result-mangel{border-color:rgba(225,29,72,.34)!important}.v138-series-item.result-bestanden{border-color:rgba(16,185,129,.28)!important}
.v138-print-protocol{max-width:1100px;margin:0 auto;padding:34px;color:#0f172a;background:#fff}.v138-print-protocol>header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;padding-bottom:24px;border-bottom:3px solid #c8102e}.v138-print-protocol header p{margin:0;color:#64748b;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.v138-print-protocol h1{margin:8px 0 5px;font-size:2.4rem;letter-spacing:-.045em}.v138-print-protocol header span{color:#475569}.v138-print-protocol button{padding:11px 15px;border:0;border-radius:10px;background:#c8102e;color:#fff;font-weight:900;cursor:pointer}.v138-print-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:22px 0}.v138-print-meta div{padding:12px;border:1px solid #cbd5e1;border-radius:10px}.v138-print-meta b,.v138-print-meta span{display:block}.v138-print-meta b{color:#64748b;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.v138-print-meta span{margin-top:5px;font-weight:800}.v138-print-protocol section{margin-top:24px}.v138-print-protocol h2{font-size:1.2rem}.v138-print-protocol table{width:100%;border-collapse:collapse}.v138-print-protocol th,.v138-print-protocol td{padding:10px;border:1px solid #cbd5e1;text-align:left;vertical-align:top}.v138-print-protocol th{background:#f1f5f9;font-size:.76rem}.v138-print-protocol footer{display:flex;justify-content:space-between;gap:12px;margin-top:30px;padding-top:16px;border-top:1px solid #cbd5e1;color:#64748b;font-size:.75rem}
@media(max-width:760px){.v138-series-grid,.v138-series-checklist{grid-template-columns:1fr}.v138-print-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media print{body{background:#fff!important}.v138-print-protocol{max-width:none;padding:0}.v138-print-protocol button{display:none}.v138-print-protocol table{font-size:10pt}}

/* ui-fixes-v139.css */
/* Retter-Portal v1.3.9 – focused form and checkbox corrections. */
html body label.check-line,
html body label.check,
html body .admin-switch-line,
html body .compact-check{
  display:flex!important;
  grid-template-columns:none!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  min-width:0!important;
  min-height:48px!important;
  width:100%!important;
  padding:11px 13px!important;
  border:1px solid var(--line-soft)!important;
  border-radius:15px!important;
  background:color-mix(in srgb,var(--surface-2) 76%,transparent)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045)!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
html body label.check-line input[type="checkbox"],
html body label.check input[type="checkbox"],
html body .admin-switch-line input[type="checkbox"],
html body .compact-check input[type="checkbox"],
html body input[type="checkbox"],
html body input[type="radio"]{
  -webkit-appearance:auto!important;
  appearance:auto!important;
  display:inline-block!important;
  flex:0 0 auto!important;
  width:20px!important;
  min-width:20px!important;
  max-width:20px!important;
  height:20px!important;
  min-height:20px!important;
  max-height:20px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:4px!important;
  background:none!important;
  box-shadow:none!important;
  outline:0!important;
  filter:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  accent-color:#d30d21!important;
}
html body label.check-line:focus-within,
html body label.check:focus-within,
html body .admin-switch-line:focus-within{
  border-color:color-mix(in srgb,var(--primary) 45%,var(--line-soft))!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 10%,transparent)!important;
}
html body .account-email-confirm{
  overflow:visible!important;
}
html body .account-email-confirm .password-reveal{
  width:100%!important;
  min-width:0!important;
}
@media(max-width:760px){
  html body label.check-line,
  html body label.check{
    align-items:center!important;
    padding:12px!important;
  }
}

/* ui-fixes-v1310.css */
/* Retter-Portal v1.3.10 – robust error page, matrix typography and account danger zone. */

/* Qualification matrix: no more letter-by-letter or mid-word breaks. The table may
   scroll horizontally instead of destroying German qualification names. */
html body .v138-matrix th,
html body .v138-matrix td{
  min-width:190px!important;
}
html body .v138-matrix .v138-matrix-person{
  min-width:220px!important;
}
html body .v138-matrix thead th{
  padding:14px 12px!important;
  line-height:1.18!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}
html body .v138-matrix .v1310-matrix-name{
  display:grid!important;
  justify-items:center!important;
  gap:2px!important;
  max-width:none!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}
html body .v138-matrix .v1310-matrix-name>span{
  display:block!important;
  max-width:none!important;
  white-space:nowrap!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}
html body .v138-matrix .v1310-matrix-category{
  display:block!important;
  margin-top:7px!important;
  font-size:.66rem!important;
  line-height:1.24!important;
  white-space:nowrap!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}
html body .v138-matrix-person strong,
html body .v138-matrix-person small{
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}

/* Personal-data save is deliberately neutral so the irreversible action below is
   the only strong red action on the page. */
html body .account-save-action{
  color:var(--text)!important;
  border-color:var(--line)!important;
  background:linear-gradient(145deg,var(--surface-2),color-mix(in srgb,var(--surface) 82%,transparent))!important;
  box-shadow:0 10px 28px rgba(15,23,42,.09),inset 0 1px 0 rgba(255,255,255,.10)!important;
}
html body .account-save-action:hover{
  border-color:color-mix(in srgb,var(--primary) 28%,var(--line))!important;
  background:linear-gradient(145deg,color-mix(in srgb,var(--surface-2) 92%,var(--primary) 8%),var(--surface))!important;
}

html body .account-delete-card{
  position:relative!important;
  overflow:hidden!important;
  border:1px solid rgba(225,29,72,.52)!important;
  background:
    radial-gradient(circle at 0 0,rgba(225,29,72,.20),transparent 36rem),
    linear-gradient(145deg,rgba(76,5,25,.30),rgba(15,23,42,.84))!important;
  box-shadow:0 22px 58px rgba(159,18,57,.17),inset 0 1px 0 rgba(255,255,255,.06)!important;
}
html body .account-delete-card:before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:5px;
  background:linear-gradient(180deg,#fb7185,#e11d48,#9f1239);
}
html body .account-delete-heading{
  display:flex!important;
  align-items:flex-start!important;
  gap:14px!important;
  min-width:0!important;
}
html body .account-delete-icon{
  display:grid!important;
  place-items:center!important;
  flex:0 0 44px!important;
  width:44px!important;
  height:44px!important;
  border-radius:14px!important;
  color:#fff!important;
  background:linear-gradient(145deg,#f43f5e,#be123c)!important;
  box-shadow:0 12px 28px rgba(225,29,72,.28),inset 0 1px 0 rgba(255,255,255,.22)!important;
  font-size:1.35rem!important;
  font-weight:950!important;
}
html body .account-delete-card h2{
  color:#fb7185!important;
}
html body .account-delete-card .muted{
  color:#cbd5e1!important;
}
html body .account-delete-badge{
  color:#fecdd3!important;
  border-color:rgba(251,113,133,.35)!important;
  background:rgba(159,18,57,.30)!important;
}
html body .account-delete-action,
html body button.account-delete-action{
  min-height:52px!important;
  padding:12px 20px!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.16)!important;
  background:linear-gradient(135deg,#f0143d 0%,#d10f34 52%,#9f1239 100%)!important;
  box-shadow:0 18px 42px rgba(225,29,72,.33),inset 0 1px 0 rgba(255,255,255,.22)!important;
  font-weight:950!important;
}
html body .account-delete-action:hover,
html body button.account-delete-action:hover{
  transform:translateY(-1px)!important;
  background:linear-gradient(135deg,#fb1b48 0%,#df123a 52%,#ad123f 100%)!important;
  box-shadow:0 23px 52px rgba(225,29,72,.42),inset 0 1px 0 rgba(255,255,255,.25)!important;
}

body[data-theme="light"] .account-delete-card{
  background:
    radial-gradient(circle at 0 0,rgba(244,63,94,.15),transparent 34rem),
    linear-gradient(145deg,rgba(255,241,242,.96),rgba(255,255,255,.92))!important;
}
body[data-theme="light"] .account-delete-card .muted{color:#7f1d1d!important}
body[data-theme="light"] .account-delete-badge{color:#9f1239!important;background:#ffe4e6!important}

@media(max-width:760px){
  html body .v138-matrix th,
  html body .v138-matrix td{min-width:178px!important}
  html body .v138-matrix .v138-matrix-person{min-width:180px!important}
  html body .account-delete-card .card-head{align-items:flex-start!important;flex-direction:column!important}
  html body .account-delete-action{width:100%!important}
}

/* ui-fixes-v1311.css */
/* Retter-Portal v1.3.11 – strong account danger zone and task form stability. */
html body .account-delete-card{
  padding:0!important;
  overflow:hidden!important;
  border:2px solid #e11d48!important;
  background:linear-gradient(145deg,rgba(76,5,25,.62),rgba(31,8,20,.82))!important;
  box-shadow:0 24px 64px rgba(190,18,60,.28),inset 0 1px 0 rgba(255,255,255,.08)!important;
}
html body .account-delete-card:before{display:none!important}
html body .account-delete-banner{
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  width:100%!important;
  padding:13px 20px!important;
  color:#fff!important;
  background:linear-gradient(90deg,#e11d48,#be123c 58%,#881337)!important;
  border-bottom:1px solid rgba(255,255,255,.16)!important;
  font-size:.78rem!important;
  font-weight:950!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}
html body .account-delete-banner>span{
  display:grid!important;
  place-items:center!important;
  width:25px!important;
  height:25px!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#be123c!important;
  font-size:1rem!important;
  font-weight:1000!important;
}
html body .account-delete-card>.card-head{
  padding:22px 24px 14px!important;
  margin:0!important;
}
html body .account-delete-card>.account-delete-warning{
  display:grid!important;
  gap:5px!important;
  margin:0 24px 18px!important;
  padding:15px 17px!important;
  border:1px solid rgba(251,113,133,.46)!important;
  border-radius:15px!important;
  color:#ffe4e6!important;
  background:rgba(159,18,57,.28)!important;
}
html body .account-delete-warning strong{font-size:.94rem!important;color:#fff!important}
html body .account-delete-warning span{font-size:.81rem!important;line-height:1.5!important;color:#fecdd3!important}
html body .account-delete-action-zone{
  margin:0!important;
  padding:20px 24px 24px!important;
  border-top:1px solid rgba(251,113,133,.34)!important;
  background:linear-gradient(90deg,rgba(159,18,57,.40),rgba(136,19,55,.18))!important;
}
html body .account-delete-action-zone form{margin:0!important}
html body .account-delete-action,
html body button.account-delete-action{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  min-height:58px!important;
  padding:14px 23px!important;
  color:#fff!important;
  border:2px solid rgba(255,255,255,.34)!important;
  border-radius:15px!important;
  background:linear-gradient(135deg,#ff174a 0%,#e0003c 48%,#b00032 100%)!important;
  box-shadow:0 18px 42px rgba(225,29,72,.44),inset 0 1px 0 rgba(255,255,255,.28)!important;
  font-size:.98rem!important;
  font-weight:1000!important;
}
html body .account-delete-action>span{
  display:grid!important;
  place-items:center!important;
  width:25px!important;
  height:25px!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#be123c!important;
  font-weight:1000!important;
}
html body .account-delete-action:hover{
  transform:translateY(-2px)!important;
  background:linear-gradient(135deg,#ff315d,#ef1248 48%,#c20b3a)!important;
  box-shadow:0 24px 54px rgba(225,29,72,.55),inset 0 1px 0 rgba(255,255,255,.32)!important;
}
body[data-theme="light"] .account-delete-card{
  background:linear-gradient(145deg,#fff1f2,#ffe4e6)!important;
  border-color:#e11d48!important;
}
body[data-theme="light"] .account-delete-warning{background:#ffe4e6!important;color:#881337!important}
body[data-theme="light"] .account-delete-warning strong{color:#9f1239!important}
body[data-theme="light"] .account-delete-warning span{color:#881337!important}
body[data-theme="light"] .account-delete-action-zone{background:linear-gradient(90deg,#ffe4e6,#fff1f2)!important}

/* Task forms must never inherit hidden or collapsed native select states. */
html body .v138-form :is(select,input,textarea){min-width:0!important;max-width:100%!important}
html body .v138-form [data-v138-assignee-select]{display:block!important;width:100%!important}
html body .v138-form optgroup[hidden],
html body .v138-form option[hidden]{display:none!important}

@media(max-width:760px){
  html body .account-delete-card>.card-head{padding:18px 16px 12px!important}
  html body .account-delete-card>.account-delete-warning{margin:0 16px 15px!important}
  html body .account-delete-action-zone{padding:17px 16px 19px!important}
  html body .account-delete-action{width:100%!important;white-space:normal!important;text-align:center!important}
}

/* ui-fixes-v1312.css */
/* Retter-Portal v1.3.12 – clean account actions and owner-only global permissions. */

/* Account page primary actions: visible, but not alarm-red. */
html body .account-save-action,
html body .account-export-action{
  color:var(--text)!important;
  border:1px solid color-mix(in srgb,var(--primary) 30%,var(--line))!important;
  background:
    linear-gradient(145deg,color-mix(in srgb,var(--primary) 10%,var(--surface-2)),color-mix(in srgb,var(--surface) 92%,transparent))!important;
  box-shadow:0 10px 26px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.10)!important;
  font-weight:900!important;
}
html body .account-save-action:hover,
html body .account-export-action:hover{
  color:var(--text)!important;
  border-color:color-mix(in srgb,var(--primary) 48%,var(--line))!important;
  background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 16%,var(--surface-2)),var(--surface))!important;
  box-shadow:0 14px 32px rgba(15,23,42,.11),0 0 0 3px color-mix(in srgb,var(--primary) 8%,transparent)!important;
}
html body .account-save-action{min-height:50px!important}

/* Clean, unmistakable danger zone without a giant red billboard. */
html body .account-delete-card{
  position:relative!important;
  display:grid!important;
  gap:18px!important;
  padding:26px!important;
  overflow:hidden!important;
  border:1px solid rgba(244,63,94,.34)!important;
  border-left:6px solid #e11d48!important;
  border-radius:22px!important;
  background:
    radial-gradient(circle at 0 0,rgba(225,29,72,.11),transparent 28rem),
    linear-gradient(145deg,color-mix(in srgb,var(--surface) 96%,transparent),color-mix(in srgb,var(--surface-2) 92%,transparent))!important;
  box-shadow:0 18px 46px rgba(15,23,42,.12),inset 0 1px 0 rgba(255,255,255,.07)!important;
}
html body .account-delete-card:before,
html body .account-delete-card:after{display:none!important}
html body .account-delete-header{
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:16px!important;
  min-width:0!important;
}
html body .account-delete-icon{
  display:grid!important;
  place-items:center!important;
  width:54px!important;
  height:54px!important;
  border-radius:16px!important;
  color:#fff!important;
  background:linear-gradient(145deg,#f43f5e,#be123c)!important;
  box-shadow:0 14px 30px rgba(225,29,72,.28),inset 0 1px 0 rgba(255,255,255,.25)!important;
  font-size:1.35rem!important;
  font-weight:1000!important;
}
html body .account-delete-copy{min-width:0!important}
html body .account-delete-copy .eyebrow{
  margin:0 0 5px!important;
  color:#fb7185!important;
  font-size:.68rem!important;
  letter-spacing:.12em!important;
}
html body .account-delete-copy h2{
  margin:0!important;
  color:#fb7185!important;
  font-size:1.35rem!important;
}
html body .account-delete-copy>p:last-child{
  margin:7px 0 0!important;
  color:var(--muted)!important;
  line-height:1.5!important;
}
html body .account-delete-badge{
  color:#fecdd3!important;
  border-color:rgba(244,63,94,.34)!important;
  background:rgba(159,18,57,.22)!important;
}
html body .account-delete-warning{
  display:grid!important;
  gap:6px!important;
  margin:0!important;
  padding:15px 17px!important;
  border:1px solid rgba(244,63,94,.24)!important;
  border-radius:15px!important;
  background:rgba(159,18,57,.10)!important;
}
html body .account-delete-warning strong{color:var(--text)!important;font-size:.94rem!important}
html body .account-delete-warning span{color:var(--muted)!important;font-size:.82rem!important;line-height:1.48!important}
html body .account-delete-action-zone{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:20px!important;
  margin:0!important;
  padding:17px!important;
  border:1px solid rgba(244,63,94,.30)!important;
  border-radius:16px!important;
  background:linear-gradient(90deg,rgba(159,18,57,.13),rgba(159,18,57,.045))!important;
}
html body .account-delete-action-zone>div{min-width:0!important}
html body .account-delete-action-zone>div strong,
html body .account-delete-action-zone>div span{display:block!important}
html body .account-delete-action-zone>div strong{color:#fb7185!important;font-size:.94rem!important}
html body .account-delete-action-zone>div span{margin-top:4px!important;color:var(--muted)!important;font-size:.78rem!important}
html body .account-delete-action-zone form{margin:0!important}
html body .account-delete-action,
html body button.account-delete-action{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  min-height:50px!important;
  padding:12px 18px!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:13px!important;
  background:linear-gradient(135deg,#ef1745,#c81036)!important;
  box-shadow:0 13px 30px rgba(225,29,72,.30),inset 0 1px 0 rgba(255,255,255,.22)!important;
  font-size:.91rem!important;
  font-weight:950!important;
  white-space:nowrap!important;
}
html body .account-delete-action>span{
  display:grid!important;
  place-items:center!important;
  width:22px!important;
  height:22px!important;
  border-radius:7px!important;
  color:#be123c!important;
  background:#fff!important;
  font-weight:1000!important;
}
html body .account-delete-action:hover{
  transform:translateY(-1px)!important;
  background:linear-gradient(135deg,#fb315a,#d40d3d)!important;
  box-shadow:0 17px 38px rgba(225,29,72,.40),inset 0 1px 0 rgba(255,255,255,.25)!important;
}
html body .account-delete-notice{margin:0!important}

/* Global memberships are an operator-only scope. */
html body .operator-global-scope{
  color:#fecdd3!important;
  border-color:rgba(244,63,94,.26)!important;
  background:rgba(159,18,57,.14)!important;
}

body[data-theme="light"] .account-delete-card{
  background:radial-gradient(circle at 0 0,rgba(225,29,72,.08),transparent 25rem),linear-gradient(145deg,#fff,#fff7f8)!important;
}
body[data-theme="light"] .account-delete-warning{background:#fff1f2!important}
body[data-theme="light"] .account-delete-action-zone{background:linear-gradient(90deg,#fff1f2,#fff)!important}
body[data-theme="light"] .account-delete-badge{color:#9f1239!important;background:#ffe4e6!important}

@media(max-width:760px){
  html body .account-delete-card{padding:18px!important;gap:15px!important}
  html body .account-delete-header{grid-template-columns:46px minmax(0,1fr)!important;gap:12px!important}
  html body .account-delete-icon{width:46px!important;height:46px!important;border-radius:14px!important}
  html body .account-delete-badge{grid-column:1/-1!important;width:max-content!important;margin-left:58px!important}
  html body .account-delete-action-zone{grid-template-columns:minmax(0,1fr)!important;gap:13px!important;padding:14px!important}
  html body .account-delete-action-zone form,
  html body .account-delete-action{width:100%!important}
  html body .account-delete-action{white-space:normal!important;text-align:center!important}
  html body .account-export-action{width:100%!important}
}

/* launch-v1313.css */
/* Retter-Portal v1.3.13 – Launch-/Organisationsverwaltung and mobile card cleanup. */

/* Notifications are available in the sidebar and as a compact dashboard strip, not in the header. */
.dashboard-notification-strip{
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  min-width:0;
  margin:0 0 14px;
  padding:12px 14px;
  border:1px solid color-mix(in srgb,var(--primary) 24%,var(--line-soft));
  border-radius:16px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 10%,var(--surface)),color-mix(in srgb,#2563eb 6%,var(--surface)));
  box-shadow:0 12px 30px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.34);
  color:var(--text);
}
.dashboard-notification-strip__icon{
  display:grid;place-items:center;width:42px;height:42px;border-radius:13px;
  background:linear-gradient(135deg,#e11d48,#be123c);color:#fff;font-weight:950;
  box-shadow:0 10px 25px rgba(225,29,72,.22);
}
.dashboard-notification-strip__copy{display:block;min-width:0}
.dashboard-notification-strip__copy strong,.dashboard-notification-strip__copy small{display:block;min-width:0}
.dashboard-notification-strip__copy strong{font-size:.92rem}
.dashboard-notification-strip__copy small{margin-top:3px;color:var(--muted);font-size:.78rem}
.dashboard-notification-strip__action{padding:7px 10px;border:1px solid var(--line-soft);border-radius:10px;background:rgba(148,163,184,.06);font-size:.78rem;font-weight:900}

/* Launch operator overview. */
.launch-page-hero{align-items:center}
.launch-kpi-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px;
}
.launch-kpi-grid article{
  min-width:0;padding:17px 18px;border:1px solid var(--line-soft);border-radius:18px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--surface-2) 78%,transparent),color-mix(in srgb,var(--surface) 90%,transparent));
  box-shadow:0 12px 34px rgba(15,23,42,.07),inset 0 1px 0 rgba(255,255,255,.30);
}
.launch-kpi-grid span,.launch-kpi-grid strong,.launch-kpi-grid small{display:block;min-width:0}
.launch-kpi-grid span{color:var(--muted);font-size:.68rem;font-weight:950;letter-spacing:.09em;text-transform:uppercase}
.launch-kpi-grid strong{margin-top:7px;font-size:1.65rem;line-height:1;font-variant-numeric:tabular-nums}
.launch-kpi-grid small{margin-top:7px;color:var(--muted);font-size:.75rem;line-height:1.35}
.launch-kpi-grid .tone-warning{border-color:rgba(245,158,11,.28);background:linear-gradient(145deg,rgba(245,158,11,.10),color-mix(in srgb,var(--surface) 90%,transparent))}
.launch-kpi-grid .tone-danger{border-color:rgba(225,29,72,.30);background:linear-gradient(145deg,rgba(225,29,72,.10),color-mix(in srgb,var(--surface) 90%,transparent))}
.launch-filter-card{margin-bottom:14px}
.launch-filter-form{display:grid;grid-template-columns:minmax(280px,1.3fr) minmax(180px,.55fr) auto auto;gap:10px;align-items:end}
.launch-filter-form>*{min-width:0;margin:0}.launch-filter-form .btn{min-height:46px}
.launch-requests-card{margin-bottom:14px}
.launch-request-list{display:grid;gap:10px}
.launch-request-item{overflow:hidden;border:1px solid var(--line-soft);border-radius:16px;background:rgba(148,163,184,.035)}
.launch-request-item>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 15px;cursor:pointer;list-style:none}
.launch-request-item>summary::-webkit-details-marker{display:none}
.launch-request-item>summary div{min-width:0}.launch-request-item>summary strong,.launch-request-item>summary small{display:block;min-width:0}
.launch-request-item>summary small{margin-top:4px;color:var(--muted);font-size:.78rem}
.launch-request-body{padding:0 15px 15px;border-top:1px solid var(--line-soft)}
.launch-request-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:14px}
.launch-request-details>div{min-width:0;padding:12px;border:1px solid var(--line-soft);border-radius:13px;background:rgba(148,163,184,.035)}
.launch-request-details span,.launch-request-details strong,.launch-request-details small{display:block;min-width:0}
.launch-request-details span{color:var(--muted);font-size:.66rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}
.launch-request-details strong{margin-top:5px}.launch-request-details small{margin-top:3px;color:var(--muted);font-size:.75rem;overflow-wrap:anywhere}
.launch-request-reason{margin:12px 0 0;padding:12px;border-left:3px solid rgba(37,99,235,.50);border-radius:0 12px 12px 0;background:rgba(37,99,235,.055);color:var(--muted)}
.launch-approval-form{margin-top:13px}
.launch-organization-list{display:grid;gap:12px}
.launch-organization-card{scroll-margin-top:105px;overflow:hidden;padding:0!important}
.launch-organization-card>summary{
  display:flex;align-items:center;justify-content:space-between;gap:18px;min-width:0;padding:17px 19px;cursor:pointer;list-style:none;
}
.launch-organization-card>summary::-webkit-details-marker{display:none}
.launch-org-identity{display:grid;grid-template-columns:12px minmax(0,1fr);align-items:center;gap:12px;min-width:0}
.launch-org-identity>div{min-width:0}.launch-org-identity strong,.launch-org-identity small{display:block;min-width:0}
.launch-org-identity strong{font-size:1.05rem}.launch-org-identity small{margin-top:4px;color:var(--muted);font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.launch-health-dot{width:12px;height:12px;border-radius:50%;background:#10b981;box-shadow:0 0 0 6px rgba(16,185,129,.10)}
.launch-health-dot.tone-warning{background:#f59e0b;box-shadow:0 0 0 6px rgba(245,158,11,.11)}
.launch-health-dot.tone-danger{background:#e11d48;box-shadow:0 0 0 6px rgba(225,29,72,.11)}
.launch-org-summary{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:7px;min-width:0}
.pill.tone-ok{border-color:rgba(16,185,129,.22)!important;color:#059669!important}.pill.tone-warning{border-color:rgba(245,158,11,.26)!important;color:#d97706!important}.pill.tone-danger{border-color:rgba(225,29,72,.28)!important;color:#e11d48!important}
.launch-org-body{padding:0 19px 19px;border-top:1px solid var(--line-soft)}
.launch-org-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:16px}
.launch-org-metrics article{min-width:0;padding:13px;border:1px solid var(--line-soft);border-radius:14px;background:rgba(148,163,184,.035)}
.launch-org-metrics span,.launch-org-metrics strong,.launch-org-metrics small{display:block;min-width:0}
.launch-org-metrics span{color:var(--muted);font-size:.65rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.launch-org-metrics strong{margin-top:6px;font-size:1.22rem;font-variant-numeric:tabular-nums}
.launch-org-metrics small{margin-top:5px;color:var(--muted);font-size:.72rem;line-height:1.35}
.launch-org-metrics .tone-danger{border-color:rgba(225,29,72,.26);background:rgba(225,29,72,.055)}
.launch-date-value{font-size:.92rem!important;line-height:1.22!important;white-space:normal!important}
.launch-storage-line{margin-top:12px;padding:13px 14px;border:1px solid var(--line-soft);border-radius:14px;background:rgba(148,163,184,.03)}
.launch-storage-line>div:first-child{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px;font-size:.76rem}.launch-storage-line .v138-storage-meter{margin:0}
.launch-org-columns{display:grid;grid-template-columns:1.25fr .75fr;gap:12px;margin-top:12px}
.launch-org-panel{min-width:0;padding:16px;border:1px solid var(--line-soft);border-radius:16px;background:rgba(148,163,184,.025)}
.launch-org-panel .card-head{margin-bottom:12px}.launch-org-panel h3{margin:0}
.launch-org-form{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.launch-org-detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}
.launch-org-detail-list>div{min-width:0;padding:11px;border:1px solid var(--line-soft);border-radius:12px;background:rgba(148,163,184,.035)}
.launch-org-detail-list dt{color:var(--muted);font-size:.65rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.launch-org-detail-list dd{margin:5px 0 0;font-weight:850;overflow-wrap:anywhere}
.launch-org-links{margin-top:13px}.launch-org-links .btn{flex:1 1 150px}

@media(max-width:1280px){
  .launch-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .launch-org-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .launch-org-columns{grid-template-columns:1fr}
}
@media(max-width:900px){
  .launch-filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}.launch-filter-form .btn{width:100%}
  .launch-request-details{grid-template-columns:1fr}
}

/* One visible mobile record card – no outer card plus inner card. */
@media(max-width:760px){
  .rp-mobile-header__bottom{grid-template-columns:auto minmax(0,1fr)!important;align-items:center!important;gap:10px!important}
  .rp-mobile-header__theme{min-width:0!important}.rp-mobile-header__account{min-width:0!important}
  .dashboard-notification-strip{grid-template-columns:38px minmax(0,1fr);padding:11px 12px}.dashboard-notification-strip__icon{width:38px;height:38px}.dashboard-notification-strip__action{display:none}

  html body .content :is(.card.table-wrap,.table-wrap,.data-table-card,.checks-table-wrap):not(:has(> .card-head)):has(> table){
    padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
    -webkit-backdrop-filter:none!important;backdrop-filter:none!important;overflow:visible!important;
  }
  html body .content :is(.card.table-wrap,.table-wrap,.data-table-card,.checks-table-wrap) > table,
  html body .content :is(.card.table-wrap,.table-wrap,.data-table-card,.checks-table-wrap) > table tbody{
    width:100%!important;max-width:100%!important;background:transparent!important;border:0!important;box-shadow:none!important;
  }
  html body .content :is(.card.table-wrap,.table-wrap,.data-table-card,.checks-table-wrap) > table tbody tr{
    margin:0!important;padding:0!important;border:1px solid var(--line-soft)!important;border-radius:18px!important;
    background:linear-gradient(180deg,color-mix(in srgb,var(--surface-2) 88%,transparent),color-mix(in srgb,var(--surface) 94%,transparent))!important;
    box-shadow:0 10px 28px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.22)!important;overflow:hidden!important;
  }
  html body .content :is(.card.table-wrap,.table-wrap,.data-table-card,.checks-table-wrap) > table tbody tr>td{
    margin:0!important;padding:12px 15px!important;border:0!important;border-bottom:1px solid var(--line-soft)!important;border-radius:0!important;
    background:transparent!important;box-shadow:none!important;outline:0!important;
    -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
  }
  html body .content :is(.card.table-wrap,.table-wrap,.data-table-card,.checks-table-wrap) > table tbody tr>td:last-child{border-bottom:0!important}
  html body .content :is(.card.table-wrap,.table-wrap,.data-table-card,.checks-table-wrap) > table tbody tr>td:focus,
  html body .content :is(.card.table-wrap,.table-wrap,.data-table-card,.checks-table-wrap) > table tbody tr>td:focus-within{
    background:transparent!important;box-shadow:none!important;outline:0!important;transform:none!important;
  }
  html body .content :is(.card.table-wrap,.table-wrap,.data-table-card,.checks-table-wrap) > table tbody tr>td::before{
    margin:0 0 4px!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;
  }
  .launch-kpi-grid,.launch-org-metrics,.launch-filter-form,.launch-org-detail-list{grid-template-columns:1fr}
  .launch-organization-card>summary{align-items:flex-start;flex-direction:column;padding:15px}.launch-org-summary{justify-content:flex-start}.launch-org-identity small{white-space:normal;overflow-wrap:anywhere}
  .launch-org-body{padding:0 15px 15px}.launch-org-panel{padding:13px}.launch-request-item>summary{align-items:flex-start}.launch-request-body{padding-inline:12px}
}

/* ui-fixes-v1314.css */
/* Retter-Portal v1.3.14 – department spacing, qualification matrix and account deletion confirmation. */

/* Keep a visible, consistent gap between the create form and existing units. */
html body .department-units-card .unit-create-form + .unit-chip-grid-after-create{
  margin-top:18px!important;
}

/* Qualification matrix: give each qualification enough real width and never let
   sticky columns cover the first letters of the following heading. */
html body .v138-matrix{
  table-layout:fixed!important;
}
html body .v138-matrix th:not(.v138-matrix-person),
html body .v138-matrix td:not(.v138-matrix-person){
  width:252px!important;
  min-width:252px!important;
  max-width:252px!important;
}
html body .v138-matrix .v138-matrix-person{
  width:220px!important;
  min-width:220px!important;
  max-width:220px!important;
  box-shadow:8px 0 18px rgba(2,8,23,.16)!important;
}
html body .v138-matrix thead th{
  height:122px!important;
  padding:16px 15px!important;
  overflow:hidden!important;
  vertical-align:middle!important;
}
html body .v138-matrix .v1310-matrix-name{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0 auto!important;
  color:var(--text)!important;
  font-size:.78rem!important;
  font-weight:950!important;
  line-height:1.24!important;
  letter-spacing:.045em!important;
  text-align:center!important;
  text-transform:uppercase!important;
  text-wrap:balance!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}
html body .v138-matrix .v1310-matrix-category{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:8px auto 0!important;
  color:var(--muted)!important;
  font-size:.68rem!important;
  font-weight:850!important;
  line-height:1.28!important;
  letter-spacing:.035em!important;
  text-align:center!important;
  text-transform:uppercase!important;
  text-wrap:balance!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}
html body .v138-matrix-person strong,
html body .v138-matrix-person small{
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  hyphens:none!important;
}

/* Account danger zone: all blocks share the same full width and alignment. */
html body .account-delete-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:16px!important;
}
html body .account-delete-header,
html body .account-delete-warning,
html body .account-delete-action-zone,
html body .account-delete-notice{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  box-sizing:border-box!important;
}
html body .account-delete-warning{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:6px!important;
  padding:17px 18px!important;
  border:1px solid rgba(244,63,94,.24)!important;
  border-radius:17px!important;
  background:linear-gradient(145deg,rgba(159,18,57,.14),rgba(76,5,25,.08))!important;
}
html body .account-delete-warning strong{
  color:#fb7185!important;
}
html body .account-delete-action-zone{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:18px!important;
  padding:18px!important;
  border:1px solid rgba(244,63,94,.28)!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,rgba(159,18,57,.18),rgba(76,5,25,.10))!important;
}
html body .account-delete-action-zone>div strong,
html body .account-delete-action-zone>div span{
  display:block!important;
}
html body .account-delete-action-zone>div strong{
  color:#fb7185!important;
  font-size:1rem!important;
}
html body .account-delete-action-zone>div span{
  margin-top:5px!important;
  color:var(--muted)!important;
  font-size:.82rem!important;
  line-height:1.48!important;
}

/* Custom deletion confirmation instead of the browser confirm popup. */
html body .account-delete-modal[hidden]{display:none!important}
html body .account-delete-modal{
  position:fixed!important;
  z-index:10000!important;
  inset:0!important;
  display:grid!important;
  place-items:center!important;
  padding:20px!important;
}
html body .account-delete-modal__backdrop{
  position:absolute!important;
  inset:0!important;
  background:rgba(2,6,23,.76)!important;
  -webkit-backdrop-filter:blur(10px)!important;
  backdrop-filter:blur(10px)!important;
}
html body .account-delete-modal__dialog{
  position:relative!important;
  z-index:1!important;
  width:min(590px,100%)!important;
  max-height:calc(100vh - 40px)!important;
  overflow:auto!important;
  padding:28px!important;
  border:1px solid rgba(244,63,94,.34)!important;
  border-radius:26px!important;
  background:
    radial-gradient(circle at 0 0,rgba(225,29,72,.18),transparent 24rem),
    linear-gradient(145deg,rgba(15,23,42,.98),rgba(9,17,30,.98))!important;
  box-shadow:0 34px 90px rgba(0,0,0,.52),inset 0 1px 0 rgba(255,255,255,.07)!important;
  color:var(--text)!important;
}
html body .account-delete-modal__close{
  position:absolute!important;
  top:15px!important;
  right:15px!important;
  display:grid!important;
  place-items:center!important;
  width:38px!important;
  height:38px!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.055)!important;
  color:var(--text)!important;
  font-size:1.45rem!important;
  cursor:pointer!important;
}
html body .account-delete-modal__icon{
  display:grid!important;
  place-items:center!important;
  width:54px!important;
  height:54px!important;
  margin-bottom:16px!important;
  border-radius:17px!important;
  background:linear-gradient(145deg,#f43f5e,#be123c)!important;
  color:#fff!important;
  font-size:1.6rem!important;
  font-weight:950!important;
  box-shadow:0 16px 38px rgba(225,29,72,.30),inset 0 1px 0 rgba(255,255,255,.24)!important;
}
html body .account-delete-modal__dialog h2{
  margin:0 46px 10px 0!important;
  color:#fb7185!important;
  font-size:clamp(1.6rem,4vw,2.15rem)!important;
  letter-spacing:-.035em!important;
}
html body .account-delete-modal__dialog>p:not(.eyebrow){
  margin:0 0 20px!important;
  color:var(--muted)!important;
  line-height:1.58!important;
}
html body .account-delete-modal__dialog form{
  display:grid!important;
  gap:14px!important;
}
html body .account-delete-modal__dialog label{
  display:grid!important;
  gap:8px!important;
  min-width:0!important;
}
html body .account-delete-modal__dialog input{
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
html body .account-delete-modal__actions{
  display:flex!important;
  justify-content:flex-end!important;
  gap:10px!important;
  margin-top:6px!important;
}
html body .account-delete-modal__submit:disabled{
  opacity:.42!important;
  cursor:not-allowed!important;
  transform:none!important;
  box-shadow:none!important;
}
html body.account-delete-modal-open{
  overflow:hidden!important;
}
body[data-theme="light"] .account-delete-modal__dialog{
  background:
    radial-gradient(circle at 0 0,rgba(244,63,94,.14),transparent 24rem),
    linear-gradient(145deg,rgba(255,255,255,.99),rgba(255,241,242,.98))!important;
  color:#111827!important;
}
body[data-theme="light"] .account-delete-modal__backdrop{
  background:rgba(15,23,42,.52)!important;
}

@media(max-width:760px){
  html body .department-units-card .unit-create-form + .unit-chip-grid-after-create{
    margin-top:14px!important;
  }
  html body .v138-matrix th:not(.v138-matrix-person),
  html body .v138-matrix td:not(.v138-matrix-person){
    width:230px!important;
    min-width:230px!important;
    max-width:230px!important;
  }
  html body .v138-matrix .v138-matrix-person{
    width:180px!important;
    min-width:180px!important;
    max-width:180px!important;
  }
  html body .account-delete-action-zone{
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
  }
  html body .account-delete-action{width:100%!important}
  html body .account-delete-modal{padding:10px!important}
  html body .account-delete-modal__dialog{
    width:100%!important;
    max-height:calc(100vh - 20px)!important;
    padding:22px 18px 18px!important;
    border-radius:22px!important;
  }
  html body .account-delete-modal__actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
  }
  html body .account-delete-modal__actions .btn{width:100%!important}
}

/* ui-fixes-v1315.css */
/* Retter-Portal v1.3.15 – unified account deletion and owner cancellation controls. */

/* One consistent danger area instead of several unrelated red blocks. */
html body .account-delete-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:16px!important;
  width:100%!important;
  padding:26px!important;
  overflow:hidden!important;
  border:1px solid rgba(244,63,94,.24)!important;
  border-left:5px solid #e11d48!important;
  border-radius:24px!important;
  background:
    linear-gradient(145deg,rgba(20,29,47,.94),rgba(12,22,38,.94))!important;
  box-shadow:0 20px 52px rgba(2,8,23,.20),inset 0 1px 0 rgba(255,255,255,.05)!important;
}
html body .account-delete-card:before,
html body .account-delete-card:after{display:none!important}
html body .account-delete-header{
  display:grid!important;
  grid-template-columns:56px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:16px!important;
  width:100%!important;
  padding:0!important;
  margin:0!important;
}
html body .account-delete-icon{
  display:grid!important;
  place-items:center!important;
  width:56px!important;
  height:56px!important;
  border-radius:17px!important;
  background:linear-gradient(145deg,#f43f5e,#be123c)!important;
  color:#fff!important;
  font-size:1.6rem!important;
  font-weight:950!important;
  box-shadow:0 14px 34px rgba(225,29,72,.25),inset 0 1px 0 rgba(255,255,255,.24)!important;
}
html body .account-delete-copy{min-width:0!important}
html body .account-delete-copy .eyebrow{
  margin:0 0 6px!important;
  color:#fb7185!important;
}
html body .account-delete-copy h2{
  margin:0!important;
  color:#fb7185!important;
  font-size:1.35rem!important;
}
html body .account-delete-copy p{
  margin:7px 0 0!important;
  color:var(--muted)!important;
  line-height:1.5!important;
}
html body .account-delete-badge{
  align-self:start!important;
  background:rgba(225,29,72,.15)!important;
  border-color:rgba(251,113,133,.28)!important;
  color:#fecdd3!important;
}
html body .account-delete-warning,
html body .account-delete-action-zone,
html body .account-delete-notice{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:17px 18px!important;
  border:1px solid rgba(244,63,94,.22)!important;
  border-radius:17px!important;
  background:rgba(94,16,44,.16)!important;
  box-sizing:border-box!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}
html body .account-delete-warning{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:5px!important;
}
html body .account-delete-warning strong{
  color:#fda4af!important;
  font-size:.96rem!important;
}
html body .account-delete-warning span{
  color:var(--muted)!important;
  font-size:.82rem!important;
  line-height:1.5!important;
}
html body .account-delete-action-zone{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:18px!important;
}
html body .account-delete-action-zone>div{min-width:0!important}
html body .account-delete-action-zone>div strong,
html body .account-delete-action-zone>div span{display:block!important}
html body .account-delete-action-zone>div strong{
  color:#fda4af!important;
  font-size:1rem!important;
}
html body .account-delete-action-zone>div span{
  margin-top:5px!important;
  color:var(--muted)!important;
  font-size:.82rem!important;
  line-height:1.48!important;
}
html body .account-delete-action{
  min-height:48px!important;
  padding:0 18px!important;
  border-color:rgba(255,255,255,.10)!important;
  background:linear-gradient(135deg,#e11d48,#be123c)!important;
  color:#fff!important;
  box-shadow:0 14px 30px rgba(225,29,72,.24),inset 0 1px 0 rgba(255,255,255,.18)!important;
}
html body .account-delete-action:hover{
  background:linear-gradient(135deg,#f43f5e,#d31342)!important;
  color:#fff!important;
}

/* Phrase-only confirmation: the dialog is now smaller and easier to read. */
html body .account-delete-modal__dialog{
  width:min(540px,100%)!important;
}
html body .account-delete-modal__dialog form{
  gap:16px!important;
}
html body .account-delete-modal__dialog label{
  padding:14px!important;
  border:1px solid rgba(244,63,94,.18)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.035)!important;
}
html body .account-delete-modal__actions{
  padding-top:2px!important;
}

/* Pending deletion in operator account management. */
html body .admin-delete-pending{
  border-color:rgba(244,63,94,.28)!important;
  background:rgba(225,29,72,.13)!important;
  color:#fb7185!important;
}
html body .admin-delete-cancel-zone{
  border-color:rgba(16,185,129,.24)!important;
  background:linear-gradient(145deg,rgba(6,95,70,.10),rgba(15,23,42,.04))!important;
}
html body .admin-delete-cancel-summary{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr)) auto!important;
  align-items:end!important;
  gap:12px!important;
}
html body .admin-delete-cancel-summary>div{
  min-width:0!important;
  padding:12px 13px!important;
  border:1px solid var(--line-soft)!important;
  border-radius:14px!important;
  background:rgba(148,163,184,.04)!important;
}
html body .admin-delete-cancel-summary span,
html body .admin-delete-cancel-summary strong{display:block!important}
html body .admin-delete-cancel-summary span{
  color:var(--muted-2)!important;
  font-size:.68rem!important;
  font-weight:900!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
}
html body .admin-delete-cancel-summary strong{
  margin-top:4px!important;
  color:var(--text)!important;
  font-size:.88rem!important;
}
html body .admin-delete-cancel-summary form{margin:0!important}
html body .admin-delete-cancel-summary .btn{
  min-height:46px!important;
  background:linear-gradient(135deg,#059669,#047857)!important;
  border-color:rgba(255,255,255,.10)!important;
  color:#fff!important;
  box-shadow:0 12px 28px rgba(5,150,105,.20)!important;
}

body[data-theme="light"] .account-delete-card{
  background:linear-gradient(145deg,#fff,#fff7f8)!important;
  border-color:rgba(225,29,72,.20)!important;
  box-shadow:0 18px 46px rgba(15,23,42,.08)!important;
}
body[data-theme="light"] .account-delete-warning,
body[data-theme="light"] .account-delete-action-zone,
body[data-theme="light"] .account-delete-notice{
  background:#fff1f2!important;
  border-color:#fecdd3!important;
}
body[data-theme="light"] .account-delete-warning strong,
body[data-theme="light"] .account-delete-action-zone>div strong{color:#be123c!important}
body[data-theme="light"] .account-delete-badge{
  background:#ffe4e6!important;
  color:#9f1239!important;
  border-color:#fecdd3!important;
}
body[data-theme="light"] .account-delete-modal__dialog label{
  background:#fff7f8!important;
  border-color:#fecdd3!important;
}

@media(max-width:900px){
  html body .account-delete-card{padding:20px!important}
  html body .account-delete-header{grid-template-columns:50px minmax(0,1fr)!important}
  html body .account-delete-icon{width:50px!important;height:50px!important}
  html body .account-delete-badge{grid-column:1/-1!important;width:max-content!important}
  html body .account-delete-action-zone{grid-template-columns:minmax(0,1fr)!important}
  html body .account-delete-action{width:100%!important}
  html body .admin-delete-cancel-summary{grid-template-columns:minmax(0,1fr)!important}
  html body .admin-delete-cancel-summary .btn{width:100%!important}
}
@media(max-width:520px){
  html body .account-delete-card{padding:16px!important;border-radius:20px!important}
  html body .account-delete-header{gap:12px!important}
  html body .account-delete-warning,
  html body .account-delete-action-zone,
  html body .account-delete-notice{padding:14px!important;border-radius:15px!important}
}

/* ui-fixes-v1316.css */
/* Retter-Portal v1.3.16 – final account deletion composition. */
html body .account-delete-card{
  display:grid!important;
  gap:20px!important;
  padding:28px!important;
  overflow:hidden!important;
  border:1px solid rgba(244,63,94,.22)!important;
  border-left:5px solid #e11d48!important;
  background:linear-gradient(145deg,rgba(15,23,42,.84),rgba(17,25,43,.92))!important;
  box-shadow:0 20px 50px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.045)!important;
}
html body .account-delete-header{
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:18px!important;
  padding:0!important;
}
html body .account-delete-body{
  display:grid!important;
  gap:0!important;
  overflow:hidden!important;
  border:1px solid rgba(244,63,94,.28)!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,rgba(225,29,72,.075),rgba(76,5,25,.16))!important;
}
html body .account-delete-warning,
html body .account-delete-action-zone,
html body .account-delete-notice{
  width:100%!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
html body .account-delete-warning{
  padding:18px 20px!important;
  border-bottom:1px solid rgba(244,63,94,.20)!important;
}
html body .account-delete-warning strong{
  color:#fda4af!important;
  font-size:.96rem!important;
}
html body .account-delete-warning span{
  margin-top:5px!important;
  color:var(--muted)!important;
  line-height:1.5!important;
}
html body .account-delete-action-zone{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:22px!important;
  padding:20px!important;
}
html body .account-delete-action-zone>div strong{
  color:var(--text)!important;
  font-size:1rem!important;
}
html body .account-delete-action-zone>div span{
  margin-top:5px!important;
  color:var(--muted)!important;
  line-height:1.48!important;
}
html body .account-delete-action,
html body button.account-delete-action{
  min-width:215px!important;
  min-height:50px!important;
  padding:0 20px!important;
  border:1px solid rgba(255,255,255,.15)!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#e11d48,#be123c)!important;
  color:#fff!important;
  box-shadow:0 14px 32px rgba(225,29,72,.28),inset 0 1px 0 rgba(255,255,255,.20)!important;
}
html body .account-delete-action:hover,
html body button.account-delete-action:hover{
  background:linear-gradient(135deg,#f43f5e,#d31342)!important;
  color:#fff!important;
}
html body .account-delete-notice{
  padding:20px!important;
  color:#fecdd3!important;
}
body[data-theme="light"] .account-delete-card{
  background:linear-gradient(145deg,#fff,#fff9fa)!important;
  box-shadow:0 18px 44px rgba(15,23,42,.08)!important;
}
body[data-theme="light"] .account-delete-body{
  background:linear-gradient(145deg,#fff7f8,#fff1f2)!important;
  border-color:#fecdd3!important;
}
body[data-theme="light"] .account-delete-warning{
  border-bottom-color:#fecdd3!important;
}
body[data-theme="light"] .account-delete-warning strong{color:#be123c!important}
@media(max-width:900px){
  html body .account-delete-card{padding:20px!important}
  html body .account-delete-header{grid-template-columns:50px minmax(0,1fr)!important;gap:13px!important}
  html body .account-delete-badge{grid-column:1/-1!important;width:max-content!important;margin-left:63px!important}
  html body .account-delete-action-zone{grid-template-columns:minmax(0,1fr)!important;gap:15px!important}
  html body .account-delete-action{width:100%!important;min-width:0!important}
}
@media(max-width:520px){
  html body .account-delete-card{padding:16px!important;gap:16px!important;border-radius:20px!important}
  html body .account-delete-header{grid-template-columns:46px minmax(0,1fr)!important}
  html body .account-delete-badge{margin-left:59px!important}
  html body .account-delete-warning,
  html body .account-delete-action-zone,
  html body .account-delete-notice{padding:15px!important}
}

/* billing-v1317.css */
/* Retter-Portal v1.3.17 – Testphase und vorbereitete Organisationsabrechnung. */
.organization-commercial-strip{
  display:grid;
  grid-template-columns:44px minmax(0,1fr) auto;
  align-items:center;
  gap:13px;
  min-width:0;
  padding:12px 14px;
  border:1px solid rgba(59,130,246,.20);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(30,58,92,.22),rgba(15,28,48,.14));
  box-shadow:0 10px 28px rgba(2,8,23,.10),inset 0 1px 0 rgba(255,255,255,.045);
}
.organization-commercial-strip.is-warning{border-color:rgba(245,158,11,.30);background:linear-gradient(180deg,rgba(120,72,10,.18),rgba(45,31,14,.10))}
.organization-commercial-strip__icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:rgba(59,130,246,.13);border:1px solid rgba(96,165,250,.22);font-weight:950;color:#bfdbfe}
.organization-commercial-strip.is-warning .organization-commercial-strip__icon{background:rgba(245,158,11,.14);border-color:rgba(251,191,36,.24);color:#fde68a}
.organization-commercial-strip__copy{display:block;min-width:0}
.organization-commercial-strip__copy strong,.organization-commercial-strip__copy small{display:block;min-width:0}
.organization-commercial-strip__copy strong{font-size:.92rem}
.organization-commercial-strip__copy small{margin-top:3px;color:var(--muted);font-size:.78rem;line-height:1.4}
.organization-commercial-strip .btn{white-space:nowrap}

.billing-page-hero{align-items:center}
.billing-org-switch{min-width:min(360px,100%);margin:0}
.billing-org-switch label{margin:0}
.billing-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.billing-status-card{display:grid;align-content:start;gap:5px;min-width:0;padding:18px!important}
.billing-status-card>span{color:var(--muted);font-size:.7rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.billing-status-card>strong{min-width:0;font-size:1.35rem;line-height:1.12;overflow-wrap:break-word}
.billing-status-card>small{color:var(--muted);line-height:1.4}
.billing-status-card.is-warning{border-color:rgba(245,158,11,.27)!important}
.billing-trial-card{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px}
.billing-trial-copy h2{margin:10px 0 5px;font-size:clamp(1.4rem,2.2vw,2rem)}
.billing-trial-copy p{margin:0;color:var(--muted);line-height:1.55}
.billing-trial-dates{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:10px}
.billing-trial-dates span{display:grid;gap:5px;padding:13px 15px;border:1px solid var(--line-soft);border-radius:14px;background:rgba(148,163,184,.045);color:var(--muted);font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.billing-trial-dates strong{color:var(--text);font-size:.96rem;letter-spacing:0;text-transform:none}
.billing-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:20px;min-width:0}
.billing-profile-form>*{min-width:0}
.billing-detail-list{display:grid;gap:0;margin:0}
.billing-detail-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:15px;padding:13px 0;border-bottom:1px solid var(--line-soft)}
.billing-detail-list>div:last-child{border-bottom:0}
.billing-detail-list dt{color:var(--muted);font-size:.8rem}
.billing-detail-list dd{margin:0;font-weight:900;text-align:right}
.billing-create-invoice{margin:0 0 16px;border:1px solid var(--line-soft);border-radius:16px;overflow:hidden}
.billing-create-invoice>summary{padding:14px 16px;cursor:pointer;font-weight:900;background:rgba(148,163,184,.04)}
.billing-create-invoice>form{padding:16px;border-top:1px solid var(--line-soft)}
.billing-status-form{display:flex;align-items:center;gap:7px;min-width:220px}
.billing-status-form select{min-width:120px}
.billing-invoice-table{margin-top:0}

@media(max-width:1180px){
  .billing-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .billing-layout{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:760px){
  .organization-commercial-strip{grid-template-columns:40px minmax(0,1fr);padding:11px 12px}
  .organization-commercial-strip__icon{width:40px;height:40px}
  .organization-commercial-strip .btn{grid-column:1/-1;width:100%}
  .billing-status-grid{grid-template-columns:minmax(0,1fr);gap:10px}
  .billing-trial-card{grid-template-columns:minmax(0,1fr)!important}
  .billing-trial-dates{grid-template-columns:repeat(2,minmax(0,1fr))}
  .billing-detail-list>div{grid-template-columns:minmax(0,1fr)}
  .billing-detail-list dd{text-align:left}
  .billing-status-form{display:grid;grid-template-columns:minmax(0,1fr);min-width:0;width:100%}
  .billing-status-form .btn{width:100%}
}
@media(max-width:430px){.billing-trial-dates{grid-template-columns:minmax(0,1fr)}}

/* ui-fixes-v1317.css */
/* Retter-Portal v1.3.17 – durchgehende Konturen und robuste Mobile-/Tablet-Flächen. */
:root{--rp1317-edge:rgba(100,116,139,.20);--rp1317-edge-dark:rgba(148,163,184,.15);--rp1317-panel-dark:rgba(12,23,40,.88);--rp1317-panel-light:rgba(255,255,255,.84)}

/* Alte punktuelle Farbkreise erzeugten an einzelnen Karten blaue/rote Randsegmente. */
html body .app-shell .main .content :is(.rp55-dash-hero,.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap):not(.account-delete-card):not(.tone-warning):not(.tone-danger):not(.is-warning)::before,
html body .app-shell .main .content :is(.rp55-dash-hero,.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap):not(.account-delete-card):not(.tone-warning):not(.tone-danger):not(.is-warning)::after{
  content:none!important;
  display:none!important;
  background:none!important;
}
html body .app-shell .main .content :is(.rp55-dash-hero,.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap):not(.account-delete-card):not(.tone-warning):not(.tone-danger):not(.is-warning){
  background-image:none!important;
  border:1px solid var(--rp1317-edge)!important;
  background-clip:padding-box!important;
  box-shadow:0 18px 48px rgba(15,23,42,.09),inset 0 1px 0 rgba(255,255,255,.08)!important;
}
body[data-theme="dark"] .app-shell .main .content :is(.rp55-dash-hero,.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap):not(.account-delete-card):not(.tone-warning):not(.tone-danger):not(.is-warning){
  border-color:var(--rp1317-edge-dark)!important;
  background:linear-gradient(180deg,rgba(16,29,49,.91),var(--rp1317-panel-dark))!important;
  box-shadow:0 20px 52px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.055)!important;
}
body[data-theme="light"] .app-shell .main .content :is(.rp55-dash-hero,.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap):not(.account-delete-card):not(.tone-warning):not(.tone-danger):not(.is-warning){
  background:linear-gradient(180deg,rgba(255,255,255,.93),var(--rp1317-panel-light))!important;
}

/* Ein einzelner sauberer Tabellenrahmen statt verschachtelter Glaskarten. */
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table{background:transparent!important}
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) tbody td{box-shadow:none!important}

/* Account-Löschdialog: dynamische Safari-Höhe, sichtbare Aktionen, kleiner echter Schließen-Button. */
html body .account-delete-modal{padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))!important}
html body .account-delete-modal__dialog{max-height:calc(100dvh - 28px)!important;overscroll-behavior:contain!important}
html body .account-delete-modal__close{width:38px!important;min-width:38px!important;max-width:38px!important;height:38px!important;min-height:38px!important;max-height:38px!important;inset:15px 15px auto auto!important}
html body .account-delete-modal__actions{position:sticky!important;bottom:-1px!important;z-index:2!important;padding:12px 0 2px!important;background:linear-gradient(180deg,transparent 0%,rgba(9,17,30,.96) 30%)!important}
html body .account-delete-modal__submit:not(:disabled){background:linear-gradient(135deg,#e11d48,#be123c)!important;color:#fff!important;border-color:rgba(255,255,255,.13)!important;box-shadow:0 13px 30px rgba(225,29,72,.25)!important}

/* Jede responsive Tabellenzeile ist mobil genau eine Karte. */
@media(max-width:760px){
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap):not(:has(> .card-head)):has(> table.responsive-table){
    padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;
  }
  html body .app-shell .main .content table.responsive-table tbody tr{
    margin:0 0 12px!important;padding:0!important;border:1px solid var(--rp1317-edge-dark)!important;border-radius:18px!important;background:rgba(16,29,49,.88)!important;box-shadow:0 12px 30px rgba(0,0,0,.16)!important;overflow:hidden!important;
  }
  html body .app-shell .main .content table.responsive-table tbody tr:last-child{margin-bottom:0!important}
  html body .app-shell .main .content table.responsive-table tbody td{background:transparent!important;border-radius:0!important;box-shadow:none!important}
  html body .account-delete-modal{align-items:center!important;padding-bottom:max(18px,calc(env(safe-area-inset-bottom) + 76px))!important}
  html body .account-delete-modal__dialog{max-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 96px)!important;padding:20px 16px 16px!important}
  html body .account-delete-modal__actions{padding-bottom:4px!important}
}

/* Tablet: keine Komponente darf aus dem Inhaltsbereich herausrechnen. */
@media(min-width:761px) and (max-width:1180px){
  html body .app-shell .main,.content,.content>*{min-width:0!important;max-width:100%!important}
  html body .content :is(.grid,.form-grid,.detail-grid,.info-grid,.billing-layout,.billing-status-grid){min-width:0!important}
  html body .content :is(input,select,textarea,.btn){max-width:100%!important;box-sizing:border-box!important}
  html body .content :is(.table-wrap,.data-table-card,.checks-table-wrap){max-width:100%!important}
}

/* ui-fixes-v1318.css */
/* Retter-Portal v1.3.18 – sauberer Löschdialog, reduzierte Testkonten und geschlossene Tabellenkanten. */
:root{
  --rp1318-table-radius:16px;
  --rp1318-table-edge:rgba(100,116,139,.22);
  --rp1318-table-edge-dark:rgba(148,163,184,.16);
}

/* Account-Löschdialog: Symbol und Schließen-Button bilden eine feste Kopfzeile.
   Der X-Button ist dadurch auch in Safari niemals absolut über dem Inhalt oder formularbreit. */
html body .account-delete-modal__topbar{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  width:100%!important;
  min-width:0!important;
  margin:0 0 16px!important;
}
html body .account-delete-modal__topbar .account-delete-modal__icon{
  flex:0 0 54px!important;
  width:54px!important;
  min-width:54px!important;
  max-width:54px!important;
  height:54px!important;
  min-height:54px!important;
  max-height:54px!important;
  margin:0!important;
}
html body .account-delete-modal__topbar .account-delete-modal__close{
  position:static!important;
  inset:auto!important;
  top:auto!important;
  right:auto!important;
  flex:0 0 40px!important;
  display:grid!important;
  place-items:center!important;
  width:40px!important;
  min-width:40px!important;
  max-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  max-height:40px!important;
  margin:0!important;
  padding:0!important;
  border-radius:12px!important;
  line-height:1!important;
}
html body .account-delete-modal__dialog h2{
  margin:0 0 10px!important;
}
html body .account-delete-modal__dialog{
  scrollbar-gutter:stable;
}

/* Testkonten ohne Navigation nutzen die gesamte Breite; es bleibt kein leerer Sidebar-Bereich. */
html body .app-shell.app-shell--navigation-disabled{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  width:100%!important;
  min-width:0!important;
}
html body .app-shell.app-shell--navigation-disabled > .main{
  grid-column:1!important;
  width:100%!important;
  min-width:0!important;
}
html body .app-shell.app-shell--navigation-disabled [data-menu-toggle]{
  display:none!important;
}

/* Tabellenkarten: nur eine Kontur, passend geclipte Kopf- und Abschlusszeile. */
@media(min-width:761px){
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap){
    position:relative!important;
    isolation:isolate!important;
    overflow:auto!important;
    border:1px solid var(--rp1318-table-edge)!important;
    border-radius:var(--rp1318-table-radius)!important;
    background:var(--surface)!important;
    background-image:none!important;
    background-clip:padding-box!important;
    box-shadow:0 18px 46px rgba(15,23,42,.09)!important;
  }
  body[data-theme="dark"] .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap){
    border-color:var(--rp1318-table-edge-dark)!important;
    background:rgb(14,25,43)!important;
    box-shadow:0 20px 48px rgba(0,0,0,.20)!important;
  }
  body[data-theme="light"] .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap){
    background:rgba(255,255,255,.94)!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap)::before,
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap)::after{
    content:none!important;
    display:none!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) > table{
    margin:0!important;
    border-collapse:separate!important;
    border-spacing:0!important;
    background:transparent!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) > table thead th:first-child{
    border-top-left-radius:calc(var(--rp1318-table-radius) - 1px)!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) > table thead th:last-child{
    border-top-right-radius:calc(var(--rp1318-table-radius) - 1px)!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) > table tbody tr:last-child > td:first-child{
    border-bottom-left-radius:calc(var(--rp1318-table-radius) - 1px)!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) > table tbody tr:last-child > td:last-child{
    border-bottom-right-radius:calc(var(--rp1318-table-radius) - 1px)!important;
  }
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) > table tbody tr:last-child > td{
    border-bottom:0!important;
  }
}

/* Entwicklungsprofile bleiben auf kleinen Breiten ruhig und vollständig bedienbar. */
html body .devtools-menu-check span,
html body .devtools-menu-check small{
  display:block!important;
  min-width:0!important;
}
html body .devtools-menu-check small{
  margin-top:4px!important;
  line-height:1.45!important;
}
html body .devtools-profile-form .check{
  align-items:flex-start!important;
}

@media(max-width:760px){
  html body .account-delete-modal{
    align-items:flex-start!important;
    place-items:start center!important;
    padding:
      max(12px,env(safe-area-inset-top))
      max(12px,env(safe-area-inset-right))
      max(16px,calc(env(safe-area-inset-bottom) + 68px))
      max(12px,env(safe-area-inset-left))!important;
  }
  html body .account-delete-modal__dialog{
    width:100%!important;
    max-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 96px)!important;
    padding:18px 16px 16px!important;
    border-radius:20px!important;
  }
  html body .account-delete-modal__topbar{
    margin-bottom:14px!important;
  }
  html body .account-delete-modal__topbar .account-delete-modal__icon{
    flex-basis:50px!important;
    width:50px!important;
    min-width:50px!important;
    max-width:50px!important;
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
    border-radius:15px!important;
  }
  html body .account-delete-modal__topbar .account-delete-modal__close{
    flex-basis:40px!important;
    width:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    height:40px!important;
    min-height:40px!important;
    max-height:40px!important;
  }
  html body .account-delete-modal__actions{
    position:static!important;
    padding:0!important;
    background:none!important;
  }
  html body .app-shell.app-shell--navigation-disabled .rp-mobile-header__top{
    grid-template-columns:minmax(0,1fr) auto!important;
  }
  html body .app-shell.app-shell--navigation-disabled .rp-mobile-header__brand{
    justify-content:flex-start!important;
    text-align:left!important;
  }
  html body .devtools-demo-form{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
  }
  html body .devtools-demo-form > *{
    width:100%!important;
    min-width:0!important;
  }
}

/* Ohne Menüschalter werden Brand und Logout in der mobilen Kopfzeile neu einsortiert. */
@media(max-width:760px){
  html body .app-shell.app-shell--navigation-disabled .main > .topbar .rp-mobile-header__top{
    grid-template-columns:minmax(0,1fr) auto!important;
  }
  html body .app-shell.app-shell--navigation-disabled .main > .topbar .rp-mobile-header__brand{
    grid-column:1!important;
  }
  html body .app-shell.app-shell--navigation-disabled .main > .topbar form.rp-mobile-header__logout{
    grid-column:2!important;
  }
}

@media(min-width:761px) and (max-width:1180px){
  html body .app-shell.app-shell--navigation-disabled .topbar-desktop-shell{
    grid-template-columns:minmax(220px,1fr) auto!important;
    grid-template-areas:"brand actions" "context context"!important;
  }
}

/* ui-fixes-v1319.css */
/* Retter-Portal v1.3.19 */
.dashboard-notification-strip{border:1px solid rgba(225,29,72,.35)!important;box-shadow:none!important;outline:0!important;background:linear-gradient(90deg,rgba(225,29,72,.08),rgba(30,64,175,.08))!important}
.dashboard-notification-strip::before,.dashboard-notification-strip::after{display:none!important}
.billing-invoice-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.dev-account-badge{border-color:rgba(34,197,94,.35)!important;color:#4ade80!important}
@media(max-width:900px){.table-wrap{max-width:100%;overflow-x:auto}.billing-invoice-actions{display:grid;grid-template-columns:1fr;width:100%}.billing-invoice-actions .btn,.billing-invoice-actions form{width:100%}.page-hero,.admin-page-hero{min-width:0}.form-grid>*{min-width:0}}
@media(max-width:600px){.dashboard-notification-strip{grid-template-columns:40px minmax(0,1fr)!important;border-radius:16px!important}.dashboard-notification-strip__action{display:none!important}.card,.page-hero,.admin-page-hero{max-width:100%;overflow:hidden}.responsive-table td{overflow-wrap:anywhere}}

/* ui-fixes-v1320.css */
/* Retter-Portal v1.3.20 - ruhige Statusflaechen und letzter Mobile-/Tablet-Abgleich. */

/* Benachrichtigungsleiste: eine einzige, klare Akzentkante statt mehrerer Rahmen. */
html body .dashboard-notification-strip{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  border:0!important;
  border-left:4px solid #e11d48!important;
  outline:0!important;
  background:linear-gradient(90deg,rgba(225,29,72,.075),rgba(30,64,175,.055))!important;
  background-clip:padding-box!important;
  box-shadow:0 10px 28px rgba(15,23,42,.09)!important;
}
html body .dashboard-notification-strip::before,
html body .dashboard-notification-strip::after{
  content:none!important;
  display:none!important;
}
html body .dashboard-notification-strip__icon{
  border:0!important;
  outline:0!important;
}
html body .dashboard-notification-strip__copy,
html body .dashboard-notification-strip__copy strong,
html body .dashboard-notification-strip__copy small{
  min-width:0!important;
  max-width:100%!important;
  overflow-wrap:anywhere!important;
}
html body .dashboard-notification-strip__action{
  border:0!important;
  outline:0!important;
  background:rgba(148,163,184,.075)!important;
  box-shadow:none!important;
}

/* Organisations- und Abrechnungsbereiche bleiben auch in schmalen Split-Views innerhalb der Seite. */
html body .organization-commercial-strip,
html body .billing-layout,
html body .billing-status-grid,
html body .billing-trial-card,
html body .billing-invoice-actions,
html body .billing-status-form,
html body .launch-org-columns,
html body .launch-org-panel,
html body .launch-organization-card,
html body .launch-organization-card > summary{
  box-sizing:border-box!important;
  max-width:100%!important;
  min-width:0!important;
}
html body .organization-commercial-strip__copy,
html body .organization-commercial-strip__copy strong,
html body .organization-commercial-strip__copy small,
html body .billing-detail-list dt,
html body .billing-detail-list dd,
html body .launch-org-identity,
html body .launch-org-identity > div,
html body .launch-org-summary{
  min-width:0!important;
  overflow-wrap:anywhere!important;
}

/* Formulare und Aktionen duerfen auf Tablets nicht durch feste Mindestbreiten auslaufen. */
@media(max-width:1024px){
  html body .billing-layout,
  html body .launch-org-columns{
    grid-template-columns:minmax(0,1fr)!important;
  }
  html body .billing-profile-form,
  html body .billing-profile-form > *,
  html body .launch-org-form,
  html body .launch-org-form > *,
  html body .form-grid,
  html body .form-grid > *{
    min-width:0!important;
    max-width:100%!important;
  }
  html body .billing-status-form{
    min-width:0!important;
  }
}

@media(max-width:760px){
  html body .dashboard-notification-strip{
    grid-template-columns:40px minmax(0,1fr)!important;
    gap:10px!important;
    padding:10px 11px!important;
    border-radius:15px!important;
  }
  html body .dashboard-notification-strip__icon{
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    border-radius:12px!important;
  }
  html body .dashboard-notification-strip__action{
    display:none!important;
  }
  html body .organization-commercial-strip{
    grid-template-columns:40px minmax(0,1fr)!important;
    gap:10px!important;
    padding:10px 11px!important;
    border-radius:15px!important;
  }
  html body .organization-commercial-strip__icon{
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    border-radius:12px!important;
  }
  html body .billing-invoice-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
  }
  html body .billing-invoice-actions > .btn,
  html body .billing-invoice-actions > form,
  html body .billing-invoice-actions > form .btn,
  html body .billing-status-form,
  html body .billing-status-form .btn,
  html body .form-actions .btn{
    width:100%!important;
    max-width:100%!important;
  }
  html body .billing-status-form select,
  html body .billing-profile-form :is(input,select,textarea),
  html body .launch-org-form :is(input,select,textarea){
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  html body .billing-detail-list > div{
    grid-template-columns:minmax(0,1fr)!important;
  }
  html body .billing-detail-list dd{
    text-align:left!important;
  }
}

@media(max-width:480px){
  html body .dashboard-notification-strip__copy strong,
  html body .organization-commercial-strip__copy strong{
    font-size:.86rem!important;
    line-height:1.3!important;
  }
  html body .dashboard-notification-strip__copy small,
  html body .organization-commercial-strip__copy small{
    font-size:.72rem!important;
    line-height:1.38!important;
  }
}

/* ui-fixes-v1321.css */
/* Retter-Portal v1.3.21 - neue Sidebar und organisationsgebundener DEV-Modus. */

:root{--sidebar-width:304px;}

/* Sidebar: klare Icon-Navigation ohne Buchstaben-Kaestchen. */
html body .sidebar{
  padding:14px 12px 24px!important;
  background:
    radial-gradient(circle at 15% -5%,rgba(225,29,72,.13),transparent 21rem),
    linear-gradient(180deg,#09111f 0%,#0a1525 48%,#08111f 100%)!important;
  border-right:1px solid rgba(148,163,184,.13)!important;
  box-shadow:18px 0 50px rgba(2,6,23,.22)!important;
  scrollbar-width:thin;
  scrollbar-color:rgba(148,163,184,.28) transparent;
}
html body .sidebar::before{content:none!important;display:none!important;}
html body .sidebar::-webkit-scrollbar{width:6px;}
html body .sidebar::-webkit-scrollbar-track{background:transparent;}
html body .sidebar::-webkit-scrollbar-thumb{background:rgba(148,163,184,.28);border-radius:999px;}
html body .sidebar .brand{
  position:relative!important;
  top:auto!important;
  width:auto!important;
  min-width:0!important;
  margin:0 4px 14px!important;
  padding:10px 8px 18px!important;
  gap:12px!important;
  border:0!important;
  border-bottom:1px solid rgba(148,163,184,.13)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
html body .sidebar .brand-logo-wrap{
  width:44px!important;
  min-width:44px!important;
  height:44px!important;
  border-radius:15px!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  background:rgba(255,255,255,.055)!important;
  border:1px solid rgba(255,255,255,.09)!important;
  box-shadow:0 10px 28px rgba(2,6,23,.28)!important;
}
html body .sidebar .brand-logo{max-width:36px!important;max-height:36px!important;object-fit:contain!important;}
html body .sidebar .brand-text{display:block!important;position:static!important;width:auto!important;height:auto!important;min-width:0!important;overflow:visible!important;clip:auto!important;white-space:normal!important;color:#f8fafc!important;font-size:1.04rem!important;line-height:1.12!important;}
html body .sidebar .brand-text small,
html body .sidebar .brand-context{
  display:block!important;
  width:auto!important;
  margin-top:5px!important;
  color:#8796aa!important;
  font-size:.64rem!important;
  line-height:1.25!important;
  font-weight:900!important;
  letter-spacing:.105em!important;
  text-align:left!important;
  white-space:normal!important;
}
html body .sidebar .brand-context.is-dev{color:#fda4af!important;}
html body .sidebar .sidebar-nav{display:flex!important;flex-direction:column!important;gap:2px!important;min-width:0!important;}
html body .sidebar .nav-section{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:18px 10px 7px!important;
  color:#74839a!important;
  font-size:.66rem!important;
  font-weight:950!important;
  letter-spacing:.15em!important;
}
html body .sidebar .nav-section::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,rgba(148,163,184,.18),transparent);}
html body .sidebar .nav-section span{width:auto!important;text-align:left!important;white-space:nowrap!important;}
html body .sidebar nav a.sidebar-nav-link > .sidebar-nav-icon,
html body .sidebar nav a.sidebar-nav-link > .sidebar-nav-label{
  flex:none!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  letter-spacing:normal!important;
  text-transform:none!important;
}
html body .sidebar nav a.sidebar-nav-link:hover > .sidebar-nav-icon,
html body .sidebar nav a.sidebar-nav-link:hover > .sidebar-nav-label,
html body .sidebar nav a.sidebar-nav-link.active > .sidebar-nav-icon,
html body .sidebar nav a.sidebar-nav-link.active > .sidebar-nav-label{background:transparent!important;background-image:none!important;box-shadow:none!important;}
html body .sidebar nav a.sidebar-nav-link{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  min-width:0!important;
  min-height:44px!important;
  margin:1px 0!important;
  padding:9px 11px!important;
  border:1px solid transparent!important;
  border-radius:13px!important;
  background:transparent!important;
  color:#c9d4e3!important;
  font-size:.91rem!important;
  font-weight:820!important;
  box-shadow:none!important;
  transform:none!important;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease!important;
}
html body .sidebar nav a.sidebar-nav-link:hover{
  background:rgba(255,255,255,.055)!important;
  border-color:rgba(148,163,184,.12)!important;
  color:#fff!important;
  transform:translateX(2px)!important;
}
html body .sidebar nav a.sidebar-nav-link.active{
  background:linear-gradient(90deg,rgba(225,29,72,.18),rgba(30,41,59,.36))!important;
  border-color:rgba(251,113,133,.22)!important;
  color:#fff!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.018),0 8px 24px rgba(2,6,23,.16)!important;
}
html body .sidebar nav a.sidebar-nav-link.active::before{
  content:""!important;
  position:absolute!important;
  left:-1px!important;
  top:9px!important;
  bottom:9px!important;
  width:3px!important;
  border-radius:0 999px 999px 0!important;
  background:#fb3153!important;
  box-shadow:0 0 16px rgba(251,49,83,.55)!important;
}
html body .sidebar .sidebar-nav-icon{
  width:22px!important;
  min-width:22px!important;
  height:22px!important;
  display:grid!important;
  place-items:center!important;
  color:#8392a8!important;
  text-align:center!important;
  transition:color .16s ease,transform .16s ease!important;
}
html body .sidebar .sidebar-nav-icon svg{display:block!important;width:20px!important;height:20px!important;}
html body .sidebar nav a.sidebar-nav-link:hover .sidebar-nav-icon{color:#dbe6f5!important;}
html body .sidebar nav a.sidebar-nav-link.active .sidebar-nav-icon{color:#fb7185!important;transform:scale(1.04)!important;}
html body .sidebar .sidebar-nav-label{
  flex:1 1 auto!important;
  width:auto!important;
  min-width:0!important;
  text-align:left!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
html body .sidebar .nav-count{
  flex:0 0 auto!important;
  margin-left:auto!important;
  min-width:25px!important;
  height:22px!important;
  padding:0 7px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
  background:rgba(148,163,184,.22)!important;
  color:#e8eef7!important;
  font-size:.68rem!important;
  font-style:normal!important;
  font-weight:950!important;
  line-height:1!important;
}
html body .sidebar nav a.sidebar-nav-link.active .nav-count{background:rgba(251,113,133,.2)!important;color:#fecdd3!important;}

/* DEV-Organisation eindeutig statt einzelne Accounts markieren. */
html body .dev-organization-chip,
html body .dev-organization-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:0!important;
  padding:7px 10px!important;
  border:1px solid rgba(244,63,94,.24)!important;
  border-radius:999px!important;
  background:rgba(244,63,94,.10)!important;
  color:#e11d48!important;
  font-size:.72rem!important;
  font-weight:950!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
body[data-theme="dark"] .dev-organization-chip,
body[data-theme="dark"] .dev-organization-badge{color:#fda4af!important;border-color:rgba(251,113,133,.3)!important;background:rgba(190,24,93,.16)!important;}
html body .topbar-context{display:flex!important;align-items:center!important;gap:9px!important;min-width:0!important;}
html body .launch-kpi-grid .tone-dev,
html body .launch-organization-card.is-dev-organization{
  border-color:rgba(244,63,94,.24)!important;
  background-image:linear-gradient(135deg,rgba(244,63,94,.055),transparent 52%)!important;
}
html body .launch-health-dot.tone-dev{background:#f43f5e!important;box-shadow:0 0 0 5px rgba(244,63,94,.12)!important;}
html body .pill.tone-dev{background:rgba(244,63,94,.12)!important;color:#be123c!important;}
body[data-theme="dark"] .pill.tone-dev{color:#fda4af!important;}
html body .dev-organization-toggle{
  align-items:flex-start!important;
  padding:14px!important;
  border-color:rgba(244,63,94,.22)!important;
  background:linear-gradient(135deg,rgba(244,63,94,.07),rgba(30,41,59,.025))!important;
}
html body .dev-organization-toggle input{margin-top:3px!important;}
html body .dev-organization-toggle span{display:grid!important;gap:4px!important;min-width:0!important;}
html body .dev-organization-toggle strong{color:var(--text)!important;}
html body .dev-organization-toggle small{color:var(--muted)!important;line-height:1.45!important;font-weight:750!important;}

@media(max-width:1180px){
  html body .topbar-context .dev-organization-chip{font-size:.66rem!important;padding:6px 8px!important;}
}
@media(max-width:980px){
  :root{--sidebar-width:304px;}
  html body .sidebar{width:min(88vw,330px)!important;max-width:330px!important;}
}
@media(max-width:760px){
  html body .sidebar{padding-top:calc(12px + env(safe-area-inset-top))!important;width:min(90vw,326px)!important;}
  html body .sidebar nav a.sidebar-nav-link{min-height:46px!important;padding:10px 11px!important;font-size:.94rem!important;}
  html body .rp-mobile-header__context{display:grid!important;gap:8px!important;}
  html body .dev-organization-chip--mobile{justify-self:start!important;max-width:100%!important;white-space:normal!important;text-align:left!important;line-height:1.25!important;}
}
@media(max-width:420px){
  html body .sidebar .brand{padding-left:5px!important;padding-right:5px!important;}
  html body .sidebar .brand-logo-wrap{width:40px!important;min-width:40px!important;height:40px!important;}
  html body .sidebar .sidebar-nav-label{white-space:normal!important;line-height:1.25!important;}
  html body .sidebar nav a.sidebar-nav-link{align-items:start!important;}
  html body .sidebar .sidebar-nav-icon{margin-top:1px!important;}
}

/* ui-fixes-v1322.css */
/* Retter-Portal v1.3.22 - einheitliches Portaldesign, größere Sidebar und saubere Markenführung. */

:root{
  --sidebar-width:332px!important;
  --rp22-radius-xl:28px;
  --rp22-radius-lg:22px;
  --rp22-radius-md:16px;
  --rp22-sidebar:#07111f;
  --rp22-sidebar-deep:#050c17;
  --rp22-panel:rgba(255,255,255,.82);
  --rp22-panel-strong:rgba(255,255,255,.94);
  --rp22-panel-soft:rgba(248,250,252,.70);
  --rp22-line:rgba(71,85,105,.18);
  --rp22-line-strong:rgba(71,85,105,.26);
  --rp22-shadow:0 24px 70px rgba(15,23,42,.12);
  --rp22-shadow-soft:0 12px 34px rgba(15,23,42,.09);
  --rp22-red:#e11d48;
  --rp22-red-bright:#f43f5e;
  --rp22-blue:#2563eb;
  --rp22-cyan:#0891b2;
}

body[data-theme="dark"]{
  --rp22-panel:rgba(11,24,42,.86);
  --rp22-panel-strong:rgba(13,28,48,.94);
  --rp22-panel-soft:rgba(10,21,37,.74);
  --rp22-line:rgba(148,163,184,.14);
  --rp22-line-strong:rgba(148,163,184,.22);
  --rp22-shadow:0 26px 78px rgba(0,0,0,.32);
  --rp22-shadow-soft:0 14px 38px rgba(0,0,0,.24);
  --bg:#06101c;
  --bg2:#09182a;
  --surface:var(--rp22-panel);
  --surface-2:var(--rp22-panel-strong);
  --line:#22344a;
  --line-soft:rgba(148,163,184,.09);
  --text:#f4f7fb;
  --muted:#a9b6c8;
  --muted-2:#73849b;
}

html body{
  background:
    radial-gradient(circle at 6% -8%,rgba(225,29,72,.16),transparent 31rem),
    radial-gradient(circle at 92% 4%,rgba(37,99,235,.18),transparent 37rem),
    radial-gradient(circle at 58% 108%,rgba(8,145,178,.12),transparent 42rem),
    linear-gradient(145deg,var(--bg),var(--bg2))!important;
  background-attachment:fixed!important;
}
html body::before{
  opacity:.36!important;
  background-size:58px 58px!important;
  mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.72) 52%,transparent 94%)!important;
}

/* Grundaufbau: Sidebar und Hauptbereich wirken als zusammengehörige Anwendung. */
html body .app-shell{
  grid-template-columns:var(--sidebar-width) minmax(0,1fr)!important;
  min-height:100dvh!important;
}
html body .main{
  min-width:0!important;
  margin-left:var(--sidebar-width)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 24rem)!important;
}
html body .app-shell--navigation-disabled .main{margin-left:0!important;}
html body .content{
  width:min(1720px,100%)!important;
  padding:30px clamp(24px,2.25vw,42px) 42px!important;
  overflow-x:clip!important;
}

/* Markenbereich: echtes Signet statt kleinem, doppelt beschriftetem Komplettlogo. */
html body .sidebar{
  width:var(--sidebar-width)!important;
  max-width:var(--sidebar-width)!important;
  padding:18px 16px 24px!important;
  background:
    radial-gradient(circle at 18% -6%,rgba(225,29,72,.18),transparent 24rem),
    radial-gradient(circle at 110% 34%,rgba(37,99,235,.10),transparent 22rem),
    linear-gradient(180deg,var(--rp22-sidebar) 0%,#081526 48%,var(--rp22-sidebar-deep) 100%)!important;
  border-right:1px solid rgba(148,163,184,.15)!important;
  box-shadow:22px 0 64px rgba(2,6,23,.28)!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(148,163,184,.30) transparent!important;
}
html body .sidebar .brand{
  min-height:92px!important;
  margin:0 3px 18px!important;
  padding:8px 8px 20px!important;
  gap:15px!important;
  align-items:center!important;
  border-bottom:1px solid rgba(148,163,184,.14)!important;
  overflow:visible!important;
}
html body .sidebar .brand-logo-wrap{
  position:relative!important;
  width:64px!important;
  min-width:64px!important;
  height:64px!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
  border:0!important;
  border-radius:19px!important;
  background:
    radial-gradient(circle at 48% 38%,rgba(244,63,94,.19),transparent 62%),
    rgba(255,255,255,.035)!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.075),
    0 15px 34px rgba(2,6,23,.34),
    0 0 28px rgba(225,29,72,.10)!important;
}
html body .sidebar .brand-logo-wrap::after{
  content:""!important;
  position:absolute!important;
  inset:-7px!important;
  z-index:-1!important;
  border-radius:24px!important;
  background:radial-gradient(circle,rgba(225,29,72,.13),transparent 68%)!important;
}
html body .sidebar .brand-logo{
  width:54px!important;
  height:54px!important;
  max-width:54px!important;
  max-height:54px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 10px 18px rgba(0,0,0,.30))!important;
}
html body .sidebar .brand-text{
  min-width:0!important;
  color:#f8fafc!important;
  font-size:1.22rem!important;
  line-height:1.06!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
  white-space:normal!important;
}
html body .sidebar .brand-text small,
html body .sidebar .brand-context{
  margin-top:7px!important;
  color:#899ab0!important;
  font-size:.67rem!important;
  line-height:1.25!important;
  letter-spacing:.12em!important;
}

/* Navigation: größer, besser lesbar und proportional zum Inhaltsbereich. */
html body .sidebar .sidebar-nav{
  gap:3px!important;
}
html body .sidebar .nav-section{
  margin:20px 11px 9px!important;
  gap:12px!important;
  color:#71839b!important;
  font-size:.68rem!important;
  letter-spacing:.17em!important;
}
html body .sidebar .nav-section::after{
  background:linear-gradient(90deg,rgba(148,163,184,.20),transparent)!important;
}
html body .sidebar nav a.sidebar-nav-link{
  min-height:50px!important;
  margin:1px 0!important;
  padding:11px 13px!important;
  gap:13px!important;
  border-radius:15px!important;
  color:#cbd6e5!important;
  font-size:.97rem!important;
  line-height:1.25!important;
  font-weight:830!important;
}
html body .sidebar nav a.sidebar-nav-link:hover{
  background:rgba(255,255,255,.06)!important;
  border-color:rgba(148,163,184,.14)!important;
  transform:translateX(2px)!important;
}
html body .sidebar nav a.sidebar-nav-link.active{
  background:
    linear-gradient(90deg,rgba(225,29,72,.22),rgba(30,41,59,.42) 62%,rgba(37,99,235,.08))!important;
  border-color:rgba(251,113,133,.26)!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.018),
    0 13px 32px rgba(2,6,23,.22),
    0 0 30px rgba(225,29,72,.06)!important;
}
html body .sidebar nav a.sidebar-nav-link.active::before{
  top:9px!important;
  bottom:9px!important;
  width:4px!important;
  background:linear-gradient(180deg,#fb7185,#e11d48)!important;
  box-shadow:0 0 18px rgba(244,63,94,.62)!important;
}
html body .sidebar .sidebar-nav-icon{
  width:24px!important;
  min-width:24px!important;
  height:24px!important;
  color:#8ea0b8!important;
}
html body .sidebar .sidebar-nav-icon svg{
  width:22px!important;
  height:22px!important;
  stroke-width:1.8!important;
}
html body .sidebar nav a.sidebar-nav-link.active .sidebar-nav-icon{
  color:#fb7185!important;
}
html body .sidebar .nav-count{
  min-width:28px!important;
  height:24px!important;
  padding-inline:8px!important;
  background:rgba(148,163,184,.20)!important;
  font-size:.71rem!important;
}

/* Topbar übernimmt dieselbe ruhige, dunkle Produktsprache. */
html body .topbar{
  min-height:76px!important;
  padding:13px clamp(22px,2vw,36px)!important;
  background:rgba(7,16,28,.82)!important;
  border-bottom:1px solid rgba(148,163,184,.14)!important;
  box-shadow:0 14px 40px rgba(2,6,23,.16)!important;
  backdrop-filter:blur(24px) saturate(1.2)!important;
}
body[data-theme="light"] .topbar{
  background:rgba(248,250,252,.82)!important;
  border-bottom-color:rgba(71,85,105,.16)!important;
  box-shadow:0 12px 36px rgba(15,23,42,.08)!important;
}
html body .topbar-desktop-shell{
  width:100%!important;
  gap:18px!important;
}
html body .topbar-eyebrow{
  margin:0!important;
  color:#91a2b9!important;
  font-size:.72rem!important;
  letter-spacing:.16em!important;
}
body[data-theme="light"] .topbar-eyebrow{color:#64748b!important;}
html body .topbar-version{
  display:inline-flex!important;
  align-items:center!important;
  min-height:28px!important;
  padding:4px 9px!important;
  border:1px solid rgba(148,163,184,.17)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.055)!important;
  color:#e8eef7!important;
  font-size:.69rem!important;
  letter-spacing:0!important;
}
body[data-theme="light"] .topbar-version{background:#fff!important;color:#334155!important;border-color:rgba(71,85,105,.17)!important;}
html body .department-context-switch,
html body .department-context-static{
  min-height:47px!important;
  border:1px solid rgba(148,163,184,.17)!important;
  border-radius:15px!important;
  background:rgba(255,255,255,.035)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.025)!important;
}
body[data-theme="light"] .department-context-switch,
body[data-theme="light"] .department-context-static{background:rgba(255,255,255,.74)!important;border-color:rgba(71,85,105,.17)!important;}
html body .department-context-switch select,
html body .department-context-static strong{
  color:var(--text)!important;
  font-weight:900!important;
}
html body .theme-switch,
html body .topbar-account-info,
html body .topbar-logout .btn{
  min-height:44px!important;
  border-color:rgba(148,163,184,.16)!important;
  background:rgba(255,255,255,.04)!important;
  box-shadow:none!important;
}
body[data-theme="light"] .theme-switch,
body[data-theme="light"] .topbar-account-info,
body[data-theme="light"] .topbar-logout .btn{background:rgba(255,255,255,.82)!important;border-color:rgba(71,85,105,.16)!important;}
html body .topbar-role-badge{
  border-color:rgba(251,113,133,.28)!important;
  background:rgba(225,29,72,.12)!important;
  color:#fda4af!important;
}
body[data-theme="light"] .topbar-role-badge{color:#be123c!important;background:#fff1f2!important;}

/* Inhaltsflächen: ein Designsystem statt einzelner, unterschiedlich wirkender Kästen. */
html body .content > .page-head,
html body .content > .page-hero{
  position:relative!important;
  isolation:isolate!important;
  min-height:188px!important;
  margin-bottom:22px!important;
  padding:32px clamp(28px,3vw,46px)!important;
  border:1px solid var(--rp22-line)!important;
  border-radius:var(--rp22-radius-xl)!important;
  background:
    radial-gradient(circle at 92% 8%,rgba(37,99,235,.17),transparent 25rem),
    radial-gradient(circle at 3% 0,rgba(225,29,72,.13),transparent 21rem),
    linear-gradient(135deg,var(--rp22-panel-strong),var(--rp22-panel-soft))!important;
  box-shadow:var(--rp22-shadow)!important;
  backdrop-filter:blur(20px) saturate(1.12)!important;
  overflow:hidden!important;
}
html body .content > .page-head::before,
html body .content > .page-hero::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  border-radius:inherit!important;
  background:linear-gradient(110deg,rgba(255,255,255,.045),transparent 40%,rgba(37,99,235,.035))!important;
  pointer-events:none!important;
}
html body .content > .page-head::after,
html body .content > .page-hero::after{
  content:""!important;
  position:absolute!important;
  right:-120px!important;
  bottom:-185px!important;
  width:380px!important;
  height:380px!important;
  border-radius:50%!important;
  background:radial-gradient(circle,rgba(37,99,235,.15),transparent 66%)!important;
  pointer-events:none!important;
}
html body .content > .page-head h1,
html body .content > .page-hero h1{
  font-size:clamp(2.45rem,3.2vw,4.05rem)!important;
  line-height:.98!important;
  letter-spacing:-.065em!important;
}
html body .content > .page-head .eyebrow,
html body .content > .page-hero .eyebrow{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  margin-bottom:11px!important;
  color:#f87171!important;
  font-size:.7rem!important;
  letter-spacing:.17em!important;
}
html body .content > .page-head .muted,
html body .content > .page-hero .muted{
  max-width:900px!important;
  margin:13px 0 0!important;
  color:var(--muted)!important;
  font-size:1rem!important;
  line-height:1.6!important;
  font-weight:720!important;
}
html body .content > .page-head > .btn,
html body .content > .page-head .actions .btn,
html body .content > .page-hero > .btn,
html body .content > .page-hero .actions .btn{
  min-height:50px!important;
  padding-inline:20px!important;
  border-radius:15px!important;
}

html body .card,
html body .stat-card,
html body .toolbar,
html body .pagination,
html body .portal-footer,
html body .content > .card,
html body .content > section.card,
html body .content > div.card{
  border:1px solid var(--rp22-line)!important;
  border-radius:var(--rp22-radius-lg)!important;
  background:linear-gradient(145deg,var(--rp22-panel),var(--rp22-panel-soft))!important;
  box-shadow:var(--rp22-shadow-soft)!important;
  backdrop-filter:blur(18px) saturate(1.08)!important;
}
html body .card,
html body .content > .card,
html body .content > section.card,
html body .content > div.card{
  padding:22px!important;
}
html body .card-head{
  padding-bottom:15px!important;
  margin-bottom:18px!important;
  border-bottom:1px solid var(--rp22-line)!important;
}
html body .card-head h2,
html body .card-head h3{
  letter-spacing:-.035em!important;
}

/* Filterleisten. */
html body .content > .toolbar,
html body form.toolbar{
  gap:12px!important;
  margin-bottom:18px!important;
  padding:16px!important;
  border-radius:22px!important;
}
html body .toolbar::before{content:none!important;display:none!important;}
html body input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]):not([type="range"]),
html body select,
html body textarea,
html body .smart-select-trigger{
  min-height:46px!important;
  border:1px solid var(--rp22-line-strong)!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.58)!important;
  color:var(--text)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.10)!important;
}
body[data-theme="dark"] input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]):not([type="range"]),
body[data-theme="dark"] select,
body[data-theme="dark"] textarea,
body[data-theme="dark"] .smart-select-trigger{
  background:rgba(3,12,24,.52)!important;
  border-color:rgba(148,163,184,.17)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.025)!important;
}
html body input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]):not([type="range"]):focus,
html body select:focus,
html body textarea:focus,
html body .smart-select-trigger:focus{
  border-color:rgba(244,63,94,.58)!important;
  outline:3px solid rgba(244,63,94,.11)!important;
  box-shadow:0 0 0 1px rgba(244,63,94,.07)!important;
}
html body input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]):not([type="range"])::placeholder,
html body textarea::placeholder{color:color-mix(in srgb,var(--muted) 74%,transparent)!important;}

/* Buttons: Rot als klare Primäraktion, neutrale Aktionen bleiben ruhig. */
html body .btn{
  min-height:44px!important;
  padding:10px 15px!important;
  border:1px solid var(--rp22-line-strong)!important;
  border-radius:13px!important;
  background:rgba(255,255,255,.64)!important;
  color:var(--text)!important;
  box-shadow:none!important;
  font-weight:900!important;
}
body[data-theme="dark"] .btn{background:rgba(17,32,53,.76)!important;}
html body .btn:hover{
  transform:translateY(-1px)!important;
  border-color:rgba(148,163,184,.34)!important;
  box-shadow:0 12px 28px rgba(2,6,23,.16)!important;
}
html body .btn.primary{
  border-color:rgba(251,113,133,.42)!important;
  background:linear-gradient(135deg,var(--rp22-red-bright),#d70b39)!important;
  color:#fff!important;
  box-shadow:0 14px 32px rgba(225,29,72,.24)!important;
}
html body .btn.primary:hover{
  box-shadow:0 18px 40px rgba(225,29,72,.31)!important;
}

/* Tabellen: sauberer Kopf, einzelne Kontur und ruhigere Zeilen. */
html body .content > .card.table-wrap,
html body .content > section.card.table-wrap,
html body .content > div.card.table-wrap,
html body .table-wrap.data-table-card{
  padding:0!important;
  overflow:auto!important;
  border-radius:var(--rp22-radius-lg)!important;
  background:linear-gradient(145deg,var(--rp22-panel),var(--rp22-panel-soft))!important;
  box-shadow:var(--rp22-shadow-soft)!important;
}
html body .content > .card.table-wrap::before,
html body .content > .card.table-wrap::after,
html body .content > section.card.table-wrap::before,
html body .content > section.card.table-wrap::after,
html body .content > div.card.table-wrap::before,
html body .content > div.card.table-wrap::after,
html body .table-wrap.data-table-card::before,
html body .table-wrap.data-table-card::after{
  content:none!important;
  display:none!important;
}
html body table{
  width:100%!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  background:transparent!important;
}
html body table thead,
html body table thead tr{
  background:rgba(71,85,105,.10)!important;
}
body[data-theme="dark"] table thead,
body[data-theme="dark"] table thead tr{
  background:rgba(51,65,85,.34)!important;
}
html body table th{
  padding:15px 16px!important;
  border-bottom:1px solid var(--rp22-line)!important;
  color:var(--muted-2)!important;
  font-size:.69rem!important;
  line-height:1.2!important;
  font-weight:950!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
html body table td{
  padding:16px!important;
  border-bottom:1px solid color-mix(in srgb,var(--rp22-line) 74%,transparent)!important;
  color:var(--text)!important;
  vertical-align:middle!important;
}
html body table tbody tr:last-child td{border-bottom:0!important;}
html body table tbody tr:hover td{background:rgba(37,99,235,.035)!important;}
body[data-theme="dark"] table tbody tr:hover td{background:rgba(59,130,246,.045)!important;}
html body .status,
html body .pill,
html body .role{
  border:1px solid var(--rp22-line)!important;
  border-radius:999px!important;
  box-shadow:none!important;
}

/* Seitennavigation und Footer. */
html body .pagination{
  min-height:64px!important;
  margin-top:18px!important;
  padding:14px 18px!important;
}
html body .content > .portal-footer,
html body .app-shell .content > .portal-footer{
  margin-top:28px!important;
  padding:20px!important;
  border-radius:22px!important;
  box-shadow:none!important;
}
html body .portal-footer-brand strong{
  font-size:1rem!important;
  letter-spacing:-.025em!important;
}
html body .portal-footer-brand span{
  color:var(--muted)!important;
  font-size:.84rem!important;
}
html body .portal-footer-links a{
  min-height:36px!important;
  padding:8px 11px!important;
  border:1px solid var(--rp22-line)!important;
  border-radius:11px!important;
  background:rgba(255,255,255,.035)!important;
}

/* System- und Statusflächen folgen ebenfalls dem neuen Design. */
html body .v138-system-banners{
  padding:18px clamp(24px,2.25vw,42px) 0!important;
}
html body .v138-system-banner,
html body .flash{
  border-radius:17px!important;
  box-shadow:var(--rp22-shadow-soft)!important;
}
html body .dev-organization-chip,
html body .dev-organization-badge{
  border-color:rgba(251,113,133,.28)!important;
  background:rgba(225,29,72,.12)!important;
  color:#fda4af!important;
}
body[data-theme="light"] .dev-organization-chip,
body[data-theme="light"] .dev-organization-badge{color:#be123c!important;background:#fff1f2!important;}

/* Tablet: gleiche Gestaltung, aber kompakter und ohne horizontale Portalüberläufe. */
@media(max-width:1260px){
  :root{--sidebar-width:304px!important;}
  html body .sidebar{padding-inline:13px!important;}
  html body .sidebar .brand-text{font-size:1.16rem!important;}
  html body .sidebar .brand-context{font-size:.61rem!important;letter-spacing:.085em!important;overflow-wrap:anywhere!important;}
  html body .sidebar nav a.sidebar-nav-link{font-size:.93rem!important;gap:11px!important;}
  html body .content{padding-inline:24px!important;}
  html body .content > .page-head,
  html body .content > .page-hero{padding:28px!important;min-height:174px!important;}
}

@media(max-width:1100px){
  :root{--sidebar-width:336px!important;}
  html body .app-shell{display:block!important;}
  html body .sidebar{
    position:fixed!important;
    inset:0 auto 0 0!important;
    z-index:50!important;
    width:min(90vw,var(--sidebar-width))!important;
    max-width:min(90vw,var(--sidebar-width))!important;
    transform:translateX(-106%)!important;
    transition:transform .22s ease!important;
    padding-top:calc(15px + env(safe-area-inset-top))!important;
  }
  html body.sidebar-open .sidebar{transform:translateX(0)!important;}
  html body .main{margin-left:0!important;width:100%!important;max-width:100%!important;}
  html body .app-shell--navigation-disabled .main{margin-left:0!important;}
  html body .topbar{min-height:0!important;padding:10px 14px!important;}
  html body .topbar .topbar-desktop-shell{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    grid-template-areas:"menu brand actions" "context context context"!important;
    align-items:center!important;
    gap:10px 12px!important;
  }
  html body .topbar .topbar-tablet-menu{grid-area:menu!important;position:static!important;inset:auto!important;display:inline-grid!important;place-items:center!important;width:44px!important;height:44px!important;border:1px solid rgba(148,163,184,.17)!important;border-radius:13px!important;background:rgba(255,255,255,.045)!important;color:var(--text)!important;}
  html body .topbar .topbar-title{grid-area:brand!important;min-width:0!important;}
  html body .topbar .topbar-context{grid-area:context!important;width:100%!important;}
  html body .topbar .topbar-actions{grid-area:actions!important;justify-self:end!important;}
  html body .department-context-switch,html body .department-context-static{width:100%!important;max-width:100%!important;}
  html body .content{padding:20px 18px 32px!important;}
  html body .v138-system-banners{padding:16px 18px 0!important;}
}


@media(max-width:860px){
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap){
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  html body .app-shell .main .content table thead,
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table thead{display:none!important;}
  html body .app-shell .main .content table tbody{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
  }
  html body .app-shell .main .content table tr{
    display:block!important;
    width:100%!important;
    padding:16px!important;
    border:1px solid var(--rp22-line)!important;
    border-radius:20px!important;
    background:linear-gradient(145deg,var(--rp22-panel),var(--rp22-panel-soft))!important;
    box-shadow:var(--rp22-shadow-soft)!important;
    overflow:hidden!important;
  }
  html body .app-shell .main .content table td,
  html body .app-shell .main .content table td: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(--rp22-line)!important;
    background:transparent!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
  }
  html body .app-shell .main .content table td:last-child{border-bottom:0!important;}
}

@media(max-width:760px){
  html body .topbar .topbar-desktop-shell{display:none!important;}
  html body .rp-mobile-header{display:grid!important;}
  html body .content{padding:14px 12px 28px!important;}
  html body .content > .page-head,
  html body .content > .page-hero{
    min-height:0!important;
    padding:22px 19px!important;
    border-radius:22px!important;
    gap:18px!important;
  }
  html body .content > .page-head h1,
  html body .content > .page-hero h1{font-size:clamp(2.05rem,10vw,3rem)!important;}
  html body .content > .page-head .muted,
  html body .content > .page-hero .muted{font-size:.94rem!important;line-height:1.55!important;}
  html body .content > .page-head > .btn,
  html body .content > .page-head .actions,
  html body .content > .page-head .actions .btn,
  html body .content > .page-hero > .btn,
  html body .content > .page-hero .actions,
  html body .content > .page-hero .actions .btn{width:100%!important;}
  html body .content > .toolbar,
  html body form.toolbar{padding:12px!important;border-radius:18px!important;}
  html body .toolbar input,
  html body .toolbar select,
  html body .toolbar .btn,
  html body .toolbar button{width:100%!important;flex:1 1 100%!important;}
  html body .card,
  html body .content > .card,
  html body .content > section.card,
  html body .content > div.card{padding:17px!important;border-radius:19px!important;}
  html body .content > .card.table-wrap,
  html body .content > section.card.table-wrap,
  html body .content > div.card.table-wrap{padding:0!important;border:0!important;border-radius:19px!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;}
  html body table th,html body table td{padding:12px!important;}
  html body table th,html body table td{padding:12px!important;}
  html body .pagination{border-radius:18px!important;}
  html body .rp-mobile-header{
    border:1px solid rgba(148,163,184,.14)!important;
    border-radius:18px!important;
    background:rgba(7,16,28,.74)!important;
    box-shadow:0 12px 34px rgba(2,6,23,.18)!important;
  }
  body[data-theme="light"] .rp-mobile-header{background:rgba(248,250,252,.86)!important;}
}

@media(max-width:430px){
  :root{--sidebar-width:326px!important;}
  html body .sidebar .brand{min-height:82px!important;gap:12px!important;padding-inline:4px!important;}
  html body .sidebar .brand-logo-wrap{width:56px!important;min-width:56px!important;height:56px!important;}
  html body .sidebar .brand-logo{width:47px!important;height:47px!important;max-width:47px!important;max-height:47px!important;}
  html body .sidebar .brand-text{font-size:1.12rem!important;}
  html body .sidebar nav a.sidebar-nav-link{min-height:49px!important;font-size:.94rem!important;}
  html body .portal-footer-links{display:grid!important;grid-template-columns:1fr!important;}
  html body .portal-footer-links a{width:100%!important;justify-content:center!important;text-align:center!important;}
}

@media(prefers-reduced-motion:reduce){
  html body .sidebar,
  html body .btn,
  html body .sidebar nav a.sidebar-nav-link{transition:none!important;}
}

/* ui-fixes-v1323.css */
/* Retter-Portal v1.3.23 · ausgewogene Sidebar, kompakter Header und Wasserversorgungs-Freigaben */
:root{
  --sidebar-width:258px!important;
  --rp23-sidebar:#07111f;
  --rp23-sidebar-deep:#050c17;
  --rp23-panel:rgba(10,23,40,.88);
  --rp23-panel-strong:rgba(12,27,47,.96);
  --rp23-line:rgba(148,163,184,.14);
  --rp23-line-strong:rgba(148,163,184,.22);
  --rp23-shadow:0 18px 48px rgba(0,0,0,.24);
}

/* Sidebar: schmaler, aber deutlich besser lesbar. */
html body .app-shell{grid-template-columns:var(--sidebar-width) minmax(0,1fr)!important;}
html body .main{margin-left:var(--sidebar-width)!important;}
html body .app-shell--navigation-disabled .main{margin-left:0!important;}
html body .sidebar{
  width:var(--sidebar-width)!important;
  max-width:var(--sidebar-width)!important;
  padding:13px 10px 20px!important;
  background:
    radial-gradient(circle at 8% -5%,rgba(225,29,72,.18),transparent 21rem),
    radial-gradient(circle at 112% 32%,rgba(37,99,235,.10),transparent 20rem),
    linear-gradient(180deg,var(--rp23-sidebar),#081526 48%,var(--rp23-sidebar-deep))!important;
}
html body .sidebar .brand{
  min-height:76px!important;
  margin:0 2px 12px!important;
  padding:4px 7px 15px!important;
  gap:11px!important;
  border-bottom:1px solid rgba(148,163,184,.13)!important;
}
html body .sidebar .brand-logo-wrap{
  width:54px!important;
  min-width:54px!important;
  height:54px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
html body .sidebar .brand-logo-wrap::after{display:none!important;}
html body .sidebar .brand-logo-wrap::before{display:none!important;}
html body .sidebar .brand-logo.logo-light,
html body .sidebar .brand-logo.logo-dark{position:static!important;inset:auto!important;margin:0!important;}
html body .sidebar .brand-logo{
  width:54px!important;
  height:54px!important;
  max-width:54px!important;
  max-height:54px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 10px 20px rgba(0,0,0,.34))!important;
}
html body .sidebar .brand-text{
  font-size:1.22rem!important;
  line-height:1.08!important;
  font-weight:950!important;
  letter-spacing:-.025em!important;
}
html body .sidebar .brand-text small,
html body .sidebar .brand-context{
  margin-top:5px!important;
  font-size:.66rem!important;
  line-height:1.25!important;
  letter-spacing:.105em!important;
}
html body .sidebar .nav-section{
  margin:15px 9px 7px!important;
  font-size:.7rem!important;
  letter-spacing:.145em!important;
}
html body .sidebar nav a.sidebar-nav-link{
  min-height:46px!important;
  margin:1px 0!important;
  padding:9px 11px!important;
  gap:11px!important;
  border-radius:13px!important;
  font-size:16.25px!important;
  line-height:1.2!important;
  font-weight:820!important;
}
html body .sidebar .sidebar-nav-icon{
  width:23px!important;
  min-width:23px!important;
  height:23px!important;
}
html body .sidebar .sidebar-nav-icon svg{width:21px!important;height:21px!important;stroke-width:1.9!important;}
html body .sidebar .sidebar-nav-label{min-width:0!important;overflow-wrap:anywhere!important;}
html body .sidebar .nav-count{min-width:27px!important;height:23px!important;font-size:.72rem!important;padding-inline:7px!important;}

/* Header kompakter und optisch an die Sidebar angelehnt. */
html body .topbar{
  min-height:58px!important;
  padding:7px clamp(16px,1.5vw,24px)!important;
  background:rgba(7,16,28,.88)!important;
  border-bottom:1px solid rgba(148,163,184,.13)!important;
  box-shadow:0 10px 30px rgba(2,6,23,.15)!important;
}
html body .topbar-desktop-shell{gap:13px!important;}
html body .topbar-version{min-height:25px!important;padding:3px 8px!important;font-size:.66rem!important;}
html body .department-context-switch,
html body .department-context-static{min-height:38px!important;border-radius:12px!important;}
html body .theme-switch,
html body .topbar-account-info,
html body .topbar-logout .btn{min-height:36px!important;}
html body .topbar-role-badge{padding:6px 9px!important;font-size:.7rem!important;}

/* Der restliche Portalbereich erhält dieselbe ruhige, tiefblaue Produktsprache. */
html body .content{padding:21px clamp(18px,1.8vw,30px) 34px!important;}
html body .content > .page-head,
html body .content > .page-hero{
  min-height:136px!important;
  padding:22px clamp(22px,2.2vw,33px)!important;
  border-radius:23px!important;
  border-color:var(--rp23-line)!important;
  background:
    radial-gradient(circle at 96% 0,rgba(37,99,235,.13),transparent 24rem),
    radial-gradient(circle at 0 0,rgba(225,29,72,.09),transparent 20rem),
    linear-gradient(145deg,var(--rp23-panel-strong),rgba(8,20,36,.78))!important;
  box-shadow:var(--rp23-shadow)!important;
}
html body .content > .page-head h1,
html body .content > .page-hero h1{font-size:clamp(2.2rem,2.75vw,3.25rem)!important;letter-spacing:-.055em!important;}
html body .content > .page-head .eyebrow,
html body .content > .page-hero .eyebrow,
html body .card .eyebrow{
  display:block!important;
  width:auto!important;
  max-width:max-content!important;
  margin:0 0 9px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#fb7185!important;
  font-size:.72rem!important;
  letter-spacing:.15em!important;
}
html body .content > .page-head .muted,
html body .content > .page-hero .muted{margin-top:9px!important;font-size:.95rem!important;}
html body .content > .page-head .actions .btn,
html body .content > .page-hero .actions .btn{min-height:46px!important;border-radius:13px!important;}

html body .card,
html body .stat-card,
html body .toolbar,
html body .pagination,
html body .portal-footer{
  border-color:var(--rp23-line)!important;
  background:linear-gradient(145deg,rgba(10,23,40,.91),rgba(8,19,34,.76))!important;
  box-shadow:0 14px 38px rgba(0,0,0,.20)!important;
}
html body .card{border-radius:20px!important;}
html body .toolbar{border-radius:19px!important;}
html body .table-wrap{border-color:rgba(148,163,184,.12)!important;border-radius:15px!important;}
html body table thead th{background:rgba(148,163,184,.095)!important;}
html body input,
html body select,
html body textarea{background:rgba(4,13,25,.58)!important;border-color:rgba(148,163,184,.16)!important;}
html body .btn{box-shadow:none!important;border-color:rgba(148,163,184,.17)!important;background:rgba(255,255,255,.035)!important;}
html body .btn.primary{background:linear-gradient(135deg,#ef294f,#c8102e)!important;box-shadow:0 12px 28px rgba(225,29,72,.20)!important;}

/* Dateispeicher */
html body .file-upload-limit{display:block!important;margin-top:2px!important;font-size:.79rem!important;line-height:1.45!important;}

/* Wasserversorgung: Quelle, Freigaben und vollständige Filterleiste. */
html body .water-origin-toggle{
  display:grid!important;
  grid-template-columns:auto repeat(3,max-content)!important;
  align-items:center!important;
  gap:7px!important;
  overflow:visible!important;
}
html body .water-origin-toggle .btn{min-width:74px!important;white-space:nowrap!important;}
html body .water-origin-badge,
html body .water-release-badge{
  display:inline-flex!important;
  align-items:center!important;
  min-height:23px!important;
  margin-top:5px!important;
  padding:4px 8px!important;
  border-radius:999px!important;
  font-size:.7rem!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
  white-space:nowrap!important;
}
html body .water-origin-badge.foreign{background:rgba(245,158,11,.12)!important;border:1px solid rgba(245,158,11,.24)!important;color:#fbbf24!important;}
html body .water-origin-badge.own{background:rgba(16,185,129,.12)!important;border:1px solid rgba(16,185,129,.24)!important;color:#6ee7b7!important;}
html body .water-release-badge{margin-left:5px!important;background:rgba(59,130,246,.12)!important;border:1px solid rgba(59,130,246,.24)!important;color:#93c5fd!important;}
html body .water-detail-origin{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:4px!important;}
html body .water-readonly-notice{border-color:rgba(245,158,11,.24)!important;background:linear-gradient(145deg,rgba(66,42,9,.36),rgba(10,23,40,.84))!important;}
html body .water-readonly-notice p{margin:.45rem 0 0!important;}
html body .form-info-field{display:grid!important;gap:5px!important;padding:13px 14px!important;border:1px solid rgba(245,158,11,.22)!important;border-radius:14px!important;background:rgba(245,158,11,.07)!important;}
html body .form-info-field span{color:var(--muted)!important;font-size:.75rem!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.09em!important;}
html body .form-info-field small{color:var(--muted)!important;line-height:1.45!important;}

/* Admin-Freigabemaske */
html body .admin-water-filter{grid-template-columns:1.25fr 1fr 1fr .8fr!important;}
html body .admin-water-bulk-form{display:grid!important;grid-template-columns:minmax(240px,420px) auto!important;justify-content:start!important;}
html body .admin-water-source-list{display:grid!important;gap:11px!important;}
html body .admin-water-source-row{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(250px,360px)!important;gap:18px!important;padding:17px!important;border:1px solid rgba(148,163,184,.13)!important;border-radius:16px!important;background:rgba(4,13,25,.34)!important;}
html body .admin-water-source-title{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;}
html body .admin-water-source-main p{margin:7px 0 2px!important;}
html body .admin-water-source-main small{color:var(--muted)!important;}
html body .admin-water-source-actions{display:grid!important;gap:9px!important;align-content:start!important;}
html body .admin-water-source-actions form{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;}
html body .admin-water-release-list{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin-top:11px!important;}
html body .admin-water-release-chip{display:inline-flex!important;align-items:center!important;gap:7px!important;padding:5px 7px 5px 10px!important;border:1px solid rgba(59,130,246,.23)!important;border-radius:999px!important;background:rgba(59,130,246,.10)!important;color:#bfdbfe!important;font-size:.75rem!important;font-weight:850!important;}
html body .admin-water-release-chip button{width:22px!important;height:22px!important;padding:0!important;border:0!important;border-radius:50%!important;background:rgba(255,255,255,.08)!important;color:inherit!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"] .portal-footer,
body[data-theme="light"] .content > .page-head,
body[data-theme="light"] .content > .page-hero{background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(245,249,253,.82))!important;border-color:rgba(71,85,105,.17)!important;box-shadow:0 14px 38px rgba(15,23,42,.08)!important;}
body[data-theme="light"] input,
body[data-theme="light"] select,
body[data-theme="light"] textarea{background:rgba(255,255,255,.86)!important;border-color:rgba(71,85,105,.17)!important;}
body[data-theme="light"] .admin-water-source-row{background:rgba(248,250,252,.82)!important;border-color:rgba(71,85,105,.15)!important;}

@media(max-width:1260px){
  :root{--sidebar-width:248px!important;}
  html body .sidebar nav a.sidebar-nav-link{font-size:15.75px!important;}
  html body .content{padding-inline:20px!important;}
  html body .admin-water-filter{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

@media(max-width:1100px){
  :root{--sidebar-width:306px!important;}
  html body .main{margin-left:0!important;}
  html body .sidebar{width:min(90vw,var(--sidebar-width))!important;max-width:min(90vw,var(--sidebar-width))!important;}
  html body .topbar{padding:8px 13px!important;}
  html body .content{padding:18px 16px 30px!important;}
  html body .admin-water-source-row{grid-template-columns:1fr!important;}
}

@media(max-width:760px){
  html body .content > .page-head,
  html body .content > .page-hero{padding:20px 17px!important;border-radius:20px!important;}
  html body .content > .page-head h1,
  html body .content > .page-hero h1{font-size:clamp(2rem,10vw,2.85rem)!important;}
  html body .water-origin-toggle{grid-template-columns:1fr 1fr 1fr!important;width:100%!important;}
  html body .water-origin-toggle>span{grid-column:1/-1!important;}
  html body .water-origin-toggle .btn{width:100%!important;min-width:0!important;}
  html body .admin-water-filter{grid-template-columns:1fr!important;}
  html body .admin-water-bulk-form{grid-template-columns:1fr!important;}
  html body .admin-water-source-actions form{grid-template-columns:1fr!important;}
}

@media(max-width:430px){
  :root{--sidebar-width:296px!important;}
  html body .sidebar .brand-logo-wrap,
  html body .sidebar .brand-logo{width:54px!important;min-width:54px!important;height:54px!important;max-width:54px!important;max-height:54px!important;}
  html body .sidebar nav a.sidebar-nav-link{font-size:15.75px!important;}
}

/* ui-fixes-v1324.css */
/* Retter-Portal v1.3.24 · größere Sidebar-Schrift, einheitliche Portalflächen und eindeutige DEV-Kennzeichnung */
:root{
  --sidebar-width:266px!important;
  --rp24-sidebar:#07111f;
  --rp24-sidebar-deep:#050c17;
  --rp24-surface:rgba(8,20,36,.84);
  --rp24-surface-strong:rgba(10,24,42,.95);
  --rp24-surface-soft:rgba(14,30,51,.72);
  --rp24-line:rgba(148,163,184,.145);
  --rp24-line-strong:rgba(148,163,184,.225);
  --rp24-highlight:rgba(255,255,255,.045);
  --rp24-shadow:0 18px 48px rgba(0,0,0,.23);
}

/* Sidebar: minimal breiter, größere Schrift und sauberer Markenbereich. */
html body .app-shell{grid-template-columns:var(--sidebar-width) minmax(0,1fr)!important;}
html body .main{margin-left:var(--sidebar-width)!important;}
html body .app-shell--navigation-disabled .main{margin-left:0!important;}
html body .sidebar{
  width:var(--sidebar-width)!important;
  min-width:var(--sidebar-width)!important;
  max-width:var(--sidebar-width)!important;
  padding:13px 11px 20px!important;
  background:
    radial-gradient(circle at 5% -8%,rgba(225,29,72,.19),transparent 21rem),
    radial-gradient(circle at 114% 34%,rgba(37,99,235,.105),transparent 21rem),
    linear-gradient(180deg,var(--rp24-sidebar),#081526 48%,var(--rp24-sidebar-deep))!important;
}
html body .sidebar .brand{
  min-height:78px!important;
  margin:0 2px 13px!important;
  padding:4px 7px 15px!important;
  gap:12px!important;
  border-bottom:1px solid rgba(148,163,184,.13)!important;
}
html body .sidebar .brand-logo-wrap{
  width:56px!important;
  min-width:56px!important;
  height:56px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
html body .sidebar .brand-logo-wrap::before,
html body .sidebar .brand-logo-wrap::after{display:none!important;}
html body .sidebar .brand-logo.logo-light,
html body .sidebar .brand-logo.logo-dark{position:static!important;inset:auto!important;margin:0!important;}
html body .sidebar .brand-logo{
  width:56px!important;
  height:56px!important;
  max-width:56px!important;
  max-height:56px!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:drop-shadow(0 10px 20px rgba(0,0,0,.34))!important;
}
html body .sidebar .brand-text{
  min-width:0!important;
  font-size:1.25rem!important;
  line-height:1.08!important;
  font-weight:950!important;
  letter-spacing:-.026em!important;
}
html body .sidebar .brand-text small,
html body .sidebar .brand-context{
  display:block!important;
  margin-top:5px!important;
  font-size:.69rem!important;
  line-height:1.2!important;
  letter-spacing:.075em!important;
  white-space:nowrap!important;
}
html body .sidebar .nav-section{
  margin:16px 9px 7px!important;
  font-size:.73rem!important;
  letter-spacing:.14em!important;
}
html body .sidebar nav a.sidebar-nav-link{
  min-height:48px!important;
  margin:1px 0!important;
  padding:9px 11px!important;
  gap:12px!important;
  border-radius:13px!important;
  font-size:17.25px!important;
  line-height:1.18!important;
  font-weight:790!important;
  letter-spacing:-.012em!important;
}
html body .sidebar .sidebar-nav-icon{
  width:24px!important;
  min-width:24px!important;
  height:24px!important;
}
html body .sidebar .sidebar-nav-icon svg{width:22px!important;height:22px!important;stroke-width:1.95!important;}
html body .sidebar .sidebar-nav-label{min-width:0!important;overflow-wrap:normal!important;word-break:normal!important;}
html body .sidebar .nav-count{min-width:28px!important;height:24px!important;padding-inline:7px!important;font-size:.74rem!important;}

/* DEV wird nur noch oben im Header gezeigt, nicht zusätzlich in der Marke der Sidebar. */
html body .dev-organization-chip{
  min-height:28px!important;
  padding:5px 9px!important;
  border:1px solid rgba(251,113,133,.28)!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,rgba(225,29,72,.15),rgba(127,29,29,.10))!important;
  color:#fecdd3!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important;
  font-size:.69rem!important;
  font-weight:950!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}

/* Einheitliche Produktsprache: dieselbe Tiefe, Linien und Flächen wie in der Sidebar. */
html body{
  background:
    radial-gradient(circle at 17% -8%,rgba(225,29,72,.095),transparent 34rem),
    radial-gradient(circle at 91% 1%,rgba(37,99,235,.12),transparent 34rem),
    linear-gradient(135deg,#07101d,#0a1728)!important;
}
html body .content{padding:20px clamp(18px,1.8vw,29px) 34px!important;}
html body .content > .page-head,
html body .content > .page-hero,
html body .card,
html body .stat-card,
html body .toolbar,
html body .pagination,
html body .portal-footer,
html body .entity-card,
html body .detail-item,
html body .info-grid > div,
html body .admin-water-source-row{
  border:1px solid var(--rp24-line)!important;
  background:
    linear-gradient(180deg,var(--rp24-highlight),transparent 34%),
    radial-gradient(circle at 100% 0,rgba(37,99,235,.075),transparent 24rem),
    linear-gradient(145deg,var(--rp24-surface-strong),var(--rp24-surface))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),var(--rp24-shadow)!important;
}
html body .content > .page-head,
html body .content > .page-hero{
  min-height:126px!important;
  padding:21px clamp(22px,2.1vw,31px)!important;
  border-radius:18px!important;
}
html body .content > .page-head h1,
html body .content > .page-hero h1{
  font-size:clamp(2.15rem,2.55vw,3rem)!important;
  letter-spacing:-.052em!important;
}
html body .card{border-radius:17px!important;}
html body .stat-card{border-radius:16px!important;}
html body .toolbar{border-radius:16px!important;padding:14px!important;}
html body .pagination{border-radius:16px!important;}
html body .portal-footer{border-radius:17px!important;}
html body .table-wrap{
  overflow:hidden!important;
  border:1px solid var(--rp24-line)!important;
  border-radius:14px!important;
  background:rgba(5,14,27,.52)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 14px 36px rgba(0,0,0,.16)!important;
}
html body table{border-collapse:separate!important;border-spacing:0!important;}
html body table thead th{
  background:linear-gradient(180deg,rgba(34,51,75,.88),rgba(24,40,63,.86))!important;
  border-bottom:1px solid var(--rp24-line)!important;
  color:#aab8ca!important;
}
html body table tbody tr{background:rgba(8,20,36,.52)!important;}
html body table tbody tr:nth-child(even){background:rgba(13,28,48,.58)!important;}
html body table tbody tr:hover{background:rgba(28,47,73,.66)!important;}
html body table td{border-bottom-color:rgba(148,163,184,.09)!important;}
html body input,
html body select,
html body textarea{
  border:1px solid var(--rp24-line)!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,rgba(4,13,25,.78),rgba(6,17,31,.68))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
html body input:hover,
html body select:hover,
html body textarea:hover{border-color:var(--rp24-line-strong)!important;}
html body input:focus,
html body select:focus,
html body textarea:focus{
  border-color:rgba(251,113,133,.55)!important;
  box-shadow:0 0 0 3px rgba(225,29,72,.10),inset 0 1px 0 rgba(255,255,255,.03)!important;
}
html body .btn{
  border:1px solid var(--rp24-line)!important;
  border-radius:11px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.022))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}
html body .btn:hover{
  border-color:var(--rp24-line-strong)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.035))!important;
}
html body .btn.primary{
  border-color:rgba(251,113,133,.34)!important;
  background:linear-gradient(135deg,#ef294f,#c8102e)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 12px 28px rgba(225,29,72,.20)!important;
}
html body .pill,
html body .status,
html body .role{
  border:1px solid rgba(148,163,184,.16)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03)!important;
}
html body .flash,
html body .department-chip,
html body .form-info-field,
html body .water-readonly-notice{
  border-radius:14px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}

/* Heller Modus bleibt ebenfalls geschlossen und hochwertig. */
body[data-theme="light"]{
  background:
    radial-gradient(circle at 15% -8%,rgba(200,16,46,.075),transparent 34rem),
    radial-gradient(circle at 94% 0,rgba(37,99,235,.08),transparent 34rem),
    linear-gradient(135deg,#f4f7fb,#eaf0f7)!important;
}
body[data-theme="light"] .content > .page-head,
body[data-theme="light"] .content > .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"] .portal-footer,
body[data-theme="light"] .entity-card,
body[data-theme="light"] .detail-item,
body[data-theme="light"] .info-grid > div,
body[data-theme="light"] .admin-water-source-row{
  border-color:rgba(71,85,105,.16)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.78),transparent 38%),
    linear-gradient(145deg,rgba(255,255,255,.96),rgba(243,247,252,.88))!important;
  box-shadow:inset 0 1px 0 #fff,0 16px 38px rgba(15,23,42,.075)!important;
}
body[data-theme="light"] .table-wrap{background:rgba(255,255,255,.84)!important;border-color:rgba(71,85,105,.16)!important;}
body[data-theme="light"] table thead th{background:linear-gradient(180deg,#edf3fa,#e6edf6)!important;color:#536277!important;}
body[data-theme="light"] table tbody tr{background:rgba(255,255,255,.76)!important;}
body[data-theme="light"] table tbody tr:nth-child(even){background:rgba(243,247,252,.84)!important;}
body[data-theme="light"] table tbody tr:hover{background:#eef4fb!important;}
body[data-theme="light"] input,
body[data-theme="light"] select,
body[data-theme="light"] textarea{background:linear-gradient(180deg,#fff,#f8fafc)!important;border-color:rgba(71,85,105,.18)!important;}
body[data-theme="light"] .btn{background:linear-gradient(180deg,#fff,#f4f7fb)!important;border-color:rgba(71,85,105,.17)!important;}
body[data-theme="light"] .dev-organization-chip{color:#9f1239!important;background:linear-gradient(135deg,#fff1f2,#ffe4e6)!important;border-color:#fecdd3!important;}

@media(max-width:1260px){
  :root{--sidebar-width:258px!important;}
  html body .sidebar nav a.sidebar-nav-link{font-size:16.55px!important;}
}

@media(max-width:1100px){
  :root{--sidebar-width:310px!important;}
  html body .main{margin-left:0!important;}
  html body .sidebar{width:min(90vw,var(--sidebar-width))!important;min-width:min(90vw,var(--sidebar-width))!important;max-width:min(90vw,var(--sidebar-width))!important;}
  html body .sidebar nav a.sidebar-nav-link{font-size:17px!important;}
  html body .dev-organization-chip--mobile{justify-self:start!important;max-width:100%!important;}
}

@media(max-width:760px){
  html body .content > .page-head,
  html body .content > .page-hero{min-height:0!important;padding:19px 17px!important;border-radius:17px!important;}
  html body .card,
  html body .toolbar,
  html body .pagination,
  html body .portal-footer{border-radius:15px!important;}
}

@media(max-width:430px){
  :root{--sidebar-width:300px!important;}
  html body .sidebar nav a.sidebar-nav-link{font-size:16.6px!important;}
  html body .sidebar .brand-text{font-size:1.22rem!important;}
  html body .sidebar .brand-text small,
  html body .sidebar .brand-context{font-size:.67rem!important;letter-spacing:.065em!important;}
}

/* ui-fixes-v1325.css */
/* Retter-Portal v1.3.25 · lesbare Navigation, sauberer DEV-Status und durchgängig neue Portalflächen */
:root{
  --sidebar-width:284px!important;
  --rp25-sidebar:#06111f;
  --rp25-sidebar-deep:#040c17;
  --rp25-panel:#09192c;
  --rp25-panel-deep:#071425;
  --rp25-panel-soft:#0d2037;
  --rp25-line:rgba(148,163,184,.16);
  --rp25-line-strong:rgba(148,163,184,.25);
  --rp25-text:#f4f7fb;
  --rp25-muted:#9eacc0;
  --rp25-red:#ef3154;
  --rp25-shadow:0 18px 48px rgba(1,7,18,.26);
}

/* Sidebar – Text und Symbolik bewusst näher an der Größe des Inhalts. */
html body .app-shell{grid-template-columns:var(--sidebar-width) minmax(0,1fr)!important;}
html body .main{margin-left:var(--sidebar-width)!important;}
html body .app-shell--navigation-disabled .main{margin-left:0!important;}
html body .sidebar{
  width:var(--sidebar-width)!important;
  min-width:var(--sidebar-width)!important;
  max-width:var(--sidebar-width)!important;
  padding:14px 13px 22px!important;
  border-right:1px solid rgba(148,163,184,.15)!important;
  background:
    radial-gradient(circle at 0 -7%,rgba(225,29,72,.20),transparent 22rem),
    radial-gradient(circle at 115% 34%,rgba(37,99,235,.12),transparent 23rem),
    linear-gradient(180deg,var(--rp25-sidebar),#08172a 51%,var(--rp25-sidebar-deep))!important;
  box-shadow:12px 0 42px rgba(1,6,16,.20)!important;
}
html body .sidebar .brand{
  min-height:84px!important;
  margin:0 2px 14px!important;
  padding:4px 7px 16px!important;
  gap:13px!important;
  border-bottom:1px solid rgba(148,163,184,.14)!important;
}
html body .sidebar .brand-logo-wrap,
html body .sidebar .brand-logo{
  width:60px!important;
  min-width:60px!important;
  max-width:60px!important;
  height:60px!important;
  max-height:60px!important;
}
html body .sidebar .brand-logo-wrap{
  display:grid!important;
  place-items:center!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
html body .sidebar .brand-logo{
  object-fit:contain!important;
  object-position:center!important;
  filter:drop-shadow(0 10px 20px rgba(0,0,0,.36))!important;
}
html body .sidebar .brand-text{
  min-width:0!important;
  color:var(--rp25-text)!important;
  font-size:1.34rem!important;
  line-height:1.06!important;
  font-weight:950!important;
  letter-spacing:-.032em!important;
}
html body .sidebar .brand-text small,
html body .sidebar .brand-context{
  display:block!important;
  margin-top:6px!important;
  color:#9eacc0!important;
  font-size:.74rem!important;
  line-height:1.15!important;
  font-weight:900!important;
  letter-spacing:.064em!important;
  white-space:nowrap!important;
}
html body .sidebar .nav-section{
  margin:18px 10px 8px!important;
  color:#8999af!important;
  font-size:.79rem!important;
  font-weight:950!important;
  letter-spacing:.135em!important;
}
html body .sidebar nav a.sidebar-nav-link{
  min-height:51px!important;
  margin:2px 0!important;
  padding:10px 12px!important;
  gap:13px!important;
  border:1px solid transparent!important;
  border-radius:14px!important;
  color:#d8e1ed!important;
  font-size:19.25px!important;
  line-height:1.18!important;
  font-weight:790!important;
  letter-spacing:-.014em!important;
}
html body .sidebar nav a.sidebar-nav-link:hover{
  color:#fff!important;
  border-color:rgba(148,163,184,.12)!important;
  background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.022))!important;
}
html body .sidebar nav a.sidebar-nav-link.active{
  color:#fff!important;
  border-color:rgba(251,113,133,.28)!important;
  background:
    linear-gradient(90deg,rgba(225,29,72,.17),rgba(37,99,235,.075)),
    rgba(255,255,255,.025)!important;
  box-shadow:inset 3px 0 0 var(--rp25-red),inset 0 1px 0 rgba(255,255,255,.04),0 10px 24px rgba(0,0,0,.13)!important;
}
html body .sidebar .sidebar-nav-icon{
  width:26px!important;
  min-width:26px!important;
  height:26px!important;
  color:#9fb0c5!important;
}
html body .sidebar .sidebar-nav-icon svg{width:24px!important;height:24px!important;stroke-width:1.9!important;}
html body .sidebar nav a.sidebar-nav-link.active .sidebar-nav-icon{color:#fb7185!important;}
html body .sidebar .sidebar-nav-label{min-width:0!important;white-space:normal!important;word-break:normal!important;overflow-wrap:normal!important;}
html body .sidebar .nav-count{
  min-width:30px!important;
  height:25px!important;
  padding-inline:8px!important;
  border:1px solid rgba(148,163,184,.15)!important;
  background:rgba(148,163,184,.16)!important;
  font-size:.78rem!important;
}

/* Kompakter Header; DEV-Kennzeichnung sitzt sauber bei Produkt/Version statt am Organisationsfeld. */
html body .topbar{min-height:60px!important;padding:0!important;background:rgba(5,14,26,.93)!important;}
html body .topbar .topbar-desktop-shell{
  grid-template-columns:minmax(315px,auto) minmax(320px,560px) minmax(400px,1fr)!important;
  min-height:60px!important;
  padding:7px clamp(17px,1.5vw,24px)!important;
  gap:15px!important;
}
html body .topbar .topbar-desktop-shell .topbar-title{gap:10px!important;overflow:visible!important;}
html body .topbar .topbar-desktop-shell .topbar-context{justify-content:flex-start!important;}
html body .topbar .topbar-desktop-shell .department-context-switch,
html body .topbar .topbar-desktop-shell .department-context-static{
  min-height:40px!important;
  max-width:560px!important;
  border-radius:13px!important;
  background:linear-gradient(180deg,rgba(12,29,50,.90),rgba(7,20,36,.86))!important;
  border-color:var(--rp25-line)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
html body .topbar .topbar-desktop-shell .department-context-switch select{height:32px!important;min-height:32px!important;}
html body .dev-organization-chip{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  min-height:30px!important;
  padding:3px 9px 3px 4px!important;
  border:1px solid rgba(251,113,133,.25)!important;
  border-radius:10px!important;
  background:linear-gradient(135deg,rgba(225,29,72,.12),rgba(13,28,49,.90))!important;
  color:#ffdbe2!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
  font-size:.69rem!important;
  font-weight:900!important;
  letter-spacing:.035em!important;
  text-transform:none!important;
  white-space:nowrap!important;
}
html body .dev-organization-chip__code{
  display:inline-grid!important;
  place-items:center!important;
  min-width:34px!important;
  height:22px!important;
  padding-inline:6px!important;
  border-radius:7px!important;
  background:linear-gradient(135deg,#e11d48,#b90f32)!important;
  color:#fff!important;
  font-size:.66rem!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
}
html body .dev-organization-chip__label{color:#f8c7d1!important;font-size:.7rem!important;font-weight:900!important;}

/* Die komplette Portaloberfläche verwendet nun dieselbe Flächen- und Konturensprache wie die Sidebar. */
html body{
  background:
    radial-gradient(circle at 17% -10%,rgba(225,29,72,.10),transparent 35rem),
    radial-gradient(circle at 95% 0,rgba(37,99,235,.13),transparent 38rem),
    linear-gradient(135deg,#06101d,#0a182a 58%,#071524)!important;
}
html body .content{padding:20px clamp(18px,1.8vw,30px) 34px!important;}
html body .content > .page-head,
html body .content > .page-hero,
html body .card,
html body .toolbar,
html body .stat-card,
html body .pagination,
html body .portal-footer,
html body .form-subcard,
html body .detail-item,
html body .info-grid > div,
html body .entity-card,
html body .admin-panel,
html body .admin-card,
html body .admin-command-nav,
html body .admin-water-source-row,
html body .v138-filter-card,
html body .v138-task-card,
html body .billing-status-card{
  border:1px solid var(--rp25-line)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.038),transparent 34%),
    radial-gradient(circle at 100% 0,rgba(37,99,235,.085),transparent 26rem),
    linear-gradient(145deg,rgba(11,29,50,.96),rgba(7,20,36,.91))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),var(--rp25-shadow)!important;
}
html body .content > .page-head,
html body .content > .page-hero{
  position:relative!important;
  min-height:118px!important;
  padding:20px clamp(22px,2.05vw,32px)!important;
  border-radius:20px!important;
  overflow:hidden!important;
}
html body .content > .page-head::after,
html body .content > .page-hero::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  border-radius:inherit!important;
  background:linear-gradient(110deg,rgba(225,29,72,.055),transparent 29%,transparent 74%,rgba(37,99,235,.06))!important;
}
html body .content > .page-head > *,
html body .content > .page-hero > *{position:relative!important;z-index:1!important;}
html body .content > .page-head h1,
html body .content > .page-hero h1{font-size:clamp(2.05rem,2.45vw,2.85rem)!important;letter-spacing:-.05em!important;}
html body .content > .page-head .muted,
html body .content > .page-hero .muted{color:#9eacc0!important;}
html body .content :is(.page-head,.page-hero,.card) .eyebrow{
  display:block!important;
  width:auto!important;
  max-width:max-content!important;
  margin:0 0 9px!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#fb7185!important;
  font-size:.73rem!important;
  font-weight:950!important;
  letter-spacing:.15em!important;
}
html body .content :is(.page-head,.page-hero,.card) .eyebrow::before,
html body .content :is(.page-head,.page-hero,.card) .eyebrow::after{display:none!important;}
html body .card{border-radius:19px!important;}
html body .toolbar{padding:14px!important;border-radius:18px!important;gap:11px!important;}
html body .stat-card{border-radius:17px!important;}
html body .pagination{min-height:62px!important;border-radius:18px!important;}
html body .portal-footer{border-radius:18px!important;}
html body .card-head{border-bottom-color:rgba(148,163,184,.10)!important;}

/* Formfelder und Auswahlflächen wirken nicht mehr wie ein altes, separates Design. */
html body input,
html body select,
html body textarea,
html body .smart-person-picker,
html body .smart-select-field{
  border:1px solid var(--rp25-line)!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,rgba(5,16,30,.90),rgba(7,20,36,.82))!important;
  color:var(--rp25-text)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
html body input,
html body select{min-height:43px!important;}
html body input:hover,
html body select:hover,
html body textarea:hover{border-color:var(--rp25-line-strong)!important;}
html body input:focus,
html body select:focus,
html body textarea:focus{
  border-color:rgba(251,113,133,.52)!important;
  box-shadow:0 0 0 3px rgba(225,29,72,.11),inset 0 1px 0 rgba(255,255,255,.03)!important;
}
html body .btn{
  border:1px solid var(--rp25-line)!important;
  border-radius:11px!important;
  background:linear-gradient(180deg,rgba(20,40,65,.92),rgba(10,25,44,.90))!important;
  color:#f2f6fb!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}
html body .btn:hover{border-color:var(--rp25-line-strong)!important;background:linear-gradient(180deg,rgba(28,51,80,.96),rgba(13,31,53,.94))!important;}
html body .btn.primary{
  border-color:rgba(251,113,133,.34)!important;
  background:linear-gradient(135deg,#ef3154,#c8102e)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 12px 28px rgba(225,29,72,.20)!important;
}

/* Tabellen als echte Portalfläche statt alte flache Datenliste. */
html body .table-wrap,
html body .card.table-wrap{
  overflow:hidden!important;
  padding:0!important;
  border:1px solid var(--rp25-line)!important;
  border-radius:18px!important;
  background:linear-gradient(145deg,rgba(8,22,39,.97),rgba(6,17,31,.94))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 18px 44px rgba(1,7,18,.22)!important;
}
html body .card > .table-wrap{border-radius:14px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;}
html body table{border-collapse:separate!important;border-spacing:0!important;background:transparent!important;}
html body table thead th{
  padding-top:15px!important;
  padding-bottom:15px!important;
  border-bottom:1px solid rgba(148,163,184,.16)!important;
  background:
    linear-gradient(180deg,rgba(40,58,82,.78),rgba(24,42,66,.74))!important;
  color:#aebbd0!important;
  font-size:.72rem!important;
  letter-spacing:.105em!important;
}
html body table tbody tr{background:linear-gradient(90deg,rgba(10,25,43,.86),rgba(9,23,40,.78))!important;}
html body table tbody tr:nth-child(even){background:linear-gradient(90deg,rgba(14,31,52,.90),rgba(11,27,47,.82))!important;}
html body table tbody tr:hover{background:linear-gradient(90deg,rgba(28,48,75,.94),rgba(20,40,66,.88))!important;}
html body table td{padding-top:15px!important;padding-bottom:15px!important;border-bottom:1px solid rgba(148,163,184,.085)!important;}
html body table tbody tr:last-child td{border-bottom:0!important;}
html body table td strong{color:#f5f7fb!important;}
html body .pill,
html body .status,
html body .role{
  border:1px solid rgba(148,163,184,.17)!important;
  background:rgba(15,32,54,.82)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03)!important;
}

/* Eindeutige Freigabeinformation für zentrale Wasserentnahmestellen. */
html body .water-release-badge.organization{
  background:rgba(59,130,246,.12)!important;
  border-color:rgba(96,165,250,.27)!important;
  color:#bfdbfe!important;
}
html body .water-release-badge.operator{
  background:rgba(245,158,11,.12)!important;
  border-color:rgba(245,158,11,.28)!important;
  color:#fcd34d!important;
}

/* Heller Modus mit denselben Proportionen und klarer Flächenhierarchie. */
body[data-theme="light"] .content > .page-head,
body[data-theme="light"] .content > .page-hero,
body[data-theme="light"] .card,
body[data-theme="light"] .toolbar,
body[data-theme="light"] .stat-card,
body[data-theme="light"] .pagination,
body[data-theme="light"] .portal-footer,
body[data-theme="light"] .form-subcard,
body[data-theme="light"] .detail-item,
body[data-theme="light"] .info-grid > div,
body[data-theme="light"] .entity-card,
body[data-theme="light"] .admin-panel,
body[data-theme="light"] .admin-card{
  border-color:rgba(71,85,105,.17)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(242,247,252,.92))!important;
  box-shadow:inset 0 1px 0 #fff,0 16px 38px rgba(15,23,42,.08)!important;
}
body[data-theme="light"] .table-wrap,
body[data-theme="light"] .card.table-wrap{background:#f8fafc!important;border-color:rgba(71,85,105,.17)!important;}
body[data-theme="light"] table thead th{background:linear-gradient(180deg,#eaf0f7,#e3ebf4)!important;color:#536277!important;}
body[data-theme="light"] table tbody tr{background:rgba(255,255,255,.94)!important;}
body[data-theme="light"] table tbody tr:nth-child(even){background:rgba(242,246,251,.96)!important;}
body[data-theme="light"] table tbody tr:hover{background:#edf3fa!important;}
body[data-theme="light"] table td strong{color:#172033!important;}
body[data-theme="light"] input,
body[data-theme="light"] select,
body[data-theme="light"] textarea{background:linear-gradient(180deg,#fff,#f7f9fc)!important;color:#172033!important;border-color:rgba(71,85,105,.18)!important;}
body[data-theme="light"] .dev-organization-chip{background:linear-gradient(135deg,#fff1f2,#fff)!important;color:#9f1239!important;border-color:#fecdd3!important;}
body[data-theme="light"] .dev-organization-chip__label{color:#9f1239!important;}

@media(max-width:1320px){
  :root{--sidebar-width:272px!important;}
  html body .sidebar nav a.sidebar-nav-link{font-size:18px!important;}
  html body .topbar .topbar-desktop-shell{grid-template-columns:minmax(285px,auto) minmax(300px,500px) minmax(370px,1fr)!important;}
}

@media(max-width:1100px){
  :root{--sidebar-width:318px!important;}
  html body .main{margin-left:0!important;}
  html body .sidebar{width:min(91vw,var(--sidebar-width))!important;min-width:min(91vw,var(--sidebar-width))!important;max-width:min(91vw,var(--sidebar-width))!important;}
  html body .sidebar nav a.sidebar-nav-link{font-size:18.25px!important;}
  html body .rp-mobile-header__brand{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important;}
  html body .dev-organization-chip--mobile{min-height:26px!important;padding:2px 7px 2px 3px!important;}
  html body .dev-organization-chip--mobile .dev-organization-chip__label{display:none!important;}
  html body .dev-organization-chip--mobile .dev-organization-chip__code{min-width:31px!important;height:20px!important;}
}

@media(max-width:760px){
  html body .content > .page-head,
  html body .content > .page-hero{min-height:0!important;padding:19px 17px!important;border-radius:17px!important;}
  html body .card,
  html body .toolbar,
  html body .pagination,
  html body .portal-footer,
  html body .table-wrap,
  html body .card.table-wrap{border-radius:15px!important;}
}

@media(max-width:430px){
  :root{--sidebar-width:306px!important;}
  html body .sidebar nav a.sidebar-nav-link{font-size:17.5px!important;}
  html body .sidebar .brand-text{font-size:1.28rem!important;}
  html body .sidebar .brand-text small,
  html body .sidebar .brand-context{font-size:.70rem!important;letter-spacing:.052em!important;}
}

/* ui-fixes-v1326.css */
/* Retter-Portal v1.3.26 · Proportionen zwischen Sidebar und Portalinhalt sauberer ausbalanciert */
:root{
  --sidebar-width:298px!important;
  --rp26-line:rgba(148,163,184,.16);
  --rp26-line-soft:rgba(148,163,184,.11);
  --rp26-panel-top:rgba(255,255,255,.045);
  --rp26-panel-blue:rgba(37,99,235,.10);
  --rp26-panel-red:rgba(225,29,72,.08);
  --rp26-panel-bg:linear-gradient(145deg,rgba(10,24,42,.98),rgba(7,19,33,.96))!important;
}

html body .app-shell{grid-template-columns:var(--sidebar-width) minmax(0,1fr)!important;}
html body .main{margin-left:var(--sidebar-width)!important;}
html body .app-shell--navigation-disabled .main{margin-left:0!important;}

/* Sidebar größer und typografisch stärker, ohne wieder überladen zu wirken. */
html body .sidebar{
  width:var(--sidebar-width)!important;
  min-width:var(--sidebar-width)!important;
  max-width:var(--sidebar-width)!important;
  padding:15px 15px 24px!important;
}
html body .sidebar .brand{
  display:flex!important;
  align-items:center!important;
  min-height:88px!important;
  margin:0 3px 14px!important;
  padding:6px 8px 16px!important;
  gap:10px!important;
}
html body .sidebar .brand-logo-wrap,
html body .sidebar .brand-logo{
  width:52px!important;
  min-width:52px!important;
  max-width:52px!important;
  height:52px!important;
  max-height:52px!important;
}
html body .sidebar .brand-text{
  flex:1 1 auto!important;
  min-width:0!important;
  font-size:1.46rem!important;
  line-height:1.02!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
}
html body .sidebar .brand-text small,
html body .sidebar .brand-context{
  margin-top:7px!important;
  font-size:.76rem!important;
  line-height:1.12!important;
  letter-spacing:.045em!important;
  color:#9caabe!important;
}
html body .sidebar .nav-section{
  margin:19px 10px 9px!important;
  font-size:.81rem!important;
}
html body .sidebar nav a.sidebar-nav-link{
  min-height:52px!important;
  padding:10px 13px!important;
  gap:13px!important;
  font-size:20.5px!important;
  line-height:1.16!important;
  font-weight:820!important;
}
html body .sidebar .sidebar-nav-icon{
  width:27px!important;
  min-width:27px!important;
  height:27px!important;
}
html body .sidebar .sidebar-nav-icon svg{width:25px!important;height:25px!important;}
html body .sidebar .nav-count{min-width:31px!important;height:25px!important;font-size:.8rem!important;}

/* Header kompakter und DEV-Organisation einfacher/ruhiger dargestellt. */
html body .topbar{min-height:56px!important;}
html body .topbar .topbar-desktop-shell{
  min-height:56px!important;
  grid-template-columns:minmax(295px,auto) minmax(300px,520px) minmax(380px,1fr)!important;
  padding:6px clamp(16px,1.35vw,22px)!important;
  gap:12px!important;
}
html body .topbar .topbar-title{gap:8px!important;align-items:center!important;}
html body .topbar .topbar-eyebrow{font-size:.88rem!important;}
html body .topbar .topbar-version{font-size:.84rem!important;}
html body .topbar .department-context-switch,
html body .topbar .department-context-static{min-height:38px!important;border-radius:12px!important;}
html body .topbar .theme-switch{min-height:38px!important;}
html body .dev-organization-chip{
  min-height:28px!important;
  padding:0 10px!important;
  border-radius:999px!important;
  border:1px solid rgba(251,113,133,.24)!important;
  background:linear-gradient(135deg,rgba(225,29,72,.15),rgba(10,24,41,.94))!important;
  color:#fecdd3!important;
  font-size:.72rem!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03)!important;
}
html body .dev-organization-chip__code,
html body .dev-organization-chip__label{display:none!important;}

/* Hauptbereich optisch stärker aus derselben Designfamilie wie die Sidebar. */
html body .content{padding:18px clamp(16px,1.55vw,26px) 30px!important;}
html body .content > .page-head,
html body .content > .page-hero,
html body .card,
html body .toolbar,
html body .pagination,
html body .portal-footer,
html body .table-wrap,
html body .form-subcard,
html body .detail-item,
html body .info-grid > div,
html body .entity-card,
html body .admin-panel,
html body .admin-card,
html body .admin-command-nav,
html body .admin-water-source-row,
html body .v138-filter-card,
html body .v138-task-card,
html body .billing-status-card{
  position:relative!important;
  border:1px solid var(--rp26-line)!important;
  background:
    linear-gradient(180deg,var(--rp26-panel-top),transparent 32%),
    radial-gradient(circle at 100% 0,var(--rp26-panel-blue),transparent 25rem),
    radial-gradient(circle at 0 0,var(--rp26-panel-red),transparent 22rem),
    linear-gradient(145deg,rgba(10,24,42,.98),rgba(7,19,33,.96))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.024),0 18px 44px rgba(1,7,18,.22)!important;
}
html body .content > .page-head::before,
html body .content > .page-hero::before,
html body .card::before,
html body .toolbar::before,
html body .portal-footer::before,
html body .table-wrap::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:0!important;
  height:1px!important;
  background:linear-gradient(90deg,rgba(251,113,133,.28),rgba(148,163,184,.07) 28%,rgba(37,99,235,.22) 100%)!important;
  pointer-events:none!important;
}
html body .content > .page-head,
html body .content > .page-hero{
  min-height:108px!important;
  padding:18px clamp(20px,1.8vw,28px)!important;
  border-radius:20px!important;
}
html body .content > .page-head h1,
html body .content > .page-hero h1{font-size:clamp(1.95rem,2.15vw,2.55rem)!important;letter-spacing:-.05em!important;}
html body .content > .page-head .muted,
html body .content > .page-hero .muted,
html body .card .muted,
html body .toolbar .muted,
html body .portal-footer .muted{color:#9eacc0!important;}
html body .content :is(.page-head,.page-hero,.card) .eyebrow{color:#fb7185!important;}
html body .card{border-radius:20px!important;}
html body .toolbar{padding:13px!important;border-radius:18px!important;gap:10px!important;}
html body .portal-footer,
html body .pagination{border-radius:18px!important;}

/* Eingaben, Buttons, Tabellen und Badges bekommen dieselbe Konturensprache. */
html body input,
html body select,
html body textarea,
html body .smart-person-picker,
html body .smart-select-field{
  border:1px solid var(--rp26-line)!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,rgba(6,18,32,.92),rgba(7,19,33,.86))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.022)!important;
}
html body input,
html body select{min-height:41px!important;}
html body .btn{
  min-height:41px!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,rgba(17,38,63,.94),rgba(10,24,41,.92))!important;
}
html body .btn.primary{background:linear-gradient(135deg,#ef3154,#c8102e)!important;}

html body .table-wrap,
html body .card.table-wrap{overflow:hidden!important;padding:0!important;border-radius:19px!important;}
html body table thead th{
  padding-top:14px!important;
  padding-bottom:14px!important;
  background:linear-gradient(180deg,rgba(37,54,77,.86),rgba(23,39,61,.8))!important;
  color:#b6c3d5!important;
  font-size:.73rem!important;
  letter-spacing:.11em!important;
}
html body table tbody tr{background:linear-gradient(90deg,rgba(9,22,39,.92),rgba(8,20,35,.88))!important;}
html body table tbody tr:nth-child(even){background:linear-gradient(90deg,rgba(11,27,46,.92),rgba(9,24,41,.88))!important;}
html body table tbody tr:hover{background:linear-gradient(90deg,rgba(20,39,62,.94),rgba(15,34,54,.90))!important;}
html body table td{padding-top:14px!important;padding-bottom:14px!important;border-bottom:1px solid var(--rp26-line-soft)!important;}
html body .pill,
html body .status,
html body .role{
  border-radius:999px!important;
  border:1px solid rgba(148,163,184,.18)!important;
  background:linear-gradient(180deg,rgba(16,32,53,.90),rgba(13,28,47,.82))!important;
  color:#edf3fb!important;
}

body[data-theme="light"] .content > .page-head,
body[data-theme="light"] .content > .page-hero,
body[data-theme="light"] .card,
body[data-theme="light"] .toolbar,
body[data-theme="light"] .pagination,
body[data-theme="light"] .portal-footer,
body[data-theme="light"] .table-wrap{
  background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(244,248,252,.95))!important;
}
body[data-theme="light"] .dev-organization-chip{background:linear-gradient(135deg,#fff1f2,#fff)!important;color:#9f1239!important;border-color:#fecdd3!important;}

@media(max-width:1320px){
  :root{--sidebar-width:290px!important;}
  html body .sidebar nav a.sidebar-nav-link{font-size:19.5px!important;}
  html body .topbar .topbar-desktop-shell{grid-template-columns:minmax(280px,auto) minmax(290px,480px) minmax(360px,1fr)!important;}
}

@media(max-width:1100px){
  :root{--sidebar-width:320px!important;}
  html body .main{margin-left:0!important;}
  html body .sidebar{width:min(91vw,var(--sidebar-width))!important;min-width:min(91vw,var(--sidebar-width))!important;max-width:min(91vw,var(--sidebar-width))!important;}
  html body .sidebar nav a.sidebar-nav-link{font-size:19px!important;}
  html body .topbar .topbar-desktop-shell{grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:"title actions" "context context"!important;row-gap:10px!important;}
  html body .topbar .topbar-title{grid-area:title!important;}
  html body .topbar .topbar-context{grid-area:context!important;}
  html body .topbar .topbar-actions{grid-area:actions!important;}
}

@media(max-width:760px){
  html body .content{padding:16px 14px 24px!important;}
  html body .content > .page-head,
  html body .content > .page-hero{padding:18px 16px!important;min-height:0!important;border-radius:17px!important;}
  html body .card,
  html body .toolbar,
  html body .table-wrap,
  html body .portal-footer,
  html body .pagination{border-radius:16px!important;}
}

@media(max-width:430px){
  :root{--sidebar-width:308px!important;}
  html body .sidebar .brand-text{font-size:1.36rem!important;}
  html body .sidebar .brand-text small,
  html body .sidebar .brand-context{font-size:.72rem!important;}
  html body .sidebar nav a.sidebar-nav-link{font-size:18px!important;}
}

/* ui-fixes-v1327.css */
/* Retter-Portal v1.3.27 · rechter Portalbereich stärker an Sidebar angenähert, Rechte-Modul bereinigt, Mobile/Tablet verbessert */
:root{
  --rp27-line:rgba(148,163,184,.17);
  --rp27-line-soft:rgba(148,163,184,.10);
  --rp27-surface:linear-gradient(145deg,rgba(9,22,38,.985),rgba(7,18,31,.965))!important;
  --rp27-surface-alt:linear-gradient(145deg,rgba(10,25,43,.98),rgba(8,20,35,.96))!important;
  --rp27-highlight-red:rgba(225,29,72,.10);
  --rp27-highlight-blue:rgba(37,99,235,.12);
  --rp27-shadow:0 18px 44px rgba(1,7,18,.24);
}

/* Hauptbereich deutlich stärker an Sidebar-Flächenlogik angepasst */
html body .content > .page-head,
html body .content > .page-hero,
html body .content > .card,
html body .content > .toolbar,
html body .content > .pagination,
html body .content > .portal-footer,
html body .content > .table-wrap,
html body .content > .admin-panel,
html body .content > .admin-card,
html body .content > .entity-card,
html body .content > .billing-status-card{
  border-color:var(--rp27-line)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.040),transparent 32%),
    radial-gradient(circle at 100% 0,var(--rp27-highlight-blue),transparent 24rem),
    radial-gradient(circle at 0 0,var(--rp27-highlight-red),transparent 21rem),
    linear-gradient(145deg,rgba(9,22,38,.985),rgba(7,18,31,.965))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.026),var(--rp27-shadow)!important;
}
html body .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.portal-footer,.table-wrap,.admin-panel,.admin-card,.entity-card,.billing-status-card){
  position:relative!important;
  overflow:visible!important;
}
html body .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.portal-footer,.table-wrap,.admin-panel,.admin-card,.entity-card,.billing-status-card)::before{
  content:""!important;
  position:absolute!important;
  left:0!important;right:0!important;top:0!important;height:1px!important;
  background:linear-gradient(90deg,rgba(251,113,133,.30),rgba(148,163,184,.08) 26%,rgba(37,99,235,.24))!important;
  pointer-events:none!important;
}
html body .content > .toolbar{padding:14px 16px!important;gap:12px!important;}
html body .content > .page-head,html body .content > .page-hero{min-height:104px!important;}
html body .content > .page-head h1,html body .content > .page-hero h1{font-size:clamp(1.9rem,2.1vw,2.45rem)!important;}
html body .content > .page-head .hero-actions,.content > .page-hero .hero-actions{display:flex!important;flex-wrap:wrap!important;gap:10px!important;}
html body .content > .card .card-head,
html body .content > .table-wrap .card-head{padding-bottom:12px!important;margin-bottom:14px!important;border-bottom:1px solid var(--rp27-line-soft)!important;}

/* Formflächen, Filter und Buttons mit derselben Konturensprache wie Sidebar */
html body .content input,
html body .content select,
html body .content textarea,
html body .content .smart-person-picker,
html body .content .smart-select-field{
  border-color:var(--rp27-line)!important;
  background:linear-gradient(180deg,rgba(6,17,30,.94),rgba(7,19,33,.88))!important;
}
html body .content input:focus,
html body .content select:focus,
html body .content textarea:focus{
  border-color:rgba(251,113,133,.45)!important;
  box-shadow:0 0 0 3px rgba(225,29,72,.10),inset 0 1px 0 rgba(255,255,255,.03)!important;
}
html body .content .btn:not(.primary){
  background:linear-gradient(180deg,rgba(16,37,62,.95),rgba(10,24,41,.92))!important;
  border-color:var(--rp27-line)!important;
}
html body .content .btn.primary{
  background:linear-gradient(135deg,#ef3154,#c8102e)!important;
  border-color:rgba(251,113,133,.34)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 12px 28px rgba(225,29,72,.22)!important;
}

/* Rechte-Modul: die unsauberen Zusatzkästen aufräumen */
html body .content .rights-workbench-card,
html body .content .rights-explainer-card,
html body .content .rights-grid > .card{
  border-radius:20px!important;
}
html body .content .rights-department-switch,
html body .content .rights-assign-form,
html body .content .rights-unlinked-details,
html body .content .rights-unlinked-notice{
  position:relative!important;
  border:1px solid var(--rp27-line)!important;
  border-radius:20px!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.036),transparent 28%),
    radial-gradient(circle at 100% 0,rgba(37,99,235,.10),transparent 18rem),
    linear-gradient(145deg,rgba(11,26,45,.96),rgba(8,20,35,.94))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02),0 14px 36px rgba(1,7,18,.18)!important;
}
html body .content .rights-department-switch{margin-top:14px!important;padding:14px 16px!important;}
html body .content .rights-department-switch > label,
html body .content .rights-assign-form > label{
  display:grid!important;gap:8px!important;font-weight:880!important;color:#dbe4ef!important;
}
html body .content .rights-department-switch > label > select{margin-top:2px!important;}
html body .content .rights-assign-form{
  grid-template-columns:minmax(250px,1fr) minmax(250px,1fr) auto!important;
  gap:16px!important;
  align-items:end!important;
  margin-top:14px!important;
  padding:16px!important;
}
html body .content .rights-assign-form .smart-select-field{
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
}
html body .content .rights-assign-form .smart-select-field::after{top:42px!important;right:14px!important;}
html body .content .rights-assign-form .smart-select-field label{
  display:grid!important;
  gap:8px!important;
  padding:0!important;
  font-size:.96rem!important;
  color:#dbe4ef!important;
  font-weight:880!important;
}
html body .content .rights-assign-form .smart-select-field input[data-smart-select-search],
html body .content .rights-assign-form .smart-select-field select[data-smart-select-native]{
  min-height:54px!important;
  border-radius:14px!important;
}
html body .content .rights-assign-form .btn.primary{
  min-width:170px!important;
  min-height:54px!important;
  align-self:end!important;
}
html body .content .rights-unlinked-details{margin-top:16px!important;overflow:hidden!important;}
html body .content .rights-unlinked-details summary{padding:18px 20px!important;}
html body .content .rights-unlinked-details .rights-unlinked-list{padding:0 20px 20px!important;}

/* Tabellen und Listen im Hauptbereich etwas näher an Sidebar-Optik */
html body .content .table-wrap,
html body .content .card.table-wrap{
  border-radius:20px!important;
  border:1px solid var(--rp27-line)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.038),transparent 26%),
    radial-gradient(circle at 100% 0,rgba(37,99,235,.10),transparent 20rem),
    linear-gradient(145deg,rgba(8,21,36,.98),rgba(6,17,29,.96))!important;
}
html body .content table thead th{
  background:linear-gradient(180deg,rgba(39,55,77,.88),rgba(23,39,60,.82))!important;
}
html body .content table tbody tr{
  background:linear-gradient(90deg,rgba(8,20,35,.95),rgba(8,19,33,.90))!important;
}
html body .content table tbody tr:nth-child(even){
  background:linear-gradient(90deg,rgba(11,26,45,.95),rgba(9,23,39,.90))!important;
}

/* Tablet */
@media(max-width:1100px){
  html body .content{padding:18px 16px 26px!important;}
  html body .content > .page-head,
  html body .content > .page-hero,
  html body .content > .card,
  html body .content > .toolbar,
  html body .content > .table-wrap,
  html body .content > .pagination,
  html body .content > .portal-footer{border-radius:18px!important;}
  html body .content > .toolbar{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important;}
  html body .content > .toolbar > *{width:100%!important;}
  html body .content .rights-assign-form{grid-template-columns:1fr!important;align-items:stretch!important;}
  html body .content .rights-assign-form .btn.primary{width:100%!important;min-width:0!important;}
  html body .content .rights-grid{grid-template-columns:1fr!important;}
}

/* Mobile: Tabellen als saubere Karten, Toolbars/Formulare wirklich nutzbar */
@media(max-width:760px){
  html body .content{padding:14px 12px 22px!important;}
  html body .content > .page-head,
  html body .content > .page-hero{padding:18px 16px!important;gap:14px!important;align-items:stretch!important;}
  html body .content > .page-head .hero-actions,
  html body .content > .page-hero .hero-actions,
  html body .content > .page-head > .btn,
  html body .content > .page-hero > .btn{width:100%!important;}
  html body .content > .toolbar{grid-template-columns:1fr!important;padding:13px!important;}
  html body .content > .toolbar .btn{width:100%!important;}
  html body .content :is(.form-grid,.grid.two,.grid.three,.grid.four){grid-template-columns:1fr!important;}
  html body .content .rights-department-switch,
  html body .content .rights-assign-form,
  html body .content .rights-unlinked-details,
  html body .content .rights-unlinked-notice{border-radius:18px!important;}
  html body .content .rights-department-switch{padding:14px!important;}
  html body .content .rights-assign-form{padding:14px!important;gap:14px!important;}
  html body .content .rights-unlinked-details summary{padding:16px!important;gap:12px!important;}

  html body .content .table-wrap,
  html body .content .card.table-wrap{
    overflow:visible!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  html body .content .table-wrap::before,
  html body .content .card.table-wrap::before{display:none!important;content:none!important;}
  html body .content .table-wrap table.responsive-table{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    background:transparent!important;
  }
  html body .content .table-wrap table.responsive-table thead{display:none!important;}
  html body .content .table-wrap table.responsive-table tbody{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  html body .content .table-wrap table.responsive-table tbody tr{
    display:block!important;
    border:1px solid var(--rp27-line)!important;
    border-radius:18px!important;
    padding:8px 14px!important;
    background:
      linear-gradient(180deg,rgba(255,255,255,.036),transparent 24%),
      radial-gradient(circle at 100% 0,rgba(37,99,235,.10),transparent 16rem),
      linear-gradient(145deg,rgba(11,25,43,.97),rgba(8,20,35,.95))!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.02),0 12px 30px rgba(1,7,18,.16)!important;
  }
  html body .content .table-wrap table.responsive-table tbody td{
    display:grid!important;
    grid-template-columns:minmax(104px,38%) minmax(0,1fr)!important;
    gap:10px!important;
    align-items:start!important;
    padding:11px 0!important;
    border-bottom:1px solid var(--rp27-line-soft)!important;
    background:transparent!important;
    min-width:0!important;
  }
  html body .content .table-wrap table.responsive-table tbody tr td:last-child{border-bottom:0!important;}
  html body .content .table-wrap table.responsive-table td::before{
    display:block!important;
    color:#8fa0b5!important;
    font-size:.66rem!important;
    line-height:1.2!important;
    font-weight:900!important;
    letter-spacing:.08em!important;
    text-transform:uppercase!important;
  }
  html body .content .table-wrap table.responsive-table td.mobile-action-cell,
  html body .content .table-wrap table.responsive-table td.actions,
  html body .content .table-wrap table.responsive-table td.table-actions{
    display:block!important;
    padding-top:14px!important;
    border-bottom:0!important;
  }
  html body .content .table-wrap table.responsive-table td.mobile-action-cell::before,
  html body .content .table-wrap table.responsive-table td.actions::before,
  html body .content .table-wrap table.responsive-table td.table-actions::before{display:none!important;content:none!important;}
  html body .content .table-wrap table.responsive-table td.mobile-action-cell .btn,
  html body .content .table-wrap table.responsive-table td.actions .btn,
  html body .content .table-wrap table.responsive-table td.table-actions .btn{width:100%!important;}
  html body .content .table-wrap table.responsive-table td.mobile-full-row{
    display:block!important;
    padding:16px 0 4px!important;
    text-align:left!important;
  }
  html body .content .table-wrap table.responsive-table td.mobile-full-row::before{display:none!important;content:none!important;}
  html body .content .table-wrap table.responsive-table .pill,
  html body .content .table-wrap table.responsive-table .status,
  html body .content .table-wrap table.responsive-table .role{justify-self:start!important;}
}

@media(max-width:430px){
  html body .content .table-wrap table.responsive-table tbody tr{padding:8px 12px!important;border-radius:16px!important;}
  html body .content .table-wrap table.responsive-table tbody td{grid-template-columns:1fr!important;gap:4px!important;padding:10px 0!important;}
  html body .content .table-wrap table.responsive-table td::before{font-size:.64rem!important;letter-spacing:.05em!important;}
}

body[data-theme="light"] .content > .page-head,
body[data-theme="light"] .content > .page-hero,
body[data-theme="light"] .content > .card,
body[data-theme="light"] .content > .toolbar,
body[data-theme="light"] .content > .pagination,
body[data-theme="light"] .content > .portal-footer,
body[data-theme="light"] .content > .table-wrap,
body[data-theme="light"] .content .rights-department-switch,
body[data-theme="light"] .content .rights-assign-form,
body[data-theme="light"] .content .rights-unlinked-details,
body[data-theme="light"] .content .rights-unlinked-notice{
  background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(244,248,252,.95))!important;
}

/* ui-fixes-v1328.css */
/* Retter-Portal v1.3.28
   Sidebar einklappbar, Header-Kontext kompakter, Menüs stärker an Sidebar angeglichen,
   Notification-Strip sauber eingefasst, Mobile/Tablet sowie Whitemode repariert. */

:root{
  --rp28-sidebar-width:270px;
  --rp28-sidebar-collapsed-width:92px;
  --rp28-sidebar-line:rgba(255,255,255,.08);
  --rp28-card-line:rgba(148,163,184,.18);
  --rp28-card-line-soft:rgba(148,163,184,.11);
  --rp28-dark-surface:linear-gradient(180deg,rgba(9,22,38,.985),rgba(7,18,31,.975));
  --rp28-dark-surface-alt:linear-gradient(145deg,rgba(11,26,45,.97),rgba(8,20,35,.96));
  --rp28-light-surface:linear-gradient(145deg,#ffffff,#f3f7fb);
  --rp28-light-surface-alt:linear-gradient(145deg,#fcfdff,#eef3f9);
  --rp28-light-border:rgba(148,163,184,.22);
}

/* --- Sidebar proportional slightly larger --- */
html body .app-shell{grid-template-columns:var(--rp28-sidebar-width) minmax(0,1fr)!important;transition:grid-template-columns .22s ease!important;}
html body .sidebar{
  width:var(--rp28-sidebar-width)!important;
  padding:16px 14px 18px!important;
  background:linear-gradient(180deg,#091426 0%,#071120 100%)!important;
  border-right:1px solid var(--rp28-sidebar-line)!important;
}
html body .sidebar-brand-row{display:flex!important;align-items:flex-start!important;gap:10px!important;padding-bottom:10px!important;border-bottom:1px solid rgba(255,255,255,.06)!important;margin-bottom:12px!important;}
html body .brand{flex:1 1 auto!important;min-width:0!important;padding:8px 8px 10px!important;gap:12px!important;align-items:center!important;}
html body .brand-logo-wrap{flex:0 0 auto!important;display:grid!important;place-items:center!important;}
html body .brand-logo{width:48px!important;height:48px!important;object-fit:contain!important;display:block!important;}
html body .brand-text{display:grid!important;gap:4px!important;min-width:0!important;font-size:1.02rem!important;line-height:1.05!important;font-weight:950!important;}
html body .brand-context{font-size:.76rem!important;line-height:1.15!important;letter-spacing:.09em!important;color:#93a3b8!important;margin-top:0!important;}
html body .sidebar-collapse-toggle{
  flex:0 0 42px!important;width:42px!important;height:42px!important;margin-top:4px!important;
  border-radius:14px!important;border:1px solid rgba(255,255,255,.08)!important;
  background:linear-gradient(180deg,rgba(18,36,58,.92),rgba(10,21,37,.88))!important;
  color:#d8e0ea!important;font-size:1rem!important;font-weight:900!important;
  box-shadow:0 10px 24px rgba(0,0,0,.18)!important;
}
html body .sidebar-collapse-toggle:hover{background:linear-gradient(180deg,rgba(24,47,76,.96),rgba(11,24,42,.92))!important;color:#fff!important;}
html body .nav-section{margin:18px 10px 8px!important;font-size:.72rem!important;letter-spacing:.14em!important;}
html body .sidebar nav a,
html body .sidebar .sidebar-nav-link{
  padding:12px 13px!important;
  min-height:48px!important;
  border-radius:15px!important;
  font-size:.97rem!important;
  font-weight:840!important;
  gap:11px!important;
}
html body .sidebar nav a .sidebar-nav-icon,
html body .sidebar .sidebar-nav-link .sidebar-nav-icon{width:24px!important;height:24px!important;display:grid!important;place-items:center!important;flex:0 0 24px!important;}
html body .sidebar nav a .sidebar-nav-icon svg,
html body .sidebar .sidebar-nav-link .sidebar-nav-icon svg{width:20px!important;height:20px!important;}
html body .sidebar-nav-label{line-height:1.2!important;}
html body .nav-count{margin-left:auto!important;font-size:.74rem!important;min-width:26px!important;height:26px!important;padding:0 8px!important;display:inline-grid!important;place-items:center!important;border-radius:999px!important;background:rgba(255,255,255,.11)!important;color:#fff!important;font-style:normal!important;font-weight:900!important;}

/* Collapsed desktop sidebar */
@media(min-width:1101px){
  html body.sidebar-collapsed .app-shell{grid-template-columns:var(--rp28-sidebar-collapsed-width) minmax(0,1fr)!important;}
  html body.sidebar-collapsed .sidebar{width:var(--rp28-sidebar-collapsed-width)!important;padding-inline:10px!important;}
  html body.sidebar-collapsed .sidebar-brand-row{display:grid!important;justify-items:center!important;gap:10px!important;padding-bottom:12px!important;}
  html body.sidebar-collapsed .brand{justify-content:center!important;padding:8px 0!important;}
  html body.sidebar-collapsed .brand-text,
  html body.sidebar-collapsed .nav-section,
  html body.sidebar-collapsed .sidebar-nav-label,
  html body.sidebar-collapsed .nav-count{display:none!important;}
  html body.sidebar-collapsed .sidebar .sidebar-nav-link{justify-content:center!important;padding-inline:0!important;}
  html body.sidebar-collapsed .sidebar .sidebar-nav-icon{margin:0!important;}
  html body.sidebar-collapsed .sidebar nav a,
  html body.sidebar-collapsed .sidebar .sidebar-nav-link{position:relative!important;}
  html body.sidebar-collapsed .sidebar nav a[title]::after,
  html body.sidebar-collapsed .sidebar .sidebar-nav-link[title]::after{display:none!important;}
}

/* use aria label as tooltip by assigning title through CSS-ish no, but title exists on link not set. handled by attr via JS not possible; set only essential visual */
html body .sidebar .sidebar-nav-link{overflow:hidden!important;}

/* --- Header --- */
html body .topbar{padding:12px 24px!important;min-height:70px!important;border-bottom:1px solid rgba(255,255,255,.06)!important;}
html body .topbar-desktop-shell{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto auto!important;align-items:center!important;gap:14px!important;}
html body .topbar-title{display:flex!important;align-items:center!important;gap:12px!important;min-width:0!important;}
html body .topbar-product .topbar-eyebrow{margin:0!important;display:flex!important;align-items:center!important;gap:8px!important;font-size:.76rem!important;}
html body .topbar-title--with-inline-context .department-context-switch--inline,
html body .topbar-title--with-inline-context .department-context-static.department-context-switch--inline{margin-left:4px!important;}
html body .topbar-context{min-width:0!important;}
html body .topbar-context:empty{display:none!important;}
html body .department-context-switch,
html body .department-context-static{
  display:flex!important;align-items:center!important;gap:10px!important;
  border:1px solid var(--rp28-card-line)!important;
  border-radius:14px!important;padding:8px 10px!important;
  background:linear-gradient(180deg,rgba(14,28,47,.92),rgba(9,21,36,.90))!important;
  min-height:44px!important;
}
html body .department-context-switch span,
html body .department-context-static span{font-size:.72rem!important;line-height:1!important;text-transform:uppercase!important;letter-spacing:.10em!important;color:#9eb0c6!important;font-weight:900!important;white-space:nowrap!important;}
html body .department-context-switch select{
  min-width:min(360px,40vw)!important;border:0!important;background:transparent!important;
  padding:0 26px 0 0!important;color:#fff!important;font-weight:900!important;height:auto!important;box-shadow:none!important;
}
html body .department-context-static strong{font-size:.94rem!important;color:#fff!important;white-space:nowrap!important;}
html body .dev-organization-chip{align-self:center!important;}
html body .topbar-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:12px!important;min-width:0!important;}

/* normal menus / cards more aligned to sidebar */
html body .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer,.admin-nav,.admin-access-grid .card):not(.flash){
  border-color:var(--rp28-card-line)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.034),transparent 30%),
    radial-gradient(circle at 100% 0,rgba(37,99,235,.10),transparent 19rem),
    radial-gradient(circle at 0 0,rgba(225,29,72,.08),transparent 15rem),
    var(--rp28-dark-surface-alt)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02),0 14px 32px rgba(1,7,18,.16)!important;
}
html body .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer,.admin-nav,.admin-access-grid .card):not(.flash)::before{
  content:""!important;position:absolute!important;left:0!important;right:0!important;top:0!important;height:1px!important;
  background:linear-gradient(90deg,rgba(251,113,133,.24),rgba(148,163,184,.06) 30%,rgba(37,99,235,.22))!important;pointer-events:none!important;
}
html body .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer,.admin-nav,.admin-access-grid .card):not(.flash){position:relative!important;}
html body .content :is(input,select,textarea,.btn:not(.primary),.pill,.status){border-color:var(--rp28-card-line)!important;}
html body .content :is(input,select,textarea){background:linear-gradient(180deg,rgba(6,17,30,.94),rgba(7,19,33,.88))!important;}
html body .content .btn:not(.primary){background:linear-gradient(180deg,rgba(15,33,56,.92),rgba(10,23,39,.90))!important;}

/* Notification strip with clear end border */
html body .dashboard-notification-strip{
  position:relative!important;
  border:1px solid rgba(225,29,72,.34)!important;
  border-radius:20px!important;
  background:
    linear-gradient(90deg,rgba(225,29,72,.10),rgba(37,99,235,.10))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 10px 24px rgba(1,7,18,.12)!important;
  overflow:hidden!important;
}
html body .dashboard-notification-strip::before{display:block!important;content:""!important;position:absolute!important;inset:0!important;border:1px solid rgba(255,255,255,.04)!important;border-radius:20px!important;pointer-events:none!important;}
html body .dashboard-notification-strip::after{display:block!important;content:""!important;position:absolute!important;top:10px!important;bottom:10px!important;right:8px!important;width:1px!important;background:rgba(255,255,255,.08)!important;pointer-events:none!important;}
html body .dashboard-notification-strip__action{position:relative!important;z-index:1!important;}

/* Billing / PDF action cells */
html body .billing-invoice-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;flex-wrap:wrap!important;gap:10px!important;}
html body .billing-invoice-actions .btn.small,
html body .billing-invoice-actions .billing-status-form{flex:0 1 auto!important;}
html body .billing-status-form{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;}
html body .billing-status-form select,
html body .billing-status-form .btn{min-height:42px!important;border-radius:14px!important;}

/* Admin water source org chooser */
html body .admin-water-sources-card select,
html body .admin-water-sources-card option,
html body .admin-water-sources-card optgroup,
html body select option,
html body select optgroup{color:#0f172a!important;background:#ffffff!important;}
html body .admin-water-sources-card form,
html body .admin-water-sources-card .form-inline{align-items:end!important;}

/* White mode repair */
body[data-theme="light"] .sidebar{
  background:linear-gradient(180deg,#f8fbff 0%,#eef3f8 100%)!important;
  border-right:1px solid var(--rp28-light-border)!important;
  box-shadow:18px 0 45px rgba(148,163,184,.12)!important;
  color:#1e293b!important;
}
body[data-theme="light"] .brand-context,
body[data-theme="light"] .nav-section{color:#64748b!important;}
body[data-theme="light"] .sidebar nav a,
body[data-theme="light"] .sidebar .sidebar-nav-link{color:#243449!important;}
body[data-theme="light"] .sidebar nav a:hover,
body[data-theme="light"] .sidebar .sidebar-nav-link:hover{background:rgba(37,99,235,.06)!important;color:#0f172a!important;}
body[data-theme="light"] .sidebar nav a.active,
body[data-theme="light"] .sidebar .sidebar-nav-link.active{background:linear-gradient(135deg,rgba(239,49,84,.10),rgba(37,99,235,.08))!important;color:#be123c!important;border-color:rgba(239,68,68,.22)!important;box-shadow:0 14px 28px rgba(148,163,184,.14)!important;}
body[data-theme="light"] .sidebar-collapse-toggle{background:linear-gradient(180deg,#ffffff,#eef4fb)!important;border-color:var(--rp28-light-border)!important;color:#334155!important;box-shadow:0 8px 18px rgba(148,163,184,.10)!important;}
body[data-theme="light"] .topbar{background:rgba(255,255,255,.88)!important;border-bottom-color:rgba(148,163,184,.18)!important;}
body[data-theme="light"] .department-context-switch,
body[data-theme="light"] .department-context-static{background:var(--rp28-light-surface)!important;border-color:var(--rp28-light-border)!important;}
body[data-theme="light"] .department-context-switch select,
body[data-theme="light"] .department-context-static strong{color:#0f172a!important;}
body[data-theme="light"] .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer,.admin-nav,.admin-access-grid .card):not(.flash){
  background:
    linear-gradient(180deg,rgba(255,255,255,.86),rgba(255,255,255,.64)),
    radial-gradient(circle at 100% 0,rgba(59,130,246,.09),transparent 18rem),
    radial-gradient(circle at 0 0,rgba(239,68,68,.07),transparent 14rem),
    var(--rp28-light-surface-alt)!important;
  border-color:var(--rp28-light-border)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 10px 28px rgba(148,163,184,.10)!important;
}
body[data-theme="light"] .content :is(input,select,textarea){background:linear-gradient(180deg,#ffffff,#f7fbff)!important;border-color:var(--rp28-light-border)!important;color:#0f172a!important;}
body[data-theme="light"] .content .btn:not(.primary){background:linear-gradient(180deg,#ffffff,#eef4fa)!important;border-color:var(--rp28-light-border)!important;color:#0f172a!important;}
body[data-theme="light"] .dashboard-notification-strip{background:linear-gradient(90deg,rgba(239,68,68,.09),rgba(59,130,246,.08))!important;border-color:rgba(239,68,68,.24)!important;}
body[data-theme="light"] .dashboard-notification-strip__copy small{color:#475569!important;}
body[data-theme="light"] .dashboard-notification-strip__action{background:linear-gradient(180deg,#ffffff,#eff4fb)!important;border-color:var(--rp28-light-border)!important;color:#0f172a!important;}
body[data-theme="light"] .dashboard-grid .card,
body[data-theme="light"] .feed-card,
body[data-theme="light"] .feed-list article,
body[data-theme="light"] .stats-grid .card,
body[data-theme="light"] .overview-card{background:var(--rp28-light-surface)!important;border-color:var(--rp28-light-border)!important;color:#0f172a!important;}
body[data-theme="light"] .muted,
body[data-theme="light"] small,
body[data-theme="light"] .pill{color:inherit;}
body[data-theme="light"] .topbar-role-badge{box-shadow:none!important;}

/* Tablet adjustments */
@media(max-width:1100px){
  html body .app-shell{grid-template-columns:1fr!important;}
  html body .sidebar{width:min(86vw,300px)!important;transform:translateX(-104%)!important;position:fixed!important;z-index:120!important;left:0!important;top:0!important;bottom:0!important;height:100dvh!important;transition:transform .22s ease!important;}
  html body.sidebar-open .sidebar{transform:translateX(0)!important;}
  html body .sidebar-collapse-toggle{display:none!important;}
  html body .topbar{padding:10px 14px!important;}
  html body .topbar-desktop-shell{grid-template-columns:auto minmax(0,1fr) auto!important;}
  html body .topbar-title--with-inline-context{flex-wrap:wrap!important;gap:8px!important;}
  html body .department-context-switch--inline{max-width:100%!important;}
  html body .department-context-switch select{min-width:0!important;width:100%!important;}
  html body .content{padding:18px 14px 26px!important;}
}

/* Mobile repair */
@media(max-width:760px){
  html body .rp-mobile-header{padding-top:max(8px,env(safe-area-inset-top))!important;}
  html body .content{padding:14px 12px 22px!important;}
  html body .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.portal-footer){border-radius:18px!important;}
  html body .toolbar{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;}
  html body .toolbar > *{width:100%!important;max-width:100%!important;}
  html body .department-context-switch,
  html body .department-context-static{width:100%!important;}
  html body .department-context-switch select{min-width:0!important;width:100%!important;}

  html body .billing-invoice-actions,
  html body .billing-status-form{justify-content:stretch!important;}
  html body .billing-invoice-actions > *,
  html body .billing-status-form > *{width:100%!important;}

  /* keep tables card-like and cleaner */
  html body .table-wrap table.responsive-table tbody{gap:12px!important;}
  html body .table-wrap table.responsive-table tbody tr{border-radius:18px!important;padding:8px 14px!important;background:var(--rp28-dark-surface-alt)!important;border:1px solid var(--rp28-card-line)!important;}
  html body .table-wrap table.responsive-table tbody td{padding:10px 0!important;grid-template-columns:minmax(100px,38%) minmax(0,1fr)!important;}
  html body .table-wrap table.responsive-table td.actions,
  html body .table-wrap table.responsive-table td.table-actions,
  html body .table-wrap table.responsive-table td.mobile-action-cell{padding-top:14px!important;}
  html body .table-wrap table.responsive-table td .btn{width:100%!important;}
  html body .dashboard-notification-strip{grid-template-columns:44px minmax(0,1fr)!important;padding:12px 12px!important;border-radius:18px!important;}
  html body .dashboard-notification-strip::after{display:none!important;}
  html body .dashboard-notification-strip__action{display:none!important;}
}

@media(max-width:430px){
  html body .table-wrap table.responsive-table tbody td{grid-template-columns:1fr!important;gap:4px!important;}
  html body .table-wrap table.responsive-table tbody tr{padding:8px 12px!important;border-radius:16px!important;}
  html body .topbar{padding-inline:10px!important;}
}

body[data-theme="light"] .table-wrap table.responsive-table tbody tr{background:var(--rp28-light-surface)!important;border-color:var(--rp28-light-border)!important;box-shadow:0 10px 24px rgba(148,163,184,.08)!important;}
body[data-theme="light"] .table-wrap table.responsive-table tbody td{border-bottom-color:rgba(148,163,184,.16)!important;color:#0f172a!important;}
body[data-theme="light"] .table-wrap table.responsive-table td::before{color:#64748b!important;}

/* ui-fixes-v1329.css */
/* Retter-Portal v1.3.29
   Header auf den stabilen Aufbau zurückgesetzt, DEV-Organisation dort sauber ergänzt,
   echte kompakte Sidebar, dunkle native Auswahlmenüs, ruhige Tabs sowie Whitemode-Neuaufbau. */

:root{
  --rp29-sidebar-width:286px;
  --rp29-sidebar-collapsed:88px;
  --rp29-dark-bg:#07111f;
  --rp29-dark-bg-2:#0a1729;
  --rp29-dark-card:#0b1a2d;
  --rp29-dark-card-2:#081526;
  --rp29-dark-line:rgba(148,163,184,.16);
  --rp29-light-bg:#edf3f9;
  --rp29-light-bg-2:#f7faff;
  --rp29-light-card:#ffffff;
  --rp29-light-card-2:#f5f8fc;
  --rp29-light-line:rgba(100,116,139,.20);
}

/* Das Grid steuert die Breite. Kein zusätzlicher alter Seitenabstand mehr. */
html body .app-shell{
  grid-template-columns:var(--rp29-sidebar-width) minmax(0,1fr)!important;
  transition:grid-template-columns .22s ease!important;
}
html body .main{
  min-width:0!important;
  width:auto!important;
  margin-left:0!important;
}
html body .sidebar{
  width:var(--rp29-sidebar-width)!important;
  min-width:var(--rp29-sidebar-width)!important;
  max-width:var(--rp29-sidebar-width)!important;
  padding:15px 13px 22px!important;
  transition:width .22s ease,min-width .22s ease,max-width .22s ease,padding .22s ease!important;
}

/* Markenbereich und Navigation */
html body .sidebar-brand-row{
  display:flex!important;
  align-items:flex-start!important;
  gap:8px!important;
  margin:0 2px 13px!important;
  padding:2px 2px 14px!important;
  border-bottom:1px solid rgba(148,163,184,.12)!important;
}
html body .sidebar .brand{
  flex:1 1 auto!important;
  min-width:0!important;
  min-height:66px!important;
  margin:0!important;
  padding:7px 5px!important;
  gap:10px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html body .sidebar .brand-logo-wrap,
html body .sidebar .brand-logo{
  width:50px!important;
  min-width:50px!important;
  max-width:50px!important;
  height:50px!important;
  max-height:50px!important;
}
html body .sidebar .brand-logo-wrap{
  display:grid!important;
  place-items:center!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
html body .sidebar .brand-text{
  display:block!important;
  min-width:0!important;
  font-size:1.34rem!important;
  line-height:1.02!important;
  font-weight:950!important;
  letter-spacing:-.036em!important;
  color:#f7f9fc!important;
}
html body .sidebar .brand-context,
html body .sidebar .brand-text small{
  display:block!important;
  margin-top:6px!important;
  font-size:.72rem!important;
  line-height:1.12!important;
  letter-spacing:.058em!important;
  color:#98a8bc!important;
  white-space:nowrap!important;
}
html body .sidebar-collapse-toggle{
  flex:0 0 40px!important;
  width:40px!important;
  height:40px!important;
  margin-top:8px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(148,163,184,.14)!important;
  border-radius:13px!important;
  background:linear-gradient(180deg,rgba(18,38,64,.94),rgba(9,23,41,.92))!important;
  color:#dbe5f1!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 9px 22px rgba(0,0,0,.17)!important;
}
html body .sidebar .nav-section{
  margin:18px 10px 8px!important;
  font-size:.78rem!important;
  letter-spacing:.13em!important;
}
html body .sidebar nav a.sidebar-nav-link{
  min-height:50px!important;
  padding:11px 12px!important;
  gap:12px!important;
  font-size:1rem!important;
  line-height:1.18!important;
  font-weight:830!important;
}
html body .sidebar .sidebar-nav-icon{
  width:25px!important;
  min-width:25px!important;
  height:25px!important;
}
html body .sidebar .sidebar-nav-icon svg{width:22px!important;height:22px!important;}
html body .sidebar .sidebar-nav-label{
  min-width:0!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
}

/* Echte eingeklappte Sidebar: nicht nur Text ausblenden, sondern Breite reduzieren. */
@media(min-width:1101px){
  html body.sidebar-collapsed .app-shell{
    grid-template-columns:var(--rp29-sidebar-collapsed) minmax(0,1fr)!important;
  }
  html body.sidebar-collapsed .sidebar{
    width:var(--rp29-sidebar-collapsed)!important;
    min-width:var(--rp29-sidebar-collapsed)!important;
    max-width:var(--rp29-sidebar-collapsed)!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }
  html body.sidebar-collapsed .sidebar-brand-row{
    display:grid!important;
    justify-items:center!important;
    gap:8px!important;
    padding-bottom:12px!important;
  }
  html body.sidebar-collapsed .sidebar .brand{
    width:100%!important;
    justify-content:center!important;
    padding-inline:0!important;
  }
  html body.sidebar-collapsed .sidebar .brand-logo-wrap,
  html body.sidebar-collapsed .sidebar .brand-logo{
    width:48px!important;
    min-width:48px!important;
    max-width:48px!important;
    height:48px!important;
    max-height:48px!important;
  }
  html body.sidebar-collapsed .sidebar .brand-text,
  html body.sidebar-collapsed .sidebar .nav-section,
  html body.sidebar-collapsed .sidebar .sidebar-nav-label,
  html body.sidebar-collapsed .sidebar .nav-count{
    display:none!important;
  }
  html body.sidebar-collapsed .sidebar-collapse-toggle{
    margin:0!important;
  }
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link{
    width:100%!important;
    min-width:0!important;
    justify-content:center!important;
    padding:11px 0!important;
    gap:0!important;
  }
  html body.sidebar-collapsed .sidebar .sidebar-nav-icon{
    margin:0!important;
  }
}

/* Header: wieder exakt der stabile Dreispalten-Aufbau der vorherigen Version. */
html body .topbar{
  min-height:60px!important;
  padding:0!important;
  background:rgba(5,14,26,.94)!important;
  border-bottom:1px solid rgba(148,163,184,.10)!important;
}
html body .topbar .topbar-desktop-shell{
  display:grid!important;
  grid-template-columns:minmax(285px,auto) minmax(330px,620px) minmax(360px,1fr)!important;
  align-items:center!important;
  min-height:60px!important;
  padding:7px clamp(16px,1.45vw,24px)!important;
  gap:14px!important;
}
html body .topbar .topbar-title{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
  overflow:visible!important;
}
html body .topbar .topbar-product{flex:0 0 auto!important;min-width:0!important;}
html body .topbar .topbar-eyebrow{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  margin:0!important;
  white-space:nowrap!important;
}
html body .topbar .topbar-version{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:26px!important;
  padding:4px 8px!important;
  border:1px solid rgba(148,163,184,.14)!important;
  border-radius:999px!important;
  background:rgba(15,31,52,.82)!important;
  color:#f4f7fb!important;
  font-size:.72rem!important;
  line-height:1!important;
  letter-spacing:0!important;
}
html body .topbar .dev-organization-chip{
  min-height:30px!important;
  padding:6px 11px!important;
  border-radius:999px!important;
  white-space:nowrap!important;
}
html body .topbar .topbar-context{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  min-width:0!important;
}
html body .topbar .department-context-switch,
html body .topbar .department-context-static{
  width:100%!important;
  max-width:620px!important;
  min-height:42px!important;
  padding:5px 9px!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  border:1px solid rgba(148,163,184,.15)!important;
  border-radius:13px!important;
  background:linear-gradient(180deg,rgba(13,29,49,.94),rgba(8,21,37,.92))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
html body .topbar .department-context-switch span,
html body .topbar .department-context-static span{
  font-size:.68rem!important;
  letter-spacing:.105em!important;
  color:#9cadc1!important;
  text-transform:uppercase!important;
  font-weight:950!important;
  white-space:nowrap!important;
}
html body .topbar .department-context-switch select{
  min-width:0!important;
  width:100%!important;
  height:32px!important;
  min-height:32px!important;
  padding:0 28px 0 12px!important;
  border:1px solid rgba(148,163,184,.12)!important;
  border-radius:10px!important;
  background:#0c1d32!important;
  color:#f7f9fc!important;
  font-weight:900!important;
  box-shadow:none!important;
}
html body .topbar .department-context-static strong{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#f7f9fc!important;
}
html body .topbar .topbar-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  min-width:0!important;
  gap:10px!important;
}

/* Native Auswahlmenüs im Darkmode: keine weiße Optionsliste mehr. */
body[data-theme="dark"] select,
html[data-theme="dark"] select{
  color-scheme:dark!important;
}
body[data-theme="dark"] select option,
body[data-theme="dark"] select optgroup,
html[data-theme="dark"] select option,
html[data-theme="dark"] select optgroup{
  background:#0b1a2d!important;
  color:#f8fafc!important;
}
body[data-theme="light"] select,
html[data-theme="light"] select{color-scheme:light!important;}
body[data-theme="light"] select option,
body[data-theme="light"] select optgroup,
html[data-theme="light"] select option,
html[data-theme="light"] select optgroup{
  background:#ffffff!important;
  color:#172033!important;
}

/* Prüfreiter ohne den unpassenden rot-türkisen Verlauf. */
html body .check-tabs{
  gap:8px!important;
}
html body .check-tab{
  border:1px solid var(--rp29-dark-line)!important;
  border-radius:13px!important;
  background:linear-gradient(180deg,rgba(16,35,59,.92),rgba(10,24,41,.90))!important;
  color:#dbe5f1!important;
  box-shadow:none!important;
}
html body .check-tab strong{
  min-width:27px!important;
  height:27px!important;
  padding:0 8px!important;
  display:inline-grid!important;
  place-items:center!important;
  border-radius:999px!important;
  background:rgba(148,163,184,.14)!important;
  color:#dce6f2!important;
}
html body .check-tab.active{
  border-color:rgba(251,113,133,.30)!important;
  background:linear-gradient(90deg,rgba(225,29,72,.16),rgba(30,41,59,.40))!important;
  color:#fff!important;
  box-shadow:inset 3px 0 0 #ef3154!important;
}
html body .check-tab.active strong{
  background:rgba(251,113,133,.18)!important;
  color:#fecdd3!important;
}

/* Hauptflächen bleiben im Darkmode ruhig und konsistent. */
body[data-theme="dark"] .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer),
body[data-theme="dark"] .content :is(.form-subcard,.detail-item,.info-grid>div,.entity-card,.admin-panel,.admin-card){
  border-color:var(--rp29-dark-line)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.034),transparent 30%),
    radial-gradient(circle at 100% 0,rgba(37,99,235,.085),transparent 22rem),
    linear-gradient(145deg,var(--rp29-dark-card),var(--rp29-dark-card-2))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.022),0 15px 36px rgba(1,7,18,.20)!important;
}

/* Whitemode komplett neu und mit eindeutigen Kontrasten. */
body[data-theme="light"]{
  --bg:var(--rp29-light-bg)!important;
  --bg2:var(--rp29-light-bg-2)!important;
  --surface:#ffffff!important;
  --surface-2:#f8fafc!important;
  --text:#172033!important;
  --muted:#64748b!important;
  --muted-2:#8593a6!important;
  --line:#d7e0eb!important;
  --line-soft:rgba(100,116,139,.13)!important;
  color-scheme:light!important;
  color:#172033!important;
  background:
    radial-gradient(circle at 15% -10%,rgba(225,29,72,.07),transparent 34rem),
    radial-gradient(circle at 96% 0,rgba(37,99,235,.08),transparent 34rem),
    linear-gradient(135deg,var(--rp29-light-bg),var(--rp29-light-bg-2))!important;
}
body[data-theme="light"]::before{
  opacity:.34!important;
  background-image:linear-gradient(rgba(100,116,139,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(100,116,139,.08) 1px,transparent 1px)!important;
}
body[data-theme="light"] .sidebar{
  color:#243348!important;
  background:linear-gradient(180deg,#f8fbff 0%,#eef3f8 100%)!important;
  border-right-color:var(--rp29-light-line)!important;
  box-shadow:14px 0 38px rgba(100,116,139,.10)!important;
}
body[data-theme="light"] .sidebar-brand-row{border-bottom-color:rgba(100,116,139,.14)!important;}
body[data-theme="light"] .sidebar .brand-text{color:#172033!important;}
body[data-theme="light"] .sidebar .brand-context,
body[data-theme="light"] .sidebar .brand-text small,
body[data-theme="light"] .sidebar .nav-section{color:#6b7a8e!important;}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link{
  color:#2f4056!important;
  background:transparent!important;
}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link:hover{
  color:#0f172a!important;
  border-color:rgba(100,116,139,.15)!important;
  background:rgba(37,99,235,.055)!important;
}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link.active{
  color:#9f1239!important;
  border-color:rgba(225,29,72,.22)!important;
  background:linear-gradient(90deg,rgba(225,29,72,.10),rgba(37,99,235,.055))!important;
  box-shadow:inset 3px 0 0 #e11d48,0 8px 20px rgba(100,116,139,.09)!important;
}
body[data-theme="light"] .sidebar .sidebar-nav-icon{color:#53657b!important;}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link.active .sidebar-nav-icon{color:#e11d48!important;}
body[data-theme="light"] .sidebar-collapse-toggle{
  border-color:var(--rp29-light-line)!important;
  background:linear-gradient(180deg,#ffffff,#eef4fa)!important;
  color:#334155!important;
  box-shadow:0 8px 18px rgba(100,116,139,.10)!important;
}
body[data-theme="light"] .nav-count{
  background:#e7edf5!important;
  border-color:#d6e0eb!important;
  color:#475569!important;
}
body[data-theme="light"] .topbar{
  background:rgba(255,255,255,.93)!important;
  border-bottom-color:var(--rp29-light-line)!important;
  box-shadow:0 8px 24px rgba(100,116,139,.07)!important;
}
body[data-theme="light"] .topbar .topbar-eyebrow{color:#526176!important;}
body[data-theme="light"] .topbar .topbar-version{
  background:#eef3f8!important;
  border-color:#d6e0eb!important;
  color:#172033!important;
}
body[data-theme="light"] .topbar .department-context-switch,
body[data-theme="light"] .topbar .department-context-static{
  border-color:var(--rp29-light-line)!important;
  background:linear-gradient(180deg,#ffffff,#f3f7fb)!important;
  box-shadow:inset 0 1px 0 #fff!important;
}
body[data-theme="light"] .topbar .department-context-switch span,
body[data-theme="light"] .topbar .department-context-static span{color:#718096!important;}
body[data-theme="light"] .topbar .department-context-switch select{
  border-color:#d6e0eb!important;
  background:#ffffff!important;
  color:#172033!important;
}
body[data-theme="light"] .topbar .department-context-static strong{color:#172033!important;}
body[data-theme="light"] .theme-switch,
body[data-theme="light"] .topbar-account-info,
body[data-theme="light"] .user-chip,
body[data-theme="light"] .topbar .btn:not(.primary){
  border-color:#d6e0eb!important;
  background:linear-gradient(180deg,#ffffff,#f2f6fb)!important;
  color:#172033!important;
  box-shadow:0 6px 16px rgba(100,116,139,.07)!important;
}
body[data-theme="light"] .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer),
body[data-theme="light"] .content :is(.form-subcard,.detail-item,.info-grid>div,.entity-card,.admin-panel,.admin-card,.admin-command-nav,.admin-water-source-row,.billing-status-card),
body[data-theme="light"] .rp55-dashboard :is(.card,.stat-card,.rp-feed-card,.rp-operational-card,.rp-overview-card){
  color:#172033!important;
  border-color:var(--rp29-light-line)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,255,255,.84)),
    radial-gradient(circle at 100% 0,rgba(37,99,235,.055),transparent 18rem),
    linear-gradient(145deg,var(--rp29-light-card),var(--rp29-light-card-2))!important;
  box-shadow:inset 0 1px 0 #fff,0 12px 30px rgba(100,116,139,.09)!important;
}
body[data-theme="light"] :is(h1,h2,h3,strong,th,td,.card-head,.page-head,.page-hero){color:#172033!important;}
body[data-theme="light"] :is(.muted,.subtle,small,label,.timeline-list small){color:#64748b!important;}
body[data-theme="light"] :is(input,select,textarea,.smart-person-picker,.smart-select-field){
  border-color:#d6e0eb!important;
  background:linear-gradient(180deg,#ffffff,#f7faff)!important;
  color:#172033!important;
  box-shadow:inset 0 1px 0 #fff!important;
}
body[data-theme="light"] input::placeholder,
body[data-theme="light"] textarea::placeholder{color:#94a3b8!important;}
body[data-theme="light"] .btn:not(.primary):not(.danger){
  border-color:#d6e0eb!important;
  background:linear-gradient(180deg,#ffffff,#eef4fa)!important;
  color:#172033!important;
  box-shadow:0 6px 16px rgba(100,116,139,.07)!important;
}
body[data-theme="light"] .table-wrap,
body[data-theme="light"] .card.table-wrap{background:#ffffff!important;}
body[data-theme="light"] table thead th{
  color:#55657a!important;
  border-bottom-color:#d6e0eb!important;
  background:linear-gradient(180deg,#edf3f8,#e6edf5)!important;
}
body[data-theme="light"] table tbody tr,
body[data-theme="light"] table tbody tr:nth-child(even){background:#ffffff!important;}
body[data-theme="light"] table tbody tr:nth-child(even){background:#f7f9fc!important;}
body[data-theme="light"] table tbody tr:hover{background:#edf4fb!important;}
body[data-theme="light"] table td{color:#26364b!important;border-bottom-color:rgba(100,116,139,.13)!important;}
body[data-theme="light"] .pill,
body[data-theme="light"] .status,
body[data-theme="light"] .role{
  border-color:#d6e0eb!important;
  background:#eef3f8!important;
  color:#34445a!important;
}
body[data-theme="light"] .timeline-list article,
body[data-theme="light"] .v138-feed-item,
body[data-theme="light"] .feed-list article{
  border-color:#d9e2ec!important;
  background:#ffffff!important;
  color:#172033!important;
  box-shadow:0 7px 18px rgba(100,116,139,.07)!important;
}
body[data-theme="light"] .portal-footer a{
  border-color:#d6e0eb!important;
  background:#f8fafc!important;
  color:#334155!important;
}
body[data-theme="light"] .check-tab{
  border-color:#d6e0eb!important;
  background:linear-gradient(180deg,#ffffff,#eef4fa)!important;
  color:#334155!important;
}
body[data-theme="light"] .check-tab strong{background:#e7edf5!important;color:#475569!important;}
body[data-theme="light"] .check-tab.active{
  border-color:rgba(225,29,72,.22)!important;
  background:linear-gradient(90deg,rgba(225,29,72,.10),rgba(37,99,235,.05))!important;
  color:#9f1239!important;
}

/* Tablet: kein zusammengedrückter Header, Sidebar als sauberes Overlay. */
@media(max-width:1100px){
  html body .app-shell{grid-template-columns:1fr!important;}
  html body .main{margin-left:0!important;}
  html body .sidebar{
    position:fixed!important;
    inset:0 auto 0 0!important;
    z-index:120!important;
    width:min(88vw,320px)!important;
    min-width:min(88vw,320px)!important;
    max-width:min(88vw,320px)!important;
    height:100dvh!important;
    transform:translateX(-104%)!important;
    transition:transform .22s ease!important;
  }
  html body.sidebar-open .sidebar{transform:translateX(0)!important;}
  html body .sidebar-collapse-toggle{display:none!important;}
  html body .topbar .topbar-desktop-shell{
    grid-template-columns:auto minmax(0,1fr) auto!important;
    grid-template-areas:"menu title actions" "context context context"!important;
    min-height:0!important;
    padding:8px 13px!important;
    row-gap:8px!important;
  }
  html body .topbar-tablet-menu{grid-area:menu!important;}
  html body .topbar-title{grid-area:title!important;}
  html body .topbar-context{grid-area:context!important;}
  html body .topbar-actions{grid-area:actions!important;}
  html body .topbar .department-context-switch,
  html body .topbar .department-context-static{max-width:none!important;}
  html body .content{padding:17px 14px 26px!important;}
  html body .toolbar{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important;}
  html body .toolbar>*{width:100%!important;max-width:100%!important;}
}

/* Mobile: Inhalte nicht mehr gequetscht oder horizontal abgeschnitten. */
@media(max-width:760px){
  html body .content{padding:13px 11px 22px!important;}
  html body .rp-mobile-header{padding-top:max(8px,env(safe-area-inset-top))!important;}
  html body .toolbar{grid-template-columns:1fr!important;gap:10px!important;}
  html body .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.portal-footer){
    max-width:100%!important;
    border-radius:17px!important;
  }
  html body .page-head,
  html body .page-hero{padding:17px 15px!important;gap:14px!important;}
  html body .hero-actions,
  html body .form-actions{width:100%!important;}
  html body .hero-actions .btn,
  html body .form-actions .btn{width:100%!important;}
  html body .billing-invoice-actions,
  html body .billing-status-form{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
    width:100%!important;
  }
  html body .billing-invoice-actions>*,
  html body .billing-status-form>*{width:100%!important;max-width:100%!important;}
  html body .table-wrap table.responsive-table tbody tr{
    width:100%!important;
    max-width:100%!important;
    padding:8px 13px!important;
    border-radius:17px!important;
  }
  html body .table-wrap table.responsive-table tbody td{
    grid-template-columns:minmax(94px,36%) minmax(0,1fr)!important;
    gap:9px!important;
    padding:10px 0!important;
  }
  html body .table-wrap table.responsive-table td.actions,
  html body .table-wrap table.responsive-table td.table-actions,
  html body .table-wrap table.responsive-table td.mobile-action-cell{
    display:block!important;
    padding-top:13px!important;
  }
  html body .table-wrap table.responsive-table td.actions .btn,
  html body .table-wrap table.responsive-table td.table-actions .btn,
  html body .table-wrap table.responsive-table td.mobile-action-cell .btn{width:100%!important;}
  html body .check-tabs{display:grid!important;grid-template-columns:1fr!important;}
  html body .check-tab{width:100%!important;}
  body[data-theme="light"] .table-wrap table.responsive-table tbody tr{
    background:#ffffff!important;
    border-color:#d6e0eb!important;
    box-shadow:0 9px 22px rgba(100,116,139,.08)!important;
  }
}

@media(max-width:430px){
  html body .table-wrap table.responsive-table tbody td{
    grid-template-columns:1fr!important;
    gap:4px!important;
  }
  html body .topbar .topbar-title{gap:7px!important;}
  html body .topbar .dev-organization-chip{font-size:.64rem!important;padding-inline:8px!important;}
}

/* ui-fixes-v1330.css */
/* Retter-Portal v1.3.30
   Verhindert jede Überlagerung zwischen Sidebar und Hauptbereich.
   Sidebar und Main verwenden auf Desktop dieselbe feste Layout-Quelle. */

:root{
  --rp30-sidebar-expanded:286px;
  --rp30-sidebar-collapsed:88px;
}

@media(min-width:1101px){
  html body .app-shell{
    display:block!important;
    min-height:100vh!important;
    grid-template-columns:none!important;
  }

  html body .sidebar{
    position:fixed!important;
    inset:0 auto 0 0!important;
    z-index:100!important;
    width:var(--rp30-sidebar-expanded)!important;
    min-width:var(--rp30-sidebar-expanded)!important;
    max-width:var(--rp30-sidebar-expanded)!important;
    height:100vh!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    transform:none!important;
    transition:width .22s ease,min-width .22s ease,max-width .22s ease,padding .22s ease!important;
  }

  html body .main{
    position:relative!important;
    display:block!important;
    min-width:0!important;
    width:calc(100% - var(--rp30-sidebar-expanded))!important;
    max-width:none!important;
    margin:0 0 0 var(--rp30-sidebar-expanded)!important;
    padding:0!important;
    overflow:visible!important;
    transition:width .22s ease,margin-left .22s ease!important;
  }

  html body.sidebar-collapsed .sidebar{
    width:var(--rp30-sidebar-collapsed)!important;
    min-width:var(--rp30-sidebar-collapsed)!important;
    max-width:var(--rp30-sidebar-collapsed)!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }

  html body.sidebar-collapsed .main{
    width:calc(100% - var(--rp30-sidebar-collapsed))!important;
    margin-left:var(--rp30-sidebar-collapsed)!important;
  }

  html body .app-shell--navigation-disabled .main,
  html body.sidebar-collapsed .app-shell--navigation-disabled .main{
    width:100%!important;
    margin-left:0!important;
  }

  html body .topbar,
  html body .content,
  html body .v138-system-banners,
  html body .dev-impersonation-banner{
    max-width:100%!important;
    min-width:0!important;
  }

  html body .content{
    overflow-x:hidden!important;
  }

  html body.sidebar-collapsed .sidebar-brand-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    justify-items:center!important;
    gap:8px!important;
  }

  html body.sidebar-collapsed .sidebar .brand{
    width:100%!important;
    min-width:0!important;
    justify-content:center!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  html body.sidebar-collapsed .sidebar-collapse-toggle{
    margin:0 auto!important;
  }

  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link{
    width:100%!important;
    max-width:100%!important;
    justify-content:center!important;
  }
}

@media(max-width:1100px){
  html body .app-shell{
    display:block!important;
    grid-template-columns:none!important;
  }

  html body .main,
  html body.sidebar-collapsed .main{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
  }

  html body.sidebar-collapsed .sidebar{
    width:min(91vw,318px)!important;
    min-width:min(91vw,318px)!important;
    max-width:min(91vw,318px)!important;
  }
}

/* ui-fixes-v1331.css */
/* Retter-Portal v1.3.31
   Header ohne künstliche Lücke, kompakter Markenblock, neues Sidebar-Symbol
   und ein klarer, kontrastreicher Whitemode. */

:root{
  --rp31-sidebar-expanded:286px;
  --rp31-sidebar-collapsed:88px;
  --rp31-light-bg:#eef3f8;
  --rp31-light-bg-2:#f7f9fc;
  --rp31-light-card:#ffffff;
  --rp31-light-card-alt:#f8fafc;
  --rp31-light-line:#d8e1eb;
  --rp31-light-text:#172033;
  --rp31-light-muted:#64748b;
}

/* Header: die Feuerwehr-Auswahl beginnt direkt nach Produkt/Version bzw. DEV-Chip. */
@media(min-width:1101px){
  html body .topbar .topbar-desktop-shell{
    grid-template-columns:max-content minmax(360px,620px) minmax(360px,1fr)!important;
    column-gap:12px!important;
  }
  html body .topbar .topbar-title{
    width:max-content!important;
    min-width:0!important;
  }
  html body .topbar .topbar-context{
    width:100%!important;
    min-width:0!important;
  }
}

/* Markenblock: Retter-Portal bleibt bei ausgeklappter Sidebar in einer Zeile. */
html body .sidebar-brand-row{
  position:relative!important;
  display:block!important;
  min-height:72px!important;
  padding-right:46px!important;
}
html body .sidebar .brand{
  width:100%!important;
  min-width:0!important;
  padding-right:0!important;
}
html body .sidebar .brand-logo-wrap,
html body .sidebar .brand-logo{
  width:46px!important;
  min-width:46px!important;
  max-width:46px!important;
  height:46px!important;
  max-height:46px!important;
}
html body .sidebar .brand-text{
  display:block!important;
  min-width:0!important;
  white-space:nowrap!important;
  font-size:1.18rem!important;
  line-height:1.05!important;
  letter-spacing:-.025em!important;
}
html body .sidebar .brand-context,
html body .sidebar .brand-text small{
  margin-top:5px!important;
  font-size:.67rem!important;
  letter-spacing:.052em!important;
  white-space:nowrap!important;
}

/* Neues, verständliches Panel-Symbol statt Textpfeil. */
html body .sidebar-collapse-toggle{
  position:absolute!important;
  top:7px!important;
  right:0!important;
  width:40px!important;
  height:40px!important;
  margin:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:13px!important;
}
html body .sidebar-collapse-toggle__icon{
  width:21px!important;
  height:21px!important;
  display:block!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.7!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
html body .sidebar-collapse-toggle__arrow{
  transform-box:fill-box!important;
  transform-origin:center!important;
  transition:transform .2s ease!important;
}
html body .sidebar-collapse-toggle.is-collapsed .sidebar-collapse-toggle__arrow{
  transform:rotate(180deg)!important;
}

@media(min-width:1101px){
  html body.sidebar-collapsed .sidebar-brand-row{
    position:static!important;
    display:grid!important;
    min-height:0!important;
    padding-right:0!important;
    justify-items:center!important;
  }
  html body.sidebar-collapsed .sidebar-collapse-toggle{
    position:static!important;
    margin:0 auto!important;
  }
  html body.sidebar-collapsed .sidebar .brand-logo-wrap,
  html body.sidebar-collapsed .sidebar .brand-logo{
    width:46px!important;
    min-width:46px!important;
    max-width:46px!important;
    height:46px!important;
    max-height:46px!important;
  }
}

/* Sidebar-Navigation minimal größer, aber weiterhin sauber proportioniert. */
html body .sidebar nav a.sidebar-nav-link{
  font-size:1.015rem!important;
  line-height:1.18!important;
}

/* --------------------------------------------------------------------------
   Whitemode: bewusst kein ausgewaschener Pastell-Look mehr.
   Dunkle Sidebar + klarer heller Arbeitsbereich schaffen stabile Kontraste.
   -------------------------------------------------------------------------- */
body[data-theme="light"]{
  --bg:var(--rp31-light-bg)!important;
  --bg2:var(--rp31-light-bg-2)!important;
  --surface:var(--rp31-light-card)!important;
  --surface-2:var(--rp31-light-card-alt)!important;
  --text:var(--rp31-light-text)!important;
  --muted:var(--rp31-light-muted)!important;
  --muted-2:#8290a3!important;
  --line:var(--rp31-light-line)!important;
  --line-soft:rgba(100,116,139,.13)!important;
  color-scheme:light!important;
  color:var(--rp31-light-text)!important;
  background:linear-gradient(180deg,var(--rp31-light-bg),var(--rp31-light-bg-2))!important;
}
body[data-theme="light"]::before{
  display:none!important;
  content:none!important;
}
body[data-theme="light"] .main{
  background:linear-gradient(180deg,#edf2f7 0%,#f7f9fc 100%)!important;
}

/* Sidebar bleibt auch im Whitemode dunkel und vollständig lesbar. */
body[data-theme="light"] .sidebar{
  color:#e8eef7!important;
  background:
    radial-gradient(circle at 0 -8%,rgba(225,29,72,.16),transparent 20rem),
    linear-gradient(180deg,#091426 0%,#071120 100%)!important;
  border-right-color:rgba(148,163,184,.14)!important;
  box-shadow:14px 0 40px rgba(15,23,42,.15)!important;
}
body[data-theme="light"] .sidebar .logo-light{display:none!important;}
body[data-theme="light"] .sidebar .logo-dark{display:block!important;}
body[data-theme="light"] .sidebar-brand-row{border-bottom-color:rgba(148,163,184,.13)!important;}
body[data-theme="light"] .sidebar .brand-text{color:#f8fafc!important;}
body[data-theme="light"] .sidebar .brand-context,
body[data-theme="light"] .sidebar .brand-text small,
body[data-theme="light"] .sidebar .nav-section{color:#93a3b8!important;}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link{
  color:#d4deeb!important;
  background:transparent!important;
  border-color:transparent!important;
}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link:hover{
  color:#fff!important;
  background:rgba(255,255,255,.055)!important;
  border-color:rgba(148,163,184,.12)!important;
}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link.active{
  color:#fff!important;
  background:linear-gradient(90deg,rgba(225,29,72,.18),rgba(37,99,235,.075))!important;
  border-color:rgba(251,113,133,.27)!important;
  box-shadow:inset 3px 0 0 #ef3154,0 10px 24px rgba(2,6,23,.15)!important;
}
body[data-theme="light"] .sidebar .sidebar-nav-icon{color:#9babc0!important;}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link.active .sidebar-nav-icon{color:#fb7185!important;}
body[data-theme="light"] .sidebar-collapse-toggle{
  color:#dce6f2!important;
  border-color:rgba(148,163,184,.15)!important;
  background:linear-gradient(180deg,rgba(18,38,64,.94),rgba(9,23,41,.92))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 9px 22px rgba(0,0,0,.17)!important;
}
body[data-theme="light"] .nav-count{
  color:#eef4fb!important;
  background:rgba(148,163,184,.20)!important;
  border-color:rgba(148,163,184,.15)!important;
}

/* Header bleibt hell, aber kompakt und kontrastreich. */
body[data-theme="light"] .topbar{
  background:rgba(255,255,255,.96)!important;
  border-bottom-color:var(--rp31-light-line)!important;
  box-shadow:0 5px 18px rgba(15,23,42,.06)!important;
}
body[data-theme="light"] .topbar .topbar-eyebrow{color:#526176!important;}
body[data-theme="light"] .topbar .topbar-version{
  color:#172033!important;
  background:#eef3f8!important;
  border-color:#d8e1eb!important;
}
body[data-theme="light"] .topbar .department-context-switch,
body[data-theme="light"] .topbar .department-context-static{
  background:#f8fafc!important;
  border-color:#d8e1eb!important;
  box-shadow:inset 0 1px 0 #fff!important;
}
body[data-theme="light"] .topbar .department-context-switch span,
body[data-theme="light"] .topbar .department-context-static span{color:#6b7b90!important;}
body[data-theme="light"] .topbar .department-context-switch select{
  color:#172033!important;
  background:#ffffff!important;
  border-color:#d8e1eb!important;
}
body[data-theme="light"] .topbar .department-context-static strong{color:#172033!important;}
body[data-theme="light"] .theme-switch,
body[data-theme="light"] .topbar-account-info,
body[data-theme="light"] .user-chip,
body[data-theme="light"] .topbar .btn:not(.primary){
  color:#172033!important;
  background:#ffffff!important;
  border-color:#d8e1eb!important;
  box-shadow:0 4px 12px rgba(15,23,42,.05)!important;
}

/* Klare, weiße Flächen ohne zusätzliche Farbschleier. */
body[data-theme="light"] .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer),
body[data-theme="light"] .content :is(.form-subcard,.detail-item,.info-grid>div,.entity-card,.admin-panel,.admin-card,.admin-command-nav,.admin-water-source-row,.billing-status-card,.stat-card),
body[data-theme="light"] .rp55-dashboard :is(.card,.stat-card,.rp-feed-card,.rp-operational-card,.rp-overview-card),
body[data-theme="light"] :is(.feed-card,.feed-list article,.timeline-list article,.v138-feed-item,.dashboard-card,.overview-card){
  color:var(--rp31-light-text)!important;
  background:var(--rp31-light-card)!important;
  background-image:none!important;
  border-color:var(--rp31-light-line)!important;
  box-shadow:0 8px 24px rgba(15,23,42,.07)!important;
}
body[data-theme="light"] .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer)::before,
body[data-theme="light"] .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer)::after{
  display:none!important;
  content:none!important;
}
body[data-theme="light"] :is(h1,h2,h3,h4,strong,th,td,.card-head,.page-head,.page-hero){color:var(--rp31-light-text)!important;}
body[data-theme="light"] :is(.muted,.subtle,small,label,.timeline-list small){color:var(--rp31-light-muted)!important;}
body[data-theme="light"] :is(input,select,textarea,.smart-person-picker,.smart-select-field){
  color:var(--rp31-light-text)!important;
  background:#ffffff!important;
  background-image:none!important;
  border-color:#d8e1eb!important;
  box-shadow:inset 0 1px 0 #fff!important;
}
body[data-theme="light"] input::placeholder,
body[data-theme="light"] textarea::placeholder{color:#94a3b8!important;}
body[data-theme="light"] .btn:not(.primary):not(.danger){
  color:#172033!important;
  background:#f8fafc!important;
  background-image:none!important;
  border-color:#d8e1eb!important;
  box-shadow:0 4px 12px rgba(15,23,42,.05)!important;
}
body[data-theme="light"] .table-wrap,
body[data-theme="light"] .card.table-wrap{background:#ffffff!important;}
body[data-theme="light"] table thead th{
  color:#526176!important;
  background:#edf2f7!important;
  background-image:none!important;
  border-bottom-color:#d8e1eb!important;
}
body[data-theme="light"] table tbody tr{background:#ffffff!important;}
body[data-theme="light"] table tbody tr:nth-child(even){background:#f8fafc!important;}
body[data-theme="light"] table tbody tr:hover{background:#eef5fb!important;}
body[data-theme="light"] table td{color:#26364b!important;border-bottom-color:rgba(100,116,139,.14)!important;}
body[data-theme="light"] :is(.pill,.status,.role){
  color:#334155!important;
  background:#eef3f8!important;
  background-image:none!important;
  border-color:#d8e1eb!important;
}
body[data-theme="light"] .portal-footer a{
  color:#334155!important;
  background:#f8fafc!important;
  border-color:#d8e1eb!important;
}

/* Der Benachrichtigungsstreifen behält einen klaren Akzent, ohne Pastellfläche. */
body[data-theme="light"] .dashboard-notification-strip{
  color:#172033!important;
  background:#ffffff!important;
  background-image:linear-gradient(90deg,rgba(225,29,72,.055),rgba(37,99,235,.035))!important;
  border-color:rgba(225,29,72,.24)!important;
  box-shadow:0 7px 20px rgba(15,23,42,.07)!important;
}
body[data-theme="light"] .dashboard-notification-strip__copy small{color:#64748b!important;}
body[data-theme="light"] .dashboard-notification-strip__action{
  color:#172033!important;
  background:#ffffff!important;
  border-color:#d8e1eb!important;
}

/* Tablet und Smartphone: Header und Markenblock bleiben stabil. */
@media(max-width:1100px){
  html body .sidebar-brand-row{
    min-height:72px!important;
    padding-right:0!important;
  }
  html body .sidebar-collapse-toggle{display:none!important;}
  html body .sidebar .brand{
    padding-right:6px!important;
  }
  html body .topbar .topbar-desktop-shell{
    grid-template-columns:auto minmax(0,1fr) auto!important;
  }
}

@media(max-width:760px){
  html body .sidebar .brand-text{
    font-size:1.16rem!important;
    white-space:nowrap!important;
  }
  html body .sidebar .brand-context,
  html body .sidebar .brand-text small{
    font-size:.66rem!important;
    white-space:nowrap!important;
  }
  body[data-theme="light"] .table-wrap table.responsive-table tbody tr{
    color:#172033!important;
    background:#ffffff!important;
    background-image:none!important;
    border-color:#d8e1eb!important;
    box-shadow:0 7px 20px rgba(15,23,42,.07)!important;
  }
  body[data-theme="light"] .table-wrap table.responsive-table tbody td{
    color:#26364b!important;
    border-bottom-color:rgba(100,116,139,.14)!important;
  }
  body[data-theme="light"] .table-wrap table.responsive-table td::before{color:#64748b!important;}
}

/* Semantische Statusfarben bleiben auch im hellen Modus erhalten. */
body[data-theme="light"] :is(.status.Aktiv,.status.Verfügbar,.status.Genehmigt,.status.Bezahlt,.ok){
  color:#047857!important;background:#ecfdf5!important;border-color:#a7f3d0!important;
}
body[data-theme="light"] :is(.status.Defekt,.status.Abgelehnt,.status.Storniert,.danger-text){
  color:#be123c!important;background:#fff1f2!important;border-color:#fecdd3!important;
}
body[data-theme="light"] :is(.status.Offen,.status.Entwurf,.status.In,.status.In.Prüfung){
  color:#92400e!important;background:#fffbeb!important;border-color:#fde68a!important;
}

/* ui-fixes-v1332.css */
/* Retter-Portal v1.3.32
   Markenblock entquetscht und Whitemode vollständig kontrastreicher aufgebaut. */

:root{
  --rp32-sidebar-expanded:286px;
  --rp32-light-page:#e9eef5;
  --rp32-light-page-2:#f4f7fb;
  --rp32-light-card:#ffffff;
  --rp32-light-card-soft:#f8fafc;
  --rp32-light-card-muted:#f1f5f9;
  --rp32-light-line:#cfd9e5;
  --rp32-light-line-soft:rgba(100,116,139,.16);
  --rp32-light-text:#172033;
  --rp32-light-muted:#5d6b7f;
  --rp32-light-shadow:0 12px 30px rgba(15,23,42,.08);
}

/* --------------------------------------------------------------------------
   Sidebar-Markenbereich: Button sitzt in eigener Spalte statt über Text.
   -------------------------------------------------------------------------- */
html body .sidebar-brand-row{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 38px!important;
  align-items:start!important;
  column-gap:8px!important;
  min-height:72px!important;
  padding:0 0 14px!important;
  margin:0 0 14px!important;
}
html body .sidebar .brand{
  width:auto!important;
  min-width:0!important;
  margin:0!important;
  padding:4px 0 0 4px!important;
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
}
html body .sidebar .brand-logo-wrap,
html body .sidebar .brand-logo{
  width:46px!important;
  min-width:46px!important;
  max-width:46px!important;
  height:46px!important;
  max-height:46px!important;
}
html body .sidebar .brand-text{
  min-width:0!important;
  display:block!important;
  font-size:1.16rem!important;
  line-height:1.05!important;
  letter-spacing:-.022em!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
html body .sidebar .brand-context,
html body .sidebar .brand-text small{
  display:block!important;
  width:max-content!important;
  max-width:100%!important;
  margin-top:5px!important;
  font-size:.65rem!important;
  line-height:1.15!important;
  letter-spacing:.045em!important;
  white-space:nowrap!important;
}
html body .sidebar-collapse-toggle{
  position:static!important;
  grid-column:2!important;
  grid-row:1!important;
  align-self:start!important;
  justify-self:end!important;
  width:38px!important;
  height:38px!important;
  margin:4px 0 0!important;
  border-radius:12px!important;
}
html body .sidebar-collapse-toggle__icon{width:20px!important;height:20px!important;}

@media(min-width:1101px){
  html body.sidebar-collapsed .sidebar-brand-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    justify-items:center!important;
    gap:10px!important;
    padding-bottom:12px!important;
  }
  html body.sidebar-collapsed .sidebar .brand{
    display:block!important;
    padding:0!important;
  }
  html body.sidebar-collapsed .sidebar-collapse-toggle{
    grid-column:1!important;
    grid-row:2!important;
    justify-self:center!important;
    margin:0!important;
  }
}

/* --------------------------------------------------------------------------
   Whitemode: klare Hierarchie, keine ausgewaschenen Flächen und keine
   unlesbaren Sidebar-Einträge.
   -------------------------------------------------------------------------- */
body[data-theme="light"]{
  --bg:var(--rp32-light-page)!important;
  --bg2:var(--rp32-light-page-2)!important;
  --surface:var(--rp32-light-card)!important;
  --surface-2:var(--rp32-light-card-soft)!important;
  --text:var(--rp32-light-text)!important;
  --muted:var(--rp32-light-muted)!important;
  --muted-2:#7a8798!important;
  --line:var(--rp32-light-line)!important;
  --line-soft:var(--rp32-light-line-soft)!important;
  color:var(--rp32-light-text)!important;
  background:linear-gradient(180deg,var(--rp32-light-page),var(--rp32-light-page-2))!important;
}
body[data-theme="light"]::before{display:none!important;content:none!important;}
body[data-theme="light"] .main{
  color:var(--rp32-light-text)!important;
  background:
    radial-gradient(circle at 8% 0,rgba(225,29,72,.045),transparent 25rem),
    radial-gradient(circle at 92% 0,rgba(37,99,235,.055),transparent 28rem),
    linear-gradient(180deg,var(--rp32-light-page),var(--rp32-light-page-2))!important;
}

/* Sidebar in Lightmode bleibt dunkel, aber alle Einträge sind voll lesbar. */
body[data-theme="light"] .sidebar{
  color:#eef4fb!important;
  background:
    radial-gradient(circle at 0 -8%,rgba(225,29,72,.17),transparent 20rem),
    linear-gradient(180deg,#091426 0%,#071120 100%)!important;
  border-right-color:rgba(148,163,184,.16)!important;
}
body[data-theme="light"] .sidebar,
body[data-theme="light"] .sidebar *{opacity:1!important;}
body[data-theme="light"] .sidebar .brand-text{color:#f8fafc!important;}
body[data-theme="light"] .sidebar .brand-context,
body[data-theme="light"] .sidebar .brand-text small{color:#9caabe!important;}
body[data-theme="light"] .sidebar .nav-section{color:#91a0b4!important;}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link,
body[data-theme="light"] .sidebar .sidebar-nav-link{
  color:#d9e2ee!important;
  background:transparent!important;
  border-color:transparent!important;
  text-shadow:none!important;
}
body[data-theme="light"] .sidebar .sidebar-nav-label{color:inherit!important;}
body[data-theme="light"] .sidebar .sidebar-nav-icon{color:#9eacc0!important;}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link:hover,
body[data-theme="light"] .sidebar .sidebar-nav-link:hover{
  color:#fff!important;
  background:rgba(255,255,255,.06)!important;
  border-color:rgba(148,163,184,.14)!important;
}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link.active,
body[data-theme="light"] .sidebar .sidebar-nav-link.active{
  color:#fff!important;
  background:linear-gradient(90deg,rgba(225,29,72,.19),rgba(37,99,235,.08))!important;
  border-color:rgba(251,113,133,.28)!important;
  box-shadow:inset 3px 0 0 #ef3154,0 10px 24px rgba(2,6,23,.15)!important;
}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link.active .sidebar-nav-icon{color:#fb7185!important;}
body[data-theme="light"] .nav-count{
  color:#fff!important;
  background:rgba(148,163,184,.22)!important;
  border-color:rgba(148,163,184,.16)!important;
}

/* Header */
body[data-theme="light"] .topbar{
  background:rgba(255,255,255,.97)!important;
  border-bottom:1px solid var(--rp32-light-line)!important;
  box-shadow:0 5px 18px rgba(15,23,42,.07)!important;
}
body[data-theme="light"] .topbar .topbar-eyebrow{color:#4f5e72!important;}
body[data-theme="light"] .topbar .topbar-version{
  color:var(--rp32-light-text)!important;
  background:#edf2f7!important;
  border-color:var(--rp32-light-line)!important;
}
body[data-theme="light"] .topbar :is(.department-context-switch,.department-context-static){
  background:#f8fafc!important;
  background-image:none!important;
  border-color:var(--rp32-light-line)!important;
  box-shadow:inset 0 1px 0 #fff!important;
}
body[data-theme="light"] .topbar :is(.department-context-switch,.department-context-static) span{color:#66758a!important;}
body[data-theme="light"] .topbar .department-context-switch select,
body[data-theme="light"] .topbar .department-context-static strong{color:var(--rp32-light-text)!important;}
body[data-theme="light"] .topbar .department-context-switch select{background:#fff!important;border-color:var(--rp32-light-line)!important;}
body[data-theme="light"] .topbar :is(.theme-switch,.topbar-account-info,.user-chip,.btn:not(.primary)){
  color:var(--rp32-light-text)!important;
  background:#fff!important;
  background-image:none!important;
  border-color:var(--rp32-light-line)!important;
  box-shadow:0 4px 12px rgba(15,23,42,.05)!important;
}

/* Hauptflächen */
body[data-theme="light"] .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer),
body[data-theme="light"] .content :is(.form-subcard,.detail-item,.info-grid>div,.entity-card,.admin-panel,.admin-card,.admin-command-nav,.admin-water-source-row,.billing-status-card,.stat-card),
body[data-theme="light"] .rp55-dashboard :is(.rp55-dash-hero,.card,.rp55-kpi-card,.rp55-focus-card,.rp55-own-card,.rp55-table-card),
body[data-theme="light"] :is(.feed-card,.dashboard-card,.overview-card){
  color:var(--rp32-light-text)!important;
  background:var(--rp32-light-card)!important;
  background-image:none!important;
  border-color:var(--rp32-light-line)!important;
  box-shadow:var(--rp32-light-shadow)!important;
}
body[data-theme="light"] .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer)::before,
body[data-theme="light"] .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer)::after,
body[data-theme="light"] .rp55-dashboard :is(.rp55-dash-hero,.card,.rp55-kpi-card)::before,
body[data-theme="light"] .rp55-dashboard :is(.rp55-dash-hero,.card,.rp55-kpi-card)::after{
  display:none!important;
  content:none!important;
}
body[data-theme="light"] :is(h1,h2,h3,h4,h5,strong,th,.card-head,.page-head,.page-hero,.rp55-dash-hero){color:var(--rp32-light-text)!important;}
body[data-theme="light"] :is(.muted,.subtle,small,label,.timeline-list small,.rp55-kpi-card small){color:var(--rp32-light-muted)!important;}

/* Dashboard-Details */
body[data-theme="light"] .rp55-dash-hero{
  background:linear-gradient(145deg,#ffffff,#f8fafc)!important;
  border:1px solid var(--rp32-light-line)!important;
}
body[data-theme="light"] .rp55-dash-tags span{
  color:#334155!important;
  background:#f8fafc!important;
  border-color:var(--rp32-light-line)!important;
  box-shadow:0 4px 12px rgba(15,23,42,.04)!important;
}
body[data-theme="light"] .rp55-dash-actions .btn:not(.primary){
  color:#1e293b!important;
  background:linear-gradient(180deg,#ffffff,#f1f5f9)!important;
  border-color:var(--rp32-light-line)!important;
}
body[data-theme="light"] .rp-feed-card .timeline-list,
body[data-theme="light"] .timeline-list{background:transparent!important;}
body[data-theme="light"] .timeline-item,
body[data-theme="light"] .feed-list article,
body[data-theme="light"] .v138-feed-item{
  color:var(--rp32-light-text)!important;
  background:var(--rp32-light-card-soft)!important;
  background-image:none!important;
  border:1px solid var(--rp32-light-line)!important;
  box-shadow:0 4px 14px rgba(15,23,42,.045)!important;
}
body[data-theme="light"] .timeline-item:hover,
body[data-theme="light"] .feed-list article:hover{background:#f1f5f9!important;}
body[data-theme="light"] .rp55-kpi-card{
  background:linear-gradient(145deg,#fff,#f8fafc)!important;
  border:1px solid var(--rp32-light-line)!important;
}
body[data-theme="light"] .rp55-kpi-card strong{color:#101827!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"] .department-chip{
  color:var(--rp32-light-text)!important;
  background:var(--rp32-light-card-soft)!important;
  border-color:var(--rp32-light-line)!important;
}

/* Formulare, Tabellen, Badges */
body[data-theme="light"] :is(input,select,textarea,.smart-person-picker,.smart-select-field){
  color:var(--rp32-light-text)!important;
  background:#fff!important;
  background-image:none!important;
  border-color:var(--rp32-light-line)!important;
  box-shadow:inset 0 1px 0 #fff!important;
}
body[data-theme="light"] input::placeholder,
body[data-theme="light"] textarea::placeholder{color:#8b98a9!important;}
body[data-theme="light"] .btn:not(.primary):not(.danger){
  color:#1e293b!important;
  background:linear-gradient(180deg,#ffffff,#f1f5f9)!important;
  background-image:linear-gradient(180deg,#ffffff,#f1f5f9)!important;
  border-color:var(--rp32-light-line)!important;
  box-shadow:0 4px 12px rgba(15,23,42,.05)!important;
}
body[data-theme="light"] .btn:not(.primary):not(.danger):hover{background:linear-gradient(180deg,#f8fafc,#e8eef5)!important;}
body[data-theme="light"] .table-wrap,
body[data-theme="light"] .card.table-wrap{background:#fff!important;border-color:var(--rp32-light-line)!important;}
body[data-theme="light"] table thead th{
  color:#4e5d71!important;
  background:#eaf0f6!important;
  background-image:none!important;
  border-bottom-color:var(--rp32-light-line)!important;
}
body[data-theme="light"] table tbody tr{background:#fff!important;}
body[data-theme="light"] table tbody tr:nth-child(even){background:#f8fafc!important;}
body[data-theme="light"] table tbody tr:hover{background:#edf3f8!important;}
body[data-theme="light"] table td{color:#26364b!important;border-bottom-color:var(--rp32-light-line-soft)!important;}
body[data-theme="light"] :is(.pill,.status,.role){
  color:#334155!important;
  background:#edf2f7!important;
  background-image:none!important;
  border-color:var(--rp32-light-line)!important;
}
body[data-theme="light"] .portal-footer,
body[data-theme="light"] .portal-footer a{
  color:#334155!important;
}
body[data-theme="light"] .portal-footer a{
  background:#f8fafc!important;
  border-color:var(--rp32-light-line)!important;
}

/* Notification-Strip */
body[data-theme="light"] .dashboard-notification-strip{
  color:var(--rp32-light-text)!important;
  background:linear-gradient(90deg,#fff8fa,#f7f9ff)!important;
  border-color:rgba(225,29,72,.26)!important;
  box-shadow:0 8px 20px rgba(15,23,42,.07)!important;
}
body[data-theme="light"] .dashboard-notification-strip__copy small{color:var(--rp32-light-muted)!important;}
body[data-theme="light"] .dashboard-notification-strip__action{
  color:var(--rp32-light-text)!important;
  background:#fff!important;
  border-color:var(--rp32-light-line)!important;
}

/* Semantische Farben */
body[data-theme="light"] :is(.status.Aktiv,.status.Verfügbar,.status.Genehmigt,.status.Bezahlt,.ok){
  color:#047857!important;background:#ecfdf5!important;border-color:#a7f3d0!important;
}
body[data-theme="light"] :is(.status.Defekt,.status.Abgelehnt,.status.Storniert,.danger-text){
  color:#be123c!important;background:#fff1f2!important;border-color:#fecdd3!important;
}
body[data-theme="light"] :is(.status.Offen,.status.Entwurf,.status.In,.status.In.Prüfung){
  color:#92400e!important;background:#fffbeb!important;border-color:#fde68a!important;
}

@media(max-width:1100px){
  html body .sidebar-brand-row{
    display:block!important;
    min-height:72px!important;
    padding-right:0!important;
  }
  html body .sidebar .brand{
    display:grid!important;
    grid-template-columns:46px minmax(0,1fr)!important;
    padding:4px 4px 10px!important;
  }
}

@media(max-width:760px){
  body[data-theme="light"] .table-wrap table.responsive-table tbody tr{
    color:var(--rp32-light-text)!important;
    background:#fff!important;
    background-image:none!important;
    border-color:var(--rp32-light-line)!important;
    box-shadow:0 7px 20px rgba(15,23,42,.07)!important;
  }
  body[data-theme="light"] .table-wrap table.responsive-table tbody td{
    color:#26364b!important;
    border-bottom-color:var(--rp32-light-line-soft)!important;
  }
  body[data-theme="light"] .table-wrap table.responsive-table td::before{color:#66758a!important;}
}

/* ui-fixes-v1333.css */
/* Retter-Portal v1.3.33
   Whitemode als echte helle Variante des Darkmodes und dezenter Sidebar-Schalter. */

:root{
  --rp33-light-bg:#e7edf5;
  --rp33-light-bg-deep:#dfe7f1;
  --rp33-light-surface:#f7faff;
  --rp33-light-surface-2:#eef4fa;
  --rp33-light-surface-3:#e8f0f8;
  --rp33-light-line:rgba(71,85,105,.22);
  --rp33-light-line-soft:rgba(71,85,105,.12);
  --rp33-light-text:#152136;
  --rp33-light-muted:#607087;
  --rp33-light-shadow:0 18px 42px rgba(42,58,79,.10);
}

/* --------------------------------------------------------------------------
   Sidebar-Schalter kleiner und ruhiger.
   -------------------------------------------------------------------------- */
html body .sidebar-brand-row{
  grid-template-columns:minmax(0,1fr) 32px!important;
  column-gap:7px!important;
}
html body .sidebar-collapse-toggle{
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  min-height:32px!important;
  margin-top:6px!important;
  border-radius:10px!important;
  border-color:rgba(148,163,184,.13)!important;
  background:rgba(15,31,52,.72)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 5px 14px rgba(0,0,0,.12)!important;
  opacity:.88!important;
}
html body .sidebar-collapse-toggle:hover{
  opacity:1!important;
  background:rgba(22,43,69,.92)!important;
  border-color:rgba(148,163,184,.22)!important;
}
html body .sidebar-collapse-toggle__icon{
  width:16px!important;
  height:16px!important;
  stroke-width:1.55!important;
}
@media(min-width:1101px){
  html body.sidebar-collapsed .sidebar-collapse-toggle{
    width:32px!important;
    height:32px!important;
    margin-top:0!important;
  }
}

/* --------------------------------------------------------------------------
   Whitemode: gleiche Tiefe, Struktur und Akzentlogik wie der Darkmode.
   -------------------------------------------------------------------------- */
body[data-theme="light"]{
  --bg:var(--rp33-light-bg)!important;
  --bg2:var(--rp33-light-bg-deep)!important;
  --surface:var(--rp33-light-surface)!important;
  --surface-2:var(--rp33-light-surface-2)!important;
  --text:var(--rp33-light-text)!important;
  --muted:var(--rp33-light-muted)!important;
  --muted-2:#7d8da2!important;
  --line:var(--rp33-light-line)!important;
  --line-soft:var(--rp33-light-line-soft)!important;
  color-scheme:light!important;
  color:var(--rp33-light-text)!important;
  background:
    radial-gradient(circle at 8% -8%,rgba(225,29,72,.085),transparent 32rem),
    radial-gradient(circle at 94% -4%,rgba(37,99,235,.10),transparent 38rem),
    linear-gradient(135deg,var(--rp33-light-bg),#edf3f9 58%,var(--rp33-light-bg-deep))!important;
}
body[data-theme="light"]::before{
  display:block!important;
  content:""!important;
  position:fixed!important;
  inset:0!important;
  pointer-events:none!important;
  background-image:
    linear-gradient(rgba(82,101,125,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(82,101,125,.035) 1px,transparent 1px)!important;
  background-size:48px 48px!important;
  mask-image:linear-gradient(to bottom,#000,transparent 88%)!important;
}
body[data-theme="light"] .main{
  color:var(--rp33-light-text)!important;
  background:
    radial-gradient(circle at 11% 0,rgba(225,29,72,.055),transparent 27rem),
    radial-gradient(circle at 95% 0,rgba(37,99,235,.075),transparent 34rem),
    linear-gradient(135deg,#e8eef5,#f0f5fa 56%,#e4ecf5)!important;
}

/* Dunkle Sidebar bleibt in beiden Modi identisch und kontrastreich. */
body[data-theme="light"] .sidebar{
  color:#edf3fb!important;
  background:
    radial-gradient(circle at 0 -8%,rgba(225,29,72,.17),transparent 20rem),
    radial-gradient(circle at 120% 35%,rgba(37,99,235,.10),transparent 22rem),
    linear-gradient(180deg,#091426 0%,#071120 100%)!important;
  border-right-color:rgba(148,163,184,.15)!important;
  box-shadow:16px 0 42px rgba(15,23,42,.18)!important;
}
body[data-theme="light"] .sidebar .logo-light{display:none!important;}
body[data-theme="light"] .sidebar .logo-dark{display:block!important;}
body[data-theme="light"] .sidebar .brand-text{color:#f8fafc!important;}
body[data-theme="light"] .sidebar .brand-context,
body[data-theme="light"] .sidebar .brand-text small{color:#9baabd!important;}
body[data-theme="light"] .sidebar .nav-section{color:#8e9eb3!important;}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link{
  color:#d6e0ec!important;
  background:transparent!important;
  border-color:transparent!important;
}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link:hover{
  color:#fff!important;
  background:rgba(255,255,255,.055)!important;
  border-color:rgba(148,163,184,.13)!important;
}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link.active{
  color:#fff!important;
  background:linear-gradient(90deg,rgba(225,29,72,.19),rgba(37,99,235,.08))!important;
  border-color:rgba(251,113,133,.28)!important;
  box-shadow:inset 3px 0 0 #ef3154,0 10px 24px rgba(2,6,23,.15)!important;
}
body[data-theme="light"] .sidebar .sidebar-nav-icon{color:#9dacc0!important;}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link.active .sidebar-nav-icon{color:#fb7185!important;}
body[data-theme="light"] .sidebar-collapse-toggle{
  color:#cbd7e6!important;
  background:rgba(14,31,52,.74)!important;
  border-color:rgba(148,163,184,.13)!important;
}

/* Header nicht reinweiß, sondern als helle Glasfläche mit Darkmode-Tiefe. */
body[data-theme="light"] .topbar{
  background:rgba(239,245,251,.94)!important;
  border-bottom:1px solid rgba(71,85,105,.18)!important;
  box-shadow:0 7px 22px rgba(42,58,79,.09)!important;
  backdrop-filter:blur(20px) saturate(1.15)!important;
}
body[data-theme="light"] .topbar .topbar-eyebrow{color:#526176!important;}
body[data-theme="light"] .topbar .topbar-version{
  color:#172033!important;
  background:#e6edf5!important;
  border-color:rgba(71,85,105,.18)!important;
}
body[data-theme="light"] .topbar :is(.department-context-switch,.department-context-static){
  color:var(--rp33-light-text)!important;
  background:linear-gradient(180deg,#f7faff,#eaf1f8)!important;
  border-color:var(--rp33-light-line)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88),0 5px 14px rgba(42,58,79,.06)!important;
}
body[data-theme="light"] .topbar :is(.department-context-switch,.department-context-static) span{color:#68798f!important;}
body[data-theme="light"] .topbar .department-context-switch select,
body[data-theme="light"] .topbar .department-context-static strong{color:var(--rp33-light-text)!important;}
body[data-theme="light"] .topbar .department-context-switch select{
  background:#f8fbff!important;
  border-color:rgba(71,85,105,.17)!important;
}
body[data-theme="light"] .topbar :is(.theme-switch,.topbar-account-info,.user-chip,.btn:not(.primary)){
  color:var(--rp33-light-text)!important;
  background:linear-gradient(180deg,#f9fbfe,#eaf1f8)!important;
  border-color:rgba(71,85,105,.18)!important;
  box-shadow:inset 0 1px 0 #fff,0 5px 14px rgba(42,58,79,.06)!important;
}

/* Alle normalen Portalflächen wie der Darkmode, nur hell übersetzt. */
body[data-theme="light"] .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer),
body[data-theme="light"] .content :is(.form-subcard,.detail-item,.info-grid>div,.entity-card,.admin-panel,.admin-card,.admin-command-nav,.admin-water-source-row,.billing-status-card,.stat-card),
body[data-theme="light"] .rp55-dashboard :is(.rp55-dash-hero,.card,.rp55-kpi-card,.rp55-focus-card,.rp55-own-card,.rp55-table-card),
body[data-theme="light"] :is(.feed-card,.dashboard-card,.overview-card){
  color:var(--rp33-light-text)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.72),transparent 34%),
    radial-gradient(circle at 100% 0,rgba(37,99,235,.07),transparent 22rem),
    radial-gradient(circle at 0 0,rgba(225,29,72,.045),transparent 18rem),
    linear-gradient(145deg,var(--rp33-light-surface),var(--rp33-light-surface-2))!important;
  border-color:var(--rp33-light-line)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88),var(--rp33-light-shadow)!important;
}
body[data-theme="light"] .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer)::before,
body[data-theme="light"] .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer)::after{
  display:none!important;
  content:none!important;
}
body[data-theme="light"] .content > :is(.page-head,.page-hero){
  background:
    linear-gradient(180deg,rgba(255,255,255,.78),transparent 35%),
    radial-gradient(circle at 100% 0,rgba(37,99,235,.085),transparent 25rem),
    radial-gradient(circle at 0 0,rgba(225,29,72,.06),transparent 20rem),
    linear-gradient(145deg,#f9fbfe,#edf4fa)!important;
}
body[data-theme="light"] .content > .toolbar{
  background:linear-gradient(145deg,#f3f7fb,#e8f0f7)!important;
}
body[data-theme="light"] .content > :is(.pagination,.portal-footer){
  background:linear-gradient(145deg,#f5f9fd,#eaf1f8)!important;
}
body[data-theme="light"] :is(h1,h2,h3,h4,h5,strong,th,.card-head,.page-head,.page-hero,.rp55-dash-hero){color:var(--rp33-light-text)!important;}
body[data-theme="light"] :is(.muted,.subtle,small,label,.timeline-list small,.rp55-kpi-card small){color:var(--rp33-light-muted)!important;}

/* Entitätskarten und Dashboard-Elemente mit klarer Hierarchie. */
body[data-theme="light"] .entity-card,
body[data-theme="light"] .department-card,
body[data-theme="light"] .rp55-kpi-card,
body[data-theme="light"] .stat-card{
  background:
    linear-gradient(180deg,rgba(255,255,255,.82),transparent 35%),
    linear-gradient(145deg,#f8fbff,#eaf2f9)!important;
  border-color:var(--rp33-light-line)!important;
  box-shadow:inset 0 1px 0 #fff,0 14px 32px rgba(42,58,79,.09)!important;
}
body[data-theme="light"] .timeline-item,
body[data-theme="light"] .feed-list article,
body[data-theme="light"] .v138-feed-item{
  color:var(--rp33-light-text)!important;
  background:linear-gradient(145deg,#f8fbff,#edf3f9)!important;
  border:1px solid var(--rp33-light-line)!important;
  box-shadow:inset 0 1px 0 #fff,0 5px 16px rgba(42,58,79,.06)!important;
}
body[data-theme="light"] .timeline-item:hover,
body[data-theme="light"] .feed-list article:hover{background:linear-gradient(145deg,#f4f8fc,#e7eef6)!important;}
body[data-theme="light"] .rp55-dash-tags span,
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"] .department-chip{
  color:#304157!important;
  background:linear-gradient(180deg,#f9fbfe,#eaf1f8)!important;
  border-color:var(--rp33-light-line)!important;
  box-shadow:inset 0 1px 0 #fff,0 4px 12px rgba(42,58,79,.05)!important;
}

/* Formulare und Tabellen nicht mehr flach weiß. */
body[data-theme="light"] :is(input,select,textarea,.smart-person-picker,.smart-select-field){
  color:var(--rp33-light-text)!important;
  background:linear-gradient(180deg,#fbfdff,#eef4f9)!important;
  background-image:linear-gradient(180deg,#fbfdff,#eef4f9)!important;
  border-color:var(--rp33-light-line)!important;
  box-shadow:inset 0 1px 0 #fff!important;
}
body[data-theme="light"] :is(input,select,textarea):hover{border-color:rgba(71,85,105,.32)!important;}
body[data-theme="light"] :is(input,select,textarea):focus{
  border-color:rgba(225,29,72,.42)!important;
  box-shadow:0 0 0 3px rgba(225,29,72,.09),inset 0 1px 0 #fff!important;
}
body[data-theme="light"] input::placeholder,
body[data-theme="light"] textarea::placeholder{color:#8796a9!important;}
body[data-theme="light"] select option,
body[data-theme="light"] select optgroup{color:#142033!important;background:#f8fbff!important;}
body[data-theme="light"] .btn:not(.primary):not(.danger){
  color:#203047!important;
  background:linear-gradient(180deg,#f9fbfe,#e8eff7)!important;
  border-color:var(--rp33-light-line)!important;
  box-shadow:inset 0 1px 0 #fff,0 5px 13px rgba(42,58,79,.06)!important;
}
body[data-theme="light"] .btn:not(.primary):not(.danger):hover{
  background:linear-gradient(180deg,#f4f8fc,#dde7f1)!important;
}
body[data-theme="light"] .table-wrap,
body[data-theme="light"] .card.table-wrap{
  background:linear-gradient(145deg,#f7faff,#edf3f9)!important;
  border-color:var(--rp33-light-line)!important;
}
body[data-theme="light"] table thead th{
  color:#4a5b71!important;
  background:linear-gradient(180deg,#e4ecf4,#dbe5ef)!important;
  border-bottom-color:var(--rp33-light-line)!important;
}
body[data-theme="light"] table tbody tr{background:#f8fbff!important;}
body[data-theme="light"] table tbody tr:nth-child(even){background:#eef4fa!important;}
body[data-theme="light"] table tbody tr:hover{background:#e4edf6!important;}
body[data-theme="light"] table td{color:#26374d!important;border-bottom-color:var(--rp33-light-line-soft)!important;}
body[data-theme="light"] :is(.pill,.status,.role){
  color:#33455b!important;
  background:linear-gradient(180deg,#edf3f9,#e2eaf3)!important;
  border-color:var(--rp33-light-line)!important;
  box-shadow:inset 0 1px 0 #fff!important;
}
body[data-theme="light"] .portal-footer,
body[data-theme="light"] .portal-footer a{color:#34465c!important;}
body[data-theme="light"] .portal-footer a{
  background:linear-gradient(180deg,#f8fbfe,#e8eff7)!important;
  border-color:var(--rp33-light-line)!important;
}

/* Benachrichtigungen passen in beiden Modi zur Oberfläche. */
body[data-theme="light"] .dashboard-notification-strip{
  color:var(--rp33-light-text)!important;
  background:
    linear-gradient(90deg,rgba(225,29,72,.08),rgba(37,99,235,.075)),
    linear-gradient(145deg,#f9fbfe,#eaf1f8)!important;
  border-color:rgba(225,29,72,.24)!important;
  box-shadow:inset 0 1px 0 #fff,0 10px 24px rgba(42,58,79,.08)!important;
}
body[data-theme="light"] .dashboard-notification-strip__copy small{color:var(--rp33-light-muted)!important;}
body[data-theme="light"] .dashboard-notification-strip__action{
  color:var(--rp33-light-text)!important;
  background:linear-gradient(180deg,#f9fbfe,#e8eff7)!important;
  border-color:var(--rp33-light-line)!important;
}

/* Semantische Statusfarben bleiben bewusst klar. */
body[data-theme="light"] :is(.status.Aktiv,.status.Verfügbar,.status.Genehmigt,.status.Bezahlt,.ok){
  color:#047857!important;background:#e7f8f1!important;border-color:#a7e8cf!important;
}
body[data-theme="light"] :is(.status.Defekt,.status.Abgelehnt,.status.Storniert,.danger-text){
  color:#be123c!important;background:#fff0f3!important;border-color:#f7bdc9!important;
}
body[data-theme="light"] :is(.status.Offen,.status.Entwurf,.status.In,.status.In.Prüfung){
  color:#92400e!important;background:#fff8e7!important;border-color:#f4dc92!important;
}

@media(max-width:1100px){
  html body .sidebar-brand-row{
    display:block!important;
    padding-right:0!important;
  }
  html body .sidebar-collapse-toggle{display:none!important;}
}

@media(max-width:760px){
  body[data-theme="light"] .table-wrap table.responsive-table tbody tr{
    color:var(--rp33-light-text)!important;
    background:
      linear-gradient(180deg,rgba(255,255,255,.78),transparent 32%),
      linear-gradient(145deg,#f8fbff,#eaf2f9)!important;
    border-color:var(--rp33-light-line)!important;
    box-shadow:inset 0 1px 0 #fff,0 10px 24px rgba(42,58,79,.08)!important;
  }
  body[data-theme="light"] .table-wrap table.responsive-table tbody td{
    color:#26374d!important;
    border-bottom-color:var(--rp33-light-line-soft)!important;
  }
  body[data-theme="light"] .table-wrap table.responsive-table td::before{color:#66778d!important;}
}

/* ui-fixes-v1334.css */
/* Retter-Portal v1.3.34
   Whitemode nutzt exakt dieselbe Geometrie und Typografie wie der Darkmode.
   Ausschließlich Farben, Flächen, Konturen und Schatten wechseln mit dem Theme. */

:root{
  --rp34-light-page:#e8eef5;
  --rp34-light-page-deep:#e0e8f1;
  --rp34-light-surface:#f7f9fc;
  --rp34-light-surface-strong:#ffffff;
  --rp34-light-surface-soft:#eef3f8;
  --rp34-light-surface-muted:#e7edf4;
  --rp34-light-line:rgba(71,85,105,.21);
  --rp34-light-line-soft:rgba(71,85,105,.12);
  --rp34-light-text:#162238;
  --rp34-light-muted:#627187;
  --rp34-light-shadow:0 16px 38px rgba(42,58,79,.10);
}

/* --------------------------------------------------------------------------
   THEME-UNABHÄNGIGE GEOMETRIE UND TYPOGRAFIE
   Diese Regeln gelten bewusst identisch für Dark- und Whitemode.
   -------------------------------------------------------------------------- */
html body .sidebar{
  width:286px!important;
  min-width:286px!important;
  max-width:286px!important;
  padding:14px 13px 22px!important;
}
html body .sidebar-brand-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 32px!important;
  align-items:start!important;
  column-gap:7px!important;
  min-height:72px!important;
  padding:0 0 14px!important;
  margin:0 0 14px!important;
}
html body .sidebar .brand{
  width:auto!important;
  min-width:0!important;
  margin:0!important;
  padding:4px 0 0 4px!important;
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
}
html body .sidebar .brand-logo-wrap,
html body .sidebar .brand-logo{
  width:46px!important;
  min-width:46px!important;
  max-width:46px!important;
  height:46px!important;
  max-height:46px!important;
}
html body .sidebar .brand-text{
  min-width:0!important;
  display:block!important;
  font-size:1.16rem!important;
  line-height:1.05!important;
  letter-spacing:-.022em!important;
  font-weight:950!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
html body .sidebar .brand-context,
html body .sidebar .brand-text small{
  display:block!important;
  width:max-content!important;
  max-width:100%!important;
  margin-top:5px!important;
  font-size:.65rem!important;
  line-height:1.15!important;
  letter-spacing:.045em!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
html body .sidebar-collapse-toggle{
  position:static!important;
  grid-column:2!important;
  grid-row:1!important;
  align-self:start!important;
  justify-self:end!important;
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  min-height:32px!important;
  margin:6px 0 0!important;
  padding:0!important;
  border-radius:10px!important;
}
html body .sidebar-collapse-toggle__icon{width:16px!important;height:16px!important;}
html body .sidebar .nav-section{
  margin:18px 10px 8px!important;
  font-size:.72rem!important;
  line-height:1.2!important;
  letter-spacing:.14em!important;
  font-weight:950!important;
}
html body .sidebar nav a.sidebar-nav-link{
  min-height:48px!important;
  margin:2px 0!important;
  padding:12px 13px!important;
  gap:11px!important;
  border-radius:15px!important;
  font-size:1.015rem!important;
  line-height:1.18!important;
  font-weight:840!important;
  letter-spacing:-.012em!important;
}
html body .sidebar .sidebar-nav-icon{
  width:24px!important;
  min-width:24px!important;
  height:24px!important;
  flex:0 0 24px!important;
}
html body .sidebar .sidebar-nav-icon svg{width:20px!important;height:20px!important;}
html body .sidebar .sidebar-nav-label{line-height:1.18!important;}
html body .sidebar .nav-count{
  min-width:26px!important;
  height:26px!important;
  padding:0 8px!important;
  font-size:.74rem!important;
  line-height:1!important;
}

html body .content > :is(.page-head,.page-hero){
  min-height:118px!important;
  padding:20px clamp(22px,2.05vw,32px)!important;
  border-radius:22px!important;
}
html body .content > :is(.page-head,.page-hero) h1{
  font-size:clamp(2.05rem,2.45vw,2.85rem)!important;
  line-height:1.02!important;
  letter-spacing:-.05em!important;
}
html body .content > :is(.page-head,.page-hero) .muted{
  font-size:.96rem!important;
  line-height:1.55!important;
}
html body .content .stat-card{
  min-height:108px!important;
  padding:20px!important;
  border-radius:20px!important;
}
html body .content .stat-card strong{font-size:2rem!important;line-height:1!important;}
html body .content .card{border-radius:20px!important;}
html body .content .card-head h2{font-size:1.22rem!important;line-height:1.2!important;}
html body .content .toolbar{padding:14px!important;border-radius:18px!important;gap:11px!important;}
html body .content :is(input,select,textarea){font-size:1rem!important;}
html body .content .btn{font-size:.94rem!important;line-height:1.1!important;}

/* Kalender-Geometrie in beiden Modi identisch. */
html body .content .youth-mini-calendar{
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  gap:8px!important;
}
html body .content .youth-weekday{
  padding:8px 10px!important;
  font-size:.76rem!important;
  line-height:1.2!important;
}
html body .content .youth-day{
  min-height:106px!important;
  padding:10px!important;
  border-radius:16px!important;
  gap:5px!important;
}
html body .content .youth-calendar-event-link{
  font-size:.88rem!important;
  line-height:1.25!important;
  border-radius:10px!important;
}

@media(min-width:1101px){
  html body.sidebar-collapsed .sidebar{
    width:88px!important;
    min-width:88px!important;
    max-width:88px!important;
  }
  html body.sidebar-collapsed .sidebar-brand-row{
    grid-template-columns:1fr!important;
    justify-items:center!important;
    gap:10px!important;
    padding-bottom:12px!important;
  }
  html body.sidebar-collapsed .sidebar-collapse-toggle{
    grid-column:1!important;
    grid-row:2!important;
    justify-self:center!important;
    margin:0!important;
  }
}

/* --------------------------------------------------------------------------
   WHITEMODE: NUR FARBEN, FLÄCHEN, KONTUREN UND SCHATTEN
   -------------------------------------------------------------------------- */
body[data-theme="light"]{
  --bg:var(--rp34-light-page)!important;
  --bg2:var(--rp34-light-page-deep)!important;
  --surface:var(--rp34-light-surface)!important;
  --surface-2:var(--rp34-light-surface-soft)!important;
  --text:var(--rp34-light-text)!important;
  --muted:var(--rp34-light-muted)!important;
  --muted-2:#7d8ca0!important;
  --line:var(--rp34-light-line)!important;
  --line-soft:var(--rp34-light-line-soft)!important;
  color-scheme:light!important;
  color:var(--rp34-light-text)!important;
  background:
    radial-gradient(circle at 8% -8%,rgba(225,29,72,.07),transparent 32rem),
    radial-gradient(circle at 94% -4%,rgba(37,99,235,.085),transparent 38rem),
    linear-gradient(135deg,var(--rp34-light-page),#edf2f7 58%,var(--rp34-light-page-deep))!important;
}
body[data-theme="light"]::before{
  display:block!important;
  content:""!important;
  position:fixed!important;
  inset:0!important;
  pointer-events:none!important;
  background-image:
    linear-gradient(rgba(82,101,125,.026) 1px,transparent 1px),
    linear-gradient(90deg,rgba(82,101,125,.026) 1px,transparent 1px)!important;
  background-size:48px 48px!important;
  mask-image:linear-gradient(to bottom,#000,transparent 88%)!important;
}
body[data-theme="light"] .main{
  color:var(--rp34-light-text)!important;
  background:
    radial-gradient(circle at 10% 0,rgba(225,29,72,.045),transparent 27rem),
    radial-gradient(circle at 95% 0,rgba(37,99,235,.06),transparent 34rem),
    linear-gradient(135deg,#e7edf4,#eef3f8 56%,#e2eaf3)!important;
}

/* Sidebar bleibt pixelgleich zum Darkmode; nur die bereits dunklen Farben werden fixiert. */
body[data-theme="light"] .sidebar{
  color:#edf3fb!important;
  background:
    radial-gradient(circle at 0 -8%,rgba(225,29,72,.17),transparent 20rem),
    radial-gradient(circle at 120% 35%,rgba(37,99,235,.10),transparent 22rem),
    linear-gradient(180deg,#091426 0%,#071120 100%)!important;
  border-right-color:rgba(148,163,184,.15)!important;
  box-shadow:16px 0 42px rgba(15,23,42,.18)!important;
}
body[data-theme="light"] .sidebar,
body[data-theme="light"] .sidebar *{opacity:1!important;}
body[data-theme="light"] .sidebar .logo-light{display:none!important;}
body[data-theme="light"] .sidebar .logo-dark{display:block!important;}
body[data-theme="light"] .sidebar .brand-text{color:#f8fafc!important;}
body[data-theme="light"] .sidebar .brand-context,
body[data-theme="light"] .sidebar .brand-text small{color:#9baabd!important;}
body[data-theme="light"] .sidebar .nav-section{color:#8e9eb3!important;}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link{
  color:#d6e0ec!important;
  background:transparent!important;
  border-color:transparent!important;
}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link:hover{
  color:#fff!important;
  background:rgba(255,255,255,.055)!important;
  border-color:rgba(148,163,184,.13)!important;
}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link.active{
  color:#fff!important;
  background:linear-gradient(90deg,rgba(225,29,72,.19),rgba(37,99,235,.08))!important;
  border-color:rgba(251,113,133,.28)!important;
  box-shadow:inset 3px 0 0 #ef3154,0 10px 24px rgba(2,6,23,.15)!important;
}
body[data-theme="light"] .sidebar .sidebar-nav-icon{color:#9dacc0!important;}
body[data-theme="light"] .sidebar nav a.sidebar-nav-link.active .sidebar-nav-icon{color:#fb7185!important;}
body[data-theme="light"] .sidebar .nav-count{
  color:#eef4fb!important;
  background:rgba(148,163,184,.20)!important;
  border-color:rgba(148,163,184,.15)!important;
}
body[data-theme="light"] .sidebar-collapse-toggle{
  color:#cbd7e6!important;
  background:rgba(14,31,52,.68)!important;
  border-color:rgba(148,163,184,.12)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02),0 4px 12px rgba(0,0,0,.10)!important;
}

/* Header */
body[data-theme="light"] .topbar{
  background:rgba(238,244,250,.96)!important;
  border-bottom:1px solid rgba(71,85,105,.18)!important;
  box-shadow:0 7px 22px rgba(42,58,79,.08)!important;
  backdrop-filter:blur(20px) saturate(1.12)!important;
}
body[data-theme="light"] .topbar .topbar-eyebrow{color:#526176!important;}
body[data-theme="light"] .topbar .topbar-version{
  color:#172033!important;
  background:#e4ebf3!important;
  border-color:rgba(71,85,105,.18)!important;
}
body[data-theme="light"] .topbar :is(.department-context-switch,.department-context-static){
  color:var(--rp34-light-text)!important;
  background:linear-gradient(180deg,#f5f8fc,#e8eef5)!important;
  border-color:var(--rp34-light-line)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 5px 14px rgba(42,58,79,.055)!important;
}
body[data-theme="light"] .topbar :is(.department-context-switch,.department-context-static) span{color:#68798f!important;}
body[data-theme="light"] .topbar .department-context-switch select,
body[data-theme="light"] .topbar .department-context-static strong{color:var(--rp34-light-text)!important;}
body[data-theme="light"] .topbar .department-context-switch select{
  background:#f7faff!important;
  border-color:rgba(71,85,105,.17)!important;
}
body[data-theme="light"] .topbar :is(.theme-switch,.topbar-account-info,.user-chip,.btn:not(.primary)){
  color:var(--rp34-light-text)!important;
  background:linear-gradient(180deg,#f8fafc,#e8eef5)!important;
  border-color:rgba(71,85,105,.18)!important;
  box-shadow:inset 0 1px 0 #fff,0 5px 14px rgba(42,58,79,.055)!important;
}

/* Flächen: gleiche Struktur wie Darkmode, in kühler heller Übersetzung. */
body[data-theme="light"] .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer),
body[data-theme="light"] .content :is(.form-subcard,.detail-item,.info-grid>div,.entity-card,.admin-panel,.admin-card,.admin-command-nav,.admin-water-source-row,.billing-status-card,.stat-card),
body[data-theme="light"] .rp55-dashboard :is(.rp55-dash-hero,.card,.rp55-kpi-card,.rp55-focus-card,.rp55-own-card,.rp55-table-card),
body[data-theme="light"] :is(.feed-card,.dashboard-card,.overview-card,.youth-calendar-card,.youth-table-card){
  color:var(--rp34-light-text)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.62),transparent 34%),
    radial-gradient(circle at 100% 0,rgba(37,99,235,.055),transparent 22rem),
    radial-gradient(circle at 0 0,rgba(225,29,72,.035),transparent 18rem),
    linear-gradient(145deg,var(--rp34-light-surface),var(--rp34-light-surface-soft))!important;
  border-color:var(--rp34-light-line)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),var(--rp34-light-shadow)!important;
}
body[data-theme="light"] .content > :is(.page-head,.page-hero){
  background:
    linear-gradient(180deg,rgba(255,255,255,.72),transparent 35%),
    radial-gradient(circle at 100% 0,rgba(37,99,235,.065),transparent 25rem),
    radial-gradient(circle at 0 0,rgba(225,29,72,.045),transparent 20rem),
    linear-gradient(145deg,#f7f9fc,#eaf0f6)!important;
}
body[data-theme="light"] .content > .toolbar{background:linear-gradient(145deg,#eff4f8,#e6edf4)!important;}
body[data-theme="light"] .content > :is(.pagination,.portal-footer){background:linear-gradient(145deg,#f2f6fa,#e8eef5)!important;}
body[data-theme="light"] .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer)::before,
body[data-theme="light"] .content > :is(.page-head,.page-hero,.card,.toolbar,.pagination,.table-wrap,.data-table-card,.checks-table-wrap,.portal-footer)::after{
  display:none!important;
  content:none!important;
}
body[data-theme="light"] :is(h1,h2,h3,h4,h5,strong,th,.card-head,.page-head,.page-hero,.rp55-dash-hero){color:var(--rp34-light-text)!important;}
body[data-theme="light"] :is(.muted,.subtle,small,label,.timeline-list small,.rp55-kpi-card small){color:var(--rp34-light-muted)!important;}

/* Stat- und Entitätskarten */
body[data-theme="light"] :is(.entity-card,.department-card,.rp55-kpi-card,.stat-card){
  background:
    linear-gradient(180deg,rgba(255,255,255,.75),transparent 35%),
    linear-gradient(145deg,#f7f9fc,#e9eff5)!important;
  border-color:var(--rp34-light-line)!important;
  box-shadow:inset 0 1px 0 #fff,0 13px 30px rgba(42,58,79,.085)!important;
}
body[data-theme="light"] :is(.timeline-item,.feed-list article,.v138-feed-item){
  color:var(--rp34-light-text)!important;
  background:linear-gradient(145deg,#f7f9fc,#ebf1f6)!important;
  border:1px solid var(--rp34-light-line)!important;
  box-shadow:inset 0 1px 0 #fff,0 5px 15px rgba(42,58,79,.055)!important;
}
body[data-theme="light"] :is(.timeline-item,.feed-list article):hover{background:linear-gradient(145deg,#f2f6fa,#e4ebf2)!important;}

/* Formulare, Buttons und Tabellen */
body[data-theme="light"] :is(input,select,textarea,.smart-person-picker,.smart-select-field){
  color:var(--rp34-light-text)!important;
  background:linear-gradient(180deg,#fafcff,#edf2f7)!important;
  background-image:linear-gradient(180deg,#fafcff,#edf2f7)!important;
  border-color:var(--rp34-light-line)!important;
  box-shadow:inset 0 1px 0 #fff!important;
}
body[data-theme="light"] :is(input,select,textarea):focus{
  border-color:rgba(225,29,72,.40)!important;
  box-shadow:0 0 0 3px rgba(225,29,72,.085),inset 0 1px 0 #fff!important;
}
body[data-theme="light"] input::placeholder,
body[data-theme="light"] textarea::placeholder{color:#8796a9!important;}
body[data-theme="light"] select option,
body[data-theme="light"] select optgroup{color:#142033!important;background:#f7faff!important;}
body[data-theme="light"] .btn:not(.primary):not(.danger){
  color:#203047!important;
  background:linear-gradient(180deg,#f8fafc,#e7edf4)!important;
  border-color:var(--rp34-light-line)!important;
  box-shadow:inset 0 1px 0 #fff,0 5px 13px rgba(42,58,79,.055)!important;
}
body[data-theme="light"] .btn:not(.primary):not(.danger):hover{background:linear-gradient(180deg,#f2f6fa,#dfe7ef)!important;}
body[data-theme="light"] :is(.table-wrap,.card.table-wrap){
  background:linear-gradient(145deg,#f5f8fb,#eaf0f6)!important;
  border-color:var(--rp34-light-line)!important;
}
body[data-theme="light"] table thead th{
  color:#4a5b71!important;
  background:linear-gradient(180deg,#e2e9f0,#d9e3ec)!important;
  border-bottom-color:var(--rp34-light-line)!important;
}
body[data-theme="light"] table tbody tr{background:#f7f9fc!important;}
body[data-theme="light"] table tbody tr:nth-child(even){background:#edf2f7!important;}
body[data-theme="light"] table tbody tr:hover{background:#e3ebf3!important;}
body[data-theme="light"] table td{color:#26374d!important;border-bottom-color:var(--rp34-light-line-soft)!important;}
body[data-theme="light"] :is(.pill,.status,.role){
  color:#33455b!important;
  background:linear-gradient(180deg,#edf2f7,#e1e9f1)!important;
  border-color:var(--rp34-light-line)!important;
  box-shadow:inset 0 1px 0 #fff!important;
}

/* Jugendkalender: exakt dieselben Dimensionen, nur helle Farbübersetzung. */
body[data-theme="light"] .youth-weekday{color:#58697f!important;}
body[data-theme="light"] .youth-day{
  color:var(--rp34-light-text)!important;
  background:linear-gradient(145deg,#f7f9fc,#eaf0f6)!important;
  border-color:var(--rp34-light-line)!important;
  box-shadow:inset 0 1px 0 #fff,0 4px 12px rgba(42,58,79,.045)!important;
}
body[data-theme="light"] .youth-day.empty-day{
  background:rgba(226,233,241,.70)!important;
  border-color:rgba(71,85,105,.13)!important;
  box-shadow:none!important;
}
body[data-theme="light"] .youth-day.has-event{
  border-color:rgba(225,29,72,.30)!important;
  box-shadow:inset 0 3px 0 rgba(225,29,72,.50),0 4px 12px rgba(42,58,79,.045)!important;
}
body[data-theme="light"] .youth-day > span{color:var(--rp34-light-text)!important;}
body[data-theme="light"] .youth-calendar-event-link{
  color:#fff!important;
  background:linear-gradient(135deg,#d8193b,#ae1230)!important;
  border-color:rgba(225,29,72,.34)!important;
}

/* Benachrichtigungsstreifen */
body[data-theme="light"] .dashboard-notification-strip{
  color:var(--rp34-light-text)!important;
  background:
    linear-gradient(90deg,rgba(225,29,72,.07),rgba(37,99,235,.06)),
    linear-gradient(145deg,#f7f9fc,#e9eff5)!important;
  border-color:rgba(225,29,72,.22)!important;
  box-shadow:inset 0 1px 0 #fff,0 9px 22px rgba(42,58,79,.07)!important;
}
body[data-theme="light"] .dashboard-notification-strip__copy small{color:var(--rp34-light-muted)!important;}
body[data-theme="light"] .dashboard-notification-strip__action{
  color:var(--rp34-light-text)!important;
  background:linear-gradient(180deg,#f8fafc,#e7edf4)!important;
  border-color:var(--rp34-light-line)!important;
}

/* Semantische Farben */
body[data-theme="light"] :is(.status.Aktiv,.status.Verfügbar,.status.Genehmigt,.status.Bezahlt,.ok){
  color:#047857!important;background:#e7f8f1!important;border-color:#a7e8cf!important;
}
body[data-theme="light"] :is(.status.Defekt,.status.Abgelehnt,.status.Storniert,.danger-text){
  color:#be123c!important;background:#fff0f3!important;border-color:#f7bdc9!important;
}
body[data-theme="light"] :is(.status.Offen,.status.Entwurf,.status.In,.status.In.Prüfung){
  color:#92400e!important;background:#fff8e7!important;border-color:#f4dc92!important;
}

@media(max-width:1100px){
  html body .sidebar{
    width:min(91vw,318px)!important;
    min-width:min(91vw,318px)!important;
    max-width:min(91vw,318px)!important;
  }
  html body .sidebar-brand-row{
    display:block!important;
    min-height:72px!important;
    padding-right:0!important;
  }
  html body .sidebar-collapse-toggle{display:none!important;}
  html body .content .youth-mini-calendar{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  html body .content .youth-weekday{display:none!important;}
  html body .content .youth-day.empty-day{display:none!important;}
  html body .content .youth-day{min-height:108px!important;}
}

@media(max-width:760px){
  html body .content > :is(.page-head,.page-hero){
    min-height:0!important;
    padding:19px 17px!important;
    border-radius:17px!important;
  }
  html body .content > :is(.page-head,.page-hero) h1{font-size:clamp(1.75rem,8vw,2.25rem)!important;}
  body[data-theme="light"] .table-wrap table.responsive-table tbody tr{
    color:var(--rp34-light-text)!important;
    background:
      linear-gradient(180deg,rgba(255,255,255,.72),transparent 32%),
      linear-gradient(145deg,#f7f9fc,#e9eff5)!important;
    border-color:var(--rp34-light-line)!important;
    box-shadow:inset 0 1px 0 #fff,0 9px 22px rgba(42,58,79,.07)!important;
  }
  body[data-theme="light"] .table-wrap table.responsive-table tbody td{
    color:#26374d!important;
    border-bottom-color:var(--rp34-light-line-soft)!important;
  }
  body[data-theme="light"] .table-wrap table.responsive-table td::before{color:#66778d!important;}
}

/* ui-fixes-v1335.css */
/* Retter-Portal v1.3.35
   Whitemode übernimmt exakt dieselbe Sidebar-Geometrie und Typografie wie der Darkmode.
   Alte Lightmode-Span-Regeln werden gezielt neutralisiert; Eyebrow-Dekorationen bereinigt. */

/* --------------------------------------------------------------------------
   SIDEBAR: EINE GEMEINSAME GEOMETRIE FÜR BEIDE THEMES
   -------------------------------------------------------------------------- */
html body .sidebar{
  width:286px!important;
  min-width:286px!important;
  max-width:286px!important;
  padding:14px 13px 22px!important;
}
html body .sidebar-brand-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 32px!important;
  align-items:start!important;
  column-gap:7px!important;
  min-height:72px!important;
  padding:0 0 14px!important;
  margin:0 0 14px!important;
}
html body .sidebar .brand{
  width:auto!important;
  min-width:0!important;
  margin:0!important;
  padding:4px 0 0 4px!important;
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
html body .sidebar .brand-logo-wrap,
html body .sidebar .brand-logo{
  width:46px!important;
  min-width:46px!important;
  max-width:46px!important;
  height:46px!important;
  max-height:46px!important;
}
html body .sidebar .brand-text{
  display:block!important;
  min-width:0!important;
  width:auto!important;
  height:auto!important;
  font-size:1.16rem!important;
  line-height:1.05!important;
  letter-spacing:-.022em!important;
  font-weight:950!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  text-transform:none!important;
}
html body .sidebar .brand-context,
html body .sidebar .brand-text small{
  display:block!important;
  width:max-content!important;
  max-width:100%!important;
  height:auto!important;
  margin-top:5px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  font-size:.65rem!important;
  line-height:1.15!important;
  letter-spacing:.045em!important;
  font-weight:900!important;
  white-space:nowrap!important;
  text-transform:uppercase!important;
}
html body .sidebar-collapse-toggle{
  position:static!important;
  grid-column:2!important;
  grid-row:1!important;
  align-self:start!important;
  justify-self:end!important;
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  min-height:30px!important;
  margin:7px 0 0!important;
  padding:0!important;
  border-radius:9px!important;
}
html body .sidebar-collapse-toggle__icon{width:15px!important;height:15px!important;}
html body .sidebar .nav-section{
  margin:18px 10px 8px!important;
  font-size:.72rem!important;
  line-height:1.2!important;
  letter-spacing:.14em!important;
  font-weight:950!important;
  white-space:nowrap!important;
}
html body .sidebar nav a.sidebar-nav-link{
  display:flex!important;
  align-items:center!important;
  min-height:48px!important;
  margin:2px 0!important;
  padding:12px 13px!important;
  gap:11px!important;
  border-radius:15px!important;
  font-size:1.015rem!important;
  line-height:1.18!important;
  font-weight:840!important;
  letter-spacing:-.012em!important;
  text-transform:none!important;
  overflow:hidden!important;
}

/* Alte Regeln wie body[data-theme="light"] .sidebar nav a span hatten ALLE Spans
   auf 30x30px gesetzt. Icon und Text werden deshalb hier explizit getrennt. */
html body .sidebar nav a.sidebar-nav-link > span.sidebar-nav-icon,
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link > span.sidebar-nav-icon{
  display:grid!important;
  place-items:center!important;
  flex:0 0 24px!important;
  width:24px!important;
  min-width:24px!important;
  max-width:24px!important;
  height:24px!important;
  min-height:24px!important;
  max-height:24px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  font-size:inherit!important;
  line-height:1!important;
  letter-spacing:normal!important;
  text-transform:none!important;
}
html body .sidebar nav a.sidebar-nav-link > span.sidebar-nav-icon svg,
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link > span.sidebar-nav-icon svg{
  width:20px!important;
  height:20px!important;
}
html body .sidebar nav a.sidebar-nav-link > span.sidebar-nav-label,
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link > span.sidebar-nav-label{
  display:block!important;
  place-items:initial!important;
  flex:1 1 auto!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:inherit!important;
  font-size:inherit!important;
  line-height:inherit!important;
  font-weight:inherit!important;
  letter-spacing:inherit!important;
  text-align:left!important;
  text-transform:none!important;
  white-space:nowrap!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
html body .sidebar .nav-count,
html body[data-theme="light"] .sidebar .nav-count{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  min-width:26px!important;
  width:auto!important;
  height:26px!important;
  margin-left:auto!important;
  padding:0 8px!important;
  border-radius:999px!important;
  font-size:.74rem!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

/* Lightmode übernimmt für die Sidebar ausschließlich dieselben Farben wie der Darkmode. */
html body[data-theme="light"] .sidebar{
  color:#edf3fb!important;
  background:
    radial-gradient(circle at 0 -8%,rgba(225,29,72,.17),transparent 20rem),
    radial-gradient(circle at 120% 35%,rgba(37,99,235,.10),transparent 22rem),
    linear-gradient(180deg,#091426 0%,#071120 100%)!important;
  border-right-color:rgba(148,163,184,.15)!important;
  box-shadow:16px 0 42px rgba(15,23,42,.18)!important;
}
html body[data-theme="light"] .sidebar .brand-text{color:#f8fafc!important;}
html body[data-theme="light"] .sidebar .brand-context,
html body[data-theme="light"] .sidebar .brand-text small{color:#9baabd!important;}
html body[data-theme="light"] .sidebar .nav-section{color:#8e9eb3!important;}
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link{
  color:#d6e0ec!important;
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
}
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link:hover{
  color:#fff!important;
  background:rgba(255,255,255,.055)!important;
  border-color:rgba(148,163,184,.13)!important;
}
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link.active{
  color:#fff!important;
  background:linear-gradient(90deg,rgba(225,29,72,.19),rgba(37,99,235,.08))!important;
  border-color:rgba(251,113,133,.28)!important;
  box-shadow:inset 3px 0 0 #ef3154,0 10px 24px rgba(2,6,23,.15)!important;
}
html body[data-theme="light"] .sidebar .sidebar-nav-icon{color:#9dacc0!important;}
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link.active .sidebar-nav-icon{color:#fb7185!important;}
html body[data-theme="light"] .sidebar .nav-count{
  color:#eef4fb!important;
  background:rgba(148,163,184,.20)!important;
  border-color:rgba(148,163,184,.15)!important;
}
html body[data-theme="light"] .sidebar-collapse-toggle{
  color:#cbd7e6!important;
  background:rgba(14,31,52,.58)!important;
  border-color:rgba(148,163,184,.10)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02),0 3px 9px rgba(0,0,0,.08)!important;
}

/* Eingeklappte Sidebar bleibt in beiden Themes identisch. */
@media(min-width:1101px){
  html body.sidebar-collapsed .sidebar{
    width:88px!important;
    min-width:88px!important;
    max-width:88px!important;
  }
  html body.sidebar-collapsed .sidebar-brand-row{
    grid-template-columns:1fr!important;
    justify-items:center!important;
    gap:10px!important;
    padding-bottom:12px!important;
  }
  html body.sidebar-collapsed .sidebar-collapse-toggle{
    grid-column:1!important;
    grid-row:2!important;
    justify-self:center!important;
    margin:0!important;
  }
  html body.sidebar-collapsed .sidebar .brand{
    grid-template-columns:46px!important;
    justify-content:center!important;
    padding-left:0!important;
  }
  html body.sidebar-collapsed .sidebar .brand-text,
  html body.sidebar-collapsed .sidebar .nav-section,
  html body.sidebar-collapsed .sidebar .sidebar-nav-label,
  html body.sidebar-collapsed .sidebar .nav-count{display:none!important;}
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link{
    justify-content:center!important;
    padding-left:0!important;
    padding-right:0!important;
  }
}

/* --------------------------------------------------------------------------
   PAGE EYEBROW: KEINE THEME-ABHÄNGIGEN KÄSTCHEN ODER LANGEN BALKEN
   -------------------------------------------------------------------------- */
html body .content > .page-head .eyebrow,
html body .content > .page-hero .eyebrow,
html body[data-theme="light"] .content > .page-head .eyebrow,
html body[data-theme="light"] .content > .page-hero .eyebrow{
  display:block!important;
  width:max-content!important;
  min-width:0!important;
  max-width:100%!important;
  height:auto!important;
  margin:0 0 9px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:#fb7185!important;
  font-size:.72rem!important;
  line-height:1.2!important;
  font-weight:950!important;
  letter-spacing:.15em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
html body .content > .page-head .eyebrow::before,
html body .content > .page-head .eyebrow::after,
html body .content > .page-hero .eyebrow::before,
html body .content > .page-hero .eyebrow::after,
html body[data-theme="light"] .content > .page-head .eyebrow::before,
html body[data-theme="light"] .content > .page-head .eyebrow::after,
html body[data-theme="light"] .content > .page-hero .eyebrow::before,
html body[data-theme="light"] .content > .page-hero .eyebrow::after{
  display:none!important;
  content:none!important;
}

/* Whitemode darf Layout und Typografie außerhalb der Sidebar ebenfalls nicht verändern. */
/* Exakte Werte verhindern Theme-abhängige Größenänderungen. */
html body[data-theme="light"] .content > :is(.page-head,.page-hero) h1{
  font-size:clamp(2.05rem,2.45vw,2.85rem)!important;
  line-height:1.02!important;
  letter-spacing:-.05em!important;
}
html body[data-theme="light"] .content > :is(.page-head,.page-hero) .muted{
  font-size:.96rem!important;
  line-height:1.55!important;
}
html body[data-theme="light"] .content .stat-card{
  min-height:108px!important;
  padding:20px!important;
  border-radius:20px!important;
}
html body[data-theme="light"] .content .stat-card strong{font-size:2rem!important;line-height:1!important;}
html body[data-theme="light"] .content .card-head h2{font-size:1.22rem!important;line-height:1.2!important;}
html body[data-theme="light"] .content :is(input,select,textarea){font-size:1rem!important;}
html body[data-theme="light"] .content .btn{font-size:.94rem!important;line-height:1.1!important;}

@media(max-width:1100px){
  html body .sidebar,
  html body[data-theme="light"] .sidebar{
    width:min(91vw,318px)!important;
    min-width:min(91vw,318px)!important;
    max-width:min(91vw,318px)!important;
  }
  html body .sidebar-brand-row,
  html body[data-theme="light"] .sidebar-brand-row{
    display:block!important;
    min-height:72px!important;
    padding-right:0!important;
  }
  html body .sidebar-collapse-toggle,
  html body[data-theme="light"] .sidebar-collapse-toggle{display:none!important;}
}

@media(max-width:760px){
  html body .content > :is(.page-head,.page-hero) h1,
  html body[data-theme="light"] .content > :is(.page-head,.page-hero) h1{
    font-size:clamp(1.75rem,8vw,2.25rem)!important;
  }
}

/* ui-fixes-v1336.css */
/* Retter-Portal v1.3.36
   Lightmode-Headerfeld vereinheitlicht, Sidebar erhält echte helle Farben,
   Navigation leicht verkleinert und eingeklappt ausschließlich als Iconleiste. */

/* --------------------------------------------------------------------------
   GEMEINSAME SIDEBAR-TYPOGRAFIE: THEME DARF KEINE GRÖSSEN ÄNDERN
   -------------------------------------------------------------------------- */
html body .sidebar nav a.sidebar-nav-link,
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link,
html body[data-theme="dark"] .sidebar nav a.sidebar-nav-link{
  min-height:46px!important;
  padding:11px 12px!important;
  gap:10px!important;
  font-size:.94rem!important;
  line-height:1.18!important;
  font-weight:820!important;
  letter-spacing:-.01em!important;
}
html body .sidebar .nav-section,
html body[data-theme="light"] .sidebar .nav-section,
html body[data-theme="dark"] .sidebar .nav-section{
  font-size:.69rem!important;
  line-height:1.2!important;
  letter-spacing:.135em!important;
}
html body .sidebar nav a.sidebar-nav-link > .sidebar-nav-icon,
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link > .sidebar-nav-icon,
html body[data-theme="dark"] .sidebar nav a.sidebar-nav-link > .sidebar-nav-icon{
  flex:0 0 23px!important;
  width:23px!important;
  min-width:23px!important;
  max-width:23px!important;
  height:23px!important;
  min-height:23px!important;
  max-height:23px!important;
}
html body .sidebar nav a.sidebar-nav-link > .sidebar-nav-icon svg,
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link > .sidebar-nav-icon svg,
html body[data-theme="dark"] .sidebar nav a.sidebar-nav-link > .sidebar-nav-icon svg{
  width:19px!important;
  height:19px!important;
}

/* --------------------------------------------------------------------------
   ECHTER HELLER SIDEBAR-MODUS – NUR FARBEN, KEINE GEOMETRIEÄNDERUNG
   -------------------------------------------------------------------------- */
html body[data-theme="light"] .sidebar{
  color:#25354a!important;
  background:
    radial-gradient(circle at 0 -8%,rgba(225,29,72,.065),transparent 18rem),
    radial-gradient(circle at 120% 34%,rgba(37,99,235,.065),transparent 21rem),
    linear-gradient(180deg,#f8fbff 0%,#edf3f9 52%,#e9f0f7 100%)!important;
  border-right-color:rgba(71,85,105,.18)!important;
  box-shadow:14px 0 36px rgba(71,85,105,.10)!important;
  scrollbar-color:rgba(71,85,105,.24) transparent!important;
}
html body[data-theme="light"] .sidebar::-webkit-scrollbar-thumb{
  background:rgba(71,85,105,.22)!important;
}
html body[data-theme="light"] .sidebar-brand-row{
  border-bottom-color:rgba(71,85,105,.13)!important;
}
html body[data-theme="light"] .sidebar .logo-light{display:block!important;}
html body[data-theme="light"] .sidebar .logo-dark{display:none!important;}
html body[data-theme="light"] .sidebar .brand-text{
  color:#172033!important;
}
html body[data-theme="light"] .sidebar .brand-context,
html body[data-theme="light"] .sidebar .brand-text small{
  color:#64748b!important;
}
html body[data-theme="light"] .sidebar .nav-section{
  color:#718096!important;
}
html body[data-theme="light"] .sidebar .nav-section::after{
  background:linear-gradient(90deg,rgba(71,85,105,.16),transparent)!important;
}
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link{
  color:#34445a!important;
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
}
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link:hover{
  color:#172033!important;
  background:rgba(37,99,235,.055)!important;
  border-color:rgba(71,85,105,.12)!important;
}
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link.active{
  color:#9f1239!important;
  background:linear-gradient(90deg,rgba(225,29,72,.105),rgba(37,99,235,.045))!important;
  border-color:rgba(225,29,72,.20)!important;
  box-shadow:inset 3px 0 0 #e11d48,0 8px 20px rgba(71,85,105,.08)!important;
}
html body[data-theme="light"] .sidebar .sidebar-nav-icon{
  color:#697b91!important;
}
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link:hover .sidebar-nav-icon{
  color:#334155!important;
}
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link.active .sidebar-nav-icon{
  color:#e11d48!important;
}
html body[data-theme="light"] .sidebar .nav-count{
  color:#334155!important;
  background:#dde6f0!important;
  border-color:rgba(71,85,105,.14)!important;
}
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link.active .nav-count{
  color:#9f1239!important;
  background:#ffe4e8!important;
  border-color:#fecdd3!important;
}
html body[data-theme="light"] .sidebar-collapse-toggle{
  color:#526176!important;
  background:linear-gradient(180deg,#ffffff,#eaf0f6)!important;
  border-color:rgba(71,85,105,.17)!important;
  box-shadow:inset 0 1px 0 #fff,0 3px 8px rgba(71,85,105,.08)!important;
}
html body[data-theme="light"] .sidebar-collapse-toggle:hover{
  color:#172033!important;
  background:linear-gradient(180deg,#fff,#e3ebf4)!important;
  border-color:rgba(71,85,105,.24)!important;
}

/* --------------------------------------------------------------------------
   EINGEKLAPPT: REINE ICONLEISTE, KEINE BUCHSTABEN ODER ZÄHLER
   -------------------------------------------------------------------------- */
@media(min-width:1101px){
  html body.sidebar-collapsed .sidebar .brand-text,
  html body.sidebar-collapsed .sidebar .brand-context,
  html body.sidebar-collapsed .sidebar .brand-text small,
  html body.sidebar-collapsed .sidebar .nav-section,
  html body.sidebar-collapsed .sidebar .sidebar-nav-label,
  html body.sidebar-collapsed .sidebar .nav-count{
    display:none!important;
    visibility:hidden!important;
    width:0!important;
    min-width:0!important;
    max-width:0!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link{
    font-size:0!important;
    justify-content:center!important;
    gap:0!important;
    padding:11px 0!important;
  }
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link::after{
    display:none!important;
    content:none!important;
  }
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link > .sidebar-nav-icon{
    flex:0 0 24px!important;
    width:24px!important;
    min-width:24px!important;
    max-width:24px!important;
    height:24px!important;
    min-height:24px!important;
    max-height:24px!important;
    font-size:1rem!important;
  }
}

/* --------------------------------------------------------------------------
   HEADER-FEUERWEHRFELD IM WHITEMODE: EINE EINHEITLICHE HELLE FLÄCHE
   -------------------------------------------------------------------------- */
html body[data-theme="light"] .topbar .department-context-switch,
html body[data-theme="light"] .topbar .department-context-static{
  color:#172033!important;
  background:linear-gradient(180deg,#ffffff,#eef3f8)!important;
  border:1px solid rgba(71,85,105,.19)!important;
  box-shadow:inset 0 1px 0 #fff,0 4px 12px rgba(71,85,105,.07)!important;
}
html body[data-theme="light"] .topbar .department-context-switch > span,
html body[data-theme="light"] .topbar .department-context-static > span{
  color:#65758a!important;
}
html body[data-theme="light"] .topbar .department-context-switch select{
  color:#172033!important;
  background:transparent!important;
  background-color:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  border-radius:0!important;
}
html body[data-theme="light"] .topbar .department-context-switch select:hover,
html body[data-theme="light"] .topbar .department-context-switch select:focus{
  color:#0f172a!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html body[data-theme="light"] .topbar .department-context-switch select option,
html body[data-theme="light"] .topbar .department-context-switch select optgroup{
  color:#172033!important;
  background:#fff!important;
}
html body[data-theme="light"] .topbar .department-context-static strong{
  color:#172033!important;
}

/* Mobile/Tablet behalten dieselbe helle Farblogik ohne Größenabweichungen. */
@media(max-width:1100px){
  html body[data-theme="light"] .sidebar{
    background:
      radial-gradient(circle at 0 -8%,rgba(225,29,72,.065),transparent 18rem),
      radial-gradient(circle at 120% 34%,rgba(37,99,235,.065),transparent 21rem),
      linear-gradient(180deg,#f8fbff 0%,#edf3f9 52%,#e9f0f7 100%)!important;
  }
}

/* ui-fixes-v1337.css */
/* Retter-Portal v1.3.37
   Eingeklappte Sidebar als ruhige, exakt zentrierte Iconleiste.
   Navigation im ausgeklappten Zustand minimal kompakter. */

/* Ausgeklappt: Schrift nur leicht reduzieren – in beiden Themes identisch. */
html body .sidebar nav a.sidebar-nav-link,
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link,
html body[data-theme="dark"] .sidebar nav a.sidebar-nav-link{
  min-height:45px!important;
  padding:10px 12px!important;
  gap:10px!important;
  font-size:.91rem!important;
  line-height:1.16!important;
  font-weight:810!important;
  letter-spacing:-.008em!important;
}
html body .sidebar .nav-section,
html body[data-theme="light"] .sidebar .nav-section,
html body[data-theme="dark"] .sidebar .nav-section{
  font-size:.68rem!important;
  line-height:1.2!important;
  letter-spacing:.13em!important;
}

@media(min-width:1101px){
  /* Breite und Hauptinhalt bleiben immer synchron. */
  html body.sidebar-collapsed .sidebar{
    width:82px!important;
    min-width:82px!important;
    max-width:82px!important;
    padding-left:8px!important;
    padding-right:8px!important;
  }
  html body.sidebar-collapsed .main{
    width:calc(100% - 82px)!important;
    margin-left:82px!important;
  }

  /* Markenbereich sauber und kompakt zentrieren. */
  html body.sidebar-collapsed .sidebar-brand-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    justify-items:center!important;
    align-items:center!important;
    gap:8px!important;
    margin:0 0 10px!important;
    padding:8px 0 12px!important;
  }
  html body.sidebar-collapsed .sidebar .brand{
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    justify-content:center!important;
    align-items:center!important;
    margin:0!important;
    padding:0!important;
  }
  html body.sidebar-collapsed .sidebar .brand-logo-wrap,
  html body.sidebar-collapsed .sidebar .brand-logo{
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
  }
  html body.sidebar-collapsed .sidebar-collapse-toggle{
    grid-column:1!important;
    grid-row:2!important;
    justify-self:center!important;
    align-self:center!important;
    width:30px!important;
    min-width:30px!important;
    max-width:30px!important;
    height:30px!important;
    min-height:30px!important;
    max-height:30px!important;
    margin:0!important;
    border-radius:9px!important;
  }
  html body.sidebar-collapsed .sidebar-collapse-toggle__icon{
    width:14px!important;
    height:14px!important;
  }

  /* Navigation als einheitliche Iconleiste statt breiter Kästen. */
  html body.sidebar-collapsed .sidebar .sidebar-nav{
    width:100%!important;
    min-width:0!important;
    align-items:center!important;
    gap:2px!important;
  }
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link{
    display:flex!important;
    width:52px!important;
    min-width:52px!important;
    max-width:52px!important;
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
    margin:3px auto!important;
    padding:0!important;
    justify-content:center!important;
    align-items:center!important;
    gap:0!important;
    border-radius:15px!important;
    font-size:0!important;
    overflow:visible!important;
  }
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link.active{
    background:linear-gradient(145deg,rgba(225,29,72,.16),rgba(37,99,235,.075))!important;
    border-color:rgba(251,113,133,.30)!important;
    box-shadow:0 7px 18px rgba(2,6,23,.14)!important;
  }
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link.active::before{
    display:none!important;
    content:none!important;
  }
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link > .sidebar-nav-icon{
    display:grid!important;
    place-items:center!important;
    flex:0 0 23px!important;
    width:23px!important;
    min-width:23px!important;
    max-width:23px!important;
    height:23px!important;
    min-height:23px!important;
    max-height:23px!important;
    margin:0!important;
    padding:0!important;
  }
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link > .sidebar-nav-icon svg{
    width:20px!important;
    height:20px!important;
  }
  html body.sidebar-collapsed .sidebar::-webkit-scrollbar{width:4px!important;}
}

/* Heller Modus behält exakt dieselbe Geometrie. */
@media(min-width:1101px){
  html body[data-theme="light"].sidebar-collapsed .sidebar nav a.sidebar-nav-link.active{
    background:linear-gradient(145deg,rgba(225,29,72,.105),rgba(37,99,235,.055))!important;
    border-color:rgba(225,29,72,.24)!important;
    box-shadow:0 6px 16px rgba(71,85,105,.10)!important;
  }
}

/* ui-fixes-v1338.css */
/* Retter-Portal v1.3.38
   Eingeklappte Sidebar als exakt zentrierte, schmale Iconleiste.
   Ausgeklappte Navigation minimal kompakter. */

/* Ausgeklappt: Schrift nochmals dezent verkleinern, Geometrie in beiden Themes identisch. */
html body .sidebar nav a.sidebar-nav-link,
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link,
html body[data-theme="dark"] .sidebar nav a.sidebar-nav-link{
  min-height:44px!important;
  padding:9px 11px!important;
  gap:9px!important;
  font-size:.88rem!important;
  line-height:1.15!important;
  font-weight:805!important;
  letter-spacing:-.006em!important;
}
html body .sidebar .nav-section,
html body[data-theme="light"] .sidebar .nav-section,
html body[data-theme="dark"] .sidebar .nav-section{
  font-size:.66rem!important;
  line-height:1.18!important;
  letter-spacing:.125em!important;
}

@media(min-width:1101px){
  /* Sidebar und Hauptbereich verwenden exakt dieselbe kompakte Breite. */
  html body.sidebar-collapsed .sidebar{
    width:72px!important;
    min-width:72px!important;
    max-width:72px!important;
    padding-left:7px!important;
    padding-right:7px!important;
  }
  html body.sidebar-collapsed .main{
    width:calc(100% - 72px)!important;
    margin-left:72px!important;
  }

  /* Kopfbereich exakt auf derselben Mittelachse wie die Navigation. */
  html body.sidebar-collapsed .sidebar-brand-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    justify-items:center!important;
    align-items:center!important;
    width:100%!important;
    gap:7px!important;
    margin:0 0 9px!important;
    padding:7px 0 11px!important;
  }
  html body.sidebar-collapsed .sidebar .brand{
    display:grid!important;
    place-items:center!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
  }
  html body.sidebar-collapsed .sidebar .brand-logo-wrap,
  html body.sidebar-collapsed .sidebar .brand-logo{
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    margin:0!important;
  }
  html body.sidebar-collapsed .sidebar-collapse-toggle{
    display:grid!important;
    place-items:center!important;
    justify-self:center!important;
    align-self:center!important;
    width:28px!important;
    min-width:28px!important;
    max-width:28px!important;
    height:28px!important;
    min-height:28px!important;
    max-height:28px!important;
    margin:0!important;
    padding:0!important;
    border-radius:8px!important;
  }
  html body.sidebar-collapsed .sidebar-collapse-toggle__icon{
    display:block!important;
    width:13px!important;
    height:13px!important;
    margin:0!important;
  }

  /* Alle Navigationseinträge liegen auf exakt derselben vertikalen Achse. */
  html body.sidebar-collapsed .sidebar .sidebar-nav{
    display:grid!important;
    grid-template-columns:1fr!important;
    justify-items:center!important;
    align-items:start!important;
    width:100%!important;
    min-width:0!important;
    gap:3px!important;
    padding:0!important;
  }
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link{
    box-sizing:border-box!important;
    display:grid!important;
    place-items:center!important;
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    margin:2px auto!important;
    padding:0!important;
    gap:0!important;
    border-radius:13px!important;
    transform:none!important;
    overflow:hidden!important;
  }
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link:hover{
    transform:none!important;
  }
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link.active{
    background:linear-gradient(145deg,rgba(225,29,72,.15),rgba(37,99,235,.065))!important;
    border-color:rgba(251,113,133,.28)!important;
    box-shadow:0 6px 15px rgba(2,6,23,.13)!important;
  }
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link::before,
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link::after{
    display:none!important;
    content:none!important;
  }
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link > .sidebar-nav-icon{
    box-sizing:border-box!important;
    display:grid!important;
    place-items:center!important;
    position:static!important;
    flex:none!important;
    width:22px!important;
    min-width:22px!important;
    max-width:22px!important;
    height:22px!important;
    min-height:22px!important;
    max-height:22px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
  }
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link > .sidebar-nav-icon svg{
    display:block!important;
    width:19px!important;
    height:19px!important;
    margin:0!important;
    transform:none!important;
  }

  /* Text, Gruppenüberschriften und Zähler bleiben vollständig ausgeblendet. */
  html body.sidebar-collapsed .sidebar .brand-text,
  html body.sidebar-collapsed .sidebar .brand-context,
  html body.sidebar-collapsed .sidebar .brand-text small,
  html body.sidebar-collapsed .sidebar .nav-section,
  html body.sidebar-collapsed .sidebar .sidebar-nav-label,
  html body.sidebar-collapsed .sidebar .nav-count{
    display:none!important;
    visibility:hidden!important;
    width:0!important;
    height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }
  html body.sidebar-collapsed .sidebar::-webkit-scrollbar{width:3px!important;}
}

/* Heller Modus: nur Farbe, exakt dieselbe Icon-Geometrie. */
@media(min-width:1101px){
  html body[data-theme="light"].sidebar-collapsed .sidebar nav a.sidebar-nav-link.active{
    background:linear-gradient(145deg,rgba(225,29,72,.095),rgba(37,99,235,.045))!important;
    border-color:rgba(225,29,72,.22)!important;
    box-shadow:0 5px 13px rgba(71,85,105,.09)!important;
  }
}

/* ui-fixes-v1339.css */
/* Retter-Portal v1.3.39
   Eingeklappte Sidebar exakt zentriert und Whitemode-Kontraste vereinheitlicht.
   Der Themewechsel verändert bewusst keine Geometrie oder Typografie. */

/* --------------------------------------------------------------------------
   SIDEBAR: Symbol und Markenlogo in der eingeklappten Leiste exakt zentrieren
   -------------------------------------------------------------------------- */
@media(min-width:1101px){
  html body.sidebar-collapsed .sidebar .brand,
  html body.sidebar-collapsed .sidebar .brand-logo-wrap{
    display:grid!important;
    place-items:center!important;
    align-content:center!important;
    justify-content:center!important;
    line-height:0!important;
  }
  html body.sidebar-collapsed .sidebar .brand-logo{
    display:block!important;
    object-fit:contain!important;
    object-position:50% 50%!important;
    margin:0!important;
    transform:none!important;
  }

  /* Absolute Zentrierung verhindert alte align-self-/line-height-Regeln. */
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link{
    position:relative!important;
    display:block!important;
  }
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link > .sidebar-nav-icon{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    display:grid!important;
    place-items:center!important;
    margin:0!important;
    padding:0!important;
    line-height:0!important;
    transform:translate(-50%,-50%)!important;
  }
  html body.sidebar-collapsed .sidebar nav a.sidebar-nav-link > .sidebar-nav-icon svg{
    display:block!important;
    margin:0!important;
    transform:none!important;
    vertical-align:middle!important;
  }
}

/* --------------------------------------------------------------------------
   WHITEMODE: Lesbarkeit und Kontrast ohne Größenänderungen
   -------------------------------------------------------------------------- */
html body[data-theme="light"]{
  --rp39-light-text:#152238;
  --rp39-light-text-soft:#33445a;
  --rp39-light-muted:#52647b;
  --rp39-light-muted-strong:#43556d;
  --rp39-light-placeholder:#64748b;
  --rp39-light-line:rgba(71,85,105,.22);
  --rp39-light-line-soft:rgba(71,85,105,.14);
}

/* Grundlegende Textfarben im Arbeitsbereich. */
html body[data-theme="light"] .main,
html body[data-theme="light"] .content{
  color:var(--rp39-light-text)!important;
}
html body[data-theme="light"] .content :is(p,li,dd,dt,figcaption){
  color:var(--rp39-light-text-soft)!important;
}
html body[data-theme="light"] .content :is(h1,h2,h3,h4,h5,h6,strong,b,legend,th){
  color:var(--rp39-light-text)!important;
}
html body[data-theme="light"] .content :is(.muted,.subtle,.help-text,.form-hint,.field-hint,.timeline-list small,.rp55-kpi-card small){
  color:var(--rp39-light-muted)!important;
}
html body[data-theme="light"] .content small{
  color:var(--rp39-light-muted)!important;
}

/* Labels müssen auf hellen Karten klar lesbar sein. */
html body[data-theme="light"] .content label,
html body[data-theme="light"] .content .smart-select-field label,
html body[data-theme="light"] .content .rights-assign-form label,
html body[data-theme="light"] .content .rights-department-switch label,
html body[data-theme="light"] .content .form-grid label,
html body[data-theme="light"] .content .inline-form label,
html body[data-theme="light"] .content .toolbar label{
  color:var(--rp39-light-muted-strong)!important;
  opacity:1!important;
  text-shadow:none!important;
}
html body[data-theme="light"] .content .smart-select-field label,
html body[data-theme="light"] .content .rights-assign-form .smart-select-field label{
  color:#34465d!important;
  font-weight:900!important;
}

/* Eingaben, Auswahlfelder und Platzhalter. */
html body[data-theme="light"] .content :is(input,select,textarea){
  color:var(--rp39-light-text)!important;
  caret-color:var(--rp39-light-text)!important;
  border-color:var(--rp39-light-line)!important;
  background:linear-gradient(180deg,#ffffff,#f7f9fc)!important;
  box-shadow:inset 0 1px 0 #fff!important;
}
html body[data-theme="light"] .content :is(input,textarea)::placeholder{
  color:var(--rp39-light-placeholder)!important;
  opacity:1!important;
}
html body[data-theme="light"] .content select option,
html body[data-theme="light"] .content select optgroup{
  color:#172033!important;
  background:#ffffff!important;
}
html body[data-theme="light"] .content :is(input,select,textarea):disabled{
  color:#64748b!important;
  background:#e9eef4!important;
  opacity:1!important;
}

/* Speziell das Rechte-Modul aus dem Screenshot. */
html body[data-theme="light"] .content .rights-workbench-card,
html body[data-theme="light"] .content .rights-assign-form,
html body[data-theme="light"] .content .rights-department-switch,
html body[data-theme="light"] .content .rights-unlinked-details,
html body[data-theme="light"] .content .rights-unlinked-notice{
  color:var(--rp39-light-text)!important;
}
html body[data-theme="light"] .content .rights-assign-form .smart-select-field input[data-smart-select-search]{
  color:var(--rp39-light-text)!important;
  border-color:rgba(71,85,105,.25)!important;
  background:#fff!important;
}
html body[data-theme="light"] .content .rights-assign-form .smart-select-field input[data-smart-select-search]::placeholder{
  color:#68788d!important;
  opacity:1!important;
}

/* Tabellen, Karten und Statusinformationen. */
html body[data-theme="light"] .content table thead th{
  color:#46586f!important;
}
html body[data-theme="light"] .content table tbody td{
  color:#26374d!important;
}
html body[data-theme="light"] .content :is(.pill,.status,.role){
  color:#33445a!important;
  border-color:var(--rp39-light-line-soft)!important;
}
html body[data-theme="light"] .content :is(.card,.entity-card,.department-card,.stat-card,.toolbar,.pagination,.portal-footer) :is(p,small,span):not(.btn):not(.pill):not(.status):not(.role){
  opacity:1!important;
}

/* Links und sekundäre Aktionen dürfen auf hellen Flächen nicht verblassen. */
html body[data-theme="light"] .content a:not(.btn){
  color:#9f1239!important;
}
html body[data-theme="light"] .content .card-head a:not(.btn),
html body[data-theme="light"] .content .page-head a:not(.btn),
html body[data-theme="light"] .content .page-hero a:not(.btn){
  color:#be123c!important;
}

/* Fokuszustände bleiben deutlich sichtbar. */
html body[data-theme="light"] .content :is(input,select,textarea):focus{
  border-color:rgba(190,18,60,.55)!important;
  box-shadow:0 0 0 3px rgba(225,29,72,.10),inset 0 1px 0 #fff!important;
}

/* Mobile und Tablet: dieselben Kontraste ohne zusätzliche Typografieänderung. */
@media(max-width:1100px){
  html body[data-theme="light"] .content label,
  html body[data-theme="light"] .content .smart-select-field label{
    color:var(--rp39-light-muted-strong)!important;
  }
}

/* ui-fixes-v1340.css */
/* Retter-Portal v1.3.40
   Doppeltes Markenlogo in der eingeklappten Sidebar entfernt und
   Whitemode-Kontraste ohne Geometrie- oder Typografieänderungen nachgeschärft. */

/* --------------------------------------------------------------------------
   SIDEBAR-LOGO: Unabhängig von alten Regeln ist immer exakt ein Logo sichtbar.
   -------------------------------------------------------------------------- */
html body .sidebar .brand-logo.logo-light,
html body.sidebar-collapsed .sidebar .brand-logo.logo-light{
  display:none!important;
}
html body .sidebar .brand-logo.logo-dark,
html body.sidebar-collapsed .sidebar .brand-logo.logo-dark{
  display:block!important;
}

html body[data-theme="light"] .sidebar .brand-logo.logo-light,
html body[data-theme="light"].sidebar-collapsed .sidebar .brand-logo.logo-light{
  display:block!important;
}
html body[data-theme="light"] .sidebar .brand-logo.logo-dark,
html body[data-theme="light"].sidebar-collapsed .sidebar .brand-logo.logo-dark{
  display:none!important;
}

html body[data-theme="dark"] .sidebar .brand-logo.logo-light,
html body[data-theme="dark"].sidebar-collapsed .sidebar .brand-logo.logo-light{
  display:none!important;
}
html body[data-theme="dark"] .sidebar .brand-logo.logo-dark,
html body[data-theme="dark"].sidebar-collapsed .sidebar .brand-logo.logo-dark{
  display:block!important;
}

@media(min-width:1101px){
  html body.sidebar-collapsed .sidebar .brand-logo-wrap{
    position:relative!important;
    overflow:hidden!important;
  }
  html body.sidebar-collapsed .sidebar .brand-logo{
    position:static!important;
    inset:auto!important;
    margin:0!important;
  }
}

/* --------------------------------------------------------------------------
   WHITEMODE: Kontrast verbessern, Größen und Abstände bewusst unverändert.
   -------------------------------------------------------------------------- */
html body[data-theme="light"]{
  --rp40-text:#111c2f;
  --rp40-text-soft:#2f4158;
  --rp40-muted:#4b5f78;
  --rp40-muted-strong:#344960;
  --rp40-placeholder:#5b6e84;
  --rp40-border:rgba(51,65,85,.23);
  --rp40-border-soft:rgba(51,65,85,.15);
  --rp40-surface:#ffffff;
  --rp40-surface-soft:#f5f8fc;
}

html body[data-theme="light"] .main,
html body[data-theme="light"] .content{
  color:var(--rp40-text)!important;
}

html body[data-theme="light"] .content :is(h1,h2,h3,h4,h5,h6,strong,b,legend){
  color:var(--rp40-text)!important;
}
html body[data-theme="light"] .content :is(p,li,dd,dt,figcaption){
  color:var(--rp40-text-soft)!important;
}
html body[data-theme="light"] .content :is(.muted,.subtle,.help-text,.form-hint,.field-hint,.empty,small){
  color:var(--rp40-muted)!important;
  opacity:1!important;
}

html body[data-theme="light"] .content label,
html body[data-theme="light"] .content .smart-select-field label,
html body[data-theme="light"] .content .rights-assign-form label,
html body[data-theme="light"] .content .rights-department-switch label,
html body[data-theme="light"] .content .toolbar label,
html body[data-theme="light"] .content .form-grid label{
  color:var(--rp40-muted-strong)!important;
  opacity:1!important;
  text-shadow:none!important;
}

html body[data-theme="light"] .content :is(input,select,textarea){
  color:var(--rp40-text)!important;
  background:linear-gradient(180deg,var(--rp40-surface),var(--rp40-surface-soft))!important;
  border-color:var(--rp40-border)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95)!important;
}
html body[data-theme="light"] .content :is(input,textarea)::placeholder{
  color:var(--rp40-placeholder)!important;
  opacity:1!important;
}
html body[data-theme="light"] .content :is(input,select,textarea):disabled{
  color:#52657d!important;
  background:#e9eef5!important;
  opacity:1!important;
}
html body[data-theme="light"] .content select option,
html body[data-theme="light"] .content select optgroup{
  color:#111c2f!important;
  background:#ffffff!important;
}

html body[data-theme="light"] .content table thead th{
  color:#3a4d65!important;
}
html body[data-theme="light"] .content table tbody td{
  color:#24364d!important;
}
html body[data-theme="light"] .content :is(.pill,.status,.role){
  color:#2e4259!important;
  border-color:var(--rp40-border-soft)!important;
}

html body[data-theme="light"] .content .btn:not(.primary):not(.danger){
  color:#17253a!important;
  border-color:var(--rp40-border)!important;
}
html body[data-theme="light"] .content a:not(.btn){
  color:#9f1239!important;
}

html body[data-theme="light"] .content :is(input,select,textarea):focus{
  border-color:rgba(190,18,60,.58)!important;
  box-shadow:0 0 0 3px rgba(225,29,72,.11),inset 0 1px 0 #fff!important;
}

/* Sidebar-Kontrast im hellen Modus leicht anheben, Geometrie bleibt identisch. */
html body[data-theme="light"] .sidebar .brand-text{
  color:#172033!important;
}
html body[data-theme="light"] .sidebar .brand-context,
html body[data-theme="light"] .sidebar .brand-text small,
html body[data-theme="light"] .sidebar .nav-section{
  color:#53657b!important;
}
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link{
  color:#263a52!important;
}
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link:hover{
  color:#0f1d31!important;
}
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link.active{
  color:#9f1239!important;
}
html body[data-theme="light"] .sidebar .sidebar-nav-icon{
  color:#52677f!important;
}
html body[data-theme="light"] .sidebar nav a.sidebar-nav-link.active .sidebar-nav-icon{
  color:#e11d48!important;
}

/* ui-fixes-v1341.css */
/* Retter-Portal v1.3.41
   Whitemode-Hintergrund vollständig beruhigt: keine Raster, Schleier,
   Phantom-Karten oder dekorativen Flächen zwischen den echten Komponenten.
   Testphasenhinweis im hellen Modus klarer und kontrastreicher gestaltet. */

/* --------------------------------------------------------------------------
   WHITEMODE: eine ruhige, einheitliche Arbeitsfläche ohne Hintergrundeffekte
   -------------------------------------------------------------------------- */
html[data-theme="light"],
html body[data-theme="light"]{
  background:#f3f6fa!important;
  background-color:#f3f6fa!important;
  background-image:none!important;
}

html body[data-theme="light"]::before,
html body[data-theme="light"]::after,
html body[data-theme="light"] .app-shell::before,
html body[data-theme="light"] .app-shell::after,
html body[data-theme="light"] .main::before,
html body[data-theme="light"] .main::after,
html body[data-theme="light"] .content::before,
html body[data-theme="light"] .content::after{
  display:none!important;
  content:none!important;
  background:none!important;
  box-shadow:none!important;
}

html body[data-theme="light"] .app-shell,
html body[data-theme="light"] .main{
  background:#f3f6fa!important;
  background-color:#f3f6fa!important;
  background-image:none!important;
}

html body[data-theme="light"] .content{
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* Ausschließlich echte Komponenten erhalten sichtbare Flächen. */
html body[data-theme="light"] .content > :is(
  .page-head,
  .page-hero,
  .card,
  .toolbar,
  .pagination,
  .table-wrap,
  .data-table-card,
  .checks-table-wrap,
  .portal-footer
),
html body[data-theme="light"] .content :is(
  .form-subcard,
  .detail-item,
  .entity-card,
  .department-card,
  .stat-card,
  .billing-status-card,
  .admin-panel,
  .admin-card,
  .admin-command-nav,
  .admin-water-source-row
),
html body[data-theme="light"] .rp55-dashboard :is(
  .rp55-dash-hero,
  .card,
  .rp55-kpi-card,
  .rp55-focus-card,
  .rp55-own-card,
  .rp55-table-card
),
html body[data-theme="light"] :is(
  .feed-card,
  .dashboard-card,
  .overview-card,
  .youth-calendar-card,
  .youth-table-card
){
  background:#ffffff!important;
  background-color:#ffffff!important;
  background-image:none!important;
  border-color:rgba(71,85,105,.18)!important;
  box-shadow:0 10px 26px rgba(15,23,42,.065)!important;
}

html body[data-theme="light"] .content > :is(
  .page-head,
  .page-hero,
  .card,
  .toolbar,
  .pagination,
  .table-wrap,
  .data-table-card,
  .checks-table-wrap,
  .portal-footer
)::before,
html body[data-theme="light"] .content > :is(
  .page-head,
  .page-hero,
  .card,
  .toolbar,
  .pagination,
  .table-wrap,
  .data-table-card,
  .checks-table-wrap,
  .portal-footer
)::after,
html body[data-theme="light"] .rp55-dashboard :is(
  .rp55-dash-hero,
  .card,
  .rp55-kpi-card,
  .rp55-focus-card,
  .rp55-own-card,
  .rp55-table-card
)::before,
html body[data-theme="light"] .rp55-dashboard :is(
  .rp55-dash-hero,
  .card,
  .rp55-kpi-card,
  .rp55-focus-card,
  .rp55-own-card,
  .rp55-table-card
)::after{
  display:none!important;
  content:none!important;
  background:none!important;
  box-shadow:none!important;
}

/* Kleine Unterelemente bleiben ebenfalls klar weiß statt halbtransparent. */
html body[data-theme="light"] :is(
  .timeline-item,
  .feed-list article,
  .v138-feed-item,
  .rp55-dash-tags span,
  .rp55-focus-grid article,
  .rp55-own-metrics article,
  .rp55-priority-list a,
  .department-chip
){
  background:#ffffff!important;
  background-image:none!important;
  border-color:rgba(71,85,105,.16)!important;
  box-shadow:0 4px 14px rgba(15,23,42,.045)!important;
}

/* Header ebenfalls ohne milchigen Verlauf oder zusätzliche Hintergrundschicht. */
html body[data-theme="light"] .topbar{
  background:#f8fafc!important;
  background-color:#f8fafc!important;
  background-image:none!important;
  border-bottom-color:rgba(71,85,105,.17)!important;
  box-shadow:0 5px 16px rgba(15,23,42,.055)!important;
}

/* --------------------------------------------------------------------------
   TESTPHASE: im Whitemode bewusst sichtbarer, aber weiterhin ruhig und edel
   -------------------------------------------------------------------------- */
html body[data-theme="light"] .organization-commercial-strip{
  color:#3f2b0b!important;
  background:#fff7e8!important;
  background-color:#fff7e8!important;
  background-image:none!important;
  border:1px solid rgba(217,119,6,.38)!important;
  box-shadow:0 8px 22px rgba(120,72,10,.10)!important;
}

html body[data-theme="light"] .organization-commercial-strip__icon{
  color:#ffffff!important;
  background:#d97706!important;
  background-image:none!important;
  border-color:#c96f06!important;
  box-shadow:0 5px 14px rgba(217,119,6,.20)!important;
}

html body[data-theme="light"] .organization-commercial-strip__copy strong{
  color:#4b3107!important;
}

html body[data-theme="light"] .organization-commercial-strip__copy small{
  color:#765527!important;
  opacity:1!important;
}

html body[data-theme="light"] .organization-commercial-strip .btn{
  color:#3f2b0b!important;
  background:#ffffff!important;
  background-image:none!important;
  border-color:rgba(180,114,15,.30)!important;
  box-shadow:0 4px 12px rgba(120,72,10,.08)!important;
}

html body[data-theme="light"] .organization-commercial-strip .btn:hover{
  background:#fffdf8!important;
  border-color:rgba(180,114,15,.46)!important;
}

html body[data-theme="light"] .organization-commercial-strip.is-warning{
  color:#5b2108!important;
  background:#fff1df!important;
  border-color:rgba(234,88,12,.46)!important;
}

html body[data-theme="light"] .organization-commercial-strip.is-warning .organization-commercial-strip__icon{
  background:#ea580c!important;
  border-color:#c2410c!important;
}

/* Benachrichtigungs- und Erfolgshinweise bleiben klar abgegrenzte Einzelkarten. */
html body[data-theme="light"] .dashboard-notification-strip{
  background:#fff8fa!important;
  background-image:none!important;
  border-color:rgba(225,29,72,.25)!important;
  box-shadow:0 7px 20px rgba(15,23,42,.06)!important;
}

html body[data-theme="light"] :is(.flash,.flash.success,.flash.info){
  background-image:none!important;
  box-shadow:0 6px 18px rgba(15,23,42,.055)!important;
}

/* Mobile und Tablet verwenden dieselbe ruhige Fläche ohne dekorative Schleier. */
@media(max-width:1100px){
  html body[data-theme="light"],
  html body[data-theme="light"] .app-shell,
  html body[data-theme="light"] .main,
  html body[data-theme="light"] .content{
    background-color:#f3f6fa!important;
    background-image:none!important;
  }
}

/* ui-fixes-v1342.css */
/* Retter-Portal v1.3.42
   Nur die Portal-Vorschau der öffentlichen Landingpage erhält im Whitemode
   eine echte helle Variante. Darkmode und alle übrigen Bereiche bleiben unverändert. */

body[data-theme="light"] .rp90-site .rp90-ui-preview{
  color:#172033!important;
  background:#f7f9fc!important;
  border-color:rgba(71,85,105,.20)!important;
  box-shadow:0 26px 65px rgba(15,23,42,.14)!important;
}

body[data-theme="light"] .rp90-site .rp90-ui-top{
  color:#172033!important;
  background:#ffffff!important;
  border-bottom-color:rgba(71,85,105,.16)!important;
}

body[data-theme="light"] .rp90-site .rp90-ui-top em{
  color:#526177!important;
}

body[data-theme="light"] .rp90-site .rp90-ui-sidebar{
  color:#334155!important;
  background:#edf2f7!important;
  border-right-color:rgba(71,85,105,.16)!important;
}

body[data-theme="light"] .rp90-site .rp90-ui-sidebar b{
  color:#64748b!important;
}

body[data-theme="light"] .rp90-site .rp90-ui-sidebar span{
  color:#475569!important;
}

body[data-theme="light"] .rp90-site .rp90-ui-sidebar span.active{
  color:#ffffff!important;
  background:linear-gradient(135deg,#c8102e,#a41129)!important;
  box-shadow:0 9px 22px rgba(200,16,46,.18)!important;
}

body[data-theme="light"] .rp90-site .rp90-ui-content{
  background:#f7f9fc!important;
}

body[data-theme="light"] .rp90-site .rp90-ui-title span{
  color:#c8102e!important;
}

body[data-theme="light"] .rp90-site .rp90-ui-title strong{
  color:#172033!important;
}

body[data-theme="light"] .rp90-site .rp90-ui-stats article,
body[data-theme="light"] .rp90-site .rp90-ui-row{
  color:#172033!important;
  background:#ffffff!important;
  border-color:rgba(71,85,105,.17)!important;
  box-shadow:0 8px 22px rgba(15,23,42,.07)!important;
}

body[data-theme="light"] .rp90-site .rp90-ui-stats small,
body[data-theme="light"] .rp90-site .rp90-ui-row small{
  color:#64748b!important;
}

body[data-theme="light"] .rp90-site .rp90-ui-row em{
  color:#475569!important;
  background:#e7edf4!important;
  border:1px solid rgba(71,85,105,.10)!important;
}

@media(max-width:600px){
  body[data-theme="light"] .rp90-site .rp90-ui-sidebar{
    border-right:0!important;
    border-bottom-color:rgba(71,85,105,.16)!important;
  }
}

/* ui-fixes-v1343.css */
/* Retter-Portal v1.3.43
   Mobiler Header eindeutig auf genau eine Variante begrenzt und
   doppelte Trennlinie unter dem Sidebar-Markenblock entfernt. */

/* Der Markenblock braucht keine eigene Trennlinie, da die erste
   Abschnittsüberschrift bereits sauber gliedert. */
html body .sidebar-brand-row,
html body[data-theme="light"] .sidebar-brand-row,
html body[data-theme="dark"] .sidebar-brand-row{
  border-bottom:0!important;
  box-shadow:none!important;
}
html body .sidebar-brand-row::before,
html body .sidebar-brand-row::after,
html body .sidebar .brand::before,
html body .sidebar .brand::after{
  display:none!important;
  content:none!important;
  border:0!important;
  box-shadow:none!important;
}
html body .sidebar .brand,
html body[data-theme="light"] .sidebar .brand,
html body[data-theme="dark"] .sidebar .brand{
  border-bottom:0!important;
  box-shadow:none!important;
}

/* Smartphone: Die Desktop-/Tablet-Kopfzeile darf unter keinen Umständen
   zusätzlich zur echten mobilen Kopfzeile sichtbar bleiben. */
@media(max-width:760px){
  html body .app-shell .main > header.topbar > .topbar-desktop-shell,
  html body header.topbar > .topbar-desktop-shell,
  html body .topbar .topbar-desktop-shell,
  html body .topbar-desktop-shell{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
    position:absolute!important;
    inset:auto!important;
    width:0!important;
    min-width:0!important;
    max-width:0!important;
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
    opacity:0!important;
  }

  html body .app-shell .main > header.topbar > .rp-mobile-header,
  html body header.topbar > .rp-mobile-header,
  html body .topbar .rp-mobile-header{
    display:grid!important;
    visibility:visible!important;
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    opacity:1!important;
    pointer-events:auto!important;
  }

  html body .topbar{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    padding:0!important;
    overflow:visible!important;
  }

  /* Mobile Kopfzeile kompakt halten und nicht erneut in alte Tablet-Zeilen zerlegen. */
  html body .topbar .rp-mobile-header{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto auto auto!important;
    grid-template-areas:none!important;
    gap:8px!important;
    padding:9px 10px 10px!important;
  }
  html body .topbar .rp-mobile-header__top,
  html body .topbar .rp-mobile-header__context,
  html body .topbar .rp-mobile-header__bottom{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
}

/* ui-fixes-v1344.css */
/* Retter-Portal v1.3.44
   DEV-Kennzeichnung im mobilen Header entkoppelt und mobile Doppelrahmen bereinigt. */

@media(max-width:760px){
  /* Mobiler Header: feste, konfliktfreie Zeilenstruktur. */
  html body .app-shell .main > .topbar .rp-mobile-header,
  html body .topbar .rp-mobile-header{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-auto-rows:auto!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    padding:9px 10px 10px!important;
    overflow:visible!important;
  }

  html body .app-shell .main > .topbar .rp-mobile-header__top,
  html body .topbar .rp-mobile-header__top{
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) 76px!important;
    grid-template-rows:44px!important;
    align-items:stretch!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    min-height:44px!important;
    max-height:none!important;
  }

  html body .app-shell .main > .topbar .rp-mobile-header__menu,
  html body .topbar .rp-mobile-header__menu{
    grid-column:1!important;
    grid-row:1!important;
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    align-self:stretch!important;
    justify-self:stretch!important;
  }

  html body .app-shell .main > .topbar .rp-mobile-header__brand,
  html body .topbar .rp-mobile-header__brand{
    grid-column:2!important;
    grid-row:1!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-rows:42px!important;
    align-items:center!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    padding:0 8px 0 12px!important;
    overflow:hidden!important;
  }

  html body .app-shell .main > .topbar .rp-mobile-header__product,
  html body .topbar .rp-mobile-header__product{
    grid-column:1!important;
    grid-row:1!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    color:var(--text)!important;
    font-size:.74rem!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.095em!important;
    text-transform:uppercase!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  html body .app-shell .main > .topbar .rp-mobile-header__version,
  html body .topbar .rp-mobile-header__version{
    grid-column:2!important;
    grid-row:1!important;
    min-width:58px!important;
    max-width:72px!important;
    height:30px!important;
    padding:0 8px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:11px!important;
    white-space:nowrap!important;
    font-size:.7rem!important;
    line-height:1!important;
  }

  html body .app-shell .main > .topbar form.rp-mobile-header__logout,
  html body .topbar form.rp-mobile-header__logout{
    grid-column:3!important;
    grid-row:1!important;
    width:76px!important;
    min-width:76px!important;
    max-width:76px!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    align-self:stretch!important;
    justify-self:stretch!important;
  }
  html body .topbar form.rp-mobile-header__logout .btn{
    width:100%!important;
    height:100%!important;
    min-height:44px!important;
  }

  /* DEV-Status erhält eine eigene Zeile und kann deshalb nichts mehr überlagern. */
  html body .rp-mobile-header__dev{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    min-height:34px!important;
    margin:0!important;
    padding:0 10px!important;
    border:1px solid rgba(251,113,133,.24)!important;
    border-radius:12px!important;
    background:linear-gradient(90deg,rgba(225,29,72,.105),rgba(30,64,175,.055))!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
    overflow:hidden!important;
  }
  html body .rp-mobile-header__dev .dev-organization-chip--mobile{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    max-width:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#fda4af!important;
    font-size:.68rem!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.12em!important;
    text-transform:uppercase!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  html body .app-shell .main > .topbar .rp-mobile-header__context,
  html body .topbar .rp-mobile-header__context,
  html body .app-shell .main > .topbar .rp-mobile-header__bottom,
  html body .topbar .rp-mobile-header__bottom{
    grid-column:1!important;
    grid-row:auto!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }

  /* Tabellen-/Listencontainer mobil nur einmal einfassen. */
  html body .content :is(.card.table-wrap,.table-wrap,.data-table-card,.checks-table-wrap),
  html body .content .card > :is(.table-wrap,.data-table-card,.checks-table-wrap){
    overflow:visible!important;
  }

  html body .content :is(.card.table-wrap,.table-wrap,.data-table-card,.checks-table-wrap):not(:has(> .card-head)),
  html body .content .card > :is(.table-wrap,.data-table-card,.checks-table-wrap){
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }

  html body .content :is(.card.table-wrap,.table-wrap,.data-table-card,.checks-table-wrap)::before,
  html body .content :is(.card.table-wrap,.table-wrap,.data-table-card,.checks-table-wrap)::after,
  html body .content .card > :is(.table-wrap,.data-table-card,.checks-table-wrap)::before,
  html body .content .card > :is(.table-wrap,.data-table-card,.checks-table-wrap)::after{
    display:none!important;
    content:none!important;
  }

  html body .content table.responsive-table,
  html body .content table.responsive-table :is(tbody){
    width:100%!important;
    min-width:0!important;
    border:0!important;
    outline:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  html body .content table.responsive-table tbody tr{
    margin:0!important;
    border:1px solid rgba(148,163,184,.18)!important;
    border-radius:16px!important;
    outline:0!important;
    box-shadow:0 10px 26px rgba(1,7,18,.14)!important;
    overflow:hidden!important;
  }

  html body .content table.responsive-table tbody tr::before,
  html body .content table.responsive-table tbody tr::after{
    display:none!important;
    content:none!important;
  }

  html body .content table.responsive-table tbody td{
    border:0!important;
    border-bottom:1px solid rgba(148,163,184,.105)!important;
    border-radius:0!important;
    outline:0!important;
    box-shadow:none!important;
    background:transparent!important;
  }
  html body .content table.responsive-table tbody td:last-child{
    border-bottom:0!important;
  }

  /* Leere Tabellenzustände ohne äußeren und inneren Doppelrahmen. */
  html body .content table.responsive-table tbody tr:has(> td.mobile-full-row),
  html body .content table.responsive-table tbody tr:has(> td.empty[colspan]){
    display:block!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  html body .content table.responsive-table td.mobile-full-row,
  html body .content table.responsive-table td.empty[colspan]{
    display:block!important;
    width:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:18px 14px!important;
    border:0!important;
    border-radius:12px!important;
    outline:0!important;
    background:rgba(148,163,184,.045)!important;
    box-shadow:none!important;
    color:var(--muted)!important;
    text-align:center!important;
  }
  html body .content table.responsive-table td.mobile-full-row::before,
  html body .content table.responsive-table td.empty[colspan]::before{
    display:none!important;
    content:none!important;
  }

  /* Häufig verschachtelte Listenflächen nicht noch einmal umranden. */
  html body .content .card > .empty,
  html body .content .card > .empty-state,
  html body .content .card > .list-empty{
    border:0!important;
    outline:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
}

@media(max-width:390px){
  html body .app-shell .main > .topbar .rp-mobile-header__top,
  html body .topbar .rp-mobile-header__top{
    grid-template-columns:42px minmax(0,1fr) 70px!important;
    grid-template-rows:42px!important;
    min-height:42px!important;
  }
  html body .app-shell .main > .topbar .rp-mobile-header__menu,
  html body .topbar .rp-mobile-header__menu{
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
  }
  html body .app-shell .main > .topbar .rp-mobile-header__brand,
  html body .topbar .rp-mobile-header__brand{
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    padding-left:9px!important;
    padding-right:6px!important;
    gap:5px!important;
  }
  html body .app-shell .main > .topbar form.rp-mobile-header__logout,
  html body .topbar form.rp-mobile-header__logout{
    width:70px!important;
    min-width:70px!important;
    max-width:70px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
  }
  html body .topbar form.rp-mobile-header__logout .btn{min-height:42px!important;}
  html body .app-shell .main > .topbar .rp-mobile-header__product,
  html body .topbar .rp-mobile-header__product{font-size:.65rem!important;letter-spacing:.075em!important;}
  html body .app-shell .main > .topbar .rp-mobile-header__version,
  html body .topbar .rp-mobile-header__version{min-width:52px!important;max-width:60px!important;padding-inline:5px!important;font-size:.62rem!important;}
}

body[data-theme="light"] .rp-mobile-header__dev{
  border-color:rgba(225,29,72,.20)!important;
  background:linear-gradient(90deg,rgba(255,228,235,.88),rgba(239,246,255,.88))!important;
  box-shadow:none!important;
}
body[data-theme="light"] .rp-mobile-header__dev .dev-organization-chip--mobile{
  color:#be123c!important;
}
body[data-theme="light"] .content table.responsive-table td.mobile-full-row,
body[data-theme="light"] .content table.responsive-table td.empty[colspan]{
  background:rgba(226,232,240,.48)!important;
  color:#526176!important;
}

/* ui-fixes-v1345.css */
/* Retter-Portal v1.3.45
   Mobile Tabellenkarten: nur noch ein äußerer Datensatzrahmen, keine inneren Kästchen. */

@media(max-width:760px){
  /* Der Tabellencontainer selbst bleibt vollständig rahmenlos. */
  html body .content :is(.card.table-wrap,.table-wrap,.data-table-card,.checks-table-wrap),
  html body .content .card > :is(.table-wrap,.data-table-card,.checks-table-wrap){
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
    overflow:visible!important;
  }

  html body .content table.responsive-table tbody{
    display:grid!important;
    gap:12px!important;
    width:100%!important;
  }

  /* Pro Datensatz exakt eine Kartenfläche. */
  html body .content table.responsive-table tbody tr{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:12px 14px!important;
    border:1px solid rgba(148,163,184,.18)!important;
    border-radius:17px!important;
    outline:0!important;
    background:linear-gradient(145deg,rgba(11,25,43,.97),rgba(8,20,35,.95))!important;
    box-shadow:0 10px 24px rgba(1,7,18,.14)!important;
    overflow:hidden!important;
  }

  /* Keine einzelnen Kästchen oder Trennrahmen mehr um Tabellenzellen. */
  html body .content table.responsive-table tbody td,
  html body .content table.responsive-table tbody td:first-child,
  html body .content table.responsive-table tbody td:last-child{
    display:grid!important;
    grid-template-columns:minmax(100px,37%) minmax(0,1fr)!important;
    align-items:start!important;
    gap:10px!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:8px 0!important;
    border:0!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  html body .content table.responsive-table tbody td::before{
    display:block!important;
    content:attr(data-label)!important;
    margin:1px 0 0!important;
    color:#8fa0b5!important;
    font-size:.64rem!important;
    line-height:1.25!important;
    font-weight:900!important;
    letter-spacing:.075em!important;
    text-transform:uppercase!important;
  }

  html body .content table.responsive-table tbody td.mobile-action-cell,
  html body .content table.responsive-table tbody td.actions,
  html body .content table.responsive-table tbody td.table-actions{
    display:block!important;
    padding:10px 0 0!important;
    border:0!important;
  }

  html body .content table.responsive-table tbody td.mobile-action-cell::before,
  html body .content table.responsive-table tbody td.actions::before,
  html body .content table.responsive-table tbody td.table-actions::before{
    display:none!important;
    content:none!important;
  }

  html body .content table.responsive-table tbody td.mobile-action-cell .btn,
  html body .content table.responsive-table tbody td.actions .btn,
  html body .content table.responsive-table tbody td.table-actions .btn{
    width:100%!important;
    margin:0!important;
  }

  /* Leere Tabellen bleiben eine einzelne ruhige Hinweisfläche. */
  html body .content table.responsive-table tbody tr:has(> td.mobile-full-row),
  html body .content table.responsive-table tbody tr:has(> td.empty[colspan]){
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  html body .content table.responsive-table td.mobile-full-row,
  html body .content table.responsive-table td.empty[colspan]{
    display:block!important;
    padding:16px 14px!important;
    border:1px solid rgba(148,163,184,.14)!important;
    border-radius:14px!important;
    background:rgba(148,163,184,.045)!important;
    color:var(--muted)!important;
    text-align:center!important;
  }
}

@media(max-width:430px){
  html body .content table.responsive-table tbody tr{
    padding:11px 12px!important;
    border-radius:16px!important;
  }

  html body .content table.responsive-table tbody td,
  html body .content table.responsive-table tbody td:first-child,
  html body .content table.responsive-table tbody td:last-child{
    grid-template-columns:1fr!important;
    gap:3px!important;
    padding:7px 0!important;
  }

  html body .content table.responsive-table tbody td::before{
    margin:0!important;
    font-size:.62rem!important;
  }
}

body[data-theme="light"] .content table.responsive-table tbody tr{
  background:linear-gradient(145deg,#ffffff,#f5f8fc)!important;
  border-color:rgba(148,163,184,.22)!important;
  box-shadow:0 9px 22px rgba(100,116,139,.10)!important;
}
body[data-theme="light"] .content table.responsive-table tbody td::before{
  color:#64748b!important;
}

/* ui-fixes-v1346.css */
/* Retter-Portal v1.3.46
   Mobile Datensatzkarten ohne innere Kästchen und kompakterer Abstand
   zwischen Markenblock und erster Sidebar-Sektion. */

/* Weniger Leerraum zwischen Retter-Portal/Feuerwehrverwaltung und Übersicht. */
html body .sidebar .sidebar-brand-row,
html body[data-theme="light"] .sidebar .sidebar-brand-row,
html body[data-theme="dark"] .sidebar .sidebar-brand-row{
  margin-bottom:0!important;
  padding-bottom:2px!important;
}
html body .sidebar .brand,
html body[data-theme="light"] .sidebar .brand,
html body[data-theme="dark"] .sidebar .brand{
  padding-bottom:4px!important;
}
html body .sidebar .sidebar-nav{
  padding-top:0!important;
}
html body .sidebar .sidebar-nav > .nav-section:first-child{
  margin-top:8px!important;
}

@media(max-width:760px){
  /* Sämtliche äußeren Tabellenhüllen mobil vollständig neutralisieren. */
  html body .app-shell .main section.content > div.card.table-wrap,
  html body .app-shell .main section.content > div.table-wrap,
  html body .app-shell .main section.content > div.data-table-card,
  html body .app-shell .main section.content > div.checks-table-wrap,
  html body .app-shell .main section.content .card > div.table-wrap,
  html body .app-shell .main section.content .card > div.data-table-card,
  html body .app-shell .main section.content .card > div.checks-table-wrap{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
    filter:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    overflow:visible!important;
  }
  html body .app-shell .main section.content :is(.card.table-wrap,.table-wrap,.data-table-card,.checks-table-wrap)::before,
  html body .app-shell .main section.content :is(.card.table-wrap,.table-wrap,.data-table-card,.checks-table-wrap)::after{
    display:none!important;
    content:none!important;
    border:0!important;
    background:none!important;
    box-shadow:none!important;
  }

  html body .app-shell .main section.content table.responsive-table,
  html body .app-shell .main section.content table.responsive-table > tbody{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  html body .app-shell .main section.content table.responsive-table > tbody{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
  }
  html body .app-shell .main section.content table.responsive-table::before,
  html body .app-shell .main section.content table.responsive-table::after,
  html body .app-shell .main section.content table.responsive-table > tbody::before,
  html body .app-shell .main section.content table.responsive-table > tbody::after{
    display:none!important;
    content:none!important;
  }

  /* Nur der Datensatz selbst ist eine Karte. */
  html body .app-shell .main section.content table.responsive-table > tbody > tr,
  html body .app-shell .main section.content table.responsive-table > tbody > tr:nth-child(n){
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:12px 14px!important;
    border:0!important;
    border-radius:17px!important;
    outline:0!important;
    background:linear-gradient(145deg,rgba(11,25,43,.98),rgba(8,20,35,.96))!important;
    background-image:linear-gradient(145deg,rgba(11,25,43,.98),rgba(8,20,35,.96))!important;
    box-shadow:inset 0 0 0 1px rgba(148,163,184,.18),0 10px 24px rgba(1,7,18,.14)!important;
    overflow:hidden!important;
  }
  html body .app-shell .main section.content table.responsive-table > tbody > tr::before,
  html body .app-shell .main section.content table.responsive-table > tbody > tr::after{
    display:none!important;
    content:none!important;
    border:0!important;
    background:none!important;
    box-shadow:none!important;
  }

  /* Keine Linie, kein Rahmen und keine eigene Fläche an einzelnen Tabellenzellen. */
  html body .app-shell .main section.content table.responsive-table > tbody > tr > td,
  html body .app-shell .main section.content table.responsive-table > tbody > tr > td:nth-child(n),
  html body .app-shell .main section.content table.responsive-table > tbody > tr > td:first-child,
  html body .app-shell .main section.content table.responsive-table > tbody > tr > td:last-child{
    display:grid!important;
    grid-template-columns:minmax(100px,37%) minmax(0,1fr)!important;
    align-items:start!important;
    gap:10px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:8px 0!important;
    border:0!important;
    border-top:0!important;
    border-right:0!important;
    border-bottom:0!important;
    border-left:0!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
    filter:none!important;
  }
  html body .app-shell .main section.content table.responsive-table > tbody > tr > td::after{
    display:none!important;
    content:none!important;
    border:0!important;
    background:none!important;
    box-shadow:none!important;
  }
  html body .app-shell .main section.content table.responsive-table > tbody > tr > td::before{
    display:block!important;
    content:attr(data-label)!important;
    margin:1px 0 0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#8fa0b5!important;
    font-size:.64rem!important;
    line-height:1.25!important;
    font-weight:900!important;
    letter-spacing:.075em!important;
    text-transform:uppercase!important;
  }

  html body .app-shell .main section.content table.responsive-table > tbody > tr > td.mobile-action-cell,
  html body .app-shell .main section.content table.responsive-table > tbody > tr > td.actions,
  html body .app-shell .main section.content table.responsive-table > tbody > tr > td.table-actions{
    display:block!important;
    padding:10px 0 0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  html body .app-shell .main section.content table.responsive-table > tbody > tr > td.mobile-action-cell::before,
  html body .app-shell .main section.content table.responsive-table > tbody > tr > td.actions::before,
  html body .app-shell .main section.content table.responsive-table > tbody > tr > td.table-actions::before{
    display:none!important;
    content:none!important;
  }
  html body .app-shell .main section.content table.responsive-table > tbody > tr > td.mobile-action-cell :is(.btn,button),
  html body .app-shell .main section.content table.responsive-table > tbody > tr > td.actions :is(.btn,button),
  html body .app-shell .main section.content table.responsive-table > tbody > tr > td.table-actions :is(.btn,button){
    width:100%!important;
    margin:0!important;
  }

  /* Leere Tabellen: ebenfalls nur genau eine Hinweisfläche. */
  html body .app-shell .main section.content table.responsive-table > tbody > tr:has(> td.mobile-full-row),
  html body .app-shell .main section.content table.responsive-table > tbody > tr:has(> td.empty[colspan]){
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  html body .app-shell .main section.content table.responsive-table > tbody > tr > td.mobile-full-row,
  html body .app-shell .main section.content table.responsive-table > tbody > tr > td.empty[colspan]{
    display:block!important;
    padding:16px 14px!important;
    border:0!important;
    border-radius:14px!important;
    background:rgba(148,163,184,.045)!important;
    box-shadow:inset 0 0 0 1px rgba(148,163,184,.14)!important;
    color:var(--muted)!important;
    text-align:center!important;
  }
}

@media(max-width:430px){
  html body .app-shell .main section.content table.responsive-table > tbody > tr,
  html body .app-shell .main section.content table.responsive-table > tbody > tr:nth-child(n){
    padding:11px 12px!important;
    border-radius:16px!important;
  }
  html body .app-shell .main section.content table.responsive-table > tbody > tr > td,
  html body .app-shell .main section.content table.responsive-table > tbody > tr > td:nth-child(n){
    grid-template-columns:1fr!important;
    gap:3px!important;
    padding:7px 0!important;
  }
  html body .app-shell .main section.content table.responsive-table > tbody > tr > td::before{
    margin:0!important;
    font-size:.62rem!important;
  }
}

@media(max-width:760px){
  body[data-theme="light"] .app-shell .main section.content table.responsive-table > tbody > tr,
  body[data-theme="light"] .app-shell .main section.content table.responsive-table > tbody > tr:nth-child(n){
    background:linear-gradient(145deg,#ffffff,#f5f8fc)!important;
    background-image:linear-gradient(145deg,#ffffff,#f5f8fc)!important;
    box-shadow:inset 0 0 0 1px rgba(148,163,184,.22),0 9px 22px rgba(100,116,139,.10)!important;
  }
  body[data-theme="light"] .app-shell .main section.content table.responsive-table > tbody > tr > td::before{
    color:#64748b!important;
  }
}

/* ui-fixes-v1347.css */
/* Retter-Portal v1.3.47
   Ausschließlich Inventar mobil: die letzte äußere Tabellenhülle vollständig entfernen.
   Ursache: inventory-table-wrap ist ein SECTION-Element und wurde von den bisherigen
   DIV-spezifischen Reset-Selektoren nicht getroffen. */

@media (max-width:760px){
  /* Beide Inventar-Hüllen nehmen mobil keinerlei eigene Box mehr ein. */
  html body .app-shell .main section.content .live-results > .inventory-table-shell,
  html body .app-shell .main section.content .inventory-table-shell,
  html body .app-shell .main section.content .inventory-table-shell > section.inventory-table-wrap,
  html body .app-shell .main section.content section.card.table-wrap.data-table-card.inventory-table-wrap{
    display:contents!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    outline:0!important;
    background:none!important;
    background-image:none!important;
    box-shadow:none!important;
    filter:none!important;
    overflow:visible!important;
  }

  html body .app-shell .main section.content .inventory-table-shell::before,
  html body .app-shell .main section.content .inventory-table-shell::after,
  html body .app-shell .main section.content section.inventory-table-wrap::before,
  html body .app-shell .main section.content section.inventory-table-wrap::after{
    display:none!important;
    content:none!important;
    border:0!important;
    background:none!important;
    box-shadow:none!important;
  }

  html body .app-shell .main section.content .inventory-scroll-guide{
    display:none!important;
  }

  /* Genau die einzelne Tabellenzeile bleibt als einzige Datensatzkarte sichtbar. */
  html body .app-shell .main section.content .inventory-table.responsive-table > tbody{
    display:grid!important;
    width:100%!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
}

/* ui-fixes-v1348.css */
/* Retter-Portal v1.3.48
   Inventar mobil: Die Aktionszelle erzeugt keine zweite Fläche mehr.
   Nur der eigentliche Bearbeiten-Button bleibt sichtbar. */

@media (max-width:760px){
  html body .app-shell .main section.content
  .inventory-table.responsive-table > tbody > tr > td.actions.table-actions,
  html body .app-shell .main section.content
  .inventory-table.responsive-table > tbody > tr > td.actions.table-actions.mobile-action-cell{
    display:contents!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
    filter:none!important;
  }

  html body .app-shell .main section.content
  .inventory-table.responsive-table > tbody > tr > td.actions.table-actions::before,
  html body .app-shell .main section.content
  .inventory-table.responsive-table > tbody > tr > td.actions.table-actions::after{
    display:none!important;
    content:none!important;
  }

  html body .app-shell .main section.content
  .inventory-table.responsive-table > tbody > tr .inventory-edit-button{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:44px!important;
    margin:12px 0 0!important;
    padding:10px 14px!important;
    border-radius:13px!important;
  }
}

/* ui-fixes-v1349.css */
/* Retter-Portal v1.3.49
   Mobile Tabellenaktionen global ohne zusätzliche Zell-/Kartenfläche.
   Betrifft Öffnen, Bearbeiten und vergleichbare Aktionsbuttons in allen Modulen. */

@media (max-width:760px){
  /*
   * Aktionszellen dürfen mobil keine zweite Box innerhalb der Datensatzkarte erzeugen.
   * display:contents entfernt nur die Zellhülle; die eigentlichen Buttons/Formulare bleiben erhalten.
   */
  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td.actions,
  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td.table-actions,
  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td.mobile-action-cell:has(.btn),
  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td.mobile-action-cell:has(button){
    display:contents!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
    filter:none!important;
  }

  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td.actions::before,
  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td.actions::after,
  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td.table-actions::before,
  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td.table-actions::after,
  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td.mobile-action-cell:has(.btn)::before,
  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td.mobile-action-cell:has(.btn)::after,
  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td.mobile-action-cell:has(button)::before,
  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td.mobile-action-cell:has(button)::after{
    display:none!important;
    content:none!important;
  }

  /* Direkte Aktionsbuttons erhalten nur Abstand zur letzten Information, keine eigene Hülle. */
  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td:is(.actions,.table-actions,.mobile-action-cell) > :is(a.btn,button.btn){
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    max-width:100%!important;
    min-height:44px!important;
    margin:12px 0 0!important;
    padding:10px 14px!important;
    border-radius:13px!important;
  }


  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td:is(.actions,.table-actions,.mobile-action-cell) > form > :is(button.btn,a.btn){
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    max-width:100%!important;
    min-height:44px!important;
    margin:0!important;
    padding:10px 14px!important;
    border-radius:13px!important;
  }

  /* Formulare und bekannte Aktionsgruppen ebenfalls ohne zusätzliche Fläche. */
  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td:is(.actions,.table-actions,.mobile-action-cell) > :is(form,.form-actions,.billing-invoice-actions){
    width:100%!important;
    max-width:100%!important;
    margin:12px 0 0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
  }

  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td:is(.actions,.table-actions,.mobile-action-cell) > form{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:8px!important;
  }

  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td:is(.actions,.table-actions,.mobile-action-cell) > .form-actions,
  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td:is(.actions,.table-actions,.mobile-action-cell) > .billing-invoice-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:8px!important;
  }

  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td:is(.actions,.table-actions,.mobile-action-cell)
  :is(.btn,button,select,input){
    max-width:100%!important;
  }

  html body .app-shell .main section.content
  table.responsive-table > tbody > tr > td:is(.actions,.table-actions,.mobile-action-cell)
  :is(.form-actions,.billing-invoice-actions,.billing-status-form) > :is(.btn,button,select,form){
    width:100%!important;
  }
}

/* ui-fixes-v1350.css */
/* Retter-Portal v1.3.50
   Einsätze mobil: die äußere Tabellen-/Kartenhülle wird vollständig aus dem Layout entfernt.
   Sichtbar bleiben ausschließlich die einzelnen Einsatzkarten und deren echter Öffnen-Button. */

@media (max-width:760px){
  /*
   * Der konkrete Incident-Wrapper war trotz der allgemeinen Tabellen-Resets weiterhin
   * als zweite große Box sichtbar. display:contents entfernt genau diese Hülle,
   * ohne die Datensatzkarten oder deren Inhalte zu verändern.
   */
  html body .app-shell .main section.content > div.card.table-wrap.incident-list-wrap,
  html body .app-shell .main section.content > .incident-list-wrap,
  html body .app-shell .main section.content .incident-list-wrap{
    display:contents!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
    filter:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }

  html body .app-shell .main section.content .incident-list-wrap::before,
  html body .app-shell .main section.content .incident-list-wrap::after{
    display:none!important;
    content:none!important;
  }

  /* Tabelle und tbody selbst bleiben ebenfalls vollständig rahmenlos. */
  html body .app-shell .main section.content table.incident-list-table.responsive-table,
  html body .app-shell .main section.content table.incident-list-table.responsive-table > tbody{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
    overflow:visible!important;
  }

  html body .app-shell .main section.content table.incident-list-table.responsive-table > tbody{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
  }

  html body .app-shell .main section.content table.incident-list-table.responsive-table::before,
  html body .app-shell .main section.content table.incident-list-table.responsive-table::after,
  html body .app-shell .main section.content table.incident-list-table.responsive-table > tbody::before,
  html body .app-shell .main section.content table.incident-list-table.responsive-table > tbody::after{
    display:none!important;
    content:none!important;
  }
}

/* ui-fixes-v1351.css */
/* Retter-Portal v1.3.51
   Mobile Tabellenlisten global vereinheitlicht:
   keine zusätzliche Listen-/Tabellenhülle mehr, nur eine Karte pro Datensatz.
   Gilt unter anderem für Lehrgangsbedarf, Einsätze, Dienste, Personal, Fahrzeuge,
   Prüfungen, Wasserversorgung, Inventar und vergleichbare responsive Tabellen. */

@media (max-width:760px){
  /*
   * Alle reinen Tabellenkarten ohne eigenen Kartenkopf werden mobil aus dem
   * Box-Layout entfernt. Damit kann keine zweite große Hülle um die einzelnen
   * Datensatzkarten entstehen – unabhängig davon, ob der Wrapper ein DIV,
   * SECTION oder ARTICLE ist und unabhängig von der Modulseite.
   */
  html body .app-shell .main section.content
  :is(section,div,article).card.table-wrap:has(> table.responsive-table):not(:has(> .card-head)),
  html body .app-shell .main section.content
  :is(section,div,article).table-wrap:has(> table.responsive-table):not(:has(> .card-head)),
  html body .app-shell .main section.content
  :is(section,div,article).data-table-card:has(> table.responsive-table):not(:has(> .card-head)),
  html body .app-shell .main section.content
  :is(section,div,article).checks-table-wrap:has(> table.responsive-table):not(:has(> .card-head)),
  html body .app-shell .main section.content .live-results >
  :is(section,div,article):has(> table.responsive-table):not(:has(> .card-head)){
    display:contents!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
    filter:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    overflow:visible!important;
  }

  html body .app-shell .main section.content
  :is(section,div,article):has(> table.responsive-table):not(:has(> .card-head))::before,
  html body .app-shell .main section.content
  :is(section,div,article):has(> table.responsive-table):not(:has(> .card-head))::after{
    display:none!important;
    content:none!important;
  }

  /* Tabelle und tbody besitzen global keinerlei eigene Karte oder Umrandung. */
  html body .app-shell .main section.content table.responsive-table,
  html body .app-shell .main section.content table.responsive-table > tbody{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
    filter:none!important;
    overflow:visible!important;
  }

  html body .app-shell .main section.content table.responsive-table > tbody{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
  }

  html body .app-shell .main section.content table.responsive-table::before,
  html body .app-shell .main section.content table.responsive-table::after,
  html body .app-shell .main section.content table.responsive-table > tbody::before,
  html body .app-shell .main section.content table.responsive-table > tbody::after{
    display:none!important;
    content:none!important;
  }

  /*
   * Aktionszellen mit Buttons, Formularen, Selects oder Eingaben erzeugen
   * ebenfalls keine zweite Fläche innerhalb der Datensatzkarte.
   * Das deckt auch den Status-Editor im Lehrgangsbedarf ab.
   */
  html body .app-shell .main section.content table.responsive-table > tbody > tr >
  td:is(.actions,.table-actions,.mobile-action-cell,.training-action-cell):has(:is(.btn,button,form,select,input,textarea)){
    display:contents!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
    filter:none!important;
  }

  html body .app-shell .main section.content table.responsive-table > tbody > tr >
  td:is(.actions,.table-actions,.mobile-action-cell,.training-action-cell):has(:is(.btn,button,form,select,input,textarea))::before,
  html body .app-shell .main section.content table.responsive-table > tbody > tr >
  td:is(.actions,.table-actions,.mobile-action-cell,.training-action-cell):has(:is(.btn,button,form,select,input,textarea))::after{
    display:none!important;
    content:none!important;
  }

  /* Direkte Buttons bleiben als einziges Bedienelement erhalten. */
  html body .app-shell .main section.content table.responsive-table > tbody > tr >
  td:is(.actions,.table-actions,.mobile-action-cell,.training-action-cell) > :is(a.btn,button.btn){
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    max-width:100%!important;
    min-height:44px!important;
    margin:12px 0 0!important;
    padding:10px 14px!important;
  }

  /* Formulare in Aktionszellen sind rahmenlose Steuerelementgruppen. */
  html body .app-shell .main section.content table.responsive-table > tbody > tr >
  td:is(.actions,.table-actions,.mobile-action-cell,.training-action-cell) >
  :is(form,.form-actions,.billing-invoice-actions,.training-status-autosave){
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:8px!important;
    width:100%!important;
    max-width:100%!important;
    margin:12px 0 0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    background-image:none!important;
    box-shadow:none!important;
    filter:none!important;
  }

  html body .app-shell .main section.content table.responsive-table > tbody > tr >
  td:is(.actions,.table-actions,.mobile-action-cell,.training-action-cell)
  :is(form,.form-actions,.billing-invoice-actions,.training-status-autosave) >
  :is(.btn,button,select,input,textarea){
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
  }

  /* Autosave-Hinweise bleiben lesbar, aber ohne eigene Karte. */
  html body .app-shell .main section.content table.responsive-table
  .training-status-autosave .autosave-state{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:2px 0 0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
}

/* ui-fixes-v1352.css */
/* Retter-Portal v1.3.52
   Matrix-Polish: moderneres Layout für die Qualifikations- & Führungsmatrix */

html body .v152-matrix-card{
  padding:22px;
}
html body .v152-matrix-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
}
html body .v152-matrix-head-copy{
  display:grid;
  gap:8px;
}
html body .v152-matrix-subtitle{
  margin:0;
  max-width:780px;
  color:var(--muted);
  line-height:1.55;
  font-size:.98rem;
}
html body .v152-matrix-head-side{
  display:grid;
  justify-items:end;
  gap:10px;
}
html body .v152-matrix-legend{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}
html body .v152-matrix-legend-item{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 12px;
  border:1px solid var(--line-soft);
  border-radius:999px;
  background:rgba(15,23,42,.22);
  color:var(--text);
  font-size:.77rem;
  font-weight:800;
  letter-spacing:.01em;
}
html body .v152-matrix-legend-item i{
  display:block;
  width:10px;
  height:10px;
  border-radius:999px;
  background:currentColor;
  box-shadow:0 0 0 4px color-mix(in srgb, currentColor 18%, transparent);
}
html body .v152-matrix-legend-item.valid{color:#10b981}
html body .v152-matrix-legend-item.due{color:#f59e0b}
html body .v152-matrix-legend-item.expired{color:#f43f5e}
html body .v152-matrix-legend-item.none{color:#94a3b8}

html body .v152-matrix-wrap{
  position:relative;
  padding:14px;
  border-radius:24px;
  border:1px solid color-mix(in srgb, var(--line-soft) 75%, transparent);
  background:
    linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,0)) padding-box,
    linear-gradient(135deg, rgba(225,29,72,.12), rgba(59,130,246,.08) 45%, rgba(16,185,129,.06)) border-box;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04), 0 18px 32px rgba(2,6,23,.18);
}
html body .v152-matrix-wrap::before{
  content:"";
  position:absolute;
  inset:10px;
  border-radius:20px;
  background:linear-gradient(180deg, rgba(15,23,42,.26), rgba(15,23,42,.12));
  pointer-events:none;
}
html body .v152-matrix{
  position:relative;
  z-index:1;
  min-width:max-content;
  border-collapse:separate;
  border-spacing:0;
}
html body .v152-matrix th,
html body .v152-matrix td{
  min-width:176px;
  padding:8px;
  border-right:1px solid color-mix(in srgb, var(--line-soft) 78%, transparent);
  border-bottom:1px solid color-mix(in srgb, var(--line-soft) 78%, transparent);
  background:transparent;
  text-align:center;
  vertical-align:middle;
}
html body .v152-matrix tr:first-child th{border-top:0}
html body .v152-matrix tr:last-child td,
html body .v152-matrix tr:last-child th{border-bottom:0}
html body .v152-matrix th:last-child,
html body .v152-matrix td:last-child{border-right:0}
html body .v152-matrix thead th{
  position:sticky;
  top:0;
  z-index:4;
  background:transparent !important;
  backdrop-filter:none;
}
html body .v152-matrix .v138-matrix-person{
  position:sticky;
  left:0;
  z-index:5;
  min-width:220px !important;
  background:transparent !important;
}
html body .v152-matrix thead .v138-matrix-person{z-index:6}
html body .v152-matrix-headbox,
html body .v152-matrix-person-head,
html body .v152-matrix-personbox{
  border:1px solid color-mix(in srgb, var(--line-soft) 86%, transparent);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(30,41,59,.70), rgba(15,23,42,.86));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
html body .v152-matrix-person-head{
  display:flex;
  align-items:center;
  min-height:88px;
  padding:18px 16px;
  color:var(--muted);
  font-size:.8rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:900;
}
html body .v152-matrix-headbox{
  min-height:104px;
  padding:16px 14px 14px;
  display:grid;
  align-content:start;
  gap:8px;
  text-align:left;
}
html body .v152-matrix .v1310-matrix-name{
  display:block;
  margin:0;
  color:var(--text) !important;
  font-size:.92rem !important;
  line-height:1.3 !important;
  font-weight:900 !important;
  text-transform:none;
  letter-spacing:0;
  white-space:normal !important;
}
html body .v152-matrix .v1310-matrix-category{
  display:inline-flex;
  align-items:center;
  align-self:flex-start;
  margin:0;
  padding:5px 9px;
  border-radius:999px;
  background:rgba(148,163,184,.12);
  color:var(--muted) !important;
  font-size:.66rem !important;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
html body .v152-matrix-personbox{
  display:grid;
  gap:6px;
  min-height:80px;
  align-content:center;
  padding:14px 16px;
  text-align:left;
}
html body .v152-matrix-personbox strong{
  display:block;
  color:var(--text);
  font-size:.95rem;
  line-height:1.35;
}
html body .v152-matrix-personbox small{
  display:block;
  color:var(--muted);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
html body .v152-qual-cell{
  position:relative;
  display:grid;
  justify-items:center;
  gap:4px;
  min-height:86px;
  padding:14px 10px;
  border:1px solid color-mix(in srgb, var(--line-soft) 88%, transparent);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(30,41,59,.48), rgba(15,23,42,.72));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
html body .v152-qual-cell::before{
  content:"";
  position:absolute;
  top:10px;
  left:10px;
  width:9px;
  height:9px;
  border-radius:999px;
  background:#64748b;
  box-shadow:0 0 0 5px rgba(100,116,139,.12);
}
html body .v152-qual-cell.valid::before{background:#10b981;box-shadow:0 0 0 5px rgba(16,185,129,.14)}
html body .v152-qual-cell.due::before{background:#f59e0b;box-shadow:0 0 0 5px rgba(245,158,11,.14)}
html body .v152-qual-cell.expired::before{background:#f43f5e;box-shadow:0 0 0 5px rgba(244,63,94,.15)}
html body .v152-qual-state{
  display:block;
  color:var(--text);
  font-size:.83rem;
  font-weight:900;
  line-height:1.25;
}
html body .v152-qual-meta{
  display:block;
  color:var(--muted);
  font-size:.71rem;
  font-weight:800;
  line-height:1.3;
}
html body .v152-qual-cell.valid .v152-qual-state{color:#34d399}
html body .v152-qual-cell.due .v152-qual-state{color:#fbbf24}
html body .v152-qual-cell.expired .v152-qual-state{color:#fb7185}
html body .v152-qual-cell.none .v152-qual-state{color:#cbd5e1}
html body .v152-qual-cell.none .v152-qual-meta{color:#94a3b8}
html body .v152-qual-cell form{position:absolute;top:8px;right:8px}
html body .v152-qual-cell button{
  display:grid;
  place-items:center;
  width:22px;
  height:22px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:8px;
  background:rgba(15,23,42,.55);
  color:inherit;
  font-weight:900;
  cursor:pointer;
  transition:transform .18s ease, background .18s ease;
}
html body .v152-qual-cell button:hover{transform:scale(1.05);background:rgba(225,29,72,.18)}
html body .v152-matrix tbody tr:hover td,
html body .v152-matrix tbody tr:hover th{background:rgba(255,255,255,.012)}
html body .v152-matrix-wrap::-webkit-scrollbar{height:12px;width:12px}
html body .v152-matrix-wrap::-webkit-scrollbar-thumb{background:rgba(100,116,139,.45);border-radius:999px;border:2px solid transparent;background-clip:padding-box}
html body .v152-matrix-wrap::-webkit-scrollbar-track{background:rgba(15,23,42,.18);border-radius:999px}

html body[data-theme="light"] .v152-matrix-subtitle{color:#5b6b82}
html body[data-theme="light"] .v152-matrix-legend-item{
  background:#ffffff;
  border-color:rgba(148,163,184,.30);
  color:#243449;
  box-shadow:0 6px 18px rgba(148,163,184,.12);
}
html body[data-theme="light"] .v152-matrix-wrap{
  border-color:rgba(148,163,184,.28);
  background:
    linear-gradient(180deg, rgba(255,255,255,.75), rgba(255,255,255,.95)) padding-box,
    linear-gradient(135deg, rgba(225,29,72,.10), rgba(59,130,246,.10), rgba(16,185,129,.08)) border-box;
  box-shadow:0 18px 36px rgba(148,163,184,.16);
}
html body[data-theme="light"] .v152-matrix-wrap::before{
  background:linear-gradient(180deg, rgba(241,245,249,.86), rgba(248,250,252,.96));
}
html body[data-theme="light"] .v152-matrix th,
html body[data-theme="light"] .v152-matrix td{border-color:rgba(148,163,184,.20)}
html body[data-theme="light"] .v152-matrix-headbox,
html body[data-theme="light"] .v152-matrix-person-head,
html body[data-theme="light"] .v152-matrix-personbox{
  background:linear-gradient(180deg, #ffffff, #f8fafc);
  border-color:rgba(148,163,184,.28);
  box-shadow:0 10px 24px rgba(148,163,184,.13), inset 0 1px 0 rgba(255,255,255,.8);
}
html body[data-theme="light"] .v152-matrix-person-head{color:#6b7b91}
html body[data-theme="light"] .v152-matrix .v1310-matrix-name,
html body[data-theme="light"] .v152-matrix-personbox strong,
html body[data-theme="light"] .v152-qual-state{color:#0f172a !important}
html body[data-theme="light"] .v152-matrix .v1310-matrix-category{
  background:#eef2ff;
  color:#5b6b82 !important;
}
html body[data-theme="light"] .v152-matrix-personbox small,
html body[data-theme="light"] .v152-qual-meta{color:#64748b}
html body[data-theme="light"] .v152-qual-cell{
  background:linear-gradient(180deg, #ffffff, #f8fafc);
  border-color:rgba(148,163,184,.24);
  box-shadow:0 10px 22px rgba(148,163,184,.10), inset 0 1px 0 rgba(255,255,255,.85);
}
html body[data-theme="light"] .v152-qual-cell.valid{
  background:linear-gradient(180deg, rgba(236,253,245,.95), rgba(220,252,231,.92));
  border-color:rgba(16,185,129,.26);
}
html body[data-theme="light"] .v152-qual-cell.due{
  background:linear-gradient(180deg, rgba(255,251,235,.95), rgba(254,243,199,.95));
  border-color:rgba(245,158,11,.26);
}
html body[data-theme="light"] .v152-qual-cell.expired{
  background:linear-gradient(180deg, rgba(255,241,242,.95), rgba(255,228,230,.95));
  border-color:rgba(244,63,94,.24);
}
html body[data-theme="light"] .v152-qual-cell.none{
  background:linear-gradient(180deg, #ffffff, #f8fafc);
}
html body[data-theme="light"] .v152-qual-cell button{
  background:#fff;
  border-color:rgba(148,163,184,.24);
  color:#334155;
  box-shadow:0 5px 12px rgba(148,163,184,.12);
}
html body[data-theme="light"] .v152-matrix tbody tr:hover td,
html body[data-theme="light"] .v152-matrix tbody tr:hover th{background:rgba(148,163,184,.035)}
html body[data-theme="light"] .v152-matrix-wrap::-webkit-scrollbar-thumb{background:rgba(100,116,139,.35)}
html body[data-theme="light"] .v152-matrix-wrap::-webkit-scrollbar-track{background:rgba(226,232,240,.8)}

@media (max-width: 1100px){
  html body .v152-matrix-head{flex-direction:column;align-items:stretch}
  html body .v152-matrix-head-side{justify-items:start}
  html body .v152-matrix-legend{justify-content:flex-start}
}
@media (max-width: 700px){
  html body .v152-matrix-card{padding:18px}
  html body .v152-matrix-subtitle{font-size:.92rem}
  html body .v152-matrix-wrap{padding:10px;border-radius:20px}
  html body .v152-matrix th, html body .v152-matrix td{min-width:158px;padding:6px}
  html body .v152-matrix .v138-matrix-person{min-width:188px!important}
  html body .v152-matrix-headbox{min-height:96px;padding:14px 12px}
  html body .v152-matrix-person-head{min-height:80px}
  html body .v152-qual-cell{min-height:80px;padding:12px 8px}
}

/* ui-fixes-v1353.css */
/* Retter-Portal v1.3.53
   Qualifikationsmatrix durch filterbare Kennzahlen- und Personenübersicht ersetzt. */

html body .v153-qualifications-hero{margin-bottom:18px}
html body .v153-summary-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
  margin-bottom:18px;
}
html body .v153-summary-card{
  position:relative;
  overflow:hidden;
  min-height:138px;
  padding:20px;
  border:1px solid var(--line-soft);
  border-radius:20px;
  background:linear-gradient(145deg,rgba(12,28,48,.98),rgba(8,20,35,.96));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 14px 30px rgba(1,7,18,.15);
}
html body .v153-summary-card::after{
  content:"";
  position:absolute;
  right:-22px;
  bottom:-28px;
  width:96px;
  height:96px;
  border-radius:50%;
  background:rgba(59,130,246,.10);
  filter:blur(1px);
}
html body .v153-summary-card.is-warning::after{background:rgba(245,158,11,.16)}
html body .v153-summary-card.is-danger::after{background:rgba(244,63,94,.15)}
html body .v153-summary-card.is-info::after{background:rgba(14,165,233,.15)}
html body .v153-summary-card span,
html body .v153-summary-card strong,
html body .v153-summary-card small{position:relative;z-index:1;display:block}
html body .v153-summary-card span{color:var(--muted);font-size:.76rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
html body .v153-summary-card strong{margin-top:12px;color:var(--text);font-size:2.15rem;line-height:1;font-weight:950;letter-spacing:-.04em}
html body .v153-summary-card small{margin-top:10px;color:var(--muted);font-size:.78rem;line-height:1.4}

html body .v153-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
html body .v153-section-head>div{display:grid;gap:6px}
html body .v153-section-head p{margin:0;color:var(--muted);line-height:1.45}
html body .v153-qualification-overview{padding:20px;margin-bottom:18px}
html body .v153-qualification-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
html body .v153-qualification-card{
  position:relative;
  display:grid;
  gap:12px;
  min-height:162px;
  padding:17px;
  border:1px solid var(--line-soft);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(30,41,59,.50),rgba(15,23,42,.78));
  color:var(--text);
  text-decoration:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
  transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease;
}
html body .v153-qualification-card:hover{
  transform:translateY(-2px);
  border-color:rgba(251,113,133,.34);
  background:linear-gradient(180deg,rgba(36,50,73,.64),rgba(16,26,44,.88));
  box-shadow:0 15px 28px rgba(1,7,18,.17);
}
html body .v153-qualification-card.is-active{
  border-color:rgba(251,113,133,.48);
  box-shadow:0 0 0 3px rgba(225,29,72,.08),0 15px 30px rgba(1,7,18,.18);
}
html body .v153-qualification-card__head{display:flex;align-items:center;justify-content:space-between;gap:12px}
html body .v153-qualification-card__head>span{
  color:#aab7c8;
  font-size:.66rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
html body .v153-qualification-card__head>strong{
  min-width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:linear-gradient(135deg,rgba(225,29,72,.20),rgba(37,99,235,.14));
  color:#fff;
  font-size:1.45rem;
  font-weight:950;
}
html body .v153-qualification-card h3{margin:0;color:var(--text);font-size:1rem;line-height:1.3}
html body .v153-qualification-card__meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto}
html body .v153-qualification-card__meta span{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:5px 8px;
  border:1px solid var(--line-soft);
  border-radius:999px;
  background:rgba(148,163,184,.07);
  color:var(--muted);
  font-size:.68rem;
  font-weight:800;
}
html body .v153-qualification-card__meta b{color:var(--text)}

html body .v153-qualification-filter{
  display:grid;
  grid-template-columns:minmax(220px,1.3fr) repeat(3,minmax(170px,.8fr)) auto auto;
  gap:10px;
  margin-bottom:18px;
}
html body .v153-qualification-filter>*{min-width:0}
html body .v153-qualification-filter .btn{white-space:nowrap}

html body .v153-results-card{padding:20px;margin-bottom:18px}
html body .v153-person-list{display:grid;gap:10px}
html body .v153-person-row{
  display:grid;
  grid-template-columns:minmax(220px,1.25fr) minmax(220px,1.15fr) minmax(170px,.85fr) minmax(120px,.55fr) auto;
  gap:14px;
  align-items:center;
  padding:14px;
  border:1px solid var(--line-soft);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(30,41,59,.46),rgba(15,23,42,.70));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02);
}
html body .v153-person-row::before{
  content:"";
  width:4px;
  align-self:stretch;
  grid-column:1;
  grid-row:1;
  border-radius:999px;
  background:#64748b;
  position:absolute;
}
html body .v153-person-row{position:relative;padding-left:20px}
html body .v153-person-row.state-valid::before{background:#10b981}
html body .v153-person-row.state-due::before{background:#f59e0b}
html body .v153-person-row.state-expired::before{background:#f43f5e}
html body .v153-person-row.state-training::before{background:#38bdf8}
html body .v153-person-row.state-suspended::before{background:#94a3b8}
html body .v153-person-main{display:flex;align-items:center;gap:12px;min-width:0}
html body .v153-person-avatar{
  flex:0 0 42px;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:linear-gradient(135deg,rgba(225,29,72,.22),rgba(37,99,235,.16));
  color:#fff;
  font-size:.8rem;
  font-weight:950;
  letter-spacing:.04em;
}
html body .v153-person-main>div:last-child,
html body .v153-person-qualification,
html body .v153-person-status,
html body .v153-person-proof{display:grid;gap:4px;min-width:0}
html body .v153-person-main strong,
html body .v153-person-qualification strong,
html body .v153-person-proof strong{color:var(--text);font-size:.88rem;line-height:1.3;overflow-wrap:anywhere}
html body .v153-person-main small,
html body .v153-person-qualification small,
html body .v153-person-status small,
html body .v153-person-proof span,
html body .v153-person-qualification>span{color:var(--muted);font-size:.70rem;line-height:1.35}
html body .v153-person-qualification>span,
html body .v153-person-proof>span{text-transform:uppercase;letter-spacing:.07em;font-weight:900}
html body .v153-status-pill{
  justify-self:start;
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid var(--line-soft);
  color:#cbd5e1;
  background:rgba(148,163,184,.08);
  font-size:.72rem;
  font-weight:900;
}
html body .v153-status-pill.state-valid{color:#34d399;background:rgba(16,185,129,.11);border-color:rgba(16,185,129,.24)}
html body .v153-status-pill.state-due{color:#fbbf24;background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.25)}
html body .v153-status-pill.state-expired{color:#fb7185;background:rgba(244,63,94,.12);border-color:rgba(244,63,94,.25)}
html body .v153-status-pill.state-training{color:#7dd3fc;background:rgba(14,165,233,.11);border-color:rgba(14,165,233,.24)}
html body .v153-person-action{justify-self:end}
html body .v153-empty-state{
  display:grid;
  gap:6px;
  justify-items:center;
  padding:38px 20px;
  border:1px dashed var(--line-soft);
  border-radius:18px;
  color:var(--muted);
  text-align:center;
}
html body .v153-empty-state strong{color:var(--text)}

html body .v153-manage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
html body .v153-manage-card{padding:0;overflow:hidden}
html body .v153-manage-card summary{
  display:grid;
  gap:4px;
  padding:18px 20px;
  cursor:pointer;
  list-style:none;
}
html body .v153-manage-card summary::-webkit-details-marker{display:none}
html body .v153-manage-card summary::after{
  content:"+";
  position:absolute;
  right:20px;
  top:18px;
  color:var(--muted);
  font-size:1.2rem;
  font-weight:900;
}
html body .v153-manage-card[open] summary::after{content:"–"}
html body .v153-manage-card summary span{color:var(--text);font-weight:900}
html body .v153-manage-card summary small{color:var(--muted)}
html body .v153-manage-card form{padding:0 20px 20px}

html body[data-theme="light"] .v153-summary-card,
html body[data-theme="light"] .v153-qualification-card,
html body[data-theme="light"] .v153-person-row{
  background:linear-gradient(180deg,#ffffff,#f7fafc);
  border-color:rgba(148,163,184,.25);
  box-shadow:0 12px 26px rgba(148,163,184,.11),inset 0 1px 0 rgba(255,255,255,.9);
}
html body[data-theme="light"] .v153-summary-card span,
html body[data-theme="light"] .v153-summary-card small,
html body[data-theme="light"] .v153-section-head p,
html body[data-theme="light"] .v153-person-main small,
html body[data-theme="light"] .v153-person-qualification small,
html body[data-theme="light"] .v153-person-status small,
html body[data-theme="light"] .v153-person-proof span,
html body[data-theme="light"] .v153-person-qualification>span{color:#607086}
html body[data-theme="light"] .v153-summary-card strong,
html body[data-theme="light"] .v153-qualification-card h3,
html body[data-theme="light"] .v153-person-main strong,
html body[data-theme="light"] .v153-person-qualification strong,
html body[data-theme="light"] .v153-person-proof strong,
html body[data-theme="light"] .v153-empty-state strong{color:#0f172a}
html body[data-theme="light"] .v153-qualification-card__head>span{color:#64748b}
html body[data-theme="light"] .v153-qualification-card__meta span{background:#f1f5f9;border-color:rgba(148,163,184,.24);color:#64748b}
html body[data-theme="light"] .v153-qualification-card__meta b{color:#0f172a}
html body[data-theme="light"] .v153-status-pill{background:#f1f5f9;color:#475569;border-color:rgba(148,163,184,.25)}
html body[data-theme="light"] .v153-empty-state{border-color:rgba(148,163,184,.34);color:#64748b}

@media(max-width:1450px){
  html body .v153-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  html body .v153-qualification-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  html body .v153-qualification-filter{grid-template-columns:repeat(3,minmax(0,1fr))}
  html body .v153-person-row{grid-template-columns:minmax(200px,1.2fr) minmax(200px,1fr) minmax(165px,.8fr) minmax(100px,.5fr) auto}
}
@media(max-width:1100px){
  html body .v153-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  html body .v153-qualification-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  html body .v153-person-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  html body .v153-person-action{justify-self:stretch}
  html body .v153-person-action .btn{width:100%}
}
@media(max-width:760px){
  html body .v153-summary-grid,
  html body .v153-qualification-grid,
  html body .v153-qualification-filter,
  html body .v153-person-row,
  html body .v153-manage-grid{grid-template-columns:1fr}
  html body .v153-section-head{flex-direction:column;align-items:stretch}
  html body .v153-summary-card{min-height:122px}
  html body .v153-qualification-overview,
  html body .v153-results-card{padding:15px}
  html body .v153-person-row{padding:15px 14px 15px 20px}
  html body .v153-person-action{justify-self:stretch}
}

/* ui-fixes-v1354.css */
/* Retter-Portal v1.3.54
   Qualifikationsübersicht: nur noch ein zentraler Filterbereich. */

html body .v154-qualification-card-stat{
  cursor:default;
}
html body .v154-qualification-card-stat:hover{
  transform:none;
  border-color:var(--line-soft);
  background:linear-gradient(180deg,rgba(30,41,59,.50),rgba(15,23,42,.78));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
html body .v154-results-card{
  display:grid;
  gap:16px;
}
html body .v154-results-card>.card-head{
  margin-bottom:0;
}
html body .v154-single-filter{
  margin:0;
  padding:14px;
  border:1px solid var(--line-soft);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(30,41,59,.35),rgba(15,23,42,.55));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02);
}
html body[data-theme="light"] .v154-qualification-card-stat:hover{
  background:linear-gradient(180deg,#ffffff,#f8fafc);
  border-color:rgba(148,163,184,.28);
  box-shadow:0 10px 24px rgba(148,163,184,.10),inset 0 1px 0 rgba(255,255,255,.8);
}
html body[data-theme="light"] .v154-single-filter{
  background:linear-gradient(180deg,#ffffff,#f8fafc);
  border-color:rgba(148,163,184,.28);
  box-shadow:0 10px 24px rgba(148,163,184,.08),inset 0 1px 0 rgba(255,255,255,.8);
}
@media(max-width:760px){
  html body .v154-single-filter{
    padding:12px;
  }
}

/* ui-fixes-v1355.css */
/* Retter-Portal v1.3.55
   Qualifikationsauswertung als ein zusammenhängender, zentral gefilterter Bereich.
   Ticketformulare übernehmen die aktive Feuerwehr aus dem Header. */

html body .v155-qualification-analysis{
  display:grid;
  gap:18px;
  padding:22px;
  margin-bottom:18px;
}
html body .v155-analysis-head{
  margin:0;
  padding-bottom:2px;
}
html body .v155-unified-filter{
  margin:0;
  padding:14px;
  border:1px solid var(--line-soft);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(30,41,59,.38),rgba(15,23,42,.58));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
html body .v155-summary-strip{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
}
html body .v155-summary-strip article{
  position:relative;
  overflow:hidden;
  min-height:112px;
  padding:15px 16px;
  border:1px solid var(--line-soft);
  border-radius:17px;
  background:linear-gradient(145deg,rgba(12,28,48,.90),rgba(8,20,35,.92));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.022);
}
html body .v155-summary-strip article::after{
  content:"";
  position:absolute;
  right:-26px;
  bottom:-34px;
  width:92px;
  height:92px;
  border-radius:50%;
  background:rgba(59,130,246,.10);
}
html body .v155-summary-strip article.is-warning::after{background:rgba(245,158,11,.15)}
html body .v155-summary-strip article.is-danger::after{background:rgba(244,63,94,.15)}
html body .v155-summary-strip article.is-info::after{background:rgba(14,165,233,.14)}
html body .v155-summary-strip span,
html body .v155-summary-strip strong,
html body .v155-summary-strip small{position:relative;z-index:1;display:block}
html body .v155-summary-strip span{
  color:var(--muted);
  font-size:.69rem;
  line-height:1.25;
  font-weight:900;
  letter-spacing:.075em;
  text-transform:uppercase;
}
html body .v155-summary-strip strong{
  margin-top:8px;
  color:var(--text);
  font-size:1.75rem;
  line-height:1;
  font-weight:950;
  letter-spacing:-.04em;
}
html body .v155-summary-strip small{
  margin-top:8px;
  color:var(--muted);
  font-size:.70rem;
  line-height:1.35;
}
html body .v155-section-block{
  display:grid;
  gap:12px;
  padding-top:17px;
  border-top:1px solid var(--line-soft);
}
html body .v155-section-title{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
html body .v155-section-title>div{display:grid;gap:4px}
html body .v155-section-title h3{margin:0;color:var(--text);font-size:1.05rem}
html body .v155-section-title p{margin:0;color:var(--muted);font-size:.82rem;line-height:1.4}
html body .v155-qualification-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
html body .v155-person-results{padding-bottom:0}

html body .v155-ticket-context{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:4px 12px;
  min-height:82px;
  padding:15px 17px;
  border:1px solid var(--line-soft);
  border-radius:17px;
  background:linear-gradient(180deg,rgba(30,41,59,.38),rgba(15,23,42,.58));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
html body .v155-ticket-context span{
  grid-row:1 / span 2;
  display:grid;
  place-items:center;
  min-width:112px;
  min-height:50px;
  padding:0 12px;
  border-radius:14px;
  background:linear-gradient(135deg,rgba(225,29,72,.18),rgba(37,99,235,.13));
  color:#fda4af;
  font-size:.69rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
html body .v155-ticket-context strong{color:var(--text);font-size:.98rem;line-height:1.3}
html body .v155-ticket-context small{color:var(--muted);font-size:.76rem;line-height:1.35}

html body[data-theme="light"] .v155-unified-filter,
html body[data-theme="light"] .v155-ticket-context{
  background:linear-gradient(180deg,#ffffff,#f7fafc);
  border-color:rgba(148,163,184,.28);
  box-shadow:0 10px 24px rgba(148,163,184,.08),inset 0 1px 0 rgba(255,255,255,.9);
}
html body[data-theme="light"] .v155-summary-strip article{
  background:linear-gradient(180deg,#ffffff,#f7fafc);
  border-color:rgba(148,163,184,.25);
  box-shadow:0 10px 22px rgba(148,163,184,.09),inset 0 1px 0 rgba(255,255,255,.9);
}
html body[data-theme="light"] .v155-summary-strip span,
html body[data-theme="light"] .v155-summary-strip small,
html body[data-theme="light"] .v155-section-title p,
html body[data-theme="light"] .v155-ticket-context small{color:#607086}
html body[data-theme="light"] .v155-summary-strip strong,
html body[data-theme="light"] .v155-section-title h3,
html body[data-theme="light"] .v155-ticket-context strong{color:#0f172a}
html body[data-theme="light"] .v155-section-block{border-top-color:rgba(148,163,184,.23)}
html body[data-theme="light"] .v155-ticket-context span{
  background:linear-gradient(135deg,rgba(225,29,72,.10),rgba(37,99,235,.08));
  color:#be123c;
}

@media(max-width:1450px){
  html body .v155-summary-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
  html body .v155-qualification-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1100px){
  html body .v155-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  html body .v155-qualification-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  html body .v155-qualification-analysis{padding:15px;gap:15px}
  html body .v155-summary-strip,
  html body .v155-qualification-grid{grid-template-columns:1fr}
  html body .v155-summary-strip article{min-height:104px}
  html body .v155-section-title{flex-direction:column;align-items:stretch}
  html body .v155-ticket-context{grid-template-columns:1fr;padding:14px}
  html body .v155-ticket-context span{grid-row:auto;min-width:0;min-height:38px;justify-self:start}
}

/* ui-fixes-v1357.css */
/* Retter-Portal v1.3.57 · Support-Tickets mit Screenshots und Dateianhängen */
html body .support-create-upload{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(220px,.8fr);
  gap:12px;
  padding:18px;
  border:1px solid var(--line-soft);
  border-radius:20px;
  background:linear-gradient(145deg,rgba(59,130,246,.055),rgba(225,29,72,.045));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
html body .support-create-upload-head{
  grid-column:1/-1;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
html body .support-create-upload-head h3{margin:0 0 5px;font-size:1rem;}
html body .support-create-upload-head p{margin:0;}
html body .support-create-upload .attachment-status{grid-column:1/-1;margin:0;}
html body .support-create-upload .support-create-drop{min-width:0;}
html body[data-theme="light"] .support-create-upload{
  border-color:rgba(148,163,184,.26);
  background:linear-gradient(145deg,rgba(239,246,255,.96),rgba(255,241,242,.72));
  box-shadow:0 10px 24px rgba(148,163,184,.10),inset 0 1px 0 rgba(255,255,255,.8);
}
@media(max-width:760px){
  html body .support-create-upload{grid-template-columns:1fr;padding:15px;border-radius:18px;}
  html body .support-create-upload-head{display:grid;}
  html body .support-create-upload-head .pill{justify-self:start;}
}

/* ui-fixes-v1358.css */
/* Retter-Portal v1.3.58 · Jugendleitungsfeld bereinigt und Qualifikations-Akkordeons klarer markiert */

/* Jugenddienst: aktive Feuerwehr kommt ausschließlich aus dem Header. */
html body .v158-youth-service-card .v158-youth-leader-field{
  position:relative;
  display:grid;
  gap:8px;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
html body .v158-youth-service-card .v158-youth-leader-field::before,
html body .v158-youth-service-card .v158-youth-leader-field::after{
  display:none!important;
  content:none!important;
}
html body .v158-youth-service-card .v158-youth-leader-field > label{
  display:grid!important;
  gap:8px!important;
  margin:0!important;
  padding:0!important;
  color:var(--text)!important;
  font-weight:900!important;
}
html body .v158-youth-service-card .v158-youth-leader-label{
  display:block;
  padding-left:2px;
  color:var(--text);
  font-size:.94rem;
  line-height:1.25;
  font-weight:900;
}
html body .v158-youth-service-card .v158-youth-leader-field input[data-smart-select-search]{
  width:100%!important;
  min-height:54px!important;
  margin:0!important;
  padding:0 16px!important;
  border:1px solid var(--line-soft)!important;
  border-radius:15px!important;
  background:linear-gradient(180deg,rgba(6,17,30,.96),rgba(7,19,33,.90))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
html body .v158-youth-service-card .v158-youth-leader-field:focus-within input[data-smart-select-search]{
  border-color:rgba(251,113,133,.42)!important;
  box-shadow:0 0 0 3px rgba(225,29,72,.10),inset 0 1px 0 rgba(255,255,255,.03)!important;
}
html body .v158-youth-service-card .v158-youth-leader-help{
  display:block;
  margin:0!important;
  padding:0 2px!important;
  color:var(--muted)!important;
  font-size:.80rem!important;
  line-height:1.45!important;
}
/* Qualifikationen: deutlich erkennbare, aber ruhige Aufklapp-Aktion. */
html body .v153-manage-card summary{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  min-height:94px!important;
  padding:20px 22px!important;
  border-radius:inherit!important;
  transition:background .18s ease,border-color .18s ease!important;
}
html body .v153-manage-card summary::after{
  display:none!important;
  content:none!important;
}
html body .v153-manage-card summary:hover{
  background:rgba(148,163,184,.045)!important;
}
html body .v158-manage-summary-copy{
  display:grid!important;
  gap:6px!important;
  min-width:0!important;
}
html body .v158-manage-summary-copy strong{
  color:var(--text)!important;
  font-size:1rem!important;
  line-height:1.25!important;
  font-weight:950!important;
}
html body .v158-manage-summary-copy small{
  color:var(--muted)!important;
  font-size:.85rem!important;
  line-height:1.4!important;
}
html body .v158-manage-toggle{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:38px!important;
  padding:0 12px!important;
  border:1px solid rgba(148,163,184,.18)!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,rgba(20,39,63,.94),rgba(11,25,43,.92))!important;
  color:#e7edf5!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
  font-size:.76rem!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
}
html body .v158-manage-toggle svg{
  width:18px!important;
  height:18px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2.2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  transition:transform .18s ease!important;
}
html body .v153-manage-card[open] .v158-manage-toggle{
  border-color:rgba(251,113,133,.28)!important;
  background:linear-gradient(135deg,rgba(225,29,72,.14),rgba(14,29,49,.94))!important;
  color:#fecdd3!important;
}
html body .v153-manage-card[open] .v158-manage-toggle > span::before{content:"Zuklappen";font-size:.76rem}
html body .v153-manage-card[open] .v158-manage-toggle > span{font-size:0!important}
html body .v153-manage-card[open] .v158-manage-toggle svg{transform:rotate(180deg)!important}
html body .v153-manage-card[open] summary{
  border-bottom:1px solid var(--line-soft)!important;
  border-radius:0!important;
}

body[data-theme="light"] .v158-youth-service-card .v158-youth-leader-field input[data-smart-select-search]{
  background:linear-gradient(180deg,#ffffff,#f7fafc)!important;
  border-color:rgba(148,163,184,.30)!important;
  color:#0f172a!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 7px 18px rgba(148,163,184,.08)!important;
}
body[data-theme="light"] .v158-youth-service-card .v158-youth-leader-label{color:#172033!important}
body[data-theme="light"] .v158-youth-service-card .v158-youth-leader-help{color:#5b6b82!important}
body[data-theme="light"] .v158-manage-toggle{
  border-color:rgba(148,163,184,.28)!important;
  background:linear-gradient(180deg,#ffffff,#edf3f8)!important;
  color:#26364a!important;
  box-shadow:0 7px 18px rgba(148,163,184,.10),inset 0 1px 0 rgba(255,255,255,.9)!important;
}
body[data-theme="light"] .v153-manage-card[open] .v158-manage-toggle{
  border-color:rgba(225,29,72,.22)!important;
  background:linear-gradient(135deg,#fff1f2,#ffffff)!important;
  color:#be123c!important;
}
body[data-theme="light"] .v153-manage-card summary:hover{background:rgba(148,163,184,.055)!important}

@media(max-width:700px){
  html body .v153-manage-card summary{
    min-height:0!important;
    padding:17px 16px!important;
    align-items:flex-start!important;
  }
  html body .v158-manage-toggle{
    min-width:40px!important;
    width:40px!important;
    height:40px!important;
    padding:0!important;
  }
  html body .v158-manage-toggle > span{display:none!important}
  html body .v153-manage-card[open] .v158-manage-toggle > span::before{display:none!important;content:none!important}
  html body .v158-youth-service-card .v158-youth-leader-field input[data-smart-select-search]{min-height:50px!important}
}
html body .v158-youth-service-card .v158-youth-leader-control{
  position:relative!important;
  display:grid!important;
  gap:8px!important;
  min-width:0!important;
}

/* ui-fixes-v1359.css */
/* Retter-Portal v1.3.59 · Zahlenfelder der Qualifikationskarten mobil sauber proportioniert */

html body .v153-qualification-card__head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 52px!important;
  align-items:center!important;
  gap:14px!important;
}

html body .v153-qualification-card__head>span{
  min-width:0!important;
  line-height:1.35!important;
  overflow-wrap:anywhere!important;
}

html body .v153-qualification-card__head>strong{
  box-sizing:border-box!important;
  flex:none!important;
  width:52px!important;
  min-width:52px!important;
  max-width:52px!important;
  height:52px!important;
  min-height:52px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:15px!important;
  line-height:1!important;
  white-space:nowrap!important;
  font-variant-numeric:tabular-nums!important;
  text-align:center!important;
}

@media(max-width:760px){
  html body .v153-qualification-card{
    min-height:154px!important;
    padding:17px!important;
  }
  html body .v153-qualification-card__head{
    grid-template-columns:minmax(0,1fr) 54px!important;
    gap:16px!important;
  }
  html body .v153-qualification-card__head>strong{
    width:54px!important;
    min-width:54px!important;
    max-width:54px!important;
    height:54px!important;
    min-height:54px!important;
    border-radius:16px!important;
    font-size:1.5rem!important;
  }
}

@media(max-width:380px){
  html body .v153-qualification-card__head{
    grid-template-columns:minmax(0,1fr) 50px!important;
    gap:12px!important;
  }
  html body .v153-qualification-card__head>strong{
    width:50px!important;
    min-width:50px!important;
    max-width:50px!important;
    height:50px!important;
    min-height:50px!important;
    border-radius:15px!important;
    font-size:1.4rem!important;
  }
}

/* ui-fixes-v1360.css */
/* Retter-Portal v1.3.60
   Mobile Kalendersteuerung und Wasserquellen-Detailansicht sauber stabilisiert. */

/* Hydrantenkarte: mobile Detailkarte als robuste Kartenebene statt abgeschnittenem Leaflet-Popup. */
html body .water-map{
  isolation:isolate;
}
html body .water-mobile-sheet{
  position:absolute;
  z-index:1200;
  left:12px;
  right:12px;
  bottom:12px;
  display:grid;
  max-height:min(68%,460px);
  overflow:auto;
  padding:18px;
  border:1px solid rgba(148,163,184,.22);
  border-radius:22px;
  background:linear-gradient(155deg,rgba(10,24,42,.985),rgba(6,17,30,.98));
  color:#f8fafc;
  box-shadow:0 24px 70px rgba(2,6,23,.48),inset 0 1px 0 rgba(255,255,255,.05);
  transform:translateY(calc(100% + 28px));
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:transform .22s ease,opacity .18s ease,visibility .18s ease;
  -webkit-overflow-scrolling:touch;
}
html body .water-mobile-sheet.is-open{
  transform:translateY(0);
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
html body .water-mobile-sheet__close{
  position:absolute;
  z-index:2;
  top:10px;
  right:10px;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  padding:0;
  border:1px solid rgba(255,255,255,.12);
  border-radius:11px;
  background:rgba(30,41,59,.92);
  color:#fff;
  font-size:1.25rem;
  font-weight:900;
  line-height:1;
  cursor:pointer;
}
html body .water-mobile-sheet .water-popup{
  padding-right:38px;
  overflow:visible!important;
}
html body .water-mobile-sheet .water-popup-title{color:#fff!important}
html body .water-mobile-sheet .water-popup-meta{color:#cbd5e1!important}
html body .water-mobile-sheet .water-popup-location{color:#f1f5f9!important}
html body .water-mobile-sheet .water-popup-facts span{
  background:rgba(30,41,59,.92)!important;
  border-color:rgba(148,163,184,.18)!important;
  color:#f8fafc!important;
}
html body .water-mobile-sheet .water-popup-facts b{color:#aebbd0!important}
html body .water-mobile-sheet .map-popup-links .btn{
  background:#243244!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.10)!important;
}
body[data-theme="light"] .water-mobile-sheet{
  background:linear-gradient(155deg,#ffffff,#f3f7fb);
  color:#0f172a;
  border-color:rgba(148,163,184,.30);
  box-shadow:0 24px 64px rgba(71,85,105,.25),inset 0 1px 0 rgba(255,255,255,.8);
}
body[data-theme="light"] .water-mobile-sheet__close{
  background:#eef3f8;
  color:#0f172a;
  border-color:rgba(148,163,184,.28);
}
body[data-theme="light"] .water-mobile-sheet .water-popup-title{color:#0f172a!important}
body[data-theme="light"] .water-mobile-sheet .water-popup-meta{color:#475569!important}
body[data-theme="light"] .water-mobile-sheet .water-popup-location{color:#1e293b!important}
body[data-theme="light"] .water-mobile-sheet .water-popup-facts span{
  background:#f1f5f9!important;
  border-color:#d9e2ec!important;
  color:#0f172a!important;
}
body[data-theme="light"] .water-mobile-sheet .water-popup-facts b{color:#64748b!important}
body[data-theme="light"] .water-mobile-sheet .map-popup-links .btn{
  background:#e8eef6!important;
  color:#0f172a!important;
  border-color:rgba(148,163,184,.28)!important;
}

@media(max-width:760px){
  /* Kalender-Toolbar auf Smartphones: kein gequetschter Zeitraum mehr. */
  html body .calendar-toolbar{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
    padding:14px!important;
  }
  html body .calendar-month-nav{
    display:grid!important;
    grid-template-columns:48px minmax(0,1fr) 48px!important;
    align-items:center!important;
    gap:10px!important;
    width:100%!important;
  }
  html body .calendar-month-nav>.btn{
    width:48px!important;
    min-width:48px!important;
    max-width:48px!important;
    height:48px!important;
    min-height:48px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border-radius:15px!important;
    font-size:1.35rem!important;
  }
  html body .calendar-current-month{
    min-width:0!important;
    width:100%!important;
    padding:8px 10px!important;
    display:grid!important;
    justify-items:center!important;
    gap:4px!important;
    text-align:center!important;
    border:1px solid var(--line-soft)!important;
    border-radius:16px!important;
    background:rgba(148,163,184,.07)!important;
  }
  html body .calendar-current-month .eyebrow{
    display:block!important;
    width:auto!important;
    max-width:100%!important;
    margin:0!important;
    font-size:.66rem!important;
    line-height:1.2!important;
    letter-spacing:.09em!important;
    white-space:nowrap!important;
    word-break:keep-all!important;
    overflow-wrap:normal!important;
    text-align:center!important;
  }
  html body .calendar-current-month strong{
    display:block!important;
    width:auto!important;
    max-width:100%!important;
    font-size:1.28rem!important;
    line-height:1.15!important;
    letter-spacing:-.035em!important;
    white-space:nowrap!important;
    word-break:keep-all!important;
    overflow-wrap:normal!important;
    text-align:center!important;
  }
  html body .calendar-month-form{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px!important;
    align-items:end!important;
    width:100%!important;
  }
  html body .calendar-month-form label{
    min-width:0!important;
    width:100%!important;
  }
  html body .calendar-month-form input[type="month"]{
    width:100%!important;
    min-width:0!important;
  }
  html body .calendar-month-form .btn{
    width:auto!important;
    min-width:116px!important;
    white-space:nowrap!important;
  }
  html body .calendar-legend{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    justify-content:stretch!important;
    gap:10px!important;
    width:100%!important;
    padding-top:2px!important;
  }
  html body .calendar-legend>span{
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
    line-height:1.3!important;
  }
  html body .calendar-legend>span:last-child{
    grid-column:1/-1!important;
  }

  html body .water-mobile-sheet .water-popup{
    gap:9px!important;
  }
  html body .water-mobile-sheet .water-popup-facts{
    grid-template-columns:1fr 1fr!important;
  }
  html body .water-mobile-sheet .map-popup-links{
    grid-template-columns:1fr 1fr!important;
  }
}

@media(max-width:430px){
  html body .calendar-month-form{
    grid-template-columns:minmax(0,1fr)!important;
  }
  html body .calendar-month-form .btn{
    width:100%!important;
    min-width:0!important;
  }
  html body .calendar-legend{
    grid-template-columns:minmax(0,1fr)!important;
  }
  html body .calendar-legend>span:last-child{
    grid-column:auto!important;
  }
  html body .water-mobile-sheet{
    left:9px;
    right:9px;
    bottom:9px;
    max-height:74%;
    padding:16px;
    border-radius:20px;
  }
  html body .water-mobile-sheet .water-popup{
    padding-right:32px;
  }
  html body .water-mobile-sheet .water-popup-facts,
  html body .water-mobile-sheet .map-popup-links{
    grid-template-columns:minmax(0,1fr)!important;
  }
}

/* ui-fixes-v1361.css */
/* Retter-Portal v1.3.61
   Mobile Hydranten-Detailkarte kompakter und Monatsauswahl vollständig abgerundet. */

@media(max-width:760px){
  /* Die Detailkarte nutzt bewusst keine generischen Popup-/Button-Flächen mehr. */
  html body .water-mobile-sheet{
    left:10px!important;
    right:10px!important;
    bottom:10px!important;
    display:block!important;
    width:auto!important;
    max-width:none!important;
    max-height:min(82%,540px)!important;
    padding:0!important;
    overflow:auto!important;
    border:1px solid rgba(148,163,184,.24)!important;
    border-radius:24px!important;
    background:linear-gradient(155deg,rgba(10,24,42,.995),rgba(6,17,30,.99))!important;
    box-shadow:0 24px 72px rgba(2,6,23,.52),inset 0 1px 0 rgba(255,255,255,.05)!important;
    overscroll-behavior:contain!important;
  }
  html body .water-mobile-sheet__surface{
    display:block!important;
    min-width:0!important;
    width:100%!important;
    background:transparent!important;
  }
  html body .water-mobile-sheet__head{
    position:sticky!important;
    z-index:4!important;
    top:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 38px!important;
    align-items:start!important;
    gap:12px!important;
    min-width:0!important;
    padding:16px 16px 14px!important;
    border-bottom:1px solid rgba(148,163,184,.16)!important;
    background:linear-gradient(180deg,rgba(18,34,55,.995),rgba(10,24,42,.985))!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
  }
  html body .water-mobile-sheet__titles{
    display:grid!important;
    gap:5px!important;
    min-width:0!important;
    padding:0!important;
  }
  html body .water-mobile-sheet__titles strong{
    display:block!important;
    min-width:0!important;
    color:#fff!important;
    font-size:1.13rem!important;
    line-height:1.22!important;
    font-weight:950!important;
    letter-spacing:-.025em!important;
    overflow-wrap:anywhere!important;
  }
  html body .water-mobile-sheet__titles small{
    display:block!important;
    min-width:0!important;
    color:#b8c5d7!important;
    font-size:.82rem!important;
    line-height:1.35!important;
    font-weight:780!important;
    overflow-wrap:anywhere!important;
  }
  html body .water-mobile-sheet__close{
    position:static!important;
    inset:auto!important;
    display:grid!important;
    place-items:center!important;
    justify-self:end!important;
    align-self:start!important;
    flex:0 0 38px!important;
    width:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    height:38px!important;
    min-height:38px!important;
    max-height:38px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid rgba(255,255,255,.12)!important;
    border-radius:12px!important;
    background:rgba(30,41,59,.88)!important;
    color:#fff!important;
    box-shadow:none!important;
    font-size:1.24rem!important;
    line-height:1!important;
    font-weight:900!important;
    text-indent:0!important;
  }
  html body .water-mobile-sheet__body{
    display:grid!important;
    gap:13px!important;
    min-width:0!important;
    padding:15px 16px 17px!important;
  }
  html body .water-mobile-sheet__location{
    min-width:0!important;
    color:#f1f5f9!important;
    font-size:.96rem!important;
    line-height:1.42!important;
    font-weight:850!important;
    overflow-wrap:anywhere!important;
  }
  html body .water-mobile-sheet__facts{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
    min-width:0!important;
  }
  html body .water-mobile-sheet__facts>div{
    display:grid!important;
    align-content:start!important;
    gap:5px!important;
    min-width:0!important;
    min-height:78px!important;
    padding:12px 13px!important;
    border:1px solid rgba(148,163,184,.18)!important;
    border-radius:16px!important;
    background:rgba(30,41,59,.82)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
  }
  html body .water-mobile-sheet__facts b{
    color:#aebbd0!important;
    font-size:.66rem!important;
    line-height:1.2!important;
    font-weight:900!important;
    letter-spacing:.09em!important;
    text-transform:uppercase!important;
  }
  html body .water-mobile-sheet__facts span{
    min-width:0!important;
    color:#fff!important;
    font-size:.94rem!important;
    line-height:1.3!important;
    font-weight:900!important;
    overflow-wrap:anywhere!important;
  }
  html body .water-mobile-sheet__actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:9px!important;
    min-width:0!important;
  }
  html body .water-mobile-sheet__actions>.btn,
  html body .water-mobile-sheet__actions .map-popup-links,
  html body .water-mobile-sheet__actions .map-popup-links>.btn{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  html body .water-mobile-sheet__actions>.btn,
  html body .water-mobile-sheet__actions .map-popup-links>.btn{
    min-height:48px!important;
    margin:0!important;
    border-radius:15px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    white-space:nowrap!important;
    text-align:center!important;
    font-size:.94rem!important;
    font-weight:900!important;
  }
  html body .water-mobile-sheet__actions>.btn.primary{
    background:linear-gradient(135deg,#ef3154,#c8102e)!important;
    border-color:rgba(251,113,133,.34)!important;
    color:#fff!important;
    box-shadow:0 12px 26px rgba(225,29,72,.22)!important;
  }
  html body .water-mobile-sheet__actions .map-popup-links{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
    margin:0!important;
  }
  html body .water-mobile-sheet__actions .map-popup-links>.btn{
    background:#243244!important;
    border-color:rgba(255,255,255,.10)!important;
    color:#fff!important;
    box-shadow:none!important;
  }

  /* Monatsfeld erhält einen echten vollständigen Abschluss statt offener Unterkante. */
  html body .calendar-month-form input[type="month"]{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    border:1px solid var(--line)!important;
    border-radius:16px!important;
    border-bottom-left-radius:16px!important;
    border-bottom-right-radius:16px!important;
    overflow:hidden!important;
    background-clip:padding-box!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
    -webkit-mask-image:-webkit-radial-gradient(white,black)!important;
    clip-path:inset(0 round 16px)!important;
  }
}

@media(max-width:430px){
  html body .water-mobile-sheet{
    left:8px!important;
    right:8px!important;
    bottom:8px!important;
    max-height:84%!important;
    border-radius:21px!important;
  }
  html body .water-mobile-sheet__head{
    grid-template-columns:minmax(0,1fr) 36px!important;
    padding:14px 14px 12px!important;
  }
  html body .water-mobile-sheet__close{
    flex-basis:36px!important;
    width:36px!important;
    min-width:36px!important;
    max-width:36px!important;
    height:36px!important;
    min-height:36px!important;
    max-height:36px!important;
  }
  html body .water-mobile-sheet__body{
    padding:13px 14px 15px!important;
  }
  html body .water-mobile-sheet__facts,
  html body .water-mobile-sheet__actions .map-popup-links{
    grid-template-columns:minmax(0,1fr)!important;
  }
  html body .water-mobile-sheet__facts>div{
    min-height:0!important;
  }
}

body[data-theme="light"] .water-mobile-sheet{
  background:linear-gradient(155deg,#ffffff,#f3f7fb)!important;
  border-color:rgba(148,163,184,.30)!important;
  box-shadow:0 24px 64px rgba(71,85,105,.25),inset 0 1px 0 rgba(255,255,255,.8)!important;
}
body[data-theme="light"] .water-mobile-sheet__head{
  background:linear-gradient(180deg,rgba(255,255,255,.995),rgba(244,248,252,.985))!important;
  border-bottom-color:rgba(148,163,184,.20)!important;
}
body[data-theme="light"] .water-mobile-sheet__titles strong,
body[data-theme="light"] .water-mobile-sheet__location{color:#0f172a!important}
body[data-theme="light"] .water-mobile-sheet__titles small{color:#5b6b82!important}
body[data-theme="light"] .water-mobile-sheet__close{
  background:#eef3f8!important;
  border-color:rgba(148,163,184,.28)!important;
  color:#0f172a!important;
}
body[data-theme="light"] .water-mobile-sheet__facts>div{
  background:#f1f5f9!important;
  border-color:#d9e2ec!important;
}
body[data-theme="light"] .water-mobile-sheet__facts b{color:#64748b!important}
body[data-theme="light"] .water-mobile-sheet__facts span{color:#0f172a!important}
body[data-theme="light"] .water-mobile-sheet__actions .map-popup-links>.btn{
  background:#e8eef6!important;
  border-color:rgba(148,163,184,.28)!important;
  color:#0f172a!important;
}

/* ui-fixes-v1362.css */
/* Retter-Portal v1.3.62
   Mobile Monatsauswahl zuverlässig abgerundet; Rechteverwaltung folgt ausschließlich dem Header-Kontext. */

/* Der sichtbare Rahmen liegt auf einer eigenen Hülle. Damit kann Safari die native
   Month-Control nicht mehr mit einer scheinbar offenen, eckigen Unterkante darstellen. */
html body .calendar-month-form label{
  display:grid;
  gap:8px;
}
html body .calendar-month-label{
  display:block;
}
html body .calendar-month-input-shell{
  display:block;
  width:100%;
  min-width:0;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:16px;
  background:linear-gradient(180deg,rgba(6,17,30,.94),rgba(7,19,33,.88));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
  background-clip:padding-box;
  -webkit-mask-image:-webkit-radial-gradient(white,black);
  clip-path:inset(0 round 16px);
}
html body .calendar-month-input-shell input[type="month"]{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  border:0!important;
  border-radius:16px!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  background-clip:padding-box!important;
  clip-path:none!important;
  -webkit-mask-image:none!important;
}
html body .calendar-month-input-shell:focus-within{
  border-color:rgba(251,113,133,.48);
  box-shadow:0 0 0 3px rgba(225,29,72,.10),inset 0 1px 0 rgba(255,255,255,.035);
}
body[data-theme="light"] .calendar-month-input-shell{
  border-color:rgba(148,163,184,.30);
  background:linear-gradient(180deg,#ffffff,#f7fafc);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 7px 18px rgba(148,163,184,.08);
}
body[data-theme="light"] .calendar-month-input-shell input[type="month"]{
  color:#0f172a!important;
}

/* Die entfernte Organisationsauswahl hinterlässt keine unnötige Leerstelle. */
html body .rights-workbench-card .card-head{
  margin-bottom:14px;
}
html body .rights-workbench-card .rights-assign-form{
  margin-top:0!important;
}

@media(max-width:760px){
  html body .calendar-month-input-shell{
    border-radius:18px!important;
    clip-path:inset(0 round 18px)!important;
  }
  html body .calendar-month-input-shell input[type="month"]{
    min-height:58px!important;
    border-radius:18px!important;
  }
}

/* ui-fixes-v1363.css */
/* Retter-Portal v1.3.63
   Header und Rollen-Badges für Tablet/Mobil ausbalanciert. */

/* Feuerwehr-Auswahl am Desktop bewusst kompakter halten. */
@media (min-width:761px){
  html body .topbar .topbar-desktop-shell{
    min-width:0!important;
  }
  html body .topbar .topbar-context{
    width:100%!important;
    min-width:0!important;
    max-width:430px!important;
    justify-self:start!important;
    overflow:visible!important;
  }
  html body .topbar .department-context-switch,
  html body .topbar .department-context-static,
  html body .topbar.has-department-switch .department-context-switch{
    width:100%!important;
    min-width:0!important;
    max-width:430px!important;
    flex:0 1 430px!important;
  }
  html body .topbar .department-context-switch select,
  html body .topbar .department-context-static strong{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  /* Rollenbezeichnungen dürfen sich nach ihrem Inhalt richten. */
  html body .topbar .topbar-role-badge{
    flex:0 0 auto!important;
    width:max-content!important;
    min-width:max-content!important;
    max-width:none!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
  }
  html body .topbar .topbar-account-info{
    grid-template-columns:max-content minmax(0,1fr)!important;
    min-width:0!important;
    overflow:visible!important;
  }
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  html body .topbar .topbar-logout,
  html body .topbar .topbar-logout .btn{
    flex:0 0 auto!important;
    visibility:visible!important;
    opacity:1!important;
  }
}

/* Kleine/mittlere Tablets mit sichtbarer Sidebar: Header auf zwei ruhige Zeilen verteilen.
   Dadurch bleibt Logout vollständig sichtbar und die Feuerwehr-Auswahl verdrängt nichts. */
@media (min-width:861px) and (max-width:1039px){
  html body .topbar .topbar-desktop-shell{
    display:grid!important;
    grid-template-columns:minmax(135px,auto) minmax(0,1fr)!important;
    grid-template-areas:
      "brand actions"
      "context context"!important;
    align-items:center!important;
    gap:8px 12px!important;
    width:100%!important;
    padding:8px 10px 10px!important;
    overflow:visible!important;
  }
  html body .topbar .topbar-title{
    grid-area:brand!important;
    min-width:0!important;
  }
  html body .topbar .topbar-actions{
    grid-area:actions!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:6px!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    overflow:visible!important;
  }
  html body .topbar .topbar-context{
    grid-area:context!important;
    width:min(100%,390px)!important;
    max-width:390px!important;
  }
  html body .topbar .department-context-switch,
  html body .topbar .department-context-static,
  html body .topbar.has-department-switch .department-context-switch{
    max-width:390px!important;
  }
  html body .topbar .topbar-user-cluster{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:6px!important;
    min-width:0!important;
    max-width:none!important;
    overflow:visible!important;
  }
  html body .topbar .topbar-account-info{
    display:grid!important;
    grid-template-columns:max-content minmax(56px,94px)!important;
    max-width:220px!important;
    gap:5px!important;
    overflow:visible!important;
  }
  html body .topbar .topbar-role-badge{
    min-height:27px!important;
    padding:4px 7px!important;
    font-size:.52rem!important;
  }
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge{
    max-width:94px!important;
    font-size:.7rem!important;
  }
  html body .topbar .topbar-logout .btn{
    min-width:62px!important;
    padding-inline:8px!important;
  }
}

/* Normale Tablet-Landschaft kompakt in einer Zeile. */
@media (min-width:1040px) and (max-width:1180px){
  html body .topbar .topbar-desktop-shell{
    display:grid!important;
    grid-template-columns:minmax(135px,165px) minmax(260px,370px) minmax(360px,1fr)!important;
    grid-template-areas:"brand context actions"!important;
    align-items:center!important;
    gap:8px 10px!important;
    padding:8px 11px!important;
    overflow:visible!important;
  }
  html body .topbar .topbar-context,
  html body .topbar .department-context-switch,
  html body .topbar .department-context-static,
  html body .topbar.has-department-switch .department-context-switch{
    max-width:370px!important;
  }
  html body .topbar .topbar-actions,
  html body .topbar .topbar-user-cluster{
    overflow:visible!important;
  }
  html body .topbar .topbar-account-info{
    max-width:225px!important;
  }
  html body .topbar .topbar-role-badge{
    padding-inline:7px!important;
    font-size:.53rem!important;
  }
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge{
    max-width:96px!important;
  }
}

/* Große Touch-Tablets/iPad Landscape: Feuerwehr kompakter, Account und Logout geschützt. */
@media (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  html body .topbar .topbar-desktop-shell{
    grid-template-columns:minmax(125px,155px) minmax(280px,390px) minmax(390px,1fr)!important;
    overflow:visible!important;
  }
  html body .topbar .topbar-context,
  html body .topbar .department-context-switch,
  html body .topbar .department-context-static,
  html body .topbar.has-department-switch .department-context-switch{
    max-width:390px!important;
  }
  html body .topbar .topbar-actions,
  html body .topbar .topbar-user-cluster,
  html body .topbar .topbar-account-info{
    overflow:visible!important;
  }
  html body .topbar .topbar-account-info{
    max-width:250px!important;
  }
  html body .topbar .topbar-role-badge{
    padding:4px 8px!important;
    font-size:.54rem!important;
  }
  html body .topbar .user-chip,
  html body .topbar .user-chip.has-role-badge{
    max-width:108px!important;
  }
}

/* Smartphone: Betreiber, Support-Team und Administrator immer vollständig darstellen.
   Der Benutzername kürzt sich zuerst, nicht die Rolle. */
@media (max-width:760px){
  html body .topbar .rp-mobile-header__bottom,
  html body .app-shell .main > .topbar .rp-mobile-header__bottom{
    grid-template-columns:118px minmax(0,1fr)!important;
    gap:8px!important;
  }
  html body .topbar .rp-mobile-header__account,
  html body .app-shell .main > .topbar .rp-mobile-header__account{
    display:grid!important;
    grid-template-columns:max-content minmax(0,1fr)!important;
    gap:7px!important;
    min-width:0!important;
    padding-inline:7px!important;
    overflow:hidden!important;
  }
  html body .topbar .rp-mobile-header__account .topbar-role-badge,
  html body .app-shell .main > .topbar .rp-mobile-header__account .topbar-role-badge{
    width:max-content!important;
    min-width:max-content!important;
    max-width:none!important;
    padding:0 8px!important;
    font-size:.56rem!important;
    letter-spacing:.055em!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
  }
  html body .topbar .rp-mobile-header__name{
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
}

@media (max-width:390px){
  html body .topbar .rp-mobile-header__bottom,
  html body .app-shell .main > .topbar .rp-mobile-header__bottom{
    grid-template-columns:108px minmax(0,1fr)!important;
    gap:6px!important;
  }
  html body .topbar .rp-mobile-header__theme,
  html body .app-shell .main > .topbar form.rp-mobile-header__theme{
    width:108px!important;
    min-width:108px!important;
    max-width:108px!important;
  }
  html body .topbar .rp-mobile-header__account,
  html body .app-shell .main > .topbar .rp-mobile-header__account{
    gap:5px!important;
    padding-inline:5px!important;
  }
  html body .topbar .rp-mobile-header__account .topbar-role-badge,
  html body .app-shell .main > .topbar .rp-mobile-header__account .topbar-role-badge{
    padding-inline:6px!important;
    font-size:.51rem!important;
    letter-spacing:.035em!important;
  }
  html body .topbar .rp-mobile-header__name{
    font-size:.72rem!important;
  }
}

/* ui-fixes-v1375.css */
/* Retter-Portal v1.3.75
   Tablet-Header sauber konsolidiert: nur noch eine Header-Struktur, keine Duplikate. */

/* Die experimentelle zweite Tablet-Kopfzeile darf grundsätzlich nie erscheinen. */
html body .rp-expanded-tablet-shell{
  display:none!important;
}

/* Ausgeklappte Sidebar auf Tablets: kompakte, echte Ein-Zeilen-Anordnung. */
@media (min-width:900px) and (max-width:1400px){
  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet{
    display:block!important;
    width:100%!important;
    height:72px!important;
    min-height:72px!important;
    max-height:72px!important;
    padding:0!important;
    overflow:hidden!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .topbar-desktop-shell{
    display:grid!important;
    grid-template-columns:minmax(190px,max-content) minmax(220px,1fr) max-content!important;
    grid-template-areas:"brand context actions"!important;
    align-items:center!important;
    column-gap:8px!important;
    row-gap:0!important;
    width:100%!important;
    height:72px!important;
    min-height:72px!important;
    max-height:72px!important;
    margin:0!important;
    padding:10px 14px!important;
    overflow:hidden!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet.is-developer-organization .topbar-desktop-shell{
    grid-template-columns:minmax(258px,max-content) minmax(220px,1fr) max-content!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .topbar-tablet-menu{
    display:none!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .topbar-title{
    grid-area:brand!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    width:max-content!important;
    min-width:0!important;
    max-width:none!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    white-space:nowrap!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .topbar-product,
  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .topbar-eyebrow{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    width:max-content!important;
    min-width:max-content!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    white-space:nowrap!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .topbar-eyebrow{
    color:var(--muted-2)!important;
    font-size:.60rem!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.12em!important;
    text-transform:uppercase!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .topbar-eyebrow > span:first-child{
    display:inline!important;
    width:auto!important;
    min-width:max-content!important;
    max-width:none!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .topbar-version{
    display:inline-grid!important;
    place-items:center!important;
    flex:0 0 auto!important;
    min-width:50px!important;
    height:28px!important;
    padding:0 8px!important;
    border:1px solid var(--line)!important;
    border-radius:999px!important;
    background:var(--surface)!important;
    color:var(--text)!important;
    box-shadow:var(--shadow-sm)!important;
    font-size:.58rem!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.025em!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .dev-organization-chip{
    display:inline-grid!important;
    place-items:center!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:max-content!important;
    max-width:none!important;
    height:28px!important;
    padding:0 9px!important;
    margin:0!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
    font-size:.49rem!important;
    line-height:1!important;
    letter-spacing:.05em!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .topbar-context{
    grid-area:context!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .department-context-switch,
  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .department-context-static,
  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet.has-department-switch .department-context-switch{
    display:grid!important;
    grid-template-columns:62px minmax(0,1fr)!important;
    align-items:center!important;
    gap:5px!important;
    width:100%!important;
    min-width:0!important;
    max-width:292px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    margin:0!important;
    padding:4px 5px 4px 9px!important;
    border:1px solid var(--line)!important;
    border-radius:14px!important;
    background:var(--surface)!important;
    box-shadow:var(--shadow-sm)!important;
    overflow:hidden!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .department-context-switch > span,
  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .department-context-static > span{
    color:var(--muted-2)!important;
    font-size:.49rem!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.10em!important;
    text-transform:uppercase!important;
    white-space:nowrap!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .department-context-switch select,
  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .department-context-static strong{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:32px!important;
    min-height:32px!important;
    margin:0!important;
    padding:0 25px 0 9px!important;
    border:0!important;
    border-radius:10px!important;
    background:var(--surface-2)!important;
    color:var(--text)!important;
    box-shadow:none!important;
    font-size:.72rem!important;
    line-height:32px!important;
    font-weight:900!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .department-context-static strong{
    padding-right:9px!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .topbar-actions{
    grid-area:actions!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:6px!important;
    width:max-content!important;
    min-width:0!important;
    max-width:none!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    white-space:nowrap!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .theme-switch{
    display:grid!important;
    grid-template-columns:23px 23px 38px!important;
    align-items:center!important;
    gap:1px!important;
    flex:0 0 91px!important;
    width:91px!important;
    min-width:91px!important;
    max-width:91px!important;
    height:36px!important;
    min-height:36px!important;
    margin:0!important;
    padding:3px!important;
    border:1px solid var(--line)!important;
    border-radius:999px!important;
    background:var(--surface)!important;
    box-shadow:var(--shadow-sm)!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .theme-switch .theme-dot{
    display:grid!important;
    place-items:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:28px!important;
    min-height:28px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:999px!important;
    font-size:.58rem!important;
    line-height:1!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .topbar-user-cluster{
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    width:max-content!important;
    min-width:0!important;
    max-width:none!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .topbar-account-info,
  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .topbar-account-info.has-role{
    display:grid!important;
    grid-template-columns:max-content minmax(92px,118px)!important;
    grid-template-areas:none!important;
    align-items:center!important;
    gap:6px!important;
    width:auto!important;
    min-width:0!important;
    max-width:225px!important;
    height:36px!important;
    min-height:36px!important;
    margin:0!important;
    padding:3px 7px!important;
    border:1px solid var(--line)!important;
    border-radius:14px!important;
    background:var(--surface)!important;
    box-shadow:var(--shadow-sm)!important;
    overflow:hidden!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .topbar-account-info.name-only{
    grid-template-columns:minmax(90px,130px)!important;
    min-width:105px!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .topbar-role-badge{
    display:inline-grid!important;
    grid-area:auto!important;
    grid-column:auto!important;
    grid-row:auto!important;
    justify-self:start!important;
    place-items:center!important;
    width:max-content!important;
    min-width:max-content!important;
    max-width:none!important;
    height:27px!important;
    min-height:27px!important;
    padding:0 8px!important;
    margin:0!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
    font-size:.48rem!important;
    line-height:1!important;
    letter-spacing:.05em!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .user-chip,
  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .user-chip.has-role-badge{
    display:block!important;
    grid-area:auto!important;
    grid-column:auto!important;
    grid-row:auto!important;
    justify-self:stretch!important;
    width:100%!important;
    min-width:0!important;
    max-width:118px!important;
    height:28px!important;
    margin:0!important;
    padding:0!important;
    color:var(--text)!important;
    font-size:.67rem!important;
    line-height:28px!important;
    font-weight:900!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .topbar-logout,
  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .topbar-logout .btn{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:66px!important;
    max-width:none!important;
    height:36px!important;
    min-height:36px!important;
    max-height:36px!important;
    margin:0!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .topbar-logout .btn{
    display:inline-grid!important;
    place-items:center!important;
    padding:0 10px!important;
    border-radius:13px!important;
    font-size:.66rem!important;
    line-height:1!important;
  }

  /* Wenn die echte Restbreite zu klein wird, kontrolliert auf zwei Zeilen wechseln. */
  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet.topbar--narrow-expanded{
    height:112px!important;
    min-height:112px!important;
    max-height:112px!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet.topbar--narrow-expanded .topbar-desktop-shell,
  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet.topbar--narrow-expanded.is-developer-organization .topbar-desktop-shell{
    grid-template-columns:minmax(220px,max-content) minmax(230px,1fr)!important;
    grid-template-rows:44px 44px!important;
    grid-template-areas:"brand context" "actions actions"!important;
    height:112px!important;
    min-height:112px!important;
    max-height:112px!important;
    padding:8px 14px!important;
    row-gap:4px!important;
  }

  html body:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet.topbar--narrow-expanded .topbar-actions{
    width:100%!important;
    justify-content:flex-end!important;
  }
}

/* Die funktionierende Variante mit eingeklappter Sidebar bleibt unangetastet. */

/* ui-fixes-v1376.css */
/* Retter-Portal v1.3.76
   Tablet-Header bei eingeklappter Sidebar stabilisiert.
   Die ausgeklappte Tablet-Ansicht aus v1.3.75 bleibt unverändert. */

@media (min-width:1101px) and (max-width:1400px){
  html body.sidebar-collapsed .app-shell .main > .topbar{
    display:block!important;
    width:100%!important;
    height:72px!important;
    min-height:72px!important;
    max-height:72px!important;
    padding:0!important;
    overflow:hidden!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-desktop-shell{
    display:grid!important;
    grid-template-columns:190px minmax(280px,1fr) max-content!important;
    grid-template-areas:"brand context actions"!important;
    align-items:center!important;
    column-gap:12px!important;
    row-gap:0!important;
    width:100%!important;
    min-width:0!important;
    height:72px!important;
    min-height:72px!important;
    max-height:72px!important;
    margin:0!important;
    padding:10px 14px!important;
    overflow:hidden!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar.is-developer-organization .topbar-desktop-shell{
    grid-template-columns:310px minmax(240px,1fr) max-content!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-tablet-menu{
    display:none!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-title{
    grid-area:brand!important;
    position:static!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:nowrap!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
    white-space:nowrap!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-product,
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-eyebrow{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    width:auto!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    white-space:nowrap!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-eyebrow{
    color:var(--muted-2)!important;
    font-size:.65rem!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.10em!important;
    text-transform:uppercase!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-eyebrow > span:first-child{
    display:inline!important;
    flex:0 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-version{
    display:inline-grid!important;
    place-items:center!important;
    flex:0 0 auto!important;
    min-width:54px!important;
    height:28px!important;
    min-height:28px!important;
    padding:0 8px!important;
    border:1px solid var(--line)!important;
    border-radius:999px!important;
    background:var(--surface)!important;
    color:var(--text)!important;
    box-shadow:var(--shadow-sm)!important;
    font-size:.61rem!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.025em!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .dev-organization-chip{
    display:inline-grid!important;
    place-items:center!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:max-content!important;
    max-width:none!important;
    height:28px!important;
    min-height:28px!important;
    margin:0!important;
    padding:0 9px!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
    font-size:.50rem!important;
    line-height:1!important;
    letter-spacing:.055em!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-context{
    grid-area:context!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-switch,
  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-static,
  html body.sidebar-collapsed .app-shell .main > .topbar.has-department-switch .department-context-switch{
    display:grid!important;
    grid-template-columns:66px minmax(0,1fr)!important;
    align-items:center!important;
    gap:6px!important;
    width:min(100%,420px)!important;
    min-width:0!important;
    max-width:420px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    margin:0!important;
    padding:4px 5px 4px 10px!important;
    border:1px solid var(--line)!important;
    border-radius:14px!important;
    background:var(--surface)!important;
    box-shadow:var(--shadow-sm)!important;
    overflow:hidden!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-switch > span,
  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-static > span{
    position:static!important;
    display:block!important;
    width:auto!important;
    min-width:0!important;
    max-width:66px!important;
    margin:0!important;
    padding:0!important;
    color:var(--muted-2)!important;
    font-size:.52rem!important;
    line-height:1!important;
    font-weight:950!important;
    letter-spacing:.10em!important;
    text-transform:uppercase!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-switch select,
  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-static strong{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:32px!important;
    min-height:32px!important;
    margin:0!important;
    padding:0 28px 0 10px!important;
    border:0!important;
    border-radius:10px!important;
    background:var(--surface-2)!important;
    color:var(--text)!important;
    box-shadow:none!important;
    font-size:.78rem!important;
    line-height:32px!important;
    font-weight:900!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-static strong{
    padding-right:10px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-actions{
    grid-area:actions!important;
    position:static!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:8px!important;
    width:max-content!important;
    min-width:0!important;
    max-width:none!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:visible!important;
    white-space:nowrap!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .theme-switch{
    display:grid!important;
    grid-template-columns:24px 24px 40px!important;
    align-items:center!important;
    gap:1px!important;
    flex:0 0 95px!important;
    width:95px!important;
    min-width:95px!important;
    max-width:95px!important;
    height:36px!important;
    min-height:36px!important;
    margin:0!important;
    padding:3px!important;
    border:1px solid var(--line)!important;
    border-radius:999px!important;
    background:var(--surface)!important;
    box-shadow:var(--shadow-sm)!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .theme-switch .theme-dot{
    display:grid!important;
    place-items:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:28px!important;
    min-height:28px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:999px!important;
    font-size:.60rem!important;
    line-height:1!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-user-cluster{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:8px!important;
    width:max-content!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info,
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info.has-role{
    display:grid!important;
    grid-template-columns:max-content minmax(92px,150px)!important;
    align-items:center!important;
    gap:7px!important;
    width:auto!important;
    min-width:0!important;
    max-width:270px!important;
    min-height:36px!important;
    margin:0!important;
    padding:3px 7px!important;
    border:1px solid var(--line)!important;
    border-radius:14px!important;
    background:var(--surface)!important;
    box-shadow:var(--shadow-sm)!important;
    overflow:hidden!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-role-badge{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:max-content!important;
    min-width:max-content!important;
    max-width:none!important;
    min-height:28px!important;
    margin:0!important;
    padding:5px 9px!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
    font-size:.54rem!important;
    line-height:1!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .user-chip,
  html body.sidebar-collapsed .app-shell .main > .topbar .user-chip.has-role-badge{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:150px!important;
    margin:0!important;
    padding:0 2px!important;
    border:0!important;
    background:transparent!important;
    color:var(--text)!important;
    font-size:.74rem!important;
    line-height:1.15!important;
    font-weight:850!important;
    text-align:left!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-logout,
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-logout .btn{
    display:block!important;
    flex:0 0 auto!important;
    visibility:visible!important;
    opacity:1!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-logout .btn{
    min-width:76px!important;
    width:auto!important;
    height:36px!important;
    min-height:36px!important;
    margin:0!important;
    padding:0 12px!important;
    border-radius:12px!important;
    font-size:.72rem!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
}

/* Bei sehr schmaler Restbreite bleibt die Feuerwehr-Auswahl flexibel,
   ohne in Produktname oder Aktionen hineinzulaufen. */
@media (min-width:1101px) and (max-width:1220px){
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-desktop-shell{
    grid-template-columns:184px minmax(230px,1fr) max-content!important;
    column-gap:9px!important;
    padding-inline:11px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar.is-developer-organization .topbar-desktop-shell{
    grid-template-columns:286px minmax(205px,1fr) max-content!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-switch,
  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-static,
  html body.sidebar-collapsed .app-shell .main > .topbar.has-department-switch .department-context-switch{
    max-width:360px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info,
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info.has-role{
    grid-template-columns:max-content minmax(70px,112px)!important;
    max-width:232px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .user-chip,
  html body.sidebar-collapsed .app-shell .main > .topbar .user-chip.has-role-badge{
    max-width:112px!important;
  }
}

/* ui-fixes-v1377.css */
/* Retter-Portal v1.3.77
   Eingeklappte Tablet-Sidebar: Header-Spalten nach echtem Inhaltsbedarf.
   Die ausgeklappte Tablet-Ansicht aus v1.3.75 bleibt unverändert. */

@media (min-width:1101px) and (max-width:1400px){
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-desktop-shell{
    /* Produkt/Version dürfen nie in die Feuerwehr-Spalte gedrückt werden. */
    grid-template-columns:max-content minmax(250px,1fr) max-content!important;
    grid-template-areas:"brand context actions"!important;
    align-items:center!important;
    column-gap:12px!important;
    width:100%!important;
    min-width:0!important;
    padding:10px 14px!important;
    overflow:hidden!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar.is-developer-organization .topbar-desktop-shell{
    grid-template-columns:max-content minmax(220px,1fr) max-content!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-title{
    grid-area:brand!important;
    position:static!important;
    display:flex!important;
    align-items:center!important;
    flex-wrap:nowrap!important;
    gap:8px!important;
    width:max-content!important;
    min-width:max-content!important;
    max-width:none!important;
    overflow:visible!important;
    white-space:nowrap!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-product,
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-eyebrow{
    display:flex!important;
    align-items:center!important;
    flex:0 0 auto!important;
    gap:7px!important;
    width:max-content!important;
    min-width:max-content!important;
    max-width:none!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-eyebrow > span:first-child{
    display:inline!important;
    flex:0 0 auto!important;
    width:max-content!important;
    min-width:max-content!important;
    max-width:none!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:nowrap!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-version,
  html body.sidebar-collapsed .app-shell .main > .topbar .dev-organization-chip{
    flex:0 0 auto!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-context{
    grid-area:context!important;
    position:static!important;
    inset:auto!important;
    transform:none!important;
    justify-self:stretch!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    overflow:hidden!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-switch,
  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-static,
  html body.sidebar-collapsed .app-shell .main > .topbar.has-department-switch .department-context-switch{
    width:100%!important;
    min-width:0!important;
    max-width:400px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-actions{
    grid-area:actions!important;
    position:static!important;
    inset:auto!important;
    transform:none!important;
    justify-self:end!important;
    width:max-content!important;
    min-width:max-content!important;
    max-width:none!important;
    overflow:visible!important;
  }
}

/* Etwas kompakter auf genau den typischen 11-/12,9-Zoll-iPad-Breiten. */
@media (min-width:1101px) and (max-width:1280px){
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-desktop-shell{
    grid-template-columns:max-content minmax(220px,1fr) max-content!important;
    column-gap:9px!important;
    padding-inline:11px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar.is-developer-organization .topbar-desktop-shell{
    grid-template-columns:max-content minmax(185px,1fr) max-content!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-switch,
  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-static,
  html body.sidebar-collapsed .app-shell .main > .topbar.has-department-switch .department-context-switch{
    max-width:360px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info,
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info.has-role{
    grid-template-columns:max-content minmax(76px,126px)!important;
    max-width:246px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .user-chip,
  html body.sidebar-collapsed .app-shell .main > .topbar .user-chip.has-role-badge{
    max-width:126px!important;
  }
}

/* ui-fixes-v1378.css */
/* Retter-Portal v1.3.78
   Tablet mit eingeklappter Sidebar: Benutzername erhält eine feste, ausreichend
   breite Zone. Die bereits passende ausgeklappte Tablet-Ansicht bleibt unberührt. */

@media (min-width:1230px) and (max-width:1400px){
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-user-cluster{
    flex:0 0 auto!important;
    width:max-content!important;
    min-width:max-content!important;
    max-width:none!important;
    overflow:visible!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info,
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info.has-role{
    flex:0 0 auto!important;
    grid-template-columns:max-content minmax(132px,160px)!important;
    width:auto!important;
    min-width:0!important;
    max-width:292px!important;
    overflow:hidden!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .user-chip,
  html body.sidebar-collapsed .app-shell .main > .topbar .user-chip.has-role-badge{
    width:100%!important;
    min-width:132px!important;
    max-width:160px!important;
    padding-inline:2px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
}

/* Auf etwas schmaleren Tablets bleibt der Name ebenfalls lesbar, ohne die
   Feuerwehr-Auswahl oder Logout zu verdrängen. */
@media (min-width:1101px) and (max-width:1229px){
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info,
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info.has-role{
    grid-template-columns:max-content minmax(104px,132px)!important;
    max-width:258px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .user-chip,
  html body.sidebar-collapsed .app-shell .main > .topbar .user-chip.has-role-badge{
    min-width:104px!important;
    max-width:132px!important;
  }
}

/* ui-fixes-v1379.css */
/* Retter-Portal v1.3.79
   Nur Tablet + eingeklappte Sidebar:
   Feuerwehr-Auswahl und Kontobereich exakt auf einer Mittelachse ausrichten,
   Rollen-Badge und Benutzername ohne unnötigen Leerraum darstellen. */

@media (min-width:1101px) and (max-width:1400px){
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-desktop-shell{
    align-items:center!important;
  }

  /* Beim Einklappen darf die Feuerwehr-Auswahl nicht um wenige Pixel nach oben springen. */
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-context{
    align-self:center!important;
    height:40px!important;
    min-height:40px!important;
    max-height:40px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-switch,
  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-static,
  html body.sidebar-collapsed .app-shell .main > .topbar.has-department-switch .department-context-switch{
    align-self:center!important;
    height:40px!important;
    min-height:40px!important;
    max-height:40px!important;
    padding:3px 5px 3px 10px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-switch select,
  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-static strong{
    height:32px!important;
    min-height:32px!important;
    max-height:32px!important;
    line-height:32px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-actions,
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-user-cluster{
    align-self:center!important;
    height:40px!important;
    min-height:40px!important;
    max-height:40px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-user-cluster{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:8px!important;
    width:max-content!important;
    min-width:max-content!important;
    max-width:none!important;
    overflow:visible!important;
  }

  /* Der bisherige flexible Grid-Track erzeugte links im Benutzerfeld sichtbaren
     Leerraum. Rolle und Name erhalten jetzt zwei klare, kompakte Zonen. */
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info,
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info.has-role{
    display:grid!important;
    grid-template-columns:max-content 136px!important;
    align-items:center!important;
    justify-content:start!important;
    justify-items:start!important;
    gap:7px!important;
    width:max-content!important;
    min-width:max-content!important;
    max-width:none!important;
    height:38px!important;
    min-height:38px!important;
    max-height:38px!important;
    margin:0!important;
    padding:4px 7px!important;
    overflow:hidden!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info.name-only{
    display:flex!important;
    align-items:center!important;
    width:max-content!important;
    min-width:0!important;
    max-width:180px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-role-badge{
    align-self:center!important;
    justify-self:start!important;
    flex:0 0 auto!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .user-chip,
  html body.sidebar-collapsed .app-shell .main > .topbar .user-chip.has-role-badge{
    display:block!important;
    align-self:center!important;
    justify-self:start!important;
    width:136px!important;
    min-width:136px!important;
    max-width:136px!important;
    padding:0!important;
    line-height:1.15!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info.name-only .user-chip{
    width:auto!important;
    min-width:0!important;
    max-width:168px!important;
  }
}

/* Auf den schmaleren Tabletbreiten bleibt der Name ausreichend lesbar,
   ohne Feuerwehr-Auswahl oder Logout zu verdrängen. */
@media (min-width:1101px) and (max-width:1229px){
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info,
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info.has-role{
    grid-template-columns:max-content 112px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .user-chip,
  html body.sidebar-collapsed .app-shell .main > .topbar .user-chip.has-role-badge{
    width:112px!important;
    min-width:112px!important;
    max-width:112px!important;
  }
}

/* ui-fixes-v1380.css */
/* Retter-Portal v1.3.80
   Tablet + eingeklappte Sidebar: letzte Header-Korrektur.
   Kontobereich als echte Flexzeile (keine impliziten Grid-Spalten mehr) und
   Feuerwehr-Auswahl exakt auf derselben vertikalen Mittelachse wie die Aktionen. */

@media (min-width:1101px) and (max-width:1400px){
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-desktop-shell{
    align-items:center!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-context{
    display:flex!important;
    align-items:center!important;
    align-self:center!important;
    height:38px!important;
    min-height:38px!important;
    max-height:38px!important;
    margin:0!important;
    transform:none!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-switch,
  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-static,
  html body.sidebar-collapsed .app-shell .main > .topbar.has-department-switch .department-context-switch{
    align-self:center!important;
    height:38px!important;
    min-height:38px!important;
    max-height:38px!important;
    margin:0!important;
    padding:3px 5px 3px 10px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-switch select,
  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-static strong{
    height:30px!important;
    min-height:30px!important;
    max-height:30px!important;
    line-height:30px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-actions,
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-user-cluster{
    align-self:center!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-user-cluster{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:8px!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    overflow:visible!important;
  }

  /* Alte Regeln platzierten Rolle und Name in Grid-Spalte 3/4 und erzeugten
     dadurch den sichtbaren leeren Block links. Flex beseitigt diese impliziten Spalten. */
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info,
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info.has-role{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:7px!important;
    width:auto!important;
    min-width:0!important;
    max-width:280px!important;
    height:38px!important;
    min-height:38px!important;
    max-height:38px!important;
    margin:0!important;
    padding:4px 7px!important;
    overflow:hidden!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info.name-only{
    max-width:190px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-role-badge{
    grid-column:auto!important;
    grid-row:auto!important;
    flex:0 0 auto!important;
    align-self:center!important;
    margin:0!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .user-chip,
  html body.sidebar-collapsed .app-shell .main > .topbar .user-chip.has-role-badge{
    grid-column:auto!important;
    grid-row:auto!important;
    display:block!important;
    flex:0 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:152px!important;
    margin:0!important;
    padding:0 2px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info.name-only .user-chip{
    max-width:178px!important;
  }
}

@media (min-width:1101px) and (max-width:1229px){
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info,
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-account-info.has-role{
    max-width:246px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .user-chip,
  html body.sidebar-collapsed .app-shell .main > .topbar .user-chip.has-role-badge{
    max-width:126px!important;
  }
}

/* ui-fixes-v1381.css */
/* Retter-Portal v1.3.81
   Tablet + eingeklappte Sidebar: Feuerwehr-Auswahl exakt auf die Höhe der
   übrigen Header-Bedienelemente bringen. Die ausgeklappte Ansicht bleibt unberührt. */

@media (min-width:1101px) and (max-width:1400px){
  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-desktop-shell{
    align-items:center!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .topbar-context{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    align-self:center!important;
    box-sizing:border-box!important;
    height:40px!important;
    min-height:40px!important;
    max-height:40px!important;
    margin:0!important;
    padding:0!important;
    position:static!important;
    inset:auto!important;
    transform:none!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-switch,
  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-static,
  html body.sidebar-collapsed .app-shell .main > .topbar.has-department-switch .department-context-switch{
    display:grid!important;
    grid-template-columns:76px minmax(0,1fr)!important;
    align-items:center!important;
    align-self:center!important;
    gap:5px!important;
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    max-width:380px!important;
    height:40px!important;
    min-height:40px!important;
    max-height:40px!important;
    margin:0!important;
    padding:4px 5px 4px 10px!important;
    border-width:1px!important;
    overflow:hidden!important;
    transform:none!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-switch > span,
  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-static > span{
    display:flex!important;
    align-items:center!important;
    align-self:center!important;
    box-sizing:border-box!important;
    height:30px!important;
    min-height:30px!important;
    margin:0!important;
    padding:0!important;
    line-height:30px!important;
  }

  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-switch select,
  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-static strong{
    display:block!important;
    align-self:center!important;
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:30px!important;
    min-height:30px!important;
    max-height:30px!important;
    margin:0!important;
    padding-top:0!important;
    padding-bottom:0!important;
    line-height:30px!important;
    vertical-align:middle!important;
  }
}

@media (min-width:1101px) and (max-width:1229px){
  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-switch,
  html body.sidebar-collapsed .app-shell .main > .topbar .department-context-static,
  html body.sidebar-collapsed .app-shell .main > .topbar.has-department-switch .department-context-switch{
    grid-template-columns:68px minmax(0,1fr)!important;
    max-width:350px!important;
  }
}

/* admin-v1382.css */
/* Retter-Portal v1.3.82 – Admin-Zentrale, Live-Traffic und intuitivere Navigation */

body.admin-surface .admin-command-nav--v1382{
  align-items:stretch;
  justify-content:flex-start;
  gap:10px;
  padding:9px;
  border-radius:20px;
  overflow-x:auto;
}
body.admin-surface .admin-command-nav--v1382 .admin-command-nav__group{
  position:relative;
  display:flex;
  align-items:center;
  gap:5px;
  padding:4px 6px 4px 5px;
  border:1px solid color-mix(in srgb,var(--line-soft) 72%,transparent);
  border-radius:14px;
  background:color-mix(in srgb,var(--surface) 46%,transparent);
}
body.admin-surface .admin-command-nav--v1382 .admin-command-nav__label{
  padding:0 7px;
  color:var(--muted-2);
  font-size:.62rem;
  letter-spacing:.1em;
}
body.admin-surface .admin-command-nav--v1382 a{
  position:relative;
  min-height:36px;
  padding:7px 10px;
  border-radius:10px;
  font-size:.79rem;
}
body.admin-surface .admin-command-nav--v1382 a.is-active{
  box-shadow:0 8px 22px rgba(225,29,72,.20),inset 0 1px 0 rgba(255,255,255,.12);
}
.admin-nav-live-dot{
  width:7px;height:7px;margin-left:1px;border-radius:999px;background:#34d399;
  box-shadow:0 0 0 4px rgba(52,211,153,.12),0 0 12px rgba(52,211,153,.45);
}
body.admin-surface[data-theme="light"] .admin-command-nav--v1382 .admin-command-nav__group{
  background:rgba(248,250,252,.84);
  border-color:rgba(148,163,184,.22);
}

/* Overview polish */
body.admin-surface .admin-stat-grid--overview{grid-template-columns:repeat(6,minmax(0,1fr))}
body.admin-surface .admin-stat-live:before{background:linear-gradient(180deg,#22c55e,#06b6d4)}
body.admin-surface .admin-stat-live strong{color:#34d399}
.admin-hub-card--traffic{border-color:color-mix(in srgb,#22c55e 26%,var(--line))}
.admin-hub-card__icon--live{background:linear-gradient(145deg,#064e3b,#0f766e)!important}
.admin-hub-card__icon--live i{width:12px;height:12px;border-radius:999px;background:#6ee7b7;box-shadow:0 0 0 6px rgba(110,231,183,.13),0 0 18px rgba(52,211,153,.55)}

/* Traffic page */
.admin-traffic-hero{align-items:center}
.admin-traffic-range{min-width:0}
.admin-traffic-range .btn{min-width:98px;text-align:center}
.traffic-kpi-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px;
  margin:0 0 18px;
}
.traffic-kpi{
  position:relative;
  display:grid;
  align-content:center;
  min-height:126px;
  padding:18px;
  border:1px solid var(--line);
  border-radius:20px;
  background:var(--surface);
  box-shadow:var(--shadow-sm);
  overflow:hidden;
}
.traffic-kpi:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,#64748b,#334155)}
.traffic-kpi--live:before{background:linear-gradient(180deg,#34d399,#06b6d4)}
.traffic-kpi>span{color:var(--muted);font-size:.7rem;font-weight:950;letter-spacing:.095em;text-transform:uppercase}
.traffic-kpi>strong{margin-top:6px;font-size:2.45rem;line-height:1;letter-spacing:-.055em}
.traffic-kpi--live>strong{color:#34d399}
.traffic-kpi>small{margin-top:8px;color:var(--muted-2);font-size:.76rem;line-height:1.35;font-weight:750}

.traffic-chart-card{padding:22px;margin-bottom:18px}
.traffic-chart-head{align-items:flex-start;gap:20px}
.traffic-chart-head h2{margin-top:3px}
.traffic-chart-legend{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.traffic-chart-legend span{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid var(--line-soft);border-radius:999px;color:var(--muted);background:var(--surface-2);font-size:.76rem;font-weight:850}
.traffic-legend-dot{display:block;width:8px;height:8px;border-radius:999px}
.traffic-legend-dot--active{background:#f43f5e;box-shadow:0 0 0 4px rgba(244,63,94,.12)}
.traffic-legend-dot--auth{background:#38bdf8;box-shadow:0 0 0 4px rgba(56,189,248,.10)}
.traffic-legend-dot--views{background:#a78bfa;box-shadow:0 0 0 4px rgba(167,139,250,.10)}
.traffic-chart-wrap{position:relative;min-height:300px;margin-top:14px;padding:10px 4px 0;border:1px solid var(--line-soft);border-radius:18px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-2) 76%,transparent),color-mix(in srgb,var(--surface) 65%,transparent));overflow:hidden}
.traffic-chart-wrap canvas{display:block;max-width:100%}
.traffic-chart-empty{position:absolute;inset:0;display:grid;place-items:center;padding:30px;color:var(--muted);font-weight:800;text-align:center}
.traffic-chart-foot{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px;color:var(--muted);font-size:.78rem}
.traffic-chart-foot span{padding:7px 10px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line-soft)}
.traffic-chart-foot strong{color:var(--text)}

.traffic-layout-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(310px,.8fr);gap:16px;align-items:start;margin-bottom:18px}
.traffic-live-card{padding:20px}
.traffic-live-pill{display:inline-flex!important;align-items:center;gap:7px}
.traffic-live-pill i{width:8px;height:8px;border-radius:999px;background:#34d399;box-shadow:0 0 0 4px rgba(52,211,153,.12)}
.traffic-live-list{display:grid;gap:8px;margin-top:12px}
.traffic-live-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--line-soft);border-radius:16px;background:color-mix(in srgb,var(--surface-2) 68%,transparent)}
.traffic-live-avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:rgba(148,163,184,.10);border:1px solid var(--line-soft);color:var(--muted);font-size:1.25rem;font-weight:950}
.traffic-live-avatar.is-auth{color:#fff;background:linear-gradient(135deg,#e11d48,#7f1d3a);border-color:rgba(244,63,94,.30)}
.traffic-live-main{min-width:0}
.traffic-live-title{display:flex;align-items:center;gap:7px;min-width:0;flex-wrap:wrap}
.traffic-live-title strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.traffic-live-title .pill{padding:4px 7px;font-size:.62rem}
.traffic-role{color:var(--muted);font-size:.69rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.traffic-live-main small{display:block;margin-top:3px;color:var(--muted);font-size:.73rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.traffic-live-time{text-align:right;white-space:nowrap}
.traffic-live-time strong,.traffic-live-time small{display:block}
.traffic-live-time strong{font-size:.8rem;color:#34d399}
.traffic-live-time small{margin-top:3px;color:var(--muted);font-size:.69rem}

.traffic-side-stack{display:grid;gap:16px}
.traffic-ranking-card{padding:18px}
.traffic-ranking-list{display:grid;gap:7px;margin-top:10px}
.traffic-ranking-list article{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 10px;border-radius:13px;border:1px solid var(--line-soft);background:color-mix(in srgb,var(--surface-2) 60%,transparent)}
.traffic-ranking-list--compact article{grid-template-columns:minmax(0,1fr) auto}
.traffic-rank{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:rgba(225,29,72,.11);color:#fb7185;font-size:.72rem;font-weight:950}
.traffic-ranking-list strong,.traffic-ranking-list small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.traffic-ranking-list strong{font-size:.82rem}.traffic-ranking-list small{margin-top:2px;color:var(--muted);font-size:.69rem}.traffic-ranking-list b{font-size:.86rem}

.traffic-referrer-card{padding:20px}
.traffic-referrer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:10px}
.traffic-referrer-grid article{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;border:1px solid var(--line-soft);border-radius:13px;background:var(--surface-2)}
.traffic-referrer-grid span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:.76rem;font-weight:800}.traffic-referrer-grid strong{font-size:1rem}

body.admin-surface[data-theme="light"] .traffic-kpi,
body.admin-surface[data-theme="light"] .traffic-chart-card,
body.admin-surface[data-theme="light"] .traffic-live-card,
body.admin-surface[data-theme="light"] .traffic-ranking-card,
body.admin-surface[data-theme="light"] .traffic-referrer-card{background:#fff;border-color:rgba(148,163,184,.24);box-shadow:0 12px 32px rgba(148,163,184,.11)}
body.admin-surface[data-theme="light"] .traffic-chart-wrap{background:linear-gradient(180deg,#f8fafc,#fff);border-color:rgba(148,163,184,.22)}
body.admin-surface[data-theme="light"] .traffic-live-row,
body.admin-surface[data-theme="light"] .traffic-ranking-list article{background:#f8fafc;border-color:rgba(148,163,184,.20)}

@media (max-width:1500px){
  body.admin-surface .admin-stat-grid--overview{grid-template-columns:repeat(3,minmax(0,1fr))}
  .traffic-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .traffic-referrer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:1120px){
  body.admin-surface .admin-command-nav--v1382 .admin-command-nav__label{display:none}
  .traffic-layout-grid{grid-template-columns:1fr}
  .traffic-side-stack{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-traffic-hero{align-items:flex-start}
}
@media (max-width:760px){
  .traffic-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .traffic-kpi{min-height:110px;padding:14px}.traffic-kpi>strong{font-size:2rem}
  .traffic-chart-card,.traffic-live-card,.traffic-ranking-card,.traffic-referrer-card{padding:15px}
  .traffic-chart-head{display:grid}.traffic-chart-legend{justify-content:flex-start}
  .traffic-live-row{grid-template-columns:38px minmax(0,1fr);align-items:start}.traffic-live-avatar{width:38px;height:38px}.traffic-live-time{grid-column:2;text-align:left;display:flex;gap:8px;align-items:center}
  .traffic-side-stack{grid-template-columns:1fr}
  .traffic-referrer-grid{grid-template-columns:1fr}
  .admin-traffic-range{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.admin-traffic-range .btn{min-width:0;width:100%}
}
@media (max-width:430px){.traffic-kpi-grid{grid-template-columns:1fr}.traffic-kpi{min-height:96px}.traffic-chart-legend span{font-size:.7rem}.traffic-live-main small{white-space:normal}}

/* admin-v1383.css */
/* Retter-Portal v1.3.83 – Admin-Navigation ohne abgeschnittene Gruppen */
body.admin-surface .admin-command-nav--v1382{
  display:grid;
  grid-template-columns:minmax(210px,.8fr) minmax(360px,1.35fr) minmax(410px,1.45fr) minmax(330px,1.15fr);
  align-items:stretch;
  gap:10px;
  width:100%;
  padding:10px;
  overflow:visible;
  scrollbar-width:auto;
}
body.admin-surface .admin-command-nav--v1382 .admin-command-nav__group{
  display:flex;
  flex-wrap:wrap;
  align-content:center;
  align-items:center;
  gap:6px;
  min-width:0;
  padding:7px 8px;
  border-radius:14px;
}
body.admin-surface .admin-command-nav--v1382 .admin-command-nav__label{
  flex:0 0 100%;
  width:100%;
  padding:0 5px 2px;
  line-height:1.2;
  white-space:nowrap;
}
body.admin-surface .admin-command-nav--v1382 a{
  flex:0 1 auto;
  min-width:0;
  min-height:36px;
  padding:7px 10px;
}
body.admin-surface .admin-command-nav--v1382 a span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.admin-surface .admin-command-nav--v1382 .admin-command-nav__group--primary a{flex:1 1 auto;justify-content:center}

@media (max-width:1650px){
  body.admin-surface .admin-command-nav--v1382{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  body.admin-surface .admin-command-nav--v1382 .admin-command-nav__group{min-height:82px}
}
@media (max-width:1120px){
  body.admin-surface .admin-command-nav--v1382{
    grid-template-columns:1fr;
    gap:8px;
  }
  body.admin-surface .admin-command-nav--v1382 .admin-command-nav__group{min-height:0}
  body.admin-surface .admin-command-nav--v1382 .admin-command-nav__label{display:block}
}
@media (max-width:700px){
  body.admin-surface .admin-command-nav--v1382{
    display:flex;
    gap:8px;
    overflow-x:auto;
    overflow-y:hidden;
    padding:8px;
    scroll-snap-type:x proximity;
  }
  body.admin-surface .admin-command-nav--v1382 .admin-command-nav__group{
    flex:0 0 auto;
    flex-wrap:nowrap;
    min-width:max-content;
    padding:5px;
    scroll-snap-align:start;
  }
  body.admin-surface .admin-command-nav--v1382 .admin-command-nav__label{display:none}
  body.admin-surface .admin-command-nav--v1382 a{flex:0 0 auto}
}

/* admin-v1385.css */
/* Retter-Portal v1.3.85 – Traffic-Details, interaktive Zeitachse und Organisations-Onboarding */

/* Traffic: detailliertere Live-Besucher */
body.admin-surface .traffic-live-row--detail{
  display:block;
  padding:0;
  overflow:hidden;
}
body.admin-surface .traffic-live-row--detail>summary{
  list-style:none;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:12px;
  cursor:pointer;
  user-select:none;
}
body.admin-surface .traffic-live-row--detail>summary::-webkit-details-marker{display:none}
body.admin-surface .traffic-live-row--detail[open]>summary{
  border-bottom:1px solid var(--line-soft);
  background:color-mix(in srgb,var(--surface-2) 78%,transparent);
}
body.admin-surface .traffic-detail-caret{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:.9rem;
  transition:transform .18s ease;
}
body.admin-surface .traffic-live-row--detail[open] .traffic-detail-caret{transform:rotate(180deg)}
body.admin-surface .traffic-person-detail-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  padding:12px;
}
body.admin-surface .traffic-person-detail-grid article{
  min-width:0;
  padding:11px 12px;
  border:1px solid var(--line-soft);
  border-radius:13px;
  background:color-mix(in srgb,var(--surface-2) 60%,transparent);
}
body.admin-surface .traffic-person-detail-grid span,
body.admin-surface .traffic-person-detail-grid strong,
body.admin-surface .traffic-person-detail-grid small{display:block;min-width:0}
body.admin-surface .traffic-person-detail-grid span{
  color:var(--muted-2);
  font-size:.61rem;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}
body.admin-surface .traffic-person-detail-grid strong{
  margin-top:5px;
  color:var(--text);
  font-size:.82rem;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.admin-surface .traffic-person-detail-grid small{
  margin-top:3px;
  color:var(--muted);
  font-size:.69rem;
  line-height:1.35;
  overflow-wrap:anywhere;
}
body.admin-surface .traffic-chart-wrap{position:relative}
body.admin-surface .traffic-chart-tooltip{
  position:absolute;
  z-index:8;
  min-width:190px;
  max-width:240px;
  padding:11px 12px;
  border:1px solid color-mix(in srgb,var(--line-soft) 86%,transparent);
  border-radius:14px;
  background:color-mix(in srgb,var(--surface) 94%,transparent);
  box-shadow:0 18px 40px rgba(2,6,23,.28);
  backdrop-filter:blur(14px);
  pointer-events:none;
}
body.admin-surface .traffic-chart-tooltip[hidden]{display:none!important}
body.admin-surface .traffic-chart-tooltip strong{
  display:block;
  margin-bottom:7px;
  color:var(--text);
  font-size:.78rem;
}
body.admin-surface .traffic-chart-tooltip span{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:3px 0;
  color:var(--muted);
  font-size:.7rem;
}
body.admin-surface .traffic-chart-tooltip b{font-weight:750}
body.admin-surface .traffic-chart-tooltip em{color:var(--text);font-style:normal;font-weight:900}
body.admin-surface[data-theme="light"] .traffic-chart-tooltip{
  background:rgba(255,255,255,.96);
  border-color:rgba(148,163,184,.28);
  box-shadow:0 18px 38px rgba(100,116,139,.18);
}
body.admin-surface[data-theme="light"] .traffic-live-row--detail[open]>summary,
body.admin-surface[data-theme="light"] .traffic-person-detail-grid article{background:#f8fafc}

/* Organisations-Onboarding */
body.admin-surface .onboarding-hero{align-items:flex-end}
body.admin-surface .onboarding-org-picker{min-width:min(390px,100%)}
body.admin-surface .onboarding-org-picker label{display:grid;gap:6px;color:var(--muted);font-size:.72rem;font-weight:850}
body.admin-surface .onboarding-summary-strip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-bottom:16px;
}
body.admin-surface .onboarding-summary-strip article{
  min-height:105px;
  padding:15px 16px;
  border:1px solid var(--line-soft);
  border-radius:18px;
  background:var(--surface);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}
body.admin-surface .onboarding-summary-strip span,
body.admin-surface .onboarding-summary-strip strong,
body.admin-surface .onboarding-summary-strip small{display:block}
body.admin-surface .onboarding-summary-strip span{color:var(--muted-2);font-size:.64rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
body.admin-surface .onboarding-summary-strip strong{margin-top:8px;color:var(--text);font-size:1.35rem}
body.admin-surface .onboarding-summary-strip small{margin-top:6px;color:var(--muted);font-size:.72rem}
body.admin-surface .onboarding-wizard{padding:20px}
body.admin-surface .onboarding-steps{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:7px;
  margin-bottom:22px;
  padding:7px;
  border:1px solid var(--line-soft);
  border-radius:18px;
  background:color-mix(in srgb,var(--surface-2) 65%,transparent);
}
body.admin-surface .onboarding-steps button{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-width:0;
  min-height:44px;
  padding:8px 10px;
  border:1px solid transparent;
  border-radius:13px;
  background:transparent;
  color:var(--muted);
  cursor:pointer;
}
body.admin-surface .onboarding-steps button span{
  display:grid;
  place-items:center;
  flex:0 0 24px;
  width:24px;height:24px;
  border-radius:999px;
  background:rgba(148,163,184,.12);
  font-size:.7rem;
  font-weight:950;
}
body.admin-surface .onboarding-steps button strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem}
body.admin-surface .onboarding-steps button.is-active{
  color:#fff;
  border-color:rgba(244,63,94,.34);
  background:linear-gradient(135deg,rgba(225,29,72,.88),rgba(190,24,93,.72));
  box-shadow:0 10px 24px rgba(225,29,72,.16);
}
body.admin-surface .onboarding-steps button.is-active span{background:rgba(255,255,255,.16)}
body.admin-surface .onboarding-step{display:none;min-height:360px}
body.admin-surface .onboarding-step.is-active{display:block}
body.admin-surface .onboarding-step-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:18px;
  padding-bottom:14px;
  border-bottom:1px solid var(--line-soft);
}
body.admin-surface .onboarding-step-head h2{margin:4px 0 4px}
body.admin-surface .onboarding-repeat-row{
  display:grid;
  grid-template-columns:minmax(220px,1fr) minmax(120px,.45fr) auto;
  gap:8px;
  margin-bottom:8px;
}
body.admin-surface .onboarding-existing-pill{align-self:center;justify-self:end}
body.admin-surface .onboarding-member-row{
  display:grid;
  grid-template-columns:120px minmax(140px,.8fr) minmax(150px,.9fr) minmax(170px,1fr) minmax(150px,.8fr) auto;
  gap:7px;
  margin-bottom:8px;
  padding:9px;
  border:1px solid var(--line-soft);
  border-radius:15px;
  background:color-mix(in srgb,var(--surface-2) 58%,transparent);
}
body.admin-surface .onboarding-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
body.admin-surface .onboarding-role-option{
  display:flex;
  align-items:flex-start;
  gap:11px;
  padding:14px;
  border:1px solid var(--line-soft);
  border-radius:16px;
  background:color-mix(in srgb,var(--surface-2) 58%,transparent);
  cursor:pointer;
}
body.admin-surface .onboarding-role-option input{margin-top:3px}
body.admin-surface .onboarding-role-option span{display:grid;gap:4px}
body.admin-surface .onboarding-role-option strong{color:var(--text)}
body.admin-surface .onboarding-role-option small{color:var(--muted);line-height:1.45}
body.admin-surface .onboarding-finish-box{
  margin-top:16px;
  padding:16px;
  border:1px solid rgba(52,211,153,.25);
  border-radius:16px;
  background:rgba(16,185,129,.07);
}
body.admin-surface .onboarding-finish-box strong{color:#34d399}
body.admin-surface .onboarding-finish-box p{margin:5px 0 0;color:var(--muted)}
body.admin-surface .onboarding-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:9px;
  margin-top:20px;
  padding-top:14px;
  border-top:1px solid var(--line-soft);
}
body.admin-surface .onboarding-actions>div{margin-right:auto;color:var(--muted);font-size:.73rem;font-weight:850}
body.admin-surface .onboarding-submit[hidden]{display:none!important}
body.admin-surface[data-theme="light"] .onboarding-summary-strip article,
body.admin-surface[data-theme="light"] .onboarding-wizard{background:#fff;border-color:rgba(148,163,184,.24)}
body.admin-surface[data-theme="light"] .onboarding-steps,
body.admin-surface[data-theme="light"] .onboarding-member-row,
body.admin-surface[data-theme="light"] .onboarding-role-option{background:#f8fafc;border-color:rgba(148,163,184,.22)}

@media (max-width:1180px){
  body.admin-surface .traffic-person-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.admin-surface .onboarding-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
  body.admin-surface .onboarding-member-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.admin-surface .onboarding-member-row .btn{grid-column:2;justify-self:end}
}
@media (max-width:800px){
  body.admin-surface .onboarding-hero{align-items:stretch}
  body.admin-surface .onboarding-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.admin-surface .onboarding-role-grid{grid-template-columns:1fr}
  body.admin-surface .onboarding-repeat-row{grid-template-columns:1fr 1fr}body.admin-surface .onboarding-repeat-row .btn{grid-column:2;justify-self:end}
}
@media (max-width:620px){
  body.admin-surface .traffic-live-row--detail>summary{grid-template-columns:38px minmax(0,1fr);align-items:start}
  body.admin-surface .traffic-live-row--detail .traffic-live-time{grid-column:2;display:flex;align-items:center;gap:8px;text-align:left}
  body.admin-surface .traffic-person-detail-grid{grid-template-columns:1fr}
  body.admin-surface .traffic-chart-tooltip{min-width:172px;max-width:calc(100% - 16px)}
  body.admin-surface .onboarding-summary-strip{grid-template-columns:1fr 1fr}
  body.admin-surface .onboarding-steps{display:flex;overflow-x:auto;scrollbar-width:none}
  body.admin-surface .onboarding-steps::-webkit-scrollbar{display:none}
  body.admin-surface .onboarding-steps button{flex:0 0 auto;min-width:132px}
  body.admin-surface .onboarding-wizard{padding:15px}
  body.admin-surface .onboarding-step{min-height:0}
  body.admin-surface .onboarding-repeat-row,body.admin-surface .onboarding-member-row{grid-template-columns:1fr}
  body.admin-surface .onboarding-repeat-row .btn,body.admin-surface .onboarding-member-row .btn{grid-column:1;justify-self:stretch}
  body.admin-surface .onboarding-actions{display:grid;grid-template-columns:1fr 1fr}
  body.admin-surface .onboarding-actions>div{grid-column:1/-1;grid-row:1;text-align:center;margin:0}
  body.admin-surface .onboarding-actions .btn{width:100%}
}

/* admin-v1386.css */
/* Retter-Portal v1.3.86 – Admin UX refresh, stabile Smooth-Navigation und Traffic-Polish */

/* Admin-Navigation: eine ruhige, echte Werkzeugleiste statt vier schwerer Kästen. */
body.admin-surface .admin-command-nav--v1386{
  position:sticky;
  top:72px;
  z-index:12;
  display:grid;
  grid-template-columns:max-content minmax(0,1.35fr) minmax(0,1.1fr) minmax(0,1fr);
  align-items:stretch;
  gap:0;
  width:100%;
  margin:0 0 18px;
  padding:7px 9px;
  overflow-x:auto;
  overflow-y:hidden;
  border:1px solid color-mix(in srgb,var(--line) 88%,transparent);
  border-radius:19px;
  background:color-mix(in srgb,var(--surface) 94%,transparent);
  box-shadow:0 14px 34px rgba(2,6,23,.14),inset 0 1px 0 rgba(255,255,255,.035);
  backdrop-filter:blur(20px) saturate(1.1);
  scrollbar-width:none;
}
body.admin-surface .admin-command-nav--v1386::-webkit-scrollbar{display:none}
body.admin-surface .admin-command-nav--v1386 .admin-command-nav__group{
  display:flex;
  flex-wrap:wrap;
  align-content:center;
  align-items:center;
  gap:5px;
  min-width:max-content;
  min-height:58px;
  padding:5px 11px;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.admin-surface .admin-command-nav--v1386 .admin-command-nav__group+.admin-command-nav__group{
  border-left:1px solid color-mix(in srgb,var(--line-soft) 86%,transparent)!important;
}
body.admin-surface .admin-command-nav--v1386 .admin-command-nav__label{
  flex:0 0 100%;
  width:100%;
  padding:0 5px 2px;
  color:var(--muted-2);
  font-size:.57rem;
  line-height:1.15;
  font-weight:950;
  letter-spacing:.12em;
  text-transform:uppercase;
  white-space:nowrap;
}
body.admin-surface .admin-command-nav--v1386 a{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  flex:0 0 auto;
  min-width:0;
  min-height:35px;
  padding:7px 10px;
  border:1px solid transparent;
  border-radius:11px;
  background:transparent;
  color:var(--muted);
  font-size:.75rem;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
  box-shadow:none;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease;
}
body.admin-surface .admin-command-nav--v1386 a:hover{
  color:var(--text);
  border-color:var(--line-soft);
  background:color-mix(in srgb,var(--surface-2) 75%,transparent);
}
body.admin-surface .admin-command-nav--v1386 a.is-active{
  color:#fff;
  border-color:rgba(244,63,94,.42);
  background:linear-gradient(135deg,#e11d48,#be123c);
  box-shadow:0 8px 18px rgba(225,29,72,.20),inset 0 1px 0 rgba(255,255,255,.16);
}
body.admin-surface .admin-command-nav--v1386 a.is-active:hover{transform:none}
body.admin-surface .admin-command-nav--v1386 a span{overflow:visible;text-overflow:clip}
body.admin-surface .admin-command-nav--v1386 .admin-command-nav__group--primary a{flex:0 0 auto}
body.admin-surface .admin-command-nav--v1386 .admin-nav-live-dot{width:6px;height:6px;margin-left:0}

/* Allgemeine Admin-Hierarchie: weniger „riesige Flächen“, mehr erkennbare Ebenen. */
body.admin-surface .content{width:min(1740px,100%);padding-top:18px}
body.admin-surface .admin-page-hero{
  margin-bottom:16px;
  padding:24px 26px;
  border-radius:23px;
  background:
    radial-gradient(circle at 92% 0,rgba(59,130,246,.10),transparent 27rem),
    radial-gradient(circle at 0 100%,rgba(225,29,72,.075),transparent 24rem),
    var(--surface);
  box-shadow:0 15px 35px rgba(2,6,23,.12),inset 0 1px 0 rgba(255,255,255,.03);
}
body.admin-surface .admin-page-hero h1{font-size:clamp(2rem,3.15vw,3.45rem);line-height:.98;letter-spacing:-.055em}
body.admin-surface .admin-page-hero p.muted{margin-top:10px;font-size:.94rem;line-height:1.55}
body.admin-surface .admin-page-hero__actions{gap:8px}
body.admin-surface .admin-page-hero__actions .btn{min-height:40px;padding:8px 13px}

body.admin-surface .card,
body.admin-surface .table-wrap,
body.admin-surface .toolbar{
  border-color:color-mix(in srgb,var(--line) 88%,transparent);
  box-shadow:0 11px 28px rgba(2,6,23,.09),inset 0 1px 0 rgba(255,255,255,.025);
}
body.admin-surface .card{border-radius:20px}
body.admin-surface .card-head{gap:16px}
body.admin-surface .card-head h2{font-size:1.08rem}
body.admin-surface .card-head p.muted{margin-top:4px;font-size:.79rem;line-height:1.45}

/* Übersicht: Karten wirken wie eindeutige Aktionen statt gleichförmige Blöcke. */
body.admin-surface .admin-stat-grid--overview{gap:10px;margin-bottom:16px}
body.admin-surface .admin-stat-grid--overview article{
  min-height:105px;
  padding:15px 17px;
  border-radius:17px;
  box-shadow:0 9px 22px rgba(2,6,23,.08);
}
body.admin-surface .admin-stat-grid--overview strong{font-size:2.05rem}
body.admin-surface .admin-hub-grid{gap:10px;margin-bottom:18px}
body.admin-surface .admin-hub-card{
  min-height:116px;
  padding:15px;
  border-radius:18px;
  box-shadow:0 9px 22px rgba(2,6,23,.075);
}
body.admin-surface .admin-hub-card:hover{transform:translateY(-1px);box-shadow:0 14px 30px rgba(2,6,23,.12)}
body.admin-surface .admin-hub-card__icon{width:44px;height:44px;border-radius:14px}
body.admin-surface .admin-hub-card p{font-size:.81rem;line-height:1.43}

/* Traffic: ALLE KPIs benutzen denselben Kartenstil – vorher war nur „Jetzt online“ markiert. */
body.admin-surface .traffic-kpi-grid{
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
  margin-bottom:16px;
}
body.admin-surface .traffic-kpi{
  min-height:116px;
  padding:16px 17px;
  border-radius:18px;
  border:1px solid color-mix(in srgb,var(--line) 88%,transparent);
  background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 98%,transparent),color-mix(in srgb,var(--surface-2) 72%,transparent));
  box-shadow:0 10px 24px rgba(2,6,23,.08),inset 0 1px 0 rgba(255,255,255,.035);
}
body.admin-surface .traffic-kpi::before{width:3px;opacity:.88}
body.admin-surface .traffic-kpi>span{font-size:.64rem;letter-spacing:.105em}
body.admin-surface .traffic-kpi>strong{font-size:2.2rem;margin-top:7px}
body.admin-surface .traffic-kpi>small{font-size:.7rem;line-height:1.35}
body.admin-surface .traffic-chart-card{padding:19px}
body.admin-surface .traffic-chart-wrap{border-radius:16px}
body.admin-surface .traffic-chart-tooltip{
  border-radius:13px;
  box-shadow:0 18px 45px rgba(2,6,23,.34);
}
body.admin-surface .traffic-live-row--detail{
  border-radius:14px;
  transition:border-color .16s ease,background .16s ease;
}
body.admin-surface .traffic-live-row--detail:hover{border-color:color-mix(in srgb,var(--admin-accent) 28%,var(--line-soft))}
body.admin-surface .traffic-person-detail-grid article{border-radius:12px}

/* Tabellen / Formulare bekommen im Adminbereich konsistentere Abstände. */
body.admin-surface .admin-filter-card,
body.admin-surface .admin-create-account,
body.admin-surface .admin-workflow-card{border-radius:19px}
body.admin-surface .admin-account-card{border-radius:19px}
body.admin-surface .admin-account-card__head{padding:16px}
body.admin-surface .admin-account-editor>summary{padding:12px 16px}
body.admin-surface .admin-account-editor__body{padding:16px;gap:11px}
body.admin-surface .admin-account-editor__section{padding:15px;border-radius:15px}
body.admin-surface .table-wrap{border-radius:18px}
body.admin-surface .toolbar{border-radius:18px}
body.admin-surface table thead th{font-size:.68rem;letter-spacing:.075em}

/* Lightmode behält exakt dieselbe Geometrie. */
body.admin-surface[data-theme="light"] .admin-command-nav--v1386{
  background:rgba(255,255,255,.95);
  border-color:rgba(148,163,184,.24);
  box-shadow:0 13px 32px rgba(100,116,139,.13);
}
body.admin-surface[data-theme="light"] .admin-command-nav--v1386 .admin-command-nav__group+.admin-command-nav__group{
  border-left-color:rgba(148,163,184,.22)!important;
}
body.admin-surface[data-theme="light"] .admin-command-nav--v1386 a:hover{background:#f1f5f9;border-color:rgba(148,163,184,.24)}
body.admin-surface[data-theme="light"] .traffic-kpi{
  background:linear-gradient(180deg,#fff,#f8fafc);
  border-color:rgba(148,163,184,.24);
  box-shadow:0 10px 24px rgba(100,116,139,.10);
}

@media (max-width:1600px){
  body.admin-surface .admin-command-nav--v1386{
    display:flex;
    gap:0;
    overflow-x:auto;
  }
  body.admin-surface .admin-command-nav--v1386 .admin-command-nav__group{flex:0 0 auto}
  body.admin-surface .traffic-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:1120px){
  body.admin-surface .admin-command-nav--v1386{top:104px}
  body.admin-surface .admin-command-nav--v1386 .admin-command-nav__label{display:block}
  body.admin-surface .admin-page-hero{padding:20px}
}
@media (max-width:760px){
  body.admin-surface .content{padding:13px!important}
  body.admin-surface .admin-command-nav--v1386{
    position:relative;
    top:auto;
    margin-bottom:12px;
    padding:6px;
    border-radius:16px;
    scroll-snap-type:x proximity;
  }
  body.admin-surface .admin-command-nav--v1386 .admin-command-nav__group{
    min-height:44px;
    padding:4px 7px;
    scroll-snap-align:start;
  }
  body.admin-surface .admin-command-nav--v1386 .admin-command-nav__label{display:none}
  body.admin-surface .admin-command-nav--v1386 a{min-height:34px;padding:7px 9px;font-size:.72rem}
  body.admin-surface .admin-page-hero{padding:18px;border-radius:19px}
  body.admin-surface .traffic-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  body.admin-surface .traffic-kpi{min-height:102px;padding:13px 14px}
  body.admin-surface .traffic-kpi>strong{font-size:1.9rem}
  body.admin-surface .traffic-chart-card{padding:14px}
}
@media (max-width:430px){
  body.admin-surface .traffic-kpi-grid{grid-template-columns:1fr 1fr}
  body.admin-surface .traffic-kpi{min-height:96px}
  body.admin-surface .traffic-kpi>small{font-size:.66rem}
}

/* Admin-Startseite in klaren Arbeitsbereichen */
body.admin-surface .admin-overview-groups{display:grid;gap:14px;margin-bottom:18px}
body.admin-surface .admin-overview-group{
  padding:15px;
  border:1px solid color-mix(in srgb,var(--line) 86%,transparent);
  border-radius:20px;
  background:color-mix(in srgb,var(--surface) 78%,transparent);
  box-shadow:0 10px 26px rgba(2,6,23,.075),inset 0 1px 0 rgba(255,255,255,.025);
}
body.admin-surface .admin-overview-group__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  padding:1px 3px 12px;
}
body.admin-surface .admin-overview-group__head>div>span{
  display:block;
  color:#fb7185;
  font-size:.62rem;
  font-weight:950;
  letter-spacing:.11em;
  text-transform:uppercase;
}
body.admin-surface .admin-overview-group__head h2{margin-top:4px;font-size:1.05rem;letter-spacing:-.025em}
body.admin-surface .admin-overview-group__head>small{color:var(--muted);font-size:.72rem;font-weight:800;white-space:nowrap}
body.admin-surface .admin-hub-grid--grouped{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
  margin:0;
}
body.admin-surface .admin-hub-grid--grouped .admin-hub-card{
  grid-template-columns:42px minmax(0,1fr);
  grid-template-rows:auto auto;
  min-height:108px;
  padding:14px;
  background:color-mix(in srgb,var(--surface-2) 54%,transparent);
}
body.admin-surface .admin-hub-grid--grouped .admin-hub-card__icon{grid-row:1/-1;width:42px;height:42px;border-radius:13px}
body.admin-surface .admin-hub-grid--grouped .admin-hub-card>strong{grid-column:2;justify-self:start;font-size:.73rem}
body.admin-surface .admin-hub-grid--grouped .admin-hub-card--featured{border-color:rgba(244,63,94,.26);background:linear-gradient(135deg,rgba(225,29,72,.065),color-mix(in srgb,var(--surface-2) 54%,transparent))}
body.admin-surface[data-theme="light"] .admin-overview-group{background:rgba(255,255,255,.88);border-color:rgba(148,163,184,.22);box-shadow:0 10px 25px rgba(100,116,139,.09)}
body.admin-surface[data-theme="light"] .admin-hub-grid--grouped .admin-hub-card{background:#f8fafc}
@media (max-width:1450px){body.admin-surface .admin-hub-grid--grouped{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){
  body.admin-surface .admin-overview-group{padding:11px;border-radius:17px}
  body.admin-surface .admin-overview-group__head{align-items:flex-start;flex-direction:column;gap:4px;padding-bottom:10px}
  body.admin-surface .admin-overview-group__head>small{white-space:normal}
  body.admin-surface .admin-hub-grid--grouped{grid-template-columns:1fr}
}

/* admin-v1387.css */
/* Retter-Portal v1.3.88 – Admin-Navigation: volle Breite ohne abgeschnittene System-Aktionen */

/*
 * Desktop: Die vier Admin-Gruppen teilen sich die tatsächlich verfügbare
 * Inhaltsbreite. Buttons dürfen innerhalb ihrer Gruppe umbrechen, die Gruppe
 * selbst darf den Balken aber nicht mehr über ihre Grid-Spalte hinausziehen.
 */
body.admin-surface .admin-command-nav--v1386{
  grid-template-columns:minmax(210px,.85fr) minmax(400px,1.5fr) minmax(370px,1.35fr) minmax(430px,1.55fr);
  overflow-x:hidden;
}
body.admin-surface .admin-command-nav--v1386 .admin-command-nav__group{
  min-width:0;
  width:100%;
  max-width:100%;
  overflow:visible;
}
body.admin-surface .admin-command-nav--v1386 .admin-command-nav__group a{
  max-width:100%;
}

/* Bei etwas weniger Platz bleibt alles sichtbar und wird innerhalb der
 * jeweiligen Gruppe sauber in eine zweite Button-Zeile umgebrochen. */
@media (max-width:1840px){
  body.admin-surface .admin-command-nav--v1386{
    display:grid;
    grid-template-columns:minmax(180px,.8fr) minmax(330px,1.45fr) minmax(310px,1.25fr) minmax(360px,1.5fr);
    overflow-x:hidden;
  }
  body.admin-surface .admin-command-nav--v1386 .admin-command-nav__group{
    flex:initial;
    min-width:0;
  }
}

@media (max-width:1380px){
  body.admin-surface .admin-command-nav--v1386{
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:stretch;
    row-gap:0;
  }
  body.admin-surface .admin-command-nav--v1386 .admin-command-nav__group:nth-child(3){
    border-left:0!important;
    border-top:1px solid color-mix(in srgb,var(--line-soft) 86%,transparent)!important;
  }
  body.admin-surface .admin-command-nav--v1386 .admin-command-nav__group:nth-child(4){
    border-top:1px solid color-mix(in srgb,var(--line-soft) 86%,transparent)!important;
  }
}

/* Smartphones bleiben bewusst horizontal bedienbar; hier ist eine einzelne
 * kompakte Scrollleiste intuitiver als vier hohe Navigationsgruppen. */
@media (max-width:760px){
  body.admin-surface .admin-command-nav--v1386{
    display:flex;
    overflow-x:auto;
    overflow-y:hidden;
  }
  body.admin-surface .admin-command-nav--v1386 .admin-command-nav__group{
    flex:0 0 auto;
    width:auto;
    max-width:none;
    min-width:max-content;
  }
  body.admin-surface .admin-command-nav--v1386 .admin-command-nav__group:nth-child(3),
  body.admin-surface .admin-command-nav--v1386 .admin-command-nav__group:nth-child(4){
    border-top:0!important;
  }
}

/* admin-v1401.css */
/* Retter-Portal v1.4.01
   Admin-Navigation sitzt auf Desktop etwas höher im vorhandenen Freiraum.
   Der Seiteninhalt bleibt an seiner bisherigen Position, sodass Überschrift
   und Navigation sich nicht mehr optisch berühren/überlagern. */

@media (min-width:1121px){
  body.admin-surface .admin-command-nav--v1386{
    margin-top:-28px!important;
    margin-bottom:46px!important;
  }
}

/* Auf mittleren Geräten nur leicht anheben, damit die kompaktere Header-
   Geometrie nicht unnötig eng wird. */
@media (min-width:761px) and (max-width:1120px){
  body.admin-surface .admin-command-nav--v1386{
    margin-top:-12px!important;
    margin-bottom:30px!important;
  }
}

/* Mobile bleibt bewusst unverändert: dort ist die horizontale Admin-Leiste
   bereits kompakt und soll keinen negativen Versatz bekommen. */
@media (max-width:760px){
  body.admin-surface .admin-command-nav--v1386{
    margin-top:0!important;
    margin-bottom:12px!important;
  }
}

/* admin-v1402.css */
/* Retter-Portal v1.4.02
   Admin-Navigation auf großen Ansichten deutlich weiter nach oben setzen,
   ohne den eigentlichen Seiteninhalt mit nach oben zu ziehen.
   So nutzt die Leiste den freien Bereich unter dem Portal-Header und erhält
   gleichzeitig wieder klaren Abstand zu Seitenüberschrift/Content. */

@media (min-width:1121px){
  body.admin-surface .admin-command-nav--v1386{
    margin-top:-72px!important;
    margin-bottom:90px!important;
  }
}

/* Tablet nur moderat anheben; dort ist der freie Headerraum geringer. */
@media (min-width:761px) and (max-width:1120px){
  body.admin-surface .admin-command-nav--v1386{
    margin-top:-24px!important;
    margin-bottom:42px!important;
  }
}

/* Mobile unverändert kompakt halten. */
@media (max-width:760px){
  body.admin-surface .admin-command-nav--v1386{
    margin-top:0!important;
    margin-bottom:12px!important;
  }
}

/* ui-fixes-v1388.css */
/* Retter-Portal v1.3.88 · globale Smart-Suche
   Trefferlisten werden als Body-Popover gerendert. Diese Regeln liegen bewusst ganz
   am Ende der CSS-Kaskade, damit ältere Formular-/Kartenregeln die Position nicht
   mehr überschreiben können. */
html body .smart-select-results.smart-select-popover{
  position:fixed!important;
  left:var(--smart-popover-left)!important;
  top:var(--smart-popover-top)!important;
  right:auto!important;
  bottom:auto!important;
  width:var(--smart-popover-width)!important;
  min-width:0!important;
  max-width:calc(100vw - 20px)!important;
  max-height:var(--smart-popover-max-height)!important;
  margin:0!important;
  transform:none!important;
  z-index:2147483646!important;
  box-sizing:border-box!important;
}
html body .smart-select-results.smart-select-popover[data-placement="bottom"],
html body .smart-select-results.smart-select-popover[data-placement="top"]{
  margin:0!important;
  translate:none!important;
}

/* landing-v1389.css */
/* Retter-Portal v1.3.89 · öffentliche Startseite 2K26-Refresh
   Nur .rp26-site / .rp90-site betroffen. Portal-Innenbereich bleibt unverändert. */

.rp26-site{
  --rp26-hot:#ef264c;
  --rp26-hot-2:#c8102e;
  --rp26-blue:#3b82f6;
  --rp26-cyan:#22d3ee;
  --rp26-mint:#2dd4bf;
  --rp26-violet:#8b5cf6;
  --rp26-glow:rgba(239,38,76,.18);
  position:relative;
  isolation:isolate;
}

/* --- Ambient / Bewegung --- */
.rp26-ambient{
  position:fixed;
  inset:0;
  z-index:-2;
  overflow:hidden;
  pointer-events:none;
  opacity:.72;
}
.rp26-ambient i{
  position:absolute;
  display:block;
  width:34vw;
  aspect-ratio:1;
  border-radius:50%;
  filter:blur(100px);
  opacity:.14;
  will-change:transform;
}
.rp26-ambient i:nth-child(1){left:-9vw;top:8vh;background:var(--rp26-hot);animation:rp26FloatA 18s ease-in-out infinite alternate}
.rp26-ambient i:nth-child(2){right:-10vw;top:20vh;background:var(--rp26-blue);animation:rp26FloatB 23s ease-in-out infinite alternate}
.rp26-ambient i:nth-child(3){left:35vw;bottom:-18vw;background:var(--rp26-mint);animation:rp26FloatC 26s ease-in-out infinite alternate}
@keyframes rp26FloatA{to{transform:translate(10vw,12vh) scale(1.12)}}
@keyframes rp26FloatB{to{transform:translate(-12vw,18vh) scale(.88)}}
@keyframes rp26FloatC{to{transform:translate(8vw,-14vh) scale(1.18)}}

/* --- Navigation --- */
.rp26-site .rp90-nav{
  top:12px;
  min-height:68px;
  border-radius:21px;
  border-color:color-mix(in srgb,var(--rp90-line) 82%,transparent);
  background:color-mix(in srgb,var(--surface) 78%,transparent);
  box-shadow:0 18px 55px rgba(2,8,23,.12),inset 0 1px 0 rgba(255,255,255,.035);
  backdrop-filter:blur(26px) saturate(1.35);
  transition:transform .28s ease,background .28s ease,box-shadow .28s ease,border-color .28s ease;
}
.rp26-site .rp90-nav.rp26-nav-scrolled{
  transform:translateY(-2px);
  background:color-mix(in srgb,var(--surface) 90%,transparent);
  box-shadow:0 20px 65px rgba(2,8,23,.19),inset 0 1px 0 rgba(255,255,255,.045);
  border-color:color-mix(in srgb,var(--rp90-line) 92%,transparent);
}
.rp26-site .rp90-brand-mark{
  overflow:hidden;
  background:
    radial-gradient(circle at 28% 22%,color-mix(in srgb,var(--rp26-hot) 12%,transparent),transparent 52%),
    var(--rp90-panel-2);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.rp26-site .rp90-brand-mark::after{
  content:"";
  position:absolute;
  inset:-70% -120%;
  background:linear-gradient(115deg,transparent 44%,rgba(255,255,255,.18) 50%,transparent 56%);
  transform:translateX(-35%);
  animation:rp26BrandSweep 7s ease-in-out infinite;
}
@keyframes rp26BrandSweep{0%,72%{transform:translateX(-36%)}90%,100%{transform:translateX(36%)}}
.rp26-site .rp90-nav-links a{
  position:relative;
  overflow:hidden;
  transition:background .2s ease,color .2s ease,transform .2s ease;
}
.rp26-site .rp90-nav-links a::after{
  content:"";
  position:absolute;
  left:12px;right:12px;bottom:4px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--rp26-hot),var(--rp26-blue));
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .22s ease;
}
.rp26-site .rp90-nav-links a:hover,
.rp26-site .rp90-nav-links a.rp26-active{transform:translateY(-1px);color:var(--rp90-ink)}
.rp26-site .rp90-nav-links a.rp26-active::after{transform:scaleX(1)}
.rp26-site .rp90-nav-cta,
.rp26-site .rp90-hero-actions .btn.primary,
.rp26-site .rp90-cta>.btn.primary{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.rp26-site .rp90-nav-cta::after,
.rp26-site .rp90-hero-actions .btn.primary::after,
.rp26-site .rp90-cta>.btn.primary::after{
  content:"";
  position:absolute;
  inset:-120% -45%;
  z-index:-1;
  background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.28) 48%,transparent 56%);
  transform:translateX(-55%) rotate(5deg);
  transition:transform .65s ease;
}
.rp26-site .rp90-nav-cta:hover::after,
.rp26-site .rp90-hero-actions .btn.primary:hover::after,
.rp26-site .rp90-cta>.btn.primary:hover::after{transform:translateX(55%) rotate(5deg)}

/* --- Glow helper --- */
.rp26-site [data-rp26-glow]{
  --rp26-x:50%;
  --rp26-y:50%;
  position:relative;
}
.rp26-site [data-rp26-glow]::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  border-radius:inherit;
  pointer-events:none;
  opacity:0;
  background:radial-gradient(420px circle at var(--rp26-x) var(--rp26-y),rgba(78,145,255,.11),rgba(239,38,76,.055) 34%,transparent 68%);
  transition:opacity .25s ease;
}
.rp26-site [data-rp26-glow]:hover::after{opacity:1}
.rp26-site [data-rp26-glow]>*{position:relative;z-index:1}

/* --- Hero --- */
.rp26-site .rp90-hero{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-height:min(780px,calc(100vh - 118px));
  align-items:center;
  background:
    linear-gradient(145deg,color-mix(in srgb,var(--surface) 94%,transparent),color-mix(in srgb,var(--surface-2) 91%,transparent));
  border-color:color-mix(in srgb,var(--rp90-line) 88%,transparent);
  box-shadow:0 34px 100px rgba(2,8,23,.15),inset 0 1px 0 rgba(255,255,255,.04);
}
.rp26-site .rp90-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background:
    linear-gradient(rgba(148,163,184,.048) 1px,transparent 1px),
    linear-gradient(90deg,rgba(148,163,184,.048) 1px,transparent 1px),
    radial-gradient(circle at 8% 16%,color-mix(in srgb,var(--rp26-hot) 21%,transparent),transparent 27%),
    radial-gradient(circle at 94% 8%,color-mix(in srgb,var(--rp26-blue) 20%,transparent),transparent 30%),
    radial-gradient(circle at 68% 102%,color-mix(in srgb,var(--rp26-mint) 12%,transparent),transparent 32%);
  background-size:72px 72px,72px 72px,auto,auto,auto;
  mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.92) 72%,transparent 100%);
}
.rp26-site .rp90-hero::after{
  content:"";
  position:absolute;
  z-index:-1;
  width:360px;height:360px;
  right:31%;top:-170px;
  border:1px solid color-mix(in srgb,var(--rp26-blue) 25%,transparent);
  border-radius:50%;
  box-shadow:0 0 0 72px color-mix(in srgb,var(--rp26-blue) 3%,transparent),0 0 0 144px color-mix(in srgb,var(--rp26-hot) 2%,transparent);
  animation:rp26Orbit 18s linear infinite;
}
@keyframes rp26Orbit{to{transform:rotate(360deg)}}
.rp26-hero-pills{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:0 0 18px;
}
.rp26-hero-pills span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:29px;
  padding:5px 10px;
  border:1px solid color-mix(in srgb,var(--rp90-line) 86%,transparent);
  border-radius:999px;
  background:color-mix(in srgb,var(--surface-2) 72%,transparent);
  color:var(--rp90-muted);
  font-size:.69rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  backdrop-filter:blur(12px);
}
.rp26-hero-pills span:first-child{color:var(--rp90-ink)}
.rp26-hero-pills i{
  width:7px;height:7px;border-radius:50%;
  background:#34d399;
  box-shadow:0 0 0 5px rgba(52,211,153,.11),0 0 16px rgba(52,211,153,.48);
  animation:rp26Pulse 1.9s ease-in-out infinite;
}
@keyframes rp26Pulse{50%{transform:scale(.72);opacity:.68}}
.rp26-site .rp90-hero h1{
  max-width:990px;
  text-shadow:0 1px 0 rgba(255,255,255,.025);
}
.rp26-hero-accent{
  position:relative;
  display:inline;
  color:var(--rp90-ink);
  background:linear-gradient(100deg,var(--rp90-ink) 0 36%,#fb7185 65%,#60a5fa 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  background-size:180% 100%;
  animation:rp26TextShift 7s ease-in-out infinite alternate;
}
@keyframes rp26TextShift{to{background-position:100% 50%}}
.rp26-site .rp90-lead{max-width:810px}
.rp26-site .rp90-hero-actions .btn{
  border-radius:15px;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.rp26-site .rp90-hero-actions .btn:hover{transform:translateY(-2px)}
.rp26-site .rp90-hero-actions .btn.primary:hover{box-shadow:0 18px 42px rgba(225,29,72,.22)}
.rp26-live-flow{
  display:flex;
  align-items:center;
  gap:12px;
  width:min(690px,100%);
  min-height:44px;
  margin-top:18px;
  padding:8px 12px;
  border:1px solid color-mix(in srgb,var(--rp90-line) 82%,transparent);
  border-radius:15px;
  background:color-mix(in srgb,var(--surface-2) 66%,transparent);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
  backdrop-filter:blur(12px);
}
.rp26-live-indicator{
  display:inline-flex;
  align-items:center;
  gap:7px;
  flex:0 0 auto;
  color:var(--rp90-ink);
  font-size:.73rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.rp26-live-indicator i{width:8px;height:8px;border-radius:50%;background:var(--rp26-hot);box-shadow:0 0 0 5px rgba(239,38,76,.11),0 0 18px rgba(239,38,76,.42)}
.rp26-live-text{
  min-width:0;
  color:var(--rp90-muted);
  font-size:.84rem;
  font-weight:800;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  transition:opacity .18s ease,transform .18s ease;
}
.rp26-live-text.is-changing{opacity:0;transform:translateY(5px)}
.rp26-site .rp90-assurance>div{
  background:color-mix(in srgb,var(--surface-2) 70%,transparent);
  backdrop-filter:blur(12px);
  transition:transform .22s ease,border-color .22s ease,background .22s ease;
}
.rp26-site .rp90-assurance>div:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--rp26-blue) 24%,var(--rp90-line));background:color-mix(in srgb,var(--surface-2) 85%,transparent)}

/* --- Login / Access --- */
.rp26-site .rp90-login-card,
.rp26-site .rp90-access-summary{
  background:color-mix(in srgb,var(--surface) 82%,transparent);
  border-color:color-mix(in srgb,var(--rp90-line) 88%,transparent);
  backdrop-filter:blur(22px) saturate(1.15);
}
.rp26-site .rp90-login-card{
  box-shadow:0 28px 75px rgba(2,8,23,.2),inset 0 1px 0 rgba(255,255,255,.045);
}
.rp26-site .rp90-login-card::before{
  height:3px;
  background:linear-gradient(90deg,var(--rp26-hot),#fb7185,var(--rp26-violet),var(--rp26-blue),var(--rp26-cyan));
  background-size:220% 100%;
  animation:rp26LineMove 5s linear infinite;
}
@keyframes rp26LineMove{to{background-position:220% 0}}
.rp26-site .rp90-login-form input{
  border-radius:14px;
  background:color-mix(in srgb,var(--surface-2) 76%,transparent);
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease,transform .2s ease;
}
.rp26-site .rp90-login-form input:focus{
  transform:translateY(-1px);
  border-color:color-mix(in srgb,var(--rp26-blue) 56%,var(--rp90-line));
  box-shadow:0 0 0 4px rgba(59,130,246,.10),0 12px 30px rgba(2,8,23,.08);
  background:color-mix(in srgb,var(--surface-2) 92%,transparent);
}
.rp26-site .rp90-summary-grid article{
  overflow:hidden;
  transition:transform .2s ease,border-color .2s ease,background .2s ease;
}
.rp26-site .rp90-summary-grid article:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--rp26-hot) 24%,var(--rp90-line));background:color-mix(in srgb,var(--surface-2) 92%,transparent)}

/* --- Value strip / ticker --- */
.rp26-site .rp90-value-strip{
  gap:10px;
  overflow:visible;
  border:0;
  background:transparent;
  box-shadow:none;
}
.rp26-site .rp90-value-strip div{
  position:relative;
  overflow:hidden;
  border:1px solid var(--rp90-line);
  border-radius:19px;
  background:color-mix(in srgb,var(--surface) 88%,transparent);
  box-shadow:0 14px 34px rgba(2,8,23,.065),inset 0 1px 0 rgba(255,255,255,.03);
  transition:transform .22s ease,border-color .22s ease;
}
.rp26-site .rp90-value-strip div::before{
  content:"";
  position:absolute;
  left:18px;top:0;
  width:44px;height:3px;
  border-radius:0 0 999px 999px;
  background:linear-gradient(90deg,var(--rp26-hot),var(--rp26-blue));
}
.rp26-site .rp90-value-strip div:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--rp26-blue) 24%,var(--rp90-line))}
.rp26-marquee{
  position:relative;
  overflow:hidden;
  margin-top:16px;
  min-height:54px;
  border:1px solid var(--rp90-line);
  border-radius:18px;
  background:color-mix(in srgb,var(--surface-2) 74%,transparent);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
  mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
}
.rp26-marquee-track{
  display:flex;
  align-items:center;
  width:max-content;
  min-height:52px;
  gap:22px;
  padding-inline:26px;
  animation:rp26Marquee 34s linear infinite;
}
.rp26-marquee span{color:var(--rp90-muted);font-size:.79rem;font-weight:950;text-transform:uppercase;letter-spacing:.12em;white-space:nowrap}
.rp26-marquee i{color:var(--rp26-hot);font-style:normal;opacity:.72}
@keyframes rp26Marquee{to{transform:translateX(-50%)}}

/* --- Sections / modules --- */
.rp26-site .rp90-section{
  position:relative;
  overflow:hidden;
  border-color:color-mix(in srgb,var(--rp90-line) 90%,transparent);
  background:color-mix(in srgb,var(--surface) 91%,transparent);
  box-shadow:0 22px 70px rgba(2,8,23,.09),inset 0 1px 0 rgba(255,255,255,.028);
}
.rp26-site .rp90-section::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(135deg,rgba(239,38,76,.025),transparent 30%,rgba(59,130,246,.025) 70%,transparent);
}
.rp26-site .rp90-section-head,
.rp26-site .rp90-module-grid,
.rp26-site .rp90-product-copy,
.rp26-site .rp90-security-copy,
.rp26-site .rp90-security-grid,
.rp26-site .rp90-steps{position:relative;z-index:1}
.rp26-site .rp90-module-grid{gap:14px}
.rp26-site .rp90-module-grid article{
  overflow:hidden;
  min-height:178px;
  border-radius:22px;
  background:color-mix(in srgb,var(--surface-2) 82%,transparent);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  transition:transform .26s cubic-bezier(.2,.8,.2,1),border-color .26s ease,box-shadow .26s ease,background .26s ease;
}
.rp26-site .rp90-module-grid article::before{
  content:"";
  position:absolute;
  left:20px;right:20px;bottom:0;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--rp26-hot),var(--rp26-violet),var(--rp26-blue));
  transform:scaleX(.16);
  transform-origin:left;
  opacity:.5;
  transition:transform .28s ease,opacity .28s ease;
}
.rp26-site .rp90-module-grid article:hover{
  transform:translateY(-6px) scale(1.008);
  border-color:color-mix(in srgb,var(--rp26-blue) 27%,var(--rp90-line));
  box-shadow:0 24px 55px rgba(2,8,23,.13),inset 0 1px 0 rgba(255,255,255,.05);
  background:color-mix(in srgb,var(--surface-2) 95%,transparent);
}
.rp26-site .rp90-module-grid article:hover::before{transform:scaleX(1);opacity:.9}
.rp26-site .rp90-module-grid>article>span{
  position:relative;
  overflow:hidden;
  background:linear-gradient(145deg,color-mix(in srgb,var(--rp26-hot) 17%,transparent),color-mix(in srgb,var(--rp26-blue) 15%,transparent));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 10px 26px rgba(2,8,23,.08);
}
.rp26-site .rp90-module-grid>article>span::after{
  content:"";
  position:absolute;
  width:22px;height:22px;
  right:-8px;bottom:-8px;
  border-radius:50%;
  background:var(--rp26-hot);
  opacity:.15;
}

/* --- Product preview --- */
.rp26-site .rp90-product{overflow:visible}
.rp26-site .rp90-ui-preview{
  --rp26-rx:0deg;
  --rp26-ry:0deg;
  position:relative;
  overflow:hidden;
  transform:perspective(1100px) rotateX(var(--rp26-rx)) rotateY(var(--rp26-ry));
  transform-style:preserve-3d;
  transition:transform .18s ease-out,box-shadow .25s ease,border-color .25s ease;
  border-radius:26px;
  border-color:rgba(255,255,255,.14);
  box-shadow:0 34px 85px rgba(2,8,23,.34),0 0 0 1px rgba(59,130,246,.04);
}
.rp26-site .rp90-ui-preview:hover{border-color:rgba(96,165,250,.26);box-shadow:0 38px 95px rgba(2,8,23,.38),0 0 60px rgba(59,130,246,.07)}
.rp26-site .rp90-ui-preview::before{
  content:"";
  position:absolute;
  z-index:3;
  inset:-40% -30%;
  pointer-events:none;
  background:linear-gradient(115deg,transparent 43%,rgba(255,255,255,.045) 50%,transparent 57%);
  transform:translateX(-48%);
  animation:rp26PreviewSweep 9s ease-in-out infinite;
}
@keyframes rp26PreviewSweep{0%,62%{transform:translateX(-48%)}86%,100%{transform:translateX(48%)}}
.rp26-site .rp90-ui-top{background:linear-gradient(90deg,#0b1525,#0d1b31)}
.rp26-site .rp90-ui-top span i{animation:rp26Pulse 1.8s ease-in-out infinite}
.rp26-site .rp90-ui-stats article{
  transition:transform .25s ease,border-color .25s ease,background .25s ease;
}
.rp26-site .rp90-ui-stats article:hover{transform:translateY(-3px);border-color:rgba(96,165,250,.25);background:#15243a}
.rp26-site .rp26-ui-row{
  position:relative;
  overflow:hidden;
}
.rp26-site .rp26-ui-row::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(59,130,246,.035),transparent);
  transform:translateX(-100%);
  animation:rp26RowScan 7.5s ease-in-out infinite;
}
.rp26-site .rp26-ui-row:nth-of-type(2)::after{animation-delay:2.2s}
@keyframes rp26RowScan{0%,50%{transform:translateX(-100%)}72%,100%{transform:translateX(100%)}}

/* --- Security / onboarding --- */
.rp26-site .rp90-security-grid article,
.rp26-site .rp90-steps article{
  overflow:hidden;
  transition:transform .23s ease,border-color .23s ease,background .23s ease,box-shadow .23s ease;
}
.rp26-site .rp90-security-grid article:hover,
.rp26-site .rp90-steps article:hover{
  transform:translateY(-4px);
  border-color:color-mix(in srgb,var(--rp26-blue) 25%,var(--rp90-line));
  box-shadow:0 20px 40px rgba(2,8,23,.095);
}
.rp26-site .rp90-steps article span{
  box-shadow:0 0 0 6px color-mix(in srgb,var(--rp26-hot) 5%,transparent);
  transition:transform .23s ease,box-shadow .23s ease;
}
.rp26-site .rp90-steps article:hover span{transform:scale(1.06) rotate(-3deg);box-shadow:0 0 0 8px color-mix(in srgb,var(--rp26-hot) 8%,transparent)}

/* --- CTA --- */
.rp26-site .rp90-cta{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 10% 10%,rgba(239,38,76,.13),transparent 34%),
    radial-gradient(circle at 90% 20%,rgba(59,130,246,.13),transparent 34%),
    color-mix(in srgb,var(--surface) 91%,transparent);
  border-color:color-mix(in srgb,var(--rp90-line) 88%,transparent);
  box-shadow:0 25px 75px rgba(2,8,23,.11);
}
.rp26-site .rp90-cta::before{
  content:"";
  position:absolute;
  width:180px;height:180px;
  right:16%;bottom:-130px;
  border:1px solid rgba(96,165,250,.18);
  border-radius:50%;
  box-shadow:0 0 0 46px rgba(239,38,76,.025),0 0 0 92px rgba(59,130,246,.018);
  animation:rp26Orbit 20s linear infinite reverse;
}

/* --- Scroll reveal: JS ergänzt die Bewegung, ohne JS bleibt alles sichtbar. --- */
.rp26-js .rp26-reveal{
  opacity:0;
  transform:translateY(24px) scale(.992);
  transition:opacity .72s cubic-bezier(.2,.8,.2,1),transform .72s cubic-bezier(.2,.8,.2,1);
}
.rp26-js .rp26-reveal.rp26-visible{opacity:1;transform:none}
.rp26-js .rp90-hero.rp26-reveal{transform:translateY(12px) scale(.996)}
.rp26-js .rp90-hero.rp26-reveal.rp26-visible{transform:none}

/* --- White mode --- */
body[data-theme="light"] .rp26-site{
  --rp26-glow:rgba(239,38,76,.10);
}
body[data-theme="light"] .rp26-ambient{opacity:.55}
body[data-theme="light"] .rp26-ambient i{opacity:.10;filter:blur(115px)}
body[data-theme="light"] .rp26-site .rp90-nav{
  background:rgba(255,255,255,.80);
  box-shadow:0 18px 50px rgba(71,85,105,.12),inset 0 1px 0 rgba(255,255,255,.9);
}
body[data-theme="light"] .rp26-site .rp90-nav.rp26-nav-scrolled{background:rgba(255,255,255,.94)}
body[data-theme="light"] .rp26-site .rp90-hero{
  background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(244,248,253,.96));
  box-shadow:0 30px 80px rgba(100,116,139,.14),inset 0 1px 0 rgba(255,255,255,1);
}
body[data-theme="light"] .rp26-site .rp90-hero::before{
  background:
    linear-gradient(rgba(100,116,139,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(100,116,139,.055) 1px,transparent 1px),
    radial-gradient(circle at 8% 16%,rgba(239,38,76,.10),transparent 27%),
    radial-gradient(circle at 94% 8%,rgba(59,130,246,.10),transparent 30%),
    radial-gradient(circle at 68% 102%,rgba(45,212,191,.08),transparent 32%);
  background-size:72px 72px,72px 72px,auto,auto,auto;
}
body[data-theme="light"] .rp26-hero-pills span,
body[data-theme="light"] .rp26-live-flow,
body[data-theme="light"] .rp26-marquee{
  background:rgba(255,255,255,.72);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
body[data-theme="light"] .rp26-site .rp90-login-card,
body[data-theme="light"] .rp26-site .rp90-access-summary,
body[data-theme="light"] .rp26-site .rp90-section,
body[data-theme="light"] .rp26-site .rp90-cta{
  background:rgba(255,255,255,.90);
  box-shadow:0 22px 60px rgba(100,116,139,.12),inset 0 1px 0 rgba(255,255,255,.95);
}
body[data-theme="light"] .rp26-site .rp90-login-form input{background:rgba(248,250,252,.94)}
body[data-theme="light"] .rp26-site .rp90-value-strip div,
body[data-theme="light"] .rp26-site .rp90-module-grid article{
  background:rgba(255,255,255,.88);
  box-shadow:0 14px 35px rgba(100,116,139,.09),inset 0 1px 0 rgba(255,255,255,.95);
}
body[data-theme="light"] .rp26-site [data-rp26-glow]::after{
  background:radial-gradient(420px circle at var(--rp26-x) var(--rp26-y),rgba(59,130,246,.075),rgba(239,38,76,.04) 34%,transparent 68%);
}

/* --- Responsive --- */
@media(max-width:1100px){
  .rp26-site .rp90-hero{min-height:0}
  .rp26-site .rp90-hero::after{right:-80px;top:-220px}
  .rp26-site .rp90-value-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .rp26-site .rp90-nav{top:8px}
  .rp26-hero-pills{margin-bottom:14px}
  .rp26-live-flow{width:100%}
  .rp26-site .rp90-ui-preview{transform:none!important}
}
@media(max-width:700px){
  .rp26-site .rp90-hero{border-radius:24px}
  .rp26-site .rp90-hero::before{background-size:48px 48px,48px 48px,auto,auto,auto}
  .rp26-site .rp90-hero::after{width:260px;height:260px;right:-130px;top:-140px}
  .rp26-hero-pills{gap:6px}
  .rp26-hero-pills span{min-height:26px;padding:4px 8px;font-size:.62rem}
  .rp26-hero-pills span:not(:first-child){display:none}
  .rp26-live-flow{gap:9px;padding:8px 10px}
  .rp26-live-indicator{font-size:.67rem}
  .rp26-live-text{font-size:.76rem}
  .rp26-site .rp90-value-strip{grid-template-columns:1fr;gap:8px}
  .rp26-site .rp90-value-strip div{border-radius:16px}
  .rp26-marquee{min-height:48px;border-radius:15px}
  .rp26-marquee-track{min-height:46px;gap:16px;animation-duration:28s}
  .rp26-marquee span{font-size:.7rem}
  .rp26-site .rp90-module-grid article{min-height:0;border-radius:18px}
  .rp26-site .rp90-module-grid article:hover,
  .rp26-site .rp90-security-grid article:hover,
  .rp26-site .rp90-steps article:hover{transform:none}
  .rp26-site [data-rp26-glow]::after{display:none}
}
@media(max-width:520px){
  .rp26-live-flow{display:grid;grid-template-columns:auto minmax(0,1fr)}
  .rp26-site .rp90-hero-accent::after{height:4px}
  .rp26-site .rp90-nav{backdrop-filter:blur(18px) saturate(1.2)}
}

/* Touch-Geräte bekommen Bewegung ohne Hover-Abhängigkeit. */
@media(hover:none){
  .rp26-site [data-rp26-glow]::after{display:none}
  .rp26-site .rp90-module-grid article:hover,
  .rp26-site .rp90-value-strip div:hover,
  .rp26-site .rp90-assurance>div:hover{transform:none}
}

/* Barrierefreiheit: Animationen vollständig reduzierbar. */
@media(prefers-reduced-motion:reduce){
  .rp26-site *,
  .rp26-site *::before,
  .rp26-site *::after{
    scroll-behavior:auto!important;
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    transition-duration:.001ms!important;
  }
  .rp26-js .rp26-reveal{opacity:1!important;transform:none!important}
  .rp26-marquee-track{transform:none!important}
}

/* --- Footer: gleicher moderner Abschluss, ohne Portal-DNA zu verändern. --- */
.rp26-site>.portal-footer{
  position:relative;
  overflow:hidden;
  border-color:color-mix(in srgb,var(--rp90-line) 88%,transparent)!important;
  background:color-mix(in srgb,var(--surface) 86%,transparent)!important;
  box-shadow:0 18px 50px rgba(2,8,23,.075),inset 0 1px 0 rgba(255,255,255,.03)!important;
  backdrop-filter:blur(18px);
}
.rp26-site>.portal-footer::before{
  content:"";
  position:absolute;
  left:18px;right:18px;top:0;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,var(--rp26-hot),var(--rp26-blue),transparent);
  opacity:.5;
}
body[data-theme="light"] .rp26-site>.portal-footer{
  background:rgba(255,255,255,.88)!important;
  box-shadow:0 18px 50px rgba(100,116,139,.10),inset 0 1px 0 rgba(255,255,255,.95)!important;
}

/* portal-v1390.css */
/* Retter-Portal v1.3.90
   Portal visual language refresh: landing-page DNA transferred carefully into the authenticated UI.
   Intentionally restrained: depth, material, motion and accent light — no playful gimmicks. */

/* --------------------------------------------------------------------------
   Landing login accent: calmer, cooler and less red
   -------------------------------------------------------------------------- */
.rp26-site .rp90-login-card::before{
  height:2px!important;
  opacity:.78!important;
  background:linear-gradient(90deg,
    #64748b 0%,
    #6366f1 28%,
    #8b5cf6 50%,
    #3b82f6 74%,
    #22d3ee 100%)!important;
  background-size:180% 100%!important;
  animation:rp1390LoginLine 9s ease-in-out infinite alternate!important;
}
@keyframes rp1390LoginLine{from{background-position:0 0}to{background-position:100% 0}}

/* --------------------------------------------------------------------------
   Shared authenticated portal materials
   -------------------------------------------------------------------------- */
html body:not(.admin-surface) .app-shell .main .content{
  --rp1390-line:color-mix(in srgb,var(--line-soft) 86%,transparent);
  --rp1390-glow-blue:rgba(59,130,246,.08);
  --rp1390-glow-violet:rgba(139,92,246,.055);
  --rp1390-glow-red:rgba(225,29,72,.055);
}

html body:not(.admin-surface) .app-shell .main .content :is(.page-hero,.rp55-dash-hero){
  isolation:isolate;
  border-color:var(--rp1390-line)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.045),
    0 24px 70px rgba(2,8,23,.16)!important;
}
html body:not(.admin-surface) .app-shell .main .content :is(.page-hero,.rp55-dash-hero)::before{
  opacity:.72;
}
html body:not(.admin-surface) .app-shell .main .content .card{
  position:relative;
  border-color:var(--rp1390-line)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.035),
    0 14px 42px rgba(2,8,23,.095)!important;
}
/* Keep form fields functional and sharp; only modernise focus/contrast. */
html body:not(.admin-surface) .app-shell .main .content :is(input,select,textarea){
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease!important;
}
html body:not(.admin-surface) .app-shell .main .content :is(input,select,textarea):focus{
  border-color:color-mix(in srgb,#60a5fa 48%,var(--line-soft))!important;
  box-shadow:0 0 0 3px rgba(59,130,246,.085)!important;
}

/* Buttons: clean tactile response instead of large effects. */
html body:not(.admin-surface) .app-shell .main .content .btn{
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease!important;
}
@media(hover:hover){
  html body:not(.admin-surface) .app-shell .main .content .btn:hover{
    transform:translateY(-1px);
  }
  html body:not(.admin-surface) .app-shell .main .content .btn.primary:hover{
    box-shadow:0 12px 30px rgba(225,29,72,.17)!important;
  }
}

/* --------------------------------------------------------------------------
   Dashboard: same visual language as landing, but intentionally operational
   -------------------------------------------------------------------------- */
html body:not(.admin-surface) .rp55-dashboard{
  gap:20px!important;
}
html body:not(.admin-surface) .rp55-dashboard .rp55-dash-hero{
  background:
    radial-gradient(circle at 8% 12%,rgba(225,29,72,.11),transparent 31%),
    radial-gradient(circle at 88% 4%,rgba(59,130,246,.12),transparent 34%),
    linear-gradient(135deg,#0f1b2f 0%,#101d31 60%,#111827 100%)!important;
}
html body:not(.admin-surface) .rp55-dashboard .rp55-dash-hero::after{
  opacity:.20!important;
  background-size:64px 64px!important;
}
html body:not(.admin-surface) .rp55-dashboard .rp55-dash-copy h1{
  letter-spacing:-.055em!important;
  text-wrap:balance;
}
html body:not(.admin-surface) .rp55-dashboard .rp55-dash-tags span{
  background:rgba(255,255,255,.055)!important;
  border-color:rgba(255,255,255,.095)!important;
  backdrop-filter:blur(8px);
}

html body:not(.admin-surface) .rp55-dashboard .rp55-kpi-grid{
  gap:12px!important;
}
html body:not(.admin-surface) .rp55-dashboard .rp55-kpi-card{
  min-height:136px!important;
  overflow:hidden;
  border-radius:22px!important;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
html body:not(.admin-surface) .rp55-dashboard .rp55-kpi-card::before{
  inset:0 auto auto 0!important;
  width:100%!important;
  height:3px!important;
  opacity:.85;
}
html body:not(.admin-surface) .rp55-dashboard .rp55-kpi-card.red::before{background:linear-gradient(90deg,#e11d48,#fb7185)!important}
html body:not(.admin-surface) .rp55-dashboard .rp55-kpi-card.blue::before{background:linear-gradient(90deg,#2563eb,#60a5fa)!important}
html body:not(.admin-surface) .rp55-dashboard .rp55-kpi-card.teal::before{background:linear-gradient(90deg,#0f766e,#2dd4bf)!important}
html body:not(.admin-surface) .rp55-dashboard .rp55-kpi-card.amber::before{background:linear-gradient(90deg,#b45309,#f59e0b)!important}
html body:not(.admin-surface) .rp55-dashboard .rp55-kpi-card.slate::before{background:linear-gradient(90deg,#475569,#94a3b8)!important}
html body:not(.admin-surface) .rp55-dashboard .rp55-kpi-card strong{
  margin-top:14px!important;
  font-variant-numeric:tabular-nums;
}
@media(hover:hover){
  html body:not(.admin-surface) .rp55-dashboard .rp55-kpi-card:hover{
    transform:translateY(-2px);
    border-color:color-mix(in srgb,#60a5fa 20%,var(--line-soft))!important;
    box-shadow:0 20px 50px rgba(2,8,23,.14)!important;
  }
}

html body:not(.admin-surface) .rp55-dashboard :is(.rp55-focus-grid article,.rp55-own-metrics article){
  border-radius:17px!important;
  transition:border-color .18s ease,background .18s ease!important;
}
html body:not(.admin-surface) .rp55-dashboard .rp55-priority-list a,
html body:not(.admin-surface) .rp55-dashboard .rp55-timeline-list .timeline-item{
  border-radius:16px!important;
  transition:transform .16s ease,border-color .16s ease,background .16s ease!important;
}
html body:not(.admin-surface) .rp55-dashboard .rp55-priority-list i{
  width:5px!important;
  height:38px!important;
  background:linear-gradient(180deg,#fb7185 0%,#8b5cf6 48%,#60a5fa 100%)!important;
}
@media(hover:hover){
  html body:not(.admin-surface) .rp55-dashboard :is(.rp55-priority-list a,.rp55-timeline-list .timeline-item):hover{
    transform:translateY(-1px);
    border-color:color-mix(in srgb,#60a5fa 18%,var(--line-soft))!important;
  }
}

/* Notification strip gets the same restrained atmospheric depth. */
html body:not(.admin-surface) .dashboard-notification-strip{
  background:
    linear-gradient(90deg,rgba(225,29,72,.075),rgba(99,102,241,.055) 48%,rgba(59,130,246,.07))!important;
  border-color:rgba(225,29,72,.25)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 12px 34px rgba(2,8,23,.08)!important;
}

/* Tables are operational UI: make hierarchy clearer, never flashy. */
html body:not(.admin-surface) .app-shell .main .content .table-wrap{
  border-color:var(--rp1390-line)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;
}
html body:not(.admin-surface) .app-shell .main .content table thead th{
  letter-spacing:.085em!important;
}
html body:not(.admin-surface) .app-shell .main .content table tbody tr{
  transition:background-color .14s ease!important;
}
@media(hover:hover){
  html body:not(.admin-surface) .app-shell .main .content table tbody tr:hover{
    background:color-mix(in srgb,#60a5fa 3.5%,transparent)!important;
  }
}

/* Section heads: compact modern hierarchy without changing semantics. */
html body:not(.admin-surface) .app-shell .main .content .card-head{
  gap:14px;
}
html body:not(.admin-surface) .app-shell .main .content .card-head h2{
  letter-spacing:-.025em;
}
html body:not(.admin-surface) .app-shell .main .content .eyebrow{
  letter-spacing:.14em!important;
}

/* Light mode uses the same geometry/material language, not different sizing. */
html body[data-theme="light"]:not(.admin-surface) .app-shell .main .content{
  --rp1390-line:rgba(148,163,184,.28);
  --rp1390-glow-blue:rgba(59,130,246,.065);
  --rp1390-glow-violet:rgba(139,92,246,.035);
  --rp1390-glow-red:rgba(225,29,72,.035);
}
html body[data-theme="light"]:not(.admin-surface) .app-shell .main .content .card{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 14px 36px rgba(71,85,105,.075)!important;
}
html body[data-theme="light"]:not(.admin-surface) .rp55-dashboard .rp55-dash-hero{
  background:
    radial-gradient(circle at 8% 12%,rgba(225,29,72,.045),transparent 31%),
    radial-gradient(circle at 88% 4%,rgba(59,130,246,.055),transparent 34%),
    linear-gradient(135deg,#ffffff 0%,#f8fafc 58%,#f1f5f9 100%)!important;
  color:#0f172a!important;
}
html body[data-theme="light"]:not(.admin-surface) .rp55-dashboard .rp55-dash-copy h1{color:#0f172a!important}
html body[data-theme="light"]:not(.admin-surface) .rp55-dashboard .rp55-dash-copy .muted{color:#52647b!important}
html body[data-theme="light"]:not(.admin-surface) .rp55-dashboard .rp55-dash-tags span{
  background:rgba(255,255,255,.78)!important;
  border-color:rgba(148,163,184,.26)!important;
  color:#334155!important;
}

/* Minimal entrance motion: only one small material settling movement. */
@media(prefers-reduced-motion:no-preference){
  html body:not(.admin-surface) .app-shell .main .content > :is(.rp55-dashboard,.page-hero){
    animation:rp1390PortalIn .28s cubic-bezier(.2,.8,.2,1) both;
  }
  @keyframes rp1390PortalIn{
    from{opacity:.92;transform:translateY(5px)}
    to{opacity:1;transform:none}
  }
}

/* Tablet/mobile: keep geometry stable and disable decorative lift where touch dominates. */
@media(max-width:900px){
  html body:not(.admin-surface) .rp55-dashboard{gap:16px!important}
  html body:not(.admin-surface) .rp55-dashboard .rp55-kpi-card{min-height:124px!important}
  html body:not(.admin-surface) .app-shell .main .content .card{
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 10px 28px rgba(2,8,23,.07)!important;
  }
}
@media(max-width:600px){
  html body:not(.admin-surface) .rp55-dashboard .rp55-kpi-card::before{height:2px!important}
  html body:not(.admin-surface) .rp55-dashboard .rp55-kpi-card{border-radius:20px!important}
  html body:not(.admin-surface) .app-shell .main .content :is(.page-hero,.card){
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 8px 22px rgba(2,8,23,.06)!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .rp26-site .rp90-login-card::before{animation:none!important}
  html body:not(.admin-surface) .app-shell .main .content *,
  html body:not(.admin-surface) .app-shell .main .content *::before,
  html body:not(.admin-surface) .app-shell .main .content *::after{
    scroll-behavior:auto!important;
  }
}

/* ui-fixes-v1391.css */
/* Retter-Portal v1.3.91
   Global form/card polish: no nested field boxes, cleaner typography, task spacing and account-delete action cleanup. */

/* --------------------------------------------------------------------------
   1) Form labels: the label is metadata, the actual input is the control.
      Remove the legacy label-card styling globally in the normal portal so
      fields no longer look like a box inside another box.
   -------------------------------------------------------------------------- */
html body:not(.admin-surface) .app-shell .main .content .form-grid > label,
html body:not(.admin-surface) .app-shell .main .content .inline-form > label,
html body:not(.admin-surface) .app-shell .main .content .v138-inline-form > label,
html body:not(.admin-surface) .app-shell .main .content .smart-select-field > label{
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  min-width:0!important;
  display:grid!important;
  gap:8px!important;
  align-content:start!important;
  color:var(--muted)!important;
  font-weight:850!important;
  line-height:1.25!important;
}

/* The smart-select wrapper itself must never become a second control shell. */
html body:not(.admin-surface) .app-shell .main .content .smart-select-field{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  min-height:0!important;
}
html body:not(.admin-surface) .app-shell .main .content .smart-select-field > label > :is(input[type="search"],input[data-smart-select-search]){
  width:100%!important;
  min-width:0!important;
  min-height:52px!important;
  padding:0 44px 0 15px!important;
  border-radius:15px!important;
  line-height:1.25!important;
  font-weight:760!important;
  color:var(--text)!important;
  background:linear-gradient(180deg,rgba(6,17,30,.94),rgba(7,19,33,.88))!important;
  border:1px solid var(--line-soft)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
html body[data-theme="light"]:not(.admin-surface) .app-shell .main .content .smart-select-field > label > :is(input[type="search"],input[data-smart-select-search]){
  color:#0f172a!important;
  background:linear-gradient(180deg,#fff,#f8fafc)!important;
  border-color:rgba(148,163,184,.30)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95)!important;
}

/* Keep the search icon aligned to the input after removing the wrapper box. */
html body:not(.admin-surface) .app-shell .main .content .smart-select-field::after{
  top:39px!important;
  right:15px!important;
  line-height:1!important;
}

/* --------------------------------------------------------------------------
   2) Global control typography: text sits visually centred inside controls.
   -------------------------------------------------------------------------- */
html body:not(.admin-surface) .app-shell .main .content :is(input:not([type="checkbox"]):not([type="radio"]),select){
  min-height:52px;
  line-height:1.25!important;
}
html body:not(.admin-surface) .app-shell .main .content :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea){
  padding-left:15px;
  padding-right:15px;
}
html body:not(.admin-surface) .app-shell .main .content textarea{
  line-height:1.5!important;
  padding-top:13px;
  padding-bottom:13px;
}

/* Notices/info blocks: consistent breathing room and readable inline emphasis. */
html body:not(.admin-surface) .app-shell .main .content :is(.notice,.notice-soft,.info-card,.form-help){
  padding:16px 18px!important;
  line-height:1.55!important;
  min-width:0!important;
}
html body:not(.admin-surface) .app-shell .main .content :is(.notice,.notice-soft,.info-card,.form-help) strong{
  line-height:inherit!important;
}
html body:not(.admin-surface) .app-shell .main .content .notice > strong:first-child{
  margin-right:.28em!important;
}

/* --------------------------------------------------------------------------
   3) Task detail typography + action spacing.
   -------------------------------------------------------------------------- */
html body:not(.admin-surface) .app-shell .main .content .task-detail-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px 24px!important;
  margin:2px 0 18px!important;
}
html body:not(.admin-surface) .app-shell .main .content .task-detail-grid > div{
  display:grid!important;
  gap:5px!important;
  min-width:0!important;
}
html body:not(.admin-surface) .app-shell .main .content .task-detail-grid > div > span{
  display:block!important;
  color:var(--muted)!important;
  font-size:.78rem!important;
  font-weight:850!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  line-height:1.25!important;
}
html body:not(.admin-surface) .app-shell .main .content .task-detail-grid > div > strong{
  display:block!important;
  color:var(--text)!important;
  font-size:1rem!important;
  font-weight:900!important;
  line-height:1.35!important;
  overflow-wrap:anywhere!important;
}
html body:not(.admin-surface) .app-shell .main .content .task-delete-form{
  margin-top:14px!important;
}
html body:not(.admin-surface) .app-shell .main .content .task-delete-form .btn{
  margin:0!important;
}

/* --------------------------------------------------------------------------
   4) Account-delete dialog: actions float on the dialog, no dark rectangle.
   -------------------------------------------------------------------------- */
html body .account-delete-modal__dialog form{
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  border:0!important;
}
html body .account-delete-modal__actions{
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  border:0!important;
  padding:12px 0 2px!important;
}
html body[data-theme="light"] .account-delete-modal__actions{
  background:transparent!important;
}

/* --------------------------------------------------------------------------
   5) Small-screen stability.
   -------------------------------------------------------------------------- */
@media(max-width:760px){
  html body:not(.admin-surface) .app-shell .main .content .task-detail-grid{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  html body:not(.admin-surface) .app-shell .main .content .smart-select-field::after{
    top:40px!important;
  }
  html body .account-delete-modal__actions{
    padding-top:10px!important;
  }
}

/* landing-v1393.css */
/* Retter-Portal v1.3.93 · Entwicklungs-Disclaimer ausschließlich auf der öffentlichen Startseite */

.rp-dev-notice{
  position:fixed;
  inset:0;
  z-index:999999;
  display:grid;
  place-items:center;
  padding:24px;
  isolation:isolate;
}
.rp-dev-notice[hidden]{display:none!important}
.rp-dev-notice-backdrop{
  position:absolute;
  inset:0;
  background:rgba(2,6,15,.78);
  backdrop-filter:blur(18px) saturate(.9);
  -webkit-backdrop-filter:blur(18px) saturate(.9);
}
.rp-dev-notice-card{
  position:relative;
  width:min(720px,100%);
  padding:clamp(28px,5vw,54px);
  overflow:hidden;
  border:1px solid rgba(148,163,184,.18);
  border-radius:30px;
  background:
    radial-gradient(circle at 12% 0%,rgba(217,16,39,.13),transparent 34%),
    radial-gradient(circle at 100% 12%,rgba(59,130,246,.13),transparent 36%),
    linear-gradient(155deg,rgba(15,28,47,.985),rgba(7,18,33,.985));
  box-shadow:0 34px 120px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.035);
  color:#f8fafc;
  text-align:left;
}
.rp-dev-notice-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:3px;
  background:linear-gradient(90deg,#64748b 0%,#818cf8 42%,#38bdf8 72%,#22c55e 100%);
  opacity:.85;
}
.rp-dev-notice-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-bottom:28px;
  color:#cbd5e1;
  font-size:.78rem;
  font-weight:950;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.rp-dev-notice-kicker span{
  width:10px;
  height:10px;
  border-radius:999px;
  background:#f59e0b;
  box-shadow:0 0 0 6px rgba(245,158,11,.12),0 0 22px rgba(245,158,11,.34);
}
.rp-dev-notice-icon{
  display:grid;
  place-items:center;
  width:58px;
  height:58px;
  margin-bottom:20px;
  border:1px solid rgba(245,158,11,.26);
  border-radius:18px;
  background:rgba(245,158,11,.10);
  color:#fbbf24;
  font-size:1.8rem;
  font-weight:1000;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.rp-dev-notice-card h1{
  max-width:620px;
  margin:0;
  color:#fff;
  font-size:clamp(2rem,5vw,3.65rem);
  line-height:1.01;
  letter-spacing:-.045em;
  text-wrap:balance;
}
.rp-dev-notice-card p{
  max-width:650px;
  margin:22px 0 0;
  color:#b8c6d9;
  font-size:clamp(1rem,1.8vw,1.12rem);
  line-height:1.72;
}
.rp-dev-notice-points{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin:26px 0 30px;
}
.rp-dev-notice-points span{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:8px 12px;
  border:1px solid rgba(148,163,184,.16);
  border-radius:999px;
  background:rgba(255,255,255,.04);
  color:#dbe4ef;
  font-size:.8rem;
  font-weight:850;
}
.rp-dev-notice-accept{
  width:100%;
  min-height:54px;
  border-radius:16px!important;
  font-size:1rem;
  box-shadow:0 14px 34px rgba(217,16,39,.20);
}
.rp-dev-notice-card>small{
  display:block;
  margin-top:14px;
  color:#7f91a8;
  font-size:.76rem;
  text-align:center;
}
body.rp-dev-notice-open{
  overflow:hidden!important;
  overscroll-behavior:none;
}
body[data-theme="light"] .rp-dev-notice-backdrop{
  background:rgba(15,23,42,.52);
}
body[data-theme="light"] .rp-dev-notice-card{
  border-color:rgba(100,116,139,.20);
  background:
    radial-gradient(circle at 12% 0%,rgba(217,16,39,.08),transparent 34%),
    radial-gradient(circle at 100% 12%,rgba(59,130,246,.10),transparent 36%),
    linear-gradient(155deg,rgba(255,255,255,.99),rgba(244,248,252,.99));
  color:#0f172a;
  box-shadow:0 34px 110px rgba(15,23,42,.24),inset 0 1px 0 rgba(255,255,255,.9);
}
body[data-theme="light"] .rp-dev-notice-card h1{color:#0f172a}
body[data-theme="light"] .rp-dev-notice-card p{color:#52637a}
body[data-theme="light"] .rp-dev-notice-kicker{color:#64748b}
body[data-theme="light"] .rp-dev-notice-points span{
  border-color:rgba(100,116,139,.18);
  background:rgba(15,23,42,.035);
  color:#334155;
}
body[data-theme="light"] .rp-dev-notice-card>small{color:#718198}

@media(max-width:640px){
  .rp-dev-notice{padding:14px}
  .rp-dev-notice-card{
    padding:26px 20px 22px;
    border-radius:24px;
  }
  .rp-dev-notice-kicker{margin-bottom:20px}
  .rp-dev-notice-icon{width:50px;height:50px;border-radius:15px;font-size:1.55rem}
  .rp-dev-notice-card h1{font-size:clamp(2rem,10vw,2.7rem)}
  .rp-dev-notice-card p{margin-top:18px;line-height:1.6}
  .rp-dev-notice-points{display:grid;margin:22px 0 26px}
  .rp-dev-notice-points span{width:100%;border-radius:13px}
}

@media(prefers-reduced-motion:reduce){
  .rp-dev-notice,.rp-dev-notice *{scroll-behavior:auto!important;animation:none!important;transition:none!important}
}
html.rp-dev-notice-accepted .rp-dev-notice{display:none!important}

/* landing-v1394.css */
/* Retter-Portal v1.3.94 · Landingpage Feinschliff */

/* Feuerwehralltag: Farbbewegung bewusst nur von links nach rechts. */
.rp26-hero-accent{
  background:linear-gradient(100deg,#60a5fa 0%,#fb7185 42%,var(--rp90-ink) 72% 100%);
  background-size:180% 100%;
  background-position:100% 50%;
  animation:rp1394TextShift 8s ease-in-out infinite;
}
@keyframes rp1394TextShift{
  0%{background-position:100% 50%}
  82%,100%{background-position:0% 50%}
}
@media(prefers-reduced-motion:reduce){
  .rp26-hero-accent{animation:none;background-position:0 50%}
}

/* landing-v1396.css */
/* Retter-Portal v1.3.96 · Landingpage Safari-/WebKit-Fix
   Der große Hero-Akzent bleibt bewusst modern, nutzt aber keine animierte
   background-clip:text-Fläche mehr. Diese konnte in Safari als rechteckiger
   Farbblock statt als Text erscheinen. */
.rp26-hero-accent{
  display:inline!important;
  background:none!important;
  background-image:none!important;
  background-size:auto!important;
  background-position:initial!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
  -webkit-text-fill-color:currentColor!important;
  color:#fb7185!important;
  animation:none!important;
  text-shadow:0 0 28px rgba(251,113,133,.10)!important;
}
body[data-theme="light"] .rp26-hero-accent{
  color:#e11d48!important;
  text-shadow:0 0 24px rgba(225,29,72,.08)!important;
}

/* release-v1395.css */
.release-test-banner{position:relative;z-index:1200;display:flex;align-items:center;justify-content:center;gap:12px;min-height:40px;padding:8px 16px;border-bottom:1px solid rgba(96,165,250,.22);background:linear-gradient(90deg,rgba(15,23,42,.98),rgba(30,41,59,.98));color:#dbeafe;font-size:.82rem;letter-spacing:.01em}.release-test-banner strong{padding:5px 9px;border-radius:999px;background:rgba(245,158,11,.16);border:1px solid rgba(245,158,11,.28);color:#fbbf24;font-size:.68rem;letter-spacing:.11em;text-transform:uppercase}.release-test-banner a{color:#fff;font-weight:800;text-decoration:none}.release-test-banner a:hover{text-decoration:underline}.release-test-banner--public{position:sticky;top:0}.admin-release-hero{display:flex;align-items:center;justify-content:space-between;gap:24px}.admin-release-hero__actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.release-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.release-status-card{position:relative;overflow:hidden;min-height:180px}.release-status-card::before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,rgba(96,165,250,.75),transparent)}.release-status-card--test::before{background:linear-gradient(90deg,transparent,rgba(168,85,247,.75),transparent)}.release-status-card__top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;color:var(--muted);font-size:.72rem;font-weight:900;letter-spacing:.12em}.release-status-card>strong{display:block;font-size:2.15rem;line-height:1}.release-status-card p{margin:12px 0 5px;color:var(--muted)}.release-status-card small{color:var(--muted)}.status-dot{width:10px;height:10px;border-radius:999px;background:#64748b;box-shadow:0 0 0 5px rgba(100,116,139,.1)}.status-dot.ok{background:#34d399;box-shadow:0 0 0 5px rgba(52,211,153,.1),0 0 18px rgba(52,211,153,.35)}.status-dot.bad{background:#fb7185;box-shadow:0 0 0 5px rgba(251,113,133,.1)}.release-explain-card,.release-actions-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px}.release-explain-card{grid-template-columns:minmax(0,1fr)}.release-flow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:6px}.release-flow span{padding:9px 12px;border-radius:12px;border:1px solid var(--line);background:var(--surface-2);font-weight:800}.release-flow b{color:var(--muted)}.release-actions-card form{margin:0}.release-actions-card--rollback{border-color:rgba(245,158,11,.22)}.release-note-card{border-color:rgba(168,85,247,.18)}.release-note-card strong{display:block;margin-bottom:7px}.release-note-card p{margin:0 0 7px;color:var(--muted)}.release-error{border-color:rgba(251,113,133,.35)}.release-result-card{max-width:900px}.release-result-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}body[data-theme="light"] .release-test-banner{background:linear-gradient(90deg,#eaf2ff,#eef2ff);color:#1e293b;border-bottom-color:rgba(59,130,246,.18)}body[data-theme="light"] .release-test-banner a{color:#0f172a}@media(max-width:800px){.release-test-banner{justify-content:flex-start;flex-wrap:wrap;padding:8px 12px}.release-test-banner span{flex:1 1 170px}.admin-release-hero{align-items:flex-start;flex-direction:column}.admin-release-hero__actions{justify-content:flex-start}.release-status-grid{grid-template-columns:1fr}.release-actions-card{grid-template-columns:1fr}.release-actions-card form,.release-actions-card .btn{width:100%}}

/* release-v1399.css */
/* Retter-Portal v1.3.99
   TESTVERSION-Leiste sitzt als echte oberste Ebene über Sidebar UND Portal-Header. */

body.release-test-environment{
  --rp-testbar-height:40px;
}

body.release-test-environment > .release-test-banner{
  position:sticky!important;
  top:0!important;
  z-index:10000!important;
  width:100%!important;
  height:var(--rp-testbar-height)!important;
  min-height:var(--rp-testbar-height)!important;
  max-height:var(--rp-testbar-height)!important;
  margin:0!important;
  padding:6px 16px!important;
  flex-wrap:nowrap!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

/* Die App beginnt normal unter der Leiste; Sticky-Elemente dürfen beim Scrollen
   nicht wieder darunter rutschen. */
body.release-test-environment .app-shell{
  min-height:calc(100vh - var(--rp-testbar-height))!important;
}
body.release-test-environment .app-shell > .sidebar{
  top:var(--rp-testbar-height)!important;
  height:calc(100vh - var(--rp-testbar-height))!important;
  max-height:calc(100vh - var(--rp-testbar-height))!important;
}
body.release-test-environment .app-shell > .main > .topbar{
  top:var(--rp-testbar-height)!important;
}

/* Auch mobile/fixe Sidebar-Ausprägungen respektieren die Testleiste. */
@media(max-width:900px){
  body.release-test-environment{
    --rp-testbar-height:46px;
  }
  body.release-test-environment > .release-test-banner{
    justify-content:center!important;
    gap:8px!important;
    padding-inline:10px!important;
  }
  body.release-test-environment > .release-test-banner strong{
    flex:0 0 auto!important;
  }
  body.release-test-environment > .release-test-banner span{
    flex:0 1 auto!important;
    min-width:0!important;
    overflow:hidden!important;
    white-space:nowrap!important;
    text-overflow:ellipsis!important;
  }
  body.release-test-environment > .release-test-banner a{
    flex:0 0 auto!important;
    white-space:nowrap!important;
  }
  body.release-test-environment .sidebar{
    top:var(--rp-testbar-height)!important;
    height:calc(100dvh - var(--rp-testbar-height))!important;
    max-height:calc(100dvh - var(--rp-testbar-height))!important;
  }
}

@media(max-width:560px){
  body.release-test-environment > .release-test-banner span{
    display:none!important;
  }
}

/* release-v1400.css */
/* Retter-Portal v1.4.00
   TESTVERSION-Leiste reserviert genau einmal Platz: Sidebar und normaler Header
   beginnen direkt darunter, ohne zusätzlichen Leerraum. */

body.release-test-environment{
  --rp-testbar-height:40px;
}

/* Interne Portalansicht: Banner aus dem normalen Dokumentfluss nehmen. */
body.release-test-environment > .release-test-banner:not(.release-test-banner--public){
  position:fixed!important;
  inset:0 0 auto 0!important;
  top:0!important;
  z-index:10000!important;
  width:100%!important;
  height:var(--rp-testbar-height)!important;
  min-height:var(--rp-testbar-height)!important;
  max-height:var(--rp-testbar-height)!important;
  margin:0!important;
  box-sizing:border-box!important;
}

/* Die komplette App wird exakt um die Höhe der Testleiste nach unten gesetzt. */
body.release-test-environment > .release-test-banner:not(.release-test-banner--public) + .app-shell{
  margin-top:var(--rp-testbar-height)!important;
  min-height:calc(100vh - var(--rp-testbar-height))!important;
}

/* Sidebar ist sticky/fixed-artig und braucht den Testleisten-Offset explizit. */
body.release-test-environment > .release-test-banner:not(.release-test-banner--public) + .app-shell > .sidebar{
  top:var(--rp-testbar-height)!important;
  height:calc(100vh - var(--rp-testbar-height))!important;
  max-height:calc(100vh - var(--rp-testbar-height))!important;
}

/* Der normale Header sitzt bereits durch den App-Offset korrekt darunter.
   Kein zusätzlicher 40px-Top-Offset mehr – genau das beseitigt den Leerraum. */
body.release-test-environment > .release-test-banner:not(.release-test-banner--public) + .app-shell > .main > .topbar{
  top:0!important;
}

@media(max-width:900px){
  body.release-test-environment{
    --rp-testbar-height:46px;
  }
  body.release-test-environment > .release-test-banner:not(.release-test-banner--public) + .app-shell > .sidebar,
  body.release-test-environment > .release-test-banner:not(.release-test-banner--public) + .app-shell .sidebar{
    top:var(--rp-testbar-height)!important;
    height:calc(100dvh - var(--rp-testbar-height))!important;
    max-height:calc(100dvh - var(--rp-testbar-height))!important;
  }
}

/* notifications-v1403.css */
/* Retter-Portal v1.4.03
   Intelligente Prioritäten, ruhige E-Mail-Regeln und eine klar lesbare
   Benachrichtigungszentrale für Desktop, Tablet und Smartphone. */

.rp1403-notification-hero > div{min-width:0;max-width:850px}
.rp1403-notification-hero form{flex:0 0 auto}
.rp1403-notification-hero .btn:disabled{cursor:default;opacity:.52;transform:none!important}

.rp1403-priority-overview{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:0 0 12px;
}
.rp1403-priority-card{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:4px 14px;
  min-width:0;
  min-height:126px;
  padding:18px 19px;
  overflow:hidden;
  border:1px solid var(--line-soft);
  border-radius:20px;
  background:var(--surface);
  box-shadow:var(--shadow-sm);
  transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease;
}
.rp1403-priority-card::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--rp1403-tone)}
.rp1403-priority-card span{color:var(--rp1403-tone);font-size:.78rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.rp1403-priority-card strong{align-self:start;color:var(--text);font-size:2rem;line-height:.9;font-variant-numeric:tabular-nums}
.rp1403-priority-card small{grid-column:1/-1;align-self:end;min-width:0;color:var(--muted);font-size:.78rem;font-weight:760;line-height:1.4}
.rp1403-priority-card.critical{--rp1403-tone:#e11d48;background:linear-gradient(135deg,rgba(225,29,72,.085),var(--surface) 58%)}
.rp1403-priority-card.upcoming{--rp1403-tone:#d97706;background:linear-gradient(135deg,rgba(217,119,6,.085),var(--surface) 58%)}
.rp1403-priority-card.info{--rp1403-tone:#2563eb;background:linear-gradient(135deg,rgba(37,99,235,.075),var(--surface) 58%)}
.rp1403-priority-card.is-active{border-color:color-mix(in srgb,var(--rp1403-tone) 54%,var(--line));box-shadow:0 15px 38px color-mix(in srgb,var(--rp1403-tone) 13%,transparent)}
@media(hover:hover){.rp1403-priority-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--rp1403-tone) 40%,var(--line))}}

.rp1403-priority-filter{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:6px;border:1px solid var(--line-soft);border-radius:16px;background:color-mix(in srgb,var(--surface) 84%,transparent);width:max-content;max-width:100%}
.rp1403-priority-filter .btn{box-shadow:none}

.rp1403-notification-layout{grid-template-columns:minmax(0,1.12fr) minmax(390px,.88fr);align-items:start}
.rp1403-notification-layout > *{min-width:0}
.rp1403-notification-center,.rp1403-notification-settings{overflow:hidden}
.rp1403-notification-center .card-head > div,.rp1403-notification-settings .card-head > div{min-width:0}
.rp1403-notification-center .card-head p,.rp1403-notification-settings .card-head p{margin:4px 0 0;font-size:.82rem}

.rp1403-notification{position:relative;min-width:0;padding:16px 17px 16px 19px!important;border-left:4px solid var(--rp1403-tone)!important;background:linear-gradient(100deg,color-mix(in srgb,var(--rp1403-tone) 7%,transparent),var(--v138-glass-bg-soft) 42%)!important}
.rp1403-notification.priority-critical{--rp1403-tone:#e11d48}
.rp1403-notification.priority-upcoming{--rp1403-tone:#d97706}
.rp1403-notification.priority-info{--rp1403-tone:#2563eb}
.rp1403-notification.is-read{opacity:.76;border-left-width:2px!important}
.rp1403-notification.is-unread{box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 8px 22px rgba(2,8,23,.06)}
.rp1403-notification-head{align-items:flex-start!important}
.rp1403-notification-head > small{flex:0 0 auto;color:var(--muted);font-weight:780;white-space:nowrap}
.rp1403-notification-badges{display:flex;flex-wrap:wrap;gap:7px;min-width:0}
.rp1403-priority-badge{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border:1px solid color-mix(in srgb,currentColor 25%,transparent);border-radius:999px;font-size:.72rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase}
.rp1403-priority-badge.critical{color:#be123c;background:rgba(225,29,72,.11)}
.rp1403-priority-badge.upcoming{color:#b45309;background:rgba(217,119,6,.12)}
.rp1403-priority-badge.info{color:#1d4ed8;background:rgba(37,99,235,.11)}
.rp1403-notification-title{overflow-wrap:anywhere}
.rp1403-notification p{overflow-wrap:anywhere}
.rp1403-notification-actions{justify-content:flex-start!important;flex-wrap:wrap}
.rp1403-notification-actions form{margin:0}
.rp1403-notification-empty{display:grid;gap:5px;border:1px dashed var(--line);border-radius:16px}
.rp1403-notification-empty strong{color:var(--text)}

.rp1403-mail-policy{margin:0 0 16px;padding:15px 16px;border:1px solid rgba(37,99,235,.2);border-radius:17px;background:linear-gradient(135deg,rgba(37,99,235,.09),rgba(20,184,166,.055))}
.rp1403-mail-policy strong{display:block;color:var(--text)}
.rp1403-mail-policy p{margin:6px 0 0;color:var(--muted);font-size:.84rem;line-height:1.55}
.rp1403-mail-policy b{color:var(--text)}
.rp1403-settings-form{grid-template-columns:1fr!important}
.rp1403-settings-group{min-width:0;margin:0;padding:15px;border:1px solid var(--line-soft);border-radius:18px;background:rgba(148,163,184,.035)}
.rp1403-settings-group legend{padding:0 7px;color:var(--text);font-size:.9rem;font-weight:950}
.rp1403-setting-toggles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}
.rp1403-setting-toggles .check-line{margin:0!important;min-width:0}
.rp1403-settings-help{margin:0 0 12px;font-size:.8rem;line-height:1.5}
.rp1403-reminder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.rp1403-reminder-grid > label{min-width:0;padding:11px;border:1px solid var(--line-soft);border-radius:14px;background:var(--surface-2);color:var(--text);font-size:.82rem}
.rp1403-number-field{display:grid;grid-template-columns:minmax(74px,.45fr) minmax(0,1fr);gap:9px;align-items:center;min-width:0}
.rp1403-number-field input{min-width:0}
.rp1403-number-field small{color:var(--muted);font-size:.72rem;font-weight:760;line-height:1.25}
.rp1403-category-options{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.rp1403-category-options .check-line{min-width:0;margin:0!important;padding:10px!important}
.rp1403-settings-actions{margin-top:1px}

.dashboard-notification-strip.has-critical{border-color:rgba(225,29,72,.42)!important;background:linear-gradient(90deg,rgba(225,29,72,.13),rgba(99,102,241,.06) 55%,rgba(59,130,246,.07))!important}
.dashboard-notification-strip.has-critical .dashboard-notification-strip__icon{background:#be123c!important;color:#fff!important}

body[data-theme="dark"] .rp1403-priority-badge.critical{color:#fda4af}
body[data-theme="dark"] .rp1403-priority-badge.upcoming{color:#fcd34d}
body[data-theme="dark"] .rp1403-priority-badge.info{color:#93c5fd}
body[data-theme="light"] .rp1403-priority-card,
body[data-theme="light"] .rp1403-notification{box-shadow:0 10px 28px rgba(71,85,105,.07)}

@media(max-width:1260px){
  .rp1403-notification-layout{grid-template-columns:1fr}
}
@media(max-width:900px){
  .rp1403-priority-card{min-height:116px;padding:16px}
  .rp1403-reminder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .rp1403-priority-overview{grid-template-columns:1fr}
  .rp1403-priority-card{grid-template-columns:minmax(0,1fr) auto;min-height:0;padding:15px 16px}
  .rp1403-priority-card small{align-self:auto}
  .rp1403-notification-head{display:grid!important;gap:9px!important}
  .rp1403-notification-head > small{white-space:normal}
  .rp1403-setting-toggles,.rp1403-reminder-grid,.rp1403-category-options{grid-template-columns:1fr!important}
}
@media(max-width:480px){
  .rp1403-notification{padding:14px!important}
  .rp1403-priority-filter{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
  .rp1403-priority-filter .btn{width:100%}
  .rp1403-number-field{grid-template-columns:minmax(0,1fr);gap:5px}
  .rp1403-notification-actions{display:grid!important;grid-template-columns:1fr;width:100%}
  .rp1403-notification-actions > *{width:100%}
  .rp1403-notification-actions .btn{width:100%}
}

/* responsive-v1403.css */
/* Retter-Portal v1.4.03
   Systematischer Mobile-/Tablet-Final-Pass. Die Regeln sind bewusst als letzte
   Schutzschicht geladen und ändern keine Desktop-Fachlogik. */

html body .app-shell,
html body .app-shell .main,
html body .app-shell .main .content,
html body .app-shell .main .content > *,
html body .app-shell .main .content :is(.card,.page-hero,.page-head,.toolbar,.form-grid,.grid,.detail-grid,.info-grid,.table-wrap,.data-table-card,.checks-table-wrap){min-width:0}

html body .app-shell .main .content :is(h1,h2,h3,p,strong,small,label,td,th,a,button){overflow-wrap:anywhere}
html body .app-shell .main .content :is(img,svg,canvas,video){max-width:100%}
html body .app-shell .main .content :is(input,select,textarea,button){max-width:100%}
html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap){max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
html body .app-shell .main .content :is(dialog,.modal,.modal-card,.dialog-card,[role="dialog"]){max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto}
html body .app-shell .main .content .form-actions{flex-wrap:wrap}
html body .app-shell .main .content .form-actions form{max-width:100%}
html body .app-shell .main .content input[type="file"]{min-width:0;width:100%}

@media (min-width:761px) and (max-width:1180px),
       (min-width:1181px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  html body .app-shell .main .content{width:100%;padding-inline:clamp(16px,2.4vw,26px)}
  html body .app-shell .main .content :is(.grid.two,.grid.three,.entity-grid,.v138-two-column){grid-template-columns:repeat(2,minmax(0,1fr))}
  html body .app-shell .main .content :is(.card-head,.page-head,.page-hero,.toolbar){min-width:0}
  html body .app-shell .main .content :is(.card-head,.page-head,.page-hero) > *{min-width:0;max-width:100%}
  html body .app-shell .main .content .form-actions :is(.btn,button,a){min-height:44px}
  html body .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap){scrollbar-gutter:stable}
  html body .app-shell .main .content :is(.v138-filter-grid,.filter-grid,.toolbar form){max-width:100%}
  html body .app-shell .main .content :is(.v138-filter-grid,.filter-grid) > *{min-width:0}
  html body .app-shell .main .content .rp1403-notification-layout{grid-template-columns:1fr}
}

@media(max-width:900px){
  html body{overflow-x:hidden}
  html body .app-shell .main{width:100%;max-width:100vw;overflow-x:clip}
  html body .app-shell .main .content{width:100%;max-width:100%;padding:16px}
  html body .app-shell .main .content :is(.page-hero,.page-head,.card-head){gap:14px}
  html body .app-shell .main .content :is(.page-hero,.page-head) > :is(form,.form-actions,.hero-actions){max-width:100%}
  html body .app-shell .main .content :is(.form-grid,.detail-grid,.info-grid,.permission-grid,.grid.two,.grid.three,.entity-grid,.v138-two-column){grid-template-columns:1fr}
  html body .app-shell .main .content :is(.v138-filter-grid,.filter-grid){grid-template-columns:repeat(2,minmax(0,1fr))}
  html body .app-shell .main .content :is(.toolbar,.pagination){max-width:100%}
  html body .app-shell .main .content .toolbar > *{min-width:0}
  html body .app-shell .main .content :is(.btn,button,[role="button"],input,select,textarea){min-height:44px}
  html body .app-shell .main .content :is(.pill,.status,.role,.badge){min-height:0}
  html body .app-shell .main .content .admin-command-nav{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
  html body .app-shell .main .content .admin-command-nav > *{flex:0 0 auto}
  html body .app-shell .main .content :is(.map-shell,.water-map,.leaflet-container){max-width:100%}
}

@media(max-width:600px){
  html body .app-shell .main .content{padding:10px;padding-bottom:max(18px,env(safe-area-inset-bottom))}
  html body .app-shell .main .content :is(.page-hero,.card,.toolbar,.pagination){border-radius:18px}
  html body .app-shell .main .content .page-hero{padding:18px;margin-bottom:14px}
  html body .app-shell .main .content .card{padding:16px;margin-bottom:14px}
  html body .app-shell .main .content :is(.page-hero,.page-head,.card-head){align-items:stretch}
  html body .app-shell .main .content :is(.page-hero,.page-head,.card-head) > :is(form,.form-actions){width:100%}
  html body .app-shell .main .content :is(.page-hero,.page-head,.card-head) > form .btn{width:100%}
  html body .app-shell .main .content :is(.v138-filter-grid,.filter-grid){grid-template-columns:1fr}
  html body .app-shell .main .content :is(.inline-form,.form-actions,.hero-actions,.actions){width:100%}
  html body .app-shell .main .content :is(.form-actions,.hero-actions) > :is(.btn,button,a,form){width:100%}
  html body .app-shell .main .content :is(.form-actions,.hero-actions) form :is(.btn,button){width:100%}
  html body .app-shell .main .content :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea){font-size:16px}
  html body .app-shell .main .content :is(.detail-grid,.info-grid){gap:9px}
  html body .app-shell .main .content :is(.detail-item,.info-grid > div){padding:11px}
  html body .app-shell .main .content .pagination{justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch}
  html body .app-shell .main .content .pagination > *{flex:0 0 auto}
  html body .app-shell .main .content .flash{margin-bottom:12px;padding:12px 13px}
  html body .app-shell .main .content :is(pre,code){max-width:100%;overflow-x:auto}
  html body .app-shell .main .content .leaflet-control-container :is(a,button){min-width:44px;min-height:44px}
}

@media(max-width:380px){
  html body .app-shell .main .content{padding-inline:8px}
  html body .app-shell .main .content .card{padding:14px}
  html body .app-shell .main .content h1{font-size:clamp(1.75rem,10vw,2.25rem)}
  html body .app-shell .main .content .btn{padding-inline:10px}
}

@media(hover:none) and (pointer:coarse){
  html body .app-shell .main .content :is(.btn,button,a){-webkit-tap-highlight-color:transparent}
  html body .app-shell .main .content :is(.btn,button):active{transform:none!important}
}

/* stability-v1404.css */
/* Retter-Portal v1.4.04
   Layoutstabile Filter, Suchen und native Datumsfelder plus ruhiges optisches Feintuning. */

html{scrollbar-gutter:stable}

/* Benachrichtigungen werden lokal gefiltert. Der Seitenkopf bleibt unverändert stehen. */
.rp1404-notifications{overflow-anchor:none}
.rp1404-notifications [hidden]{display:none!important}
.rp1404-notifications .rp1403-priority-card,
.rp1404-notifications .rp1403-priority-filter .btn{transition:border-color .14s ease,background-color .14s ease,box-shadow .14s ease,color .14s ease!important}
.rp1404-notifications .rp1403-notification-list{contain:layout style}
.rp1404-notifications .rp1403-notification-empty{min-height:92px;place-content:center}

/* Smart-Suchen hängen während der Anzeige direkt unter <body>. Dadurch verändern
   Trefferlisten niemals Höhe, Padding oder Abstände der Seite darunter. */
html body .app-shell .main .content :is(.card.has-smart-select,[data-smart-select]){overflow-anchor:none!important}
html body .app-shell .main .content [data-smart-select] input[type="search"]{width:100%!important;inline-size:100%!important;min-width:0!important;max-width:100%!important}
html body > .smart-select-results.smart-select-popover{
  position:fixed!important;
  inset:auto!important;
  left:var(--smart-popover-left)!important;
  top:var(--smart-popover-top)!important;
  width:var(--smart-popover-width)!important;
  min-width:0!important;
  max-width:calc(100vw - 20px)!important;
  max-height:var(--smart-popover-max-height)!important;
  margin:0!important;
  padding:8px!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  z-index:2147483000!important;
  isolation:isolate!important;
  contain:layout paint style!important;
  translate:none!important;
  transform:translateZ(0)!important;
  opacity:1!important;
  background:#101827!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:18px!important;
  box-shadow:0 28px 80px rgba(0,0,0,.58)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body[data-theme="light"] > .smart-select-results.smart-select-popover{
  background:#fff!important;
  border-color:rgba(100,116,139,.28)!important;
  box-shadow:0 24px 70px rgba(15,23,42,.22)!important;
}
html body > .smart-select-results.smart-select-popover .smart-select-option{
  width:100%!important;
  min-width:0!important;
  min-height:48px!important;
  transform:none!important;
}
html body .app-shell .main .content .rights-assign-form,
html body .app-shell .main .content .rights-assign-form.smart-select-open{
  transform:none!important;
  overflow:visible!important;
}

/* Native Datum-/Zeitfelder besitzen auf iOS/Safari eine große intrinsische
   Mindestbreite. Inline-size und WebKit-Unterelemente werden deshalb global begrenzt. */
html body .app-shell .main .content label:has(> input:is([type="date"],[type="time"],[type="datetime-local"],[type="month"],[type="week"])),
html body .app-shell .main .content input:is([type="date"],[type="time"],[type="datetime-local"],[type="month"],[type="week"]){
  min-width:0!important;
  max-width:100%!important;
  width:100%!important;
  inline-size:100%!important;
  box-sizing:border-box!important;
}
html body .app-shell .main .content input:is([type="date"],[type="time"],[type="datetime-local"],[type="month"],[type="week"]){
  display:block!important;
  -webkit-min-logical-width:0!important;
  text-align:left!important;
}
html body .app-shell .main .content input:is([type="date"],[type="time"],[type="datetime-local"],[type="month"],[type="week"])::-webkit-date-and-time-value{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  text-align:left!important;
}
html body .app-shell .main .content input:is([type="date"],[type="time"],[type="datetime-local"],[type="month"],[type="week"])::-webkit-datetime-edit{
  min-width:0!important;
  padding:0!important;
}
html body .app-shell .main .content .participant-meta,
html body .app-shell .main .content .participant-meta > *{min-width:0!important;max-width:100%!important}

/* Kleine, ruhige Statuspflege für Login und Systemeinstellungen. */
.rp1404-registration-closed{display:grid;gap:4px;width:100%;padding:11px 13px;border:1px solid rgba(217,119,6,.24);border-radius:14px;background:rgba(217,119,6,.08);color:var(--text)}
.rp1404-registration-closed small{color:var(--muted);font-size:.76rem;font-weight:760;line-height:1.4}
.rp1404-settings-hero{align-items:center}
.rp1404-settings-hero > div{min-width:0}
.rp1404-settings-hero > .status{flex:0 0 auto}
.rp1404-access-control{position:relative;overflow:hidden}
.rp1404-access-control::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#d97706}
.rp1404-state-dot{width:13px;height:13px;flex:0 0 auto;border-radius:50%;background:#d97706;box-shadow:0 0 0 6px rgba(217,119,6,.12)}
.rp1404-state-dot.is-open{background:#059669;box-shadow:0 0 0 6px rgba(5,150,105,.12)}
.rp1404-access-state{margin:0 0 14px;padding:14px 15px;border:1px solid rgba(217,119,6,.22);border-radius:16px;background:rgba(217,119,6,.07)}
.rp1404-access-state.is-open{border-color:rgba(5,150,105,.22);background:rgba(5,150,105,.07)}
.rp1404-access-state strong{display:block;color:var(--text)}
.rp1404-access-state p{margin:5px 0 0;color:var(--muted);font-size:.84rem;line-height:1.5}
.rp1404-access-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}
.rp1404-access-form .check-line{margin:0!important}
.rp1404-settings-details{display:grid;grid-template-columns:minmax(150px,.34fr) minmax(0,1fr);column-gap:18px}
.rp1404-settings-details :is(dd,code,a){min-width:0;max-width:100%;overflow-wrap:anywhere}

@media(max-width:700px){
  html{scrollbar-gutter:auto}
  html body .app-shell .main .content .participant-meta{grid-template-columns:minmax(0,1fr)!important;width:100%!important}
  html body .app-shell .main .content .participant-meta > *{width:100%!important;inline-size:100%!important}
  .rp1404-settings-hero{align-items:stretch}
  .rp1404-settings-hero > .status{align-self:flex-start}
  .rp1404-access-form,.rp1404-settings-details{grid-template-columns:minmax(0,1fr)}
  .rp1404-access-form .btn{width:100%}
  .rp1404-settings-details dt{margin-top:8px}
}

@media(hover:none) and (pointer:coarse){
  html body > .smart-select-results.smart-select-popover .smart-select-option:active,
  .rp1404-notifications [data-notification-filter]:active{transform:none!important}
}

/* stability-v1406.css */
/* Retter-Portal v1.4.06
   Flache Admin-Smart-Suchen und einheitlich ruhige Live-Filter. */

/* Die Admin-Schnellzuweisung übernimmt dieselbe klare Feldsprache wie der
   restliche Portalbereich: Beschriftung plus ein einziges echtes Suchfeld. */
html body.admin-surface .app-shell .main .content .smart-select-field{
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}
html body.admin-surface .app-shell .main .content .smart-select-field > label{
  display:grid!important;
  align-content:start!important;
  gap:8px!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:var(--muted)!important;
  font-size:.82rem!important;
  font-weight:900!important;
  line-height:1.25!important;
}
html body.admin-surface .app-shell .main .content .smart-select-field > label > input[data-smart-select-search]{
  display:block!important;
  width:100%!important;
  inline-size:100%!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:50px!important;
  padding:0 44px 0 15px!important;
  border:1px solid var(--line-soft)!important;
  border-radius:14px!important;
  color:var(--text)!important;
  background:linear-gradient(180deg,rgba(6,17,30,.96),rgba(7,19,33,.90))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
  font-weight:760!important;
  line-height:1.25!important;
}
html body.admin-surface .app-shell .main .content .smart-select-field > label > input[data-smart-select-search]:focus{
  border-color:rgba(225,29,72,.62)!important;
  box-shadow:0 0 0 3px rgba(225,29,72,.10),inset 0 1px 0 rgba(255,255,255,.025)!important;
}
html body.admin-surface .app-shell .main .content .smart-select-field::after{
  top:37px!important;
  right:15px!important;
  line-height:1!important;
}
html body[data-theme="light"].admin-surface .app-shell .main .content .smart-select-field > label > input[data-smart-select-search]{
  color:#0f172a!important;
  background:linear-gradient(180deg,#fff,#f8fafc)!important;
  border-color:rgba(100,116,139,.30)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95)!important;
}

html body.admin-surface .app-shell .main .content .admin-workflow-card .form-grid{
  align-content:start!important;
  gap:14px!important;
}
html body.admin-surface .app-shell .main .content .admin-workflow-card .form-actions{
  margin-top:0!important;
  padding-top:0!important;
}

/* Live-Suchen ersetzen ausschließlich ihre Trefferregion. Fokus, Scrollposition
   und umgebende Karten bleiben während der Eingabe unverändert. */
html body .app-shell .main .content form[data-live-submit] button[type="submit"]{
  display:none!important;
}
html body .app-shell .main .content [data-live-region]{
  min-width:0!important;
  max-width:100%!important;
  overflow-anchor:none!important;
}
html body .app-shell .main .content form[data-live-submit][aria-busy="true"] :is(input[type="search"],input[type="text"],select){
  border-color:color-mix(in srgb,var(--line) 66%,#e11d48 34%)!important;
}
.launch-filter-form[data-live-submit]{
  grid-template-columns:minmax(280px,1.3fr) minmax(180px,.55fr)!important;
}
.launch-filter-form[data-live-submit]:has(> a.btn){
  grid-template-columns:minmax(280px,1.3fr) minmax(180px,.55fr) auto!important;
}

@media(max-width:900px){
  .launch-filter-form[data-live-submit]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  html body.admin-surface .app-shell .main .content .smart-select-field > label > input[data-smart-select-search]{min-height:50px!important}
  .launch-filter-form[data-live-submit]{grid-template-columns:minmax(0,1fr)!important}
}

/* admin-v1407.css */
/* Retter-Portal v1.4.07
   Ruhigere Admin-Hierarchie, sichtbare Live-Suche und präzisere Workflows. */

body.admin-surface .admin-page-hero,
body.admin-surface .page-head,
body.admin-surface .page-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
body.admin-surface .admin-page-hero::before,
body.admin-surface .page-head::before,
body.admin-surface .page-hero::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0 auto 0 0;
  width:3px;
  background:linear-gradient(180deg,#fb7185,#e11d48 52%,#7c3aed);
  opacity:.9;
}
body.admin-surface .admin-page-hero::after,
body.admin-surface .page-head::after,
body.admin-surface .page-hero::after{
  content:"";
  position:absolute;
  z-index:-1;
  top:-140px;
  right:-100px;
  width:360px;
  height:360px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(56,189,248,.10),transparent 68%);
  pointer-events:none;
}

body.admin-surface .admin-filter-card,
body.admin-surface .account-policy-card,
body.admin-surface .launch-filter-card{
  position:relative;
  overflow:visible;
  border-color:color-mix(in srgb,var(--line) 76%,#e11d48 24%);
  background:
    linear-gradient(135deg,color-mix(in srgb,var(--surface) 96%,#e11d48 4%),var(--surface));
}
body.admin-surface .admin-filter-card::before,
body.admin-surface .account-policy-card::before{
  content:"";
  position:absolute;
  top:-1px;
  left:22px;
  right:22px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,rgba(244,63,94,.62),rgba(56,189,248,.35),transparent);
}
body.admin-surface .admin-live-meta{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:8px;
  flex:0 0 auto;
}
body.admin-surface .admin-live-badge{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:27px;
  padding:5px 9px;
  border:1px solid color-mix(in srgb,#34d399 34%,var(--line-soft));
  border-radius:999px;
  color:#34d399;
  background:rgba(16,185,129,.075);
  font-size:.63rem;
  font-weight:950;
  line-height:1;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}
body.admin-surface .admin-live-badge::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:currentColor;
  box-shadow:0 0 0 4px rgba(52,211,153,.10);
}
body.admin-surface :is(.admin-filter-card,.account-policy-card):has(form[data-live-state="pending"]) .admin-live-badge{
  color:#fbbf24;
  border-color:rgba(251,191,36,.34);
  background:rgba(251,191,36,.075);
}
body.admin-surface :is(.admin-filter-card,.account-policy-card):has(form[data-live-state="error"]) .admin-live-badge{
  color:#fb7185;
  border-color:rgba(251,113,133,.36);
  background:rgba(251,113,133,.08);
}

body.admin-surface form[data-live-submit] :is(input[type="search"],input[type="text"],select){
  min-height:48px;
  border-radius:14px;
  transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease;
}
body.admin-surface form[data-live-submit] :is(input[type="search"],input[type="text"],select):focus{
  border-color:rgba(244,63,94,.58)!important;
  box-shadow:0 0 0 3px rgba(244,63,94,.10)!important;
}
body.admin-surface form[data-live-submit][aria-busy="true"]{
  cursor:progress;
}

body.admin-surface .admin-workflow-grid{
  gap:14px;
  align-items:stretch;
}
body.admin-surface .admin-workflow-card{
  position:relative;
  display:grid;
  grid-template-rows:auto 1fr;
  gap:16px;
  min-width:0;
  padding:19px!important;
  overflow:visible;
  border-color:color-mix(in srgb,var(--line) 86%,transparent);
  background:linear-gradient(160deg,color-mix(in srgb,var(--surface) 97%,#e11d48 3%),var(--surface));
}
body.admin-surface .admin-workflow-card::before{
  content:"";
  position:absolute;
  inset:0 22px auto;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(244,63,94,.68),rgba(124,58,237,.28),transparent);
}
body.admin-surface .admin-workflow-step{
  display:grid;
  grid-template-columns:44px minmax(0,1fr);
  align-items:start;
  gap:12px;
  margin:0;
}
body.admin-surface .admin-workflow-step>span{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border:1px solid rgba(244,63,94,.20);
  border-radius:14px;
  color:#fb7185;
  background:linear-gradient(145deg,rgba(225,29,72,.16),rgba(124,58,237,.09));
  font-size:.78rem;
  font-weight:950;
  letter-spacing:.04em;
}
body.admin-surface .admin-workflow-step h2{
  margin:2px 0 5px;
  font-size:1rem;
  letter-spacing:-.025em;
}
body.admin-surface .admin-workflow-step p{
  font-size:.75rem;
  line-height:1.48;
}
body.admin-surface .admin-workflow-card>.form-grid{
  display:grid;
  align-content:start;
  grid-auto-rows:max-content;
  gap:13px!important;
  min-width:0;
  margin:0;
}
body.admin-surface .admin-workflow-card .form-actions{
  align-self:end;
  justify-content:stretch;
  margin-top:3px!important;
  padding-top:14px!important;
  border-top:1px solid var(--line-soft);
}
body.admin-surface .admin-workflow-card .form-actions .btn{
  width:100%;
  min-height:44px;
}
body.admin-surface .admin-assignment-section{
  margin-top:24px;
}
body.admin-surface .admin-section-heading{
  max-width:760px;
  margin-bottom:14px;
}
body.admin-surface .admin-assignment-grid{
  gap:14px;
}
body.admin-surface .admin-account-card,
body.admin-surface .admin-account-credentials-wrap{
  border-color:color-mix(in srgb,var(--line) 90%,#38bdf8 10%);
}

body[data-theme="light"].admin-surface .admin-filter-card,
body[data-theme="light"].admin-surface .account-policy-card,
body[data-theme="light"].admin-surface .launch-filter-card,
body[data-theme="light"].admin-surface .admin-workflow-card{
  background:linear-gradient(155deg,#fff,#f8fafc);
  border-color:rgba(148,163,184,.27);
}
body[data-theme="light"].admin-surface .admin-live-badge{
  color:#047857;
  background:#ecfdf5;
  border-color:rgba(5,150,105,.24);
}

@media(max-width:900px){
  body.admin-surface .admin-live-meta{justify-content:flex-start}
  body.admin-surface .card-head{align-items:flex-start}
}
@media(max-width:760px){
  body.admin-surface .admin-page-hero::after,
  body.admin-surface .page-head::after,
  body.admin-surface .page-hero::after{width:260px;height:260px;top:-120px;right:-100px}
  body.admin-surface .admin-filter-card,
  body.admin-surface .account-policy-card,
  body.admin-surface .admin-workflow-card{padding:15px!important}
  body.admin-surface .admin-workflow-card{gap:14px}
  body.admin-surface .admin-workflow-step{grid-template-columns:40px minmax(0,1fr);gap:10px}
  body.admin-surface .admin-workflow-step>span{width:40px;height:40px;border-radius:13px}
  body.admin-surface .admin-live-meta{width:100%}
}

@media(prefers-reduced-motion:reduce){
  body.admin-surface form[data-live-submit] :is(input,select){transition:none!important}
}

/* stability-v1409.css */
/* Retter-Portal v1.4.09: sichtbare, rendererunabhaengige Kartenpunkte. */

html body .water-map .water-map-point{
  box-sizing:border-box!important;
  display:block!important;
  border:2px solid rgba(255,255,255,.94)!important;
  border-radius:999px!important;
  background:#c8102e!important;
  box-shadow:0 0 0 1px rgba(15,23,42,.46),0 3px 8px rgba(15,23,42,.34)!important;
  opacity:1!important;
  visibility:visible!important;
  cursor:pointer!important;
}

html body .water-map .water-map-point--hydrant{background:#c8102e!important}
html body .water-map .water-map-point--water{background:#2563eb!important}
html body .water-map .water-map-point--problem{background:#d97706!important}
html body .water-map .water-map-point--user{
  background:#0ea5e9!important;
  border-width:3px!important;
  box-shadow:0 0 0 5px rgba(14,165,233,.22),0 4px 11px rgba(15,23,42,.38)!important;
  cursor:default!important;
}

html body .water-map .water-map-point:not(.water-map-point--user):hover{
  filter:brightness(1.12) saturate(1.08);
}

/* Alte globale Medienregeln duerfen Leaflets interne Zeichenflaechen nicht
   skalieren. Das schuetzt zusaetzlich Pruefkreise und spaetere SVG-Ebenen. */
html body .water-map .leaflet-overlay-pane canvas,
html body .water-map .leaflet-overlay-pane svg{
  max-width:none!important;
  max-height:none!important;
}

/* experience-v1414.css */
/* v1.4.14 – shared portal design, deliberately without animated blur surfaces. */
html body[data-theme]{
  --rp-canvas:#f3f5f9;--rp-panel:#fff;--rp-soft:#f7f9fc;--rp-input:#fff;
  --rp-ink:#17253b;--rp-muted:#53657e;--rp-line:#dce3ed;--rp-accent:#c9183c;
  --rp-shadow:0 4px 18px rgba(22,39,66,.045);
}
html body[data-theme="dark"]{
  --rp-canvas:#0b1220;--rp-panel:#131e30;--rp-soft:#172438;--rp-input:#0e1828;
  --rp-ink:#edf2fa;--rp-muted:#a5b5cb;--rp-line:#2b3b52;--rp-accent:#f34d70;
  --rp-shadow:0 4px 18px rgba(0,0,0,.10);
}
html body[data-theme] .app-shell{
  --text:var(--rp-ink);--muted:var(--rp-muted);--line:var(--rp-line);--line-soft:var(--rp-line);
  --surface:var(--rp-panel);--surface-2:var(--rp-soft);--primary:var(--rp-accent);
  background:var(--rp-canvas)!important;color:var(--rp-ink)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:15px;line-height:1.55;
}
html body[data-theme] .app-shell .main{background:var(--rp-canvas)!important}
html body[data-theme] .app-shell .main .content{padding:26px clamp(16px,2.2vw,38px) 48px!important}
html body[data-theme] .app-shell .sidebar{background:var(--rp-panel)!important;border-right:1px solid var(--rp-line)!important;box-shadow:none!important}
html body[data-theme] .app-shell .sidebar .sidebar-brand-row{background:var(--rp-panel)!important}
html body[data-theme] .app-shell .sidebar .brand{background:transparent!important;box-shadow:none!important}
html body[data-theme] .app-shell .sidebar .brand-text{font-weight:750!important;letter-spacing:-.035em!important}
html body[data-theme] .app-shell .sidebar .sidebar-nav-link{
  background:transparent!important;border:1px solid transparent!important;border-radius:11px!important;
  color:var(--rp-muted)!important;font-weight:600!important;box-shadow:none!important;min-height:44px!important;
  gap:10px!important;padding:10px 12px!important;line-height:1.35!important;
}
html body[data-theme] .app-shell .sidebar .sidebar-nav-label{font-size:13px!important;font-weight:600!important;white-space:normal!important;overflow-wrap:break-word;min-width:0}
html body[data-theme] .app-shell .sidebar .sidebar-nav-icon{width:19px!important;height:19px!important;flex:0 0 19px!important;color:inherit!important}
html body[data-theme] .app-shell .sidebar .sidebar-nav-link.active{color:var(--rp-ink)!important;background:var(--rp-soft)!important;border-color:var(--rp-line)!important;box-shadow:inset 3px 0 var(--rp-accent)!important}
html body[data-theme] .app-shell .sidebar .sidebar-nav-link.active .sidebar-nav-icon{color:var(--rp-accent)!important}
html body[data-theme] .app-shell .sidebar .nav-section{font-size:10px!important;letter-spacing:.12em!important;color:var(--rp-muted)!important;margin-top:20px!important}
html body[data-theme] .app-shell .sidebar .nav-count{background:var(--rp-soft)!important;border:1px solid var(--rp-line);color:var(--rp-ink)!important;font-size:11px!important;font-weight:650!important}
html body[data-theme] .app-shell .main .topbar{background:var(--rp-panel)!important;border-bottom:1px solid var(--rp-line)!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
html body[data-theme] .app-shell .main .topbar :is(.department-context-switch,.rp-mobile-header__department,.theme-switch,.rp-mobile-header__theme){background:var(--rp-soft)!important;border-color:var(--rp-line)!important;box-shadow:none!important}
html body[data-theme] .app-shell .main .topbar :is(.user-chip,.rp-mobile-header__name){color:var(--rp-ink)!important;font-weight:650!important}
html body[data-theme] .app-shell .main .content :is(.card,.toolbar,.admin-workflow-card,.admin-hub-card,.entity-card,.stat-card,.rp55-kpi-card,.admin-stat-grid>article){
  background:var(--rp-panel)!important;border:1px solid var(--rp-line)!important;border-radius:17px!important;
  box-shadow:var(--rp-shadow)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  color:var(--rp-ink)!important;
}
html body[data-theme] .app-shell .main .content :is(.page-head,.page-hero,.admin-page-hero,.rp55-dash-hero){
  background:var(--rp-panel)!important;border:1px solid var(--rp-line)!important;border-radius:20px!important;
  box-shadow:var(--rp-shadow)!important;padding:clamp(20px,2.2vw,32px)!important;margin-bottom:22px!important;
  min-height:0!important;gap:20px!important;isolation:isolate;overflow:visible!important;
}
html body[data-theme] .app-shell .main .content :is(.page-hero,.admin-page-hero,.rp55-dash-hero)::before,
html body[data-theme] .app-shell .main .content :is(.page-hero,.admin-page-hero,.rp55-dash-hero)::after{display:none!important}
html body[data-theme] .app-shell .main .content .rp55-dash-hero{border-top:3px solid var(--rp-accent)!important;background:linear-gradient(110deg,var(--rp-panel),var(--rp-soft))!important}
html body[data-theme] .app-shell .main .content h1{font-size:clamp(26px,2.7vw,42px)!important;line-height:1.14!important;font-weight:740!important;letter-spacing:-.045em!important;color:var(--rp-ink)!important;overflow-wrap:break-word}
html body[data-theme] .app-shell .main .content h2{font-size:clamp(17px,1.45vw,22px)!important;font-weight:700!important;line-height:1.35!important;letter-spacing:-.025em!important;color:var(--rp-ink)!important}
html body[data-theme] .app-shell .main .content :is(.muted,p.muted,.empty){color:var(--rp-muted)!important;line-height:1.65!important;font-weight:450!important}
html body[data-theme] .app-shell .main .content .eyebrow{font-size:10px!important;font-weight:750!important;letter-spacing:.14em!important;color:var(--rp-accent)!important;margin-bottom:10px!important}
html body[data-theme] .app-shell .main .content .card-head{gap:14px!important;align-items:center;flex-wrap:wrap}
html body[data-theme] .app-shell .main .content :is(.btn,button:not(.smart-select-option):not(.person-picker-option):not(.leaflet-control-zoom-in):not(.leaflet-control-zoom-out)){
  font-weight:650;letter-spacing:-.01em;transition:background-color .12s,border-color .12s!important;
}
html body[data-theme] .app-shell .btn{border-radius:10px!important;box-shadow:none!important;transform:none!important;line-height:1.4!important;font-size:13px!important;font-weight:650!important;min-height:42px;padding:10px 16px!important;background:var(--rp-soft)!important;border:1px solid var(--rp-line)!important;color:var(--rp-ink)!important;white-space:normal!important}
html body[data-theme] .app-shell .btn.primary{background:#c9183c!important;border-color:#c9183c!important;color:#fff!important}
html body[data-theme] .app-shell .btn.danger{background:#a31e35!important;border-color:#a31e35!important;color:#fff!important}
html body[data-theme] .app-shell .main .content :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select,textarea){
  background:var(--rp-input)!important;color:var(--rp-ink)!important;border:1px solid var(--rp-line)!important;
  border-radius:10px!important;box-shadow:none!important;font-size:14px!important;font-weight:450!important;
  min-width:0!important;max-width:100%!important;box-sizing:border-box!important;line-height:1.45!important;
}
html body[data-theme] .app-shell .main .content :is(input,textarea)::placeholder{color:var(--rp-muted)!important;opacity:.9;font-weight:400!important}
html body[data-theme] .app-shell .main .content label{color:var(--rp-ink)!important;font-weight:600!important;font-size:12px!important;line-height:1.5!important}
html body[data-theme] .app-shell :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #4388e8!important;outline-offset:3px!important}
html body[data-theme] .app-shell .main .content input:focus,html body[data-theme] .app-shell .main .content textarea:focus,html body[data-theme] .app-shell .main .content select:focus{border-color:#4388e8!important}
html body[data-theme] .app-shell .main .content :is(.rp55-kpi-card,.stat-card,.admin-stat-grid>article) strong{color:var(--rp-ink)!important;font-weight:700!important;font-size:32px!important;letter-spacing:-.04em!important;font-variant-numeric:tabular-nums}
html body[data-theme] .app-shell .main .content :is(.rp55-kpi-card,.stat-card,.admin-stat-grid>article) :is(span,small){color:var(--rp-muted)!important}
html body[data-theme] .app-shell .main .content :is(.rp55-dash-tags span,.pill){font-weight:600!important;font-size:11px!important;box-shadow:none!important;backdrop-filter:none!important}
html body[data-theme] .app-shell .main .content .rp55-dash-tags span{background:var(--rp-soft)!important;color:var(--rp-muted)!important;border-color:var(--rp-line)!important}
html body[data-theme] .app-shell .main .content table{color:var(--rp-ink)!important;font-size:13px!important}
html body[data-theme] .app-shell .main .content table thead th{background:var(--rp-soft)!important;color:var(--rp-muted)!important;font-size:10px!important;font-weight:700!important;letter-spacing:.06em!important;padding:14px 16px!important;border-color:var(--rp-line)!important}
html body[data-theme] .app-shell .main .content table tbody td{border-color:var(--rp-line)!important;padding:14px 16px!important;font-weight:450!important}
html body[data-theme] .app-shell .main .content table tbody td strong{font-weight:650!important}
html body[data-theme] .app-shell .main .content :is(.timeline-item,.rp55-priority-list>a,.admin-hub-card){border-color:var(--rp-line)!important;transform:none!important}
html body[data-theme] .app-shell .main .content .toolbar{gap:12px!important;padding:18px!important}
html body[data-theme] .app-shell .main .content .admin-workflow-step>span{background:var(--rp-soft)!important;color:var(--rp-accent)!important;border:1px solid var(--rp-line);border-radius:11px!important;box-shadow:none!important}
html body[data-theme] .app-shell .main .content .admin-workflow-card::before{display:none!important}
html body[data-theme] .app-shell .main .content .admin-hub-card__icon{background:var(--rp-soft)!important;border:1px solid var(--rp-line)!important;color:var(--rp-accent)!important;box-shadow:none!important}
html body[data-theme] .app-shell .main .content .admin-nav{background:var(--rp-panel)!important;border-color:var(--rp-line)!important;box-shadow:none!important}
html body[data-theme] .app-shell .main .content :is(.card,.rp55-kpi-card,.admin-hub-card):hover{transform:none!important;box-shadow:var(--rp-shadow)!important}
html body[data-theme] .app-shell .main .content :is(.water-map,.water-map.small){border-radius:16px!important;border-color:var(--rp-line)!important}
.rp-skip-link{position:fixed;top:-100px;left:20px;z-index:99999;padding:12px 20px;background:#fff;color:#17253b;border-radius:10px}
.rp-skip-link:focus{top:12px}
@media(hover:hover){html body[data-theme] .app-shell .sidebar .sidebar-nav-link:hover,html body[data-theme] .app-shell .btn:not(.primary):not(.danger):hover{background:var(--rp-soft)!important;border-color:var(--rp-line)!important;color:var(--rp-ink)!important}html body[data-theme] .app-shell .btn.primary:hover{background:#ae1534!important}html body[data-theme] .app-shell .main .content tbody tr:hover{background:var(--rp-soft)!important}}
@media(max-width:1100px){html body[data-theme] .app-shell .main .content{padding:20px 18px 36px!important}html body[data-theme] .app-shell .main .content .admin-workflow-grid{grid-template-columns:1fr!important}html body[data-theme] .app-shell .main .content :is(.page-head,.page-hero,.admin-page-hero,.rp55-dash-hero){flex-wrap:wrap!important}}
@media(max-width:760px){
  html body[data-theme] .app-shell .main .content{padding:16px 12px calc(72px + env(safe-area-inset-bottom))!important}
  html body[data-theme] .app-shell .main .content :is(.page-head,.page-hero,.admin-page-hero,.rp55-dash-hero){padding:20px 16px!important;border-radius:16px!important;margin-bottom:16px!important}
  html body[data-theme] .app-shell .main .content :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea){font-size:16px!important;min-height:44px}
  html body[data-theme] .app-shell .main .content :is(input[type="date"],input[type="datetime-local"],input[type="time"],input[type="month"]){width:100%!important;inline-size:100%!important;max-inline-size:100%!important;min-inline-size:0!important}
  html body[data-theme] .app-shell .main .content input::-webkit-date-and-time-value{text-align:left;min-width:0}
  html body[data-theme] .app-shell .btn{min-height:44px!important}
  html body[data-theme] .app-shell .main .content .toolbar{padding:14px!important}
  html body[data-theme] .app-shell .main .content .rp55-kpi-card{min-height:120px!important;border-radius:14px!important}
  html body[data-theme] .app-shell .main .content table tbody td{padding:8px 0!important}
}
/* Consistent form rhythm and compact, readable dashboard metrics. */
html body[data-theme] .app-shell .main .content .rp55-focus-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
html body[data-theme] .app-shell .main .content .rp55-focus-grid>div{min-width:0}
html body[data-theme] .app-shell .main .content .admin-workflow-card form>label{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;border-radius:0!important}
html body[data-theme] .app-shell .main .content .admin-workflow-card :is(input,select){min-height:46px!important}
html body[data-theme] .app-shell .main .content .admin-workflow-card .admin-workflow-step{min-height:142px}
html body[data-theme] .app-shell .main .content .admin-command-nav{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;overflow:visible!important;background:var(--rp-panel)!important;border:1px solid var(--rp-line)!important;border-radius:16px!important;padding:16px!important;box-shadow:none!important}
html body[data-theme] .app-shell .main .content .admin-command-nav__group{min-width:0!important;flex-wrap:wrap!important;border:0!important;padding:0!important;align-content:start!important}
html body[data-theme] .app-shell .main .content .admin-command-nav a{color:var(--rp-muted)!important;background:var(--rp-soft)!important;border-color:var(--rp-line)!important;box-shadow:none!important;font-size:12px!important;font-weight:550!important;min-height:38px!important}
html body[data-theme] .app-shell .main .content .admin-command-nav a.is-active{background:#c9183c!important;border-color:#c9183c!important;color:#fff!important}
html body[data-theme] .app-shell .main .content .map-filter-panel>*{min-width:0!important;max-width:100%!important}
html body[data-theme] .app-shell .main .content :is(.water-map-layout,.water-map-shell,.map-side-panel){min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
@media(max-width:1250px){html body[data-theme] .app-shell .main .content .admin-command-nav{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:1100px){html body[data-theme] .app-shell .main .content .admin-workflow-card .admin-workflow-step{min-height:0}html body[data-theme] .app-shell .main .content .water-map-layout{grid-template-columns:minmax(0,1fr)!important}html body[data-theme] .app-shell .main .content .map-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))!important}.map-filter-panel .map-legend{grid-column:1/-1}}
@media(max-width:760px){html body[data-theme] .app-shell .main .content .rp55-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}html body[data-theme] .app-shell .main .content .rp55-kpi-card{min-height:112px!important;padding:18px 14px!important}html body[data-theme] .app-shell .main .content .rp55-kpi-card:last-child:nth-child(odd){grid-column:1/-1}html body[data-theme] .app-shell .main .content .map-filter-panel{grid-template-columns:minmax(0,1fr)!important}}
@media(min-width:1101px){
  html body[data-theme] .app-shell>.sidebar{width:286px!important;min-width:286px!important;max-width:286px!important;transition:none!important}
  html body[data-theme] .app-shell>.main{width:calc(100% - 286px)!important;margin-left:286px!important;transition:none!important}
  html body[data-theme].sidebar-collapsed .app-shell>.sidebar{width:88px!important;min-width:88px!important;max-width:88px!important}
  html body[data-theme].sidebar-collapsed .app-shell>.main{width:calc(100% - 88px)!important;margin-left:88px!important}
  html body[data-theme] .app-shell--navigation-disabled>.main{width:100%!important;margin-left:0!important}
}
html body[data-theme] .app-shell .sidebar nav a.sidebar-nav-link>span.sidebar-nav-label{font-weight:600!important;font-size:13px!important;white-space:normal!important;text-overflow:clip!important;overflow:visible!important}
html body[data-theme] .app-shell .main .content .admin-workflow-card .admin-workflow-step{min-height:0!important}
html body[data-theme] .app-shell .main .content .admin-workflow-card{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:20px!important}
html body[data-theme] .app-shell .main .content .admin-workflow-card form{align-content:start!important}
@media(max-width:1100px){html body[data-theme] .app-shell .main .content .admin-workflow-card{min-width:0!important}}

html body[data-theme] .app-shell .main .content .admin-workflow-card>form{width:100%!important;min-width:0!important;grid-template-columns:minmax(0,1fr)!important;box-sizing:border-box!important}
@media(prefers-reduced-motion:reduce){html body[data-theme] .app-shell *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Uniform table surfaces, including sticky action columns. */
html body[data-theme] .app-shell .main .content table{background:var(--rp-panel)!important}
html body[data-theme] .app-shell .main .content table thead{background:var(--rp-soft)!important}
html body[data-theme] .app-shell .main .content table thead :is(th,td){background:var(--rp-soft)!important;background-image:none!important;box-shadow:none!important}
html body[data-theme] .app-shell .main .content table tbody td{background:var(--rp-panel)!important;background-image:none!important;box-shadow:none!important}
html body[data-theme] .app-shell .main .content table :is(th,td)::before,
html body[data-theme] .app-shell .main .content table :is(th,td)::after{background-image:none!important;box-shadow:none!important}
html body[data-theme] .app-shell .main .content table .training-action-cell{text-align:left!important;vertical-align:middle!important}
html body[data-theme] .app-shell .main .content .training-status-autosave{display:grid!important;gap:8px!important;min-width:180px!important;max-width:320px!important;margin:0!important;text-align:left!important}
html body[data-theme] .app-shell .main .content .training-status-autosave :is(input,select){width:100%!important;min-height:40px!important}
html body[data-theme] .app-shell .main .content .training-status-autosave .autosave-state{font-size:11px!important;font-weight:450!important;line-height:1.45!important;color:var(--rp-muted)!important;text-align:left!important;min-height:16px}
html body[data-theme] .app-shell .main .content .status-training{display:inline-flex!important;align-items:center;min-height:28px;padding:4px 10px!important;font-size:12px!important;font-weight:650!important;border:1px solid currentColor!important;border-radius:8px!important;white-space:nowrap;background:#eff6ff!important;color:#1d4ed8!important;box-shadow:none!important}
html body[data-theme="dark"] .app-shell .main .content .status-training{background:#192f50!important;color:#a4cbff!important}
html body[data-theme] .app-shell .main .content .status-training[data-status="Offen"],html body[data-theme] .app-shell .main .content .status-training[data-status="In Prüfung"]{background:#fffbeb!important;color:#92400e!important}
html body[data-theme="dark"] .app-shell .main .content .status-training[data-status="Offen"],html body[data-theme="dark"] .app-shell .main .content .status-training[data-status="In Prüfung"]{background:#382b1c!important;color:#f5cf84!important}
html body[data-theme] .app-shell .main .content .status-training[data-status="Genehmigt"],html body[data-theme] .app-shell .main .content .status-training[data-status="Erledigt"]{background:#ecfdf5!important;color:#065f46!important}
html body[data-theme="dark"] .app-shell .main .content .status-training[data-status="Genehmigt"],html body[data-theme="dark"] .app-shell .main .content .status-training[data-status="Erledigt"]{background:#163a33!important;color:#8adbc0!important}
html body[data-theme] .app-shell .main .content .status-training[data-status="Abgelehnt"]{background:#fff1f2!important;color:#9f1239!important}
html body[data-theme="dark"] .app-shell .main .content .status-training[data-status="Abgelehnt"]{background:#402231!important;color:#ffadc0!important}
@media(hover:hover){html body[data-theme] .app-shell .main .content table tbody tr:hover td{background:var(--rp-soft)!important}}
@media(max-width:760px){html body[data-theme] .app-shell .main .content .training-status-autosave{min-width:0!important;max-width:none!important;width:100%!important}}
/* Legacy sticky-column rules consume these tokens with high specificity. */
html body[data-theme] .app-shell .main .content{--rp26-table-head:var(--rp-soft);--rp26-table-row:var(--rp-panel);--rp26-table-row-alt:var(--rp-panel);--rp26-table-hover:var(--rp-soft)}
html body[data-theme] .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table thead th:last-child{background:var(--rp-soft)!important;box-shadow:none!important}
html body[data-theme] .app-shell .main .content table:has(.training-action-cell) thead th:last-child{text-align:left!important}
html body[data-theme] .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap){--rp26-table-head:var(--rp-soft)!important;--rp26-table-row:var(--rp-panel)!important;--rp26-table-row-alt:var(--rp-panel)!important;--rp26-table-hover:var(--rp-soft)!important}
html body[data-theme] .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table thead tr :is(th,td):nth-child(n){background:var(--rp-soft)!important;background-image:none!important;box-shadow:none!important}
/* Brand accents without expensive animated layers or layout movement. */
html body[data-theme] .app-shell .main .content :is(.page-head,.page-hero,.admin-page-hero,.rp55-dash-hero){border-top:2px solid #e93861!important;background:linear-gradient(115deg,#eb315b09,transparent 50%),var(--rp-panel)!important}
html body[data-theme="dark"] .app-shell .main .content :is(.page-head,.page-hero,.admin-page-hero,.rp55-dash-hero){background:linear-gradient(115deg,#6c254036,transparent 55%),linear-gradient(0deg,#17457116,#17457116),var(--rp-panel)!important}
html body[data-theme] .app-shell .btn.primary{background:linear-gradient(115deg,#f02b59,#bd1032)!important;border-color:#ea3159!important;box-shadow:0 4px 14px #dc19431c!important}
html body[data-theme] .app-shell .sidebar .sidebar-nav-link.active{background:linear-gradient(90deg,#e62d5815,var(--rp-soft))!important;border-color:#d93d6133!important;box-shadow:inset 3px 0 #f13d69!important}
html body[data-theme] .app-shell .main .content .rp55-kpi-card{border-top:3px solid #e43e66!important;background:linear-gradient(145deg,#ed315909,transparent 65%),var(--rp-panel)!important}
html body[data-theme] .app-shell .main .content .rp55-kpi-card.blue{border-top-color:#3e86dc!important;background:linear-gradient(145deg,#3e86dc0e,transparent 65%),var(--rp-panel)!important}
html body[data-theme] .app-shell .main .content .rp55-kpi-card.teal{border-top-color:#2eaaa3!important}
html body[data-theme] .app-shell .main .content .rp55-kpi-card.amber{border-top-color:#d69c34!important}
html body[data-theme] .app-shell .main .content .rp55-kpi-card.slate{border-top-color:#8c73d7!important}
html body[data-theme] .app-shell .main .content .admin-workflow-step>span{background:linear-gradient(135deg,#eb315915,#496fe410)!important;border-color:#e63a6133!important}
html body[data-theme] .app-shell .main .content .admin-hub-card__icon{background:linear-gradient(135deg,#eb315914,#496fe40c)!important;border-color:#e63a6129!important}
@media(hover:hover){html body[data-theme] .app-shell .main .content .admin-hub-card:hover{border-color:#e53a6166!important}html body[data-theme] .app-shell .btn.primary:hover{background:linear-gradient(115deg,#da214c,#a40e2c)!important}}
/* 1.4.14: stable navigation and task-oriented administration. */
html body[data-theme] .app-shell .main .content{opacity:1!important;transform:none!important;transition:none!important}
html body[data-theme] .app-shell .main .content .rp13-admin-nav{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:8px!important;padding:10px!important;background:var(--rp-panel)!important;border:1px solid var(--rp-line)!important;border-radius:13px!important;box-shadow:none!important;position:relative!important;top:auto!important;margin:0 0 25px!important;overflow:visible!important;min-height:0!important;width:100%!important;max-width:100%!important}
html body[data-theme] .app-shell .main .content .rp13-admin-nav>.admin-command-nav__group{display:flex!important;gap:5px!important;flex-wrap:wrap!important;align-items:center!important;border:0!important;background:transparent!important;padding:0!important;margin:0!important}
html body[data-theme] .app-shell .main .content .rp13-admin-nav .admin-command-nav__label{display:none!important}
html body[data-theme] .app-shell .main .content .rp13-admin-nav a{background:transparent!important;border:1px solid transparent!important;border-radius:9px!important;color:var(--rp-muted)!important;min-height:40px!important;padding:9px 12px!important;font-size:12px!important;line-height:1.5!important;box-shadow:none!important;white-space:normal!important;text-decoration:none!important;transform:none!important}
html body[data-theme] .app-shell .main .content .rp13-admin-nav a.is-active{background:var(--rp-soft)!important;color:var(--rp-accent)!important;border-color:var(--rp-line)!important}
html body[data-theme] .app-shell .main .content .rp13-admin-more{margin-left:auto;position:static;border:0;background:transparent;padding:0;min-width:0}
html body[data-theme] .app-shell .main .content .rp13-admin-more summary{display:flex;align-items:center;gap:14px;list-style:none;padding:9px 12px;min-height:40px;border:1px solid var(--rp-line);border-radius:9px;font-size:12px;line-height:1.5;font-weight:650;color:var(--rp-ink);cursor:pointer;background:var(--rp-soft)}
html body[data-theme] .app-shell .main .content .rp13-admin-more summary::-webkit-details-marker{display:none}
html body[data-theme] .app-shell .main .content .rp13-admin-more-panel{position:absolute;top:calc(100% + 6px);right:0;width:min(730px,100%);z-index:60;display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:20px;background:var(--rp-panel);border:1px solid var(--rp-line);border-radius:12px;box-shadow:0 14px 35px #00000020}
html body[data-theme] .app-shell .main .content .rp13-admin-more-panel .admin-command-nav__group{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:4px!important;background:transparent!important;border:0!important;padding:0!important}
html body[data-theme] .app-shell .main .content .rp13-admin-more-panel .admin-command-nav__label{display:block!important;font-size:10px!important;color:var(--rp-muted)!important;margin:0 0 9px!important}
html body[data-theme] .app-shell .main .content .rp13-admin-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;margin:10px 0 27px}
html body[data-theme] .app-shell .main .content .rp13-admin-heading h1{margin:0 0 10px!important}
html body[data-theme] .app-shell .main .content .rp13-admin-heading .muted{margin:0;font-size:14px}
html body[data-theme] .app-shell .main .content .rp13-admin-heading>.btn{flex-shrink:0}
html body[data-theme] .app-shell .main .content .rp13-admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--rp-line);background:var(--rp-panel);border-radius:15px;overflow:hidden;margin-bottom:30px}
html body[data-theme] .app-shell .main .content .rp13-admin-stats>div{padding:21px 23px;border-right:1px solid var(--rp-line);display:grid;gap:3px}
html body[data-theme] .app-shell .main .content .rp13-admin-stats>div:last-child{border:0}
html body[data-theme] .app-shell .main .content .rp13-admin-stats span{font-size:11px;color:var(--rp-muted);font-weight:650}
html body[data-theme] .app-shell .main .content .rp13-admin-stats strong{font-size:30px;letter-spacing:-.04em;color:var(--rp-ink);font-weight:750}
html body[data-theme] .app-shell .main .content .rp13-admin-stats small{font-size:10px;color:var(--rp-muted)}
html body[data-theme] .app-shell .main .content .rp13-admin-section-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:15px}
html body[data-theme] .app-shell .main .content .rp13-admin-section-title h2{margin:0!important}
html body[data-theme] .app-shell .main .content .rp13-admin-section-title>span{font-size:11px;color:var(--rp-muted)}
html body[data-theme] .app-shell .main .content .rp13-admin-task-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
html body[data-theme] .app-shell .main .content .rp13-admin-task{display:flex;flex-direction:column;align-items:flex-start;padding:26px;gap:12px;border:1px solid var(--rp-line);border-top:3px solid var(--rp-accent);border-radius:15px;background:linear-gradient(135deg,var(--rp-panel),var(--rp-soft));color:var(--rp-ink);text-decoration:none;box-shadow:none}
html body[data-theme] .app-shell .main .content .rp13-admin-task:nth-child(2){border-top-color:#3987e3}
html body[data-theme] .app-shell .main .content .rp13-admin-task:nth-child(3){border-top-color:#0c9e96}
html body[data-theme] .app-shell .main .content .rp13-admin-task:hover{border-color:var(--rp-accent)}
html body[data-theme] .app-shell .main .content .rp13-admin-task-icon{display:grid;place-items:center;width:35px;height:35px;background:var(--rp-soft);border:1px solid var(--rp-line);border-radius:10px;font-size:11px;color:var(--rp-accent);font-weight:750;margin-bottom:3px}
html body[data-theme] .app-shell .main .content .rp13-admin-task h2{margin:0!important;font-size:20px!important}
html body[data-theme] .app-shell .main .content .rp13-admin-task p{font-size:13px;line-height:1.7;color:var(--rp-muted);margin:0 0 6px}
html body[data-theme] .app-shell .main .content .rp13-admin-task>strong{display:flex;justify-content:space-between;gap:15px;width:100%;padding-top:17px;border-top:1px solid var(--rp-line);font-size:12px;color:var(--rp-accent);margin-top:auto}
html body[data-theme] .app-shell .main .content .rp13-admin-followup{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:16px 0 32px;padding:18px 20px;background:var(--rp-soft);border:1px solid var(--rp-line);border-radius:13px}
html body[data-theme] .app-shell .main .content .rp13-admin-followup>div{display:flex;align-items:center;gap:15px}
html body[data-theme] .app-shell .main .content .rp13-admin-followup-count{font-size:25px;font-weight:750;color:var(--rp-accent)}
html body[data-theme] .app-shell .main .content .rp13-admin-followup p{margin:0}
html body[data-theme] .app-shell .main .content .rp13-admin-followup strong{display:block;font-size:12px}
html body[data-theme] .app-shell .main .content .rp13-admin-followup small{display:block;color:var(--rp-muted);font-size:11px;margin-top:3px}
html body[data-theme] .app-shell .main .content .rp13-admin-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0 0 32px}
html body[data-theme] .app-shell .main .content .rp13-admin-group{background:var(--rp-panel);padding:24px;border:1px solid var(--rp-line);border-radius:15px}
html body[data-theme] .app-shell .main .content .rp13-admin-group h2{margin:0 0 8px!important;font-size:18px!important}
html body[data-theme] .app-shell .main .content .rp13-admin-group>p{font-size:11px;color:var(--rp-muted);margin:0 0 17px;line-height:1.6}
html body[data-theme] .app-shell .main .content .rp13-admin-group>a{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:15px 0;border-top:1px solid var(--rp-line);font-size:12px;font-weight:650;color:var(--rp-ink);text-decoration:none}
html body[data-theme] .app-shell .main .content .rp13-admin-group>a:hover{color:var(--rp-accent)}
html body[data-theme] .app-shell .main .content .rp13-admin-group small{display:block;font-size:10px;color:var(--rp-muted);font-weight:450;line-height:1.6;margin-top:5px}
html body[data-theme] .app-shell .main .content .rp13-admin-group b{color:var(--rp-accent);font-weight:600}
html body[data-theme] .app-shell .main .content .rp13-admin-recent{display:grid;grid-template-columns:1fr 1fr;gap:24px}
html body[data-theme] .app-shell .main .content .rp13-admin-recent>.card{margin:0;padding:24px}
html body[data-theme] .app-shell .main .content .rp13-admin-recent .card-head>a{font-size:11px}
html body[data-theme] .app-shell .main .content .rp13-admin-status{display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px;margin:22px 0;font-size:11px;color:var(--rp-muted)}
@media(max-width:1250px){html body[data-theme] .app-shell .main .content .rp13-admin-directory{grid-template-columns:1fr 1fr;gap:16px}html body[data-theme] .app-shell .main .content .rp13-admin-task{padding:21px}}
@media(max-width:950px){html body[data-theme] .app-shell .main .content .rp13-admin-heading{align-items:flex-start;flex-direction:column}html body[data-theme] .app-shell .main .content .rp13-admin-task-grid{grid-template-columns:1fr}html body[data-theme] .app-shell .main .content .rp13-admin-task{display:grid;grid-template-columns:40px 1fr;gap:8px 16px}html body[data-theme] .app-shell .main .content .rp13-admin-task-icon{grid-row:1/4}html body[data-theme] .app-shell .main .content .rp13-admin-task>strong{grid-column:2}html body[data-theme] .app-shell .main .content .rp13-admin-task p{grid-column:2;margin:0 0 5px}}
@media(max-width:600px){html body[data-theme] .app-shell .main .content .rp13-admin-nav{padding:7px!important;gap:5px!important}html body[data-theme] .app-shell .main .content .rp13-admin-nav a{font-size:11px!important;padding:9px 10px!important;min-height:40px!important}html body[data-theme] .app-shell .main .content .rp13-admin-more{margin-left:0}html body[data-theme] .app-shell .main .content .rp13-admin-more-panel{grid-template-columns:1fr;max-height:60vh;overflow:auto}html body[data-theme] .app-shell .main .content .rp13-admin-stats{grid-template-columns:1fr 1fr}html body[data-theme] .app-shell .main .content .rp13-admin-stats>div{padding:16px;border-bottom:1px solid var(--rp-line)}html body[data-theme] .app-shell .main .content .rp13-admin-stats>div:nth-child(even){border-right:0}html body[data-theme] .app-shell .main .content .rp13-admin-stats>div:nth-child(n+3){border-bottom:0}html body[data-theme] .app-shell .main .content .rp13-admin-stats strong{font-size:26px}html body[data-theme] .app-shell .main .content .rp13-admin-section-title>span{display:none}html body[data-theme] .app-shell .main .content .rp13-admin-directory,html body[data-theme] .app-shell .main .content .rp13-admin-recent{grid-template-columns:1fr;gap:16px}html body[data-theme] .app-shell .main .content .rp13-admin-followup{align-items:flex-start;flex-direction:column}html body[data-theme] .app-shell .main .content .rp13-admin-task{padding:20px;gap:9px 13px}html body[data-theme] .app-shell .main .content .rp13-admin-task h2{font-size:18px!important}html body[data-theme] .app-shell .main .content .rp13-admin-group,html body[data-theme] .app-shell .main .content .rp13-admin-recent>.card{padding:20px}}

html body[data-theme] .app-shell .main .content .rp13-admin-nav{flex-direction:row!important}
html body[data-theme] .app-shell .main .content .rp13-admin-nav>.admin-command-nav__group{flex:0 1 auto!important;width:auto!important;max-width:100%!important;flex-direction:row!important}
html body[data-theme] .app-shell .main .content .rp13-admin-nav>.rp13-admin-more{flex:0 1 auto!important;width:auto!important}
/* Tablet and mobile card tables must not retain the older 840px desktop minimum.
   The intentional horizontally scrollable inventory table keeps its own layout. */
@media(max-width:860px){
 html body[data-theme] .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table.responsive-table:not(.inventory-table){width:100%!important;max-width:100%!important;min-width:0!important}
}
/* Card rows follow the chosen scheme too; legacy tablet rows were always dark. */
html body[data-theme] .app-shell .main .content table.responsive-table:not(.inventory-table) tbody tr{background:var(--rp-panel)!important;color:var(--rp-ink)!important;border-color:var(--rp-line)!important}
html body[data-theme] .app-shell .main .content table.responsive-table:not(.inventory-table) tbody td{background:transparent!important;color:var(--rp-ink)!important}
@media(max-width:860px){
 html body[data-theme] .app-shell .main .content table.responsive-table:not(.inventory-table) tbody tr{box-shadow:var(--rp-shadow)!important}
 html body[data-theme] .app-shell .main .content table.responsive-table:not(.inventory-table) td[data-label]:not([data-label=""]):not(.actions):not(.mobile-action-cell)::before{content:attr(data-label)!important;display:block!important;color:var(--rp-muted)!important;font-size:10px!important;font-weight:650!important;line-height:1.5!important;margin-bottom:4px;letter-spacing:.03em}
}
/* Inventory also uses stacked cards below this breakpoint. Keep horizontal
   scrolling for its actual table layout above 860px, not for those cards. */
@media(max-width:860px){
 html body[data-theme] .app-shell .main .content .inventory-table-wrap table.inventory-table.responsive-table{width:100%!important;max-width:100%!important;min-width:0!important}
 html body[data-theme] .app-shell .main .content table.inventory-table.responsive-table td[data-label]:not([data-label=""]):not(.actions)::before{content:attr(data-label)!important;display:block!important;color:var(--rp-muted)!important;font-size:10px!important;font-weight:650!important;line-height:1.5!important;margin-bottom:4px;letter-spacing:.03em}
}
/* Change row text and background together, without a low-contrast fade. */
html body[data-theme] .app-shell .main .content table :is(tbody,tr,td,th){transition:none!important}
@media(max-width:860px){
 html body[data-theme] .app-shell .main .content table.inventory-table.responsive-table tbody tr{background:var(--rp-panel)!important;color:var(--rp-ink)!important}
 html body[data-theme] .app-shell .main .content table.inventory-table.responsive-table tbody td{color:var(--rp-ink)!important}
}
html body[data-theme] .app-shell .main .content :is(.table-wrap,.data-table-card,.checks-table-wrap) table.responsive-table tbody tr{transition:none!important}
@media(max-width:860px){
 html body[data-theme] .app-shell .main .content table.responsive-table td[data-label]:not([data-label=""]):not(.actions):not(.mobile-action-cell)::before{visibility:visible!important;opacity:1!important;width:auto!important;height:auto!important;max-width:100%!important;max-height:none!important;position:static!important;clip:auto!important;clip-path:none!important;overflow:visible!important;white-space:normal!important}
}
/* Long legal links wrap as whole controls instead of spilling out of fixed columns. */
html body[data-theme] .app-shell .main .portal-footer .portal-footer-links{display:flex!important;flex-wrap:wrap!important;gap:8px!important;justify-content:flex-start!important}
html body[data-theme] .app-shell .main .portal-footer .portal-footer-links a{flex:0 1 auto!important;width:auto!important;min-width:0!important;max-width:100%!important;white-space:normal!important;overflow-wrap:break-word!important}

/* admin-v1415.css */
/* Independent administration components: historic nav grid assignments cannot leak in. */
html body[data-theme].admin-surface{--ad15-red:#bd1640;--ad15-red-soft:#fff0f4;--ad15-blue:#416c9e;--ad15-blue-soft:#edf4fc;--ad15-green:#287e70;--ad15-green-soft:#edf7f4}
html body[data-theme=dark].admin-surface{--ad15-red:#ff7491;--ad15-red-soft:#2b2137;--ad15-blue:#8eb5ef;--ad15-blue-soft:#1b2b43;--ad15-green:#74c4b5;--ad15-green-soft:#163330}
html body[data-theme] .app-shell .main .content .ad15-nav{display:flex;align-items:center;flex-wrap:wrap;gap:8px;position:relative;z-index:35;isolation:isolate;width:100%;min-width:0;max-width:100%;padding:8px;margin:0 0 28px;border:1px solid var(--rp-line);border-radius:14px;background:var(--rp-panel);box-shadow:0 4px 18px #00000004;overflow:visible;line-height:1.5}
html body[data-theme] .app-shell .main .content .ad15-nav-primary{display:flex;flex-wrap:wrap;gap:5px;min-width:0;max-width:100%}
html body[data-theme] .app-shell .main .content .ad15-nav-primary>a{display:flex;align-items:center;justify-content:center;gap:9px;padding:11px 14px;min-height:43px;border:1px solid transparent;border-radius:9px;color:var(--rp-muted);background:transparent;box-shadow:none;font-size:12px;font-weight:650;white-space:normal;min-width:0;text-decoration:none;transform:none}
html body[data-theme] .app-shell .main .content .ad15-nav-primary>a:is(:hover,.is-active,.is-section-active){color:var(--ad15-red);background:var(--ad15-red-soft);border-color:var(--rp-line)}
.ad15-nav-icon{display:flex;align-items:center;color:inherit}.ad15-nav-icon svg{width:17px;height:17px;stroke-width:1.8}
html body[data-theme] .app-shell .main .content .ad15-more{position:static;margin:0 0 0 auto;padding:0;border:0;background:transparent;box-shadow:none;min-width:0;width:auto}
html body[data-theme] .app-shell .main .content .ad15-more>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:43px;padding:11px 15px;cursor:pointer;list-style:none;border:1px solid var(--rp-line);border-radius:9px;color:var(--rp-ink);background:var(--rp-soft);font-size:12px;font-weight:650}
.ad15-more>summary::-webkit-details-marker{display:none}.ad15-more-chevron{font-size:17px;line-height:1}.ad15-more[open] .ad15-more-chevron{transform:rotate(180deg)}
html body[data-theme] .app-shell .main .content .ad15-more-panel{position:absolute;top:calc(100% + 8px);right:0;left:auto;width:min(960px,100%);max-width:100%;min-width:0;z-index:40;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(185px,100%),1fr));gap:24px;padding:24px;max-height:min(640px,70dvh,var(--ad15-menu-height,70dvh));overflow:auto;overscroll-behavior:contain;background:var(--rp-panel);border:1px solid var(--rp-line);border-radius:14px;box-shadow:0 20px 50px #00000025;box-sizing:border-box}
html body[data-theme] .app-shell .main .content .ad15-more:not([open])>.ad15-more-panel{display:none!important}
html body[data-theme] .app-shell .main .content .ad15-more-section{display:block;min-width:0;width:auto;grid-column:auto;grid-row:auto;padding:0;margin:0;border:0;background:transparent}
html body[data-theme] .app-shell .main .content .ad15-more-section h2{font-size:9px!important;line-height:1.6!important;letter-spacing:.11em!important;text-transform:uppercase;color:var(--rp-muted);margin:0 0 12px!important;padding:0 10px}
html body[data-theme] .app-shell .main .content .ad15-more-section a{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:57px;width:100%;max-width:100%;padding:10px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--rp-ink);white-space:normal;text-decoration:none;box-shadow:none;transform:none}
.ad15-more-section a>span{min-width:0;overflow-wrap:anywhere}.ad15-more-section strong{display:block;font-size:12px;font-weight:650;line-height:1.5}.ad15-more-section small{display:block;font-size:10px;line-height:1.5;color:var(--rp-muted);font-weight:450;margin-top:3px}.ad15-more-section b{font-size:15px;color:var(--rp-muted);font-weight:400;flex-shrink:0}
html body[data-theme] .app-shell .main .content .ad15-more-section a:is(:hover,.is-active,.is-section-active){background:var(--rp-soft);border-color:var(--rp-line);color:var(--ad15-red)}
html body[data-theme] .app-shell .main .content .ad15-nav :is(a,summary):focus-visible{outline:3px solid #518eed;outline-offset:2px}
html body[data-theme] .app-shell .main .content .ad15-home{display:grid;gap:26px}.ad15-home :is(h1,h2,h3,p){margin:0}.ad15-home svg{width:22px;height:22px;display:block;flex-shrink:0}
html body[data-theme] .app-shell .main .content .ad15-heading{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:4px 0 8px}
html body[data-theme] .app-shell .main .content .ad15-heading h1{font-size:clamp(28px,2.5vw,48px)!important;line-height:1.15!important;letter-spacing:-.05em!important;margin:8px 0 13px!important}.ad15-heading h1>span{color:var(--ad15-red)}.ad15-heading p:not(.eyebrow){color:var(--rp-muted);font-size:12px;line-height:1.8;max-width:650px}.ad15-heading .eyebrow{font-size:9px!important;color:var(--ad15-red)!important;letter-spacing:.14em!important}
html body[data-theme] .app-shell .main .content .ad15-environment{display:flex;align-items:center;gap:12px;border:1px solid var(--rp-line);background:var(--rp-panel);padding:15px 18px;border-radius:11px;flex-shrink:0}.ad15-env-dot{width:7px;height:7px;border-radius:50%;background:var(--ad15-green)}.ad15-environment strong{display:block;font-size:10px;letter-spacing:.06em}.ad15-environment small{display:block;font-size:10px;color:var(--rp-muted);margin-top:3px}.ad15-environment a{padding:10px;min-width:35px;text-align:center;color:var(--ad15-red);font-size:18px;margin-right:-8px}
html body[data-theme] .app-shell .main .content .ad15-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.ad15-stats>a{display:flex;align-items:center;gap:15px;padding:21px;background:var(--rp-panel);border:1px solid var(--rp-line);border-radius:12px;color:var(--rp-ink);text-decoration:none}.ad15-stat-icon{display:grid;place-items:center;width:39px;height:42px;color:var(--ad15-red);background:var(--ad15-red-soft);border-radius:10px;flex-shrink:0}.ad15-stats>a:nth-child(2) .ad15-stat-icon{color:var(--ad15-blue);background:var(--ad15-blue-soft)}.ad15-stats>a:nth-child(3) .ad15-stat-icon{color:var(--ad15-green);background:var(--ad15-green-soft)}.ad15-stats small{display:block;font-size:10px;color:var(--rp-muted);line-height:1.4;font-weight:600}.ad15-stats strong{display:block;font-size:29px;line-height:1.2;font-weight:750;letter-spacing:-.03em;margin-top:4px}.ad15-stats b{font-size:14px;font-weight:400;color:var(--rp-muted);margin-left:auto}.ad15-stats a:hover{border-color:var(--ad15-red)}
html body[data-theme] .app-shell .main .content .ad15-workspace{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:25px;align-items:start}.ad15-section-title{margin:4px 0 18px}.ad15-section-title .eyebrow{font-size:9px!important;margin:0 0 7px!important}.ad15-section-title h2{font-size:21px!important;line-height:1.4!important}.ad15-task-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ad15-task{display:flex;flex-direction:column;background:var(--rp-panel);border:1px solid var(--rp-line);border-radius:14px;padding:25px;min-width:0}.ad15-task-top{display:flex;align-items:center;gap:13px;margin-bottom:22px}.ad15-task-top>span{display:grid;place-items:center;width:40px;height:40px;background:var(--ad15-red-soft);color:var(--ad15-red);border-radius:11px;flex-shrink:0}.ad15-task-top small{font-size:8px;letter-spacing:.08em;color:var(--rp-muted);font-weight:700}.ad15-task--org .ad15-task-top>span{background:var(--ad15-blue-soft);color:var(--ad15-blue)}.ad15-task--activity .ad15-task-top>span{background:var(--ad15-green-soft);color:var(--ad15-green)}
html body[data-theme] .app-shell .main .content .ad15-task h3{font-size:21px!important;line-height:1.3!important;letter-spacing:-.035em!important;margin:0 0 13px!important}.ad15-task>p{font-size:11px;line-height:1.85;color:var(--rp-muted);max-width:390px;margin-bottom:24px}.ad15-task-links{margin-top:auto;display:grid;border-top:1px solid var(--rp-line);padding-top:9px}.ad15-task-links a{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 0;color:var(--rp-ink);font-size:11px;font-weight:650;line-height:1.5}.ad15-task-links a:hover{color:var(--ad15-red)}.ad15-task-links b{font-size:17px;font-weight:400;color:var(--ad15-red)}.ad15-task--accounts{border-top:3px solid var(--ad15-red)}.ad15-task--org{border-top:3px solid var(--ad15-blue)}
.ad15-rail{display:grid;gap:17px;padding-top:66px}.ad15-note{background:var(--ad15-red-soft);padding:24px;border:1px solid var(--rp-line);border-radius:13px}.ad15-note-kicker{font-size:8px;letter-spacing:.12em;color:var(--ad15-red);font-weight:700;display:block;margin-bottom:12px}.ad15-note h2{font-size:21px!important;line-height:1.4!important;margin:0 0 13px!important}.ad15-note-number{font-size:47px;font-weight:750;color:var(--ad15-red);line-height:1.3;letter-spacing:-.05em;display:block;margin:13px 0}.ad15-note h3{font-size:12px!important;line-height:1.5!important;margin:0 0 10px!important}.ad15-note p{font-size:11px;line-height:1.85;color:var(--rp-muted);margin:12px 0!important}.ad15-note p strong{color:var(--rp-ink);font-weight:650}.ad15-note a{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--rp-line);padding-top:16px;margin-top:18px;font-size:11px;font-weight:650;color:var(--ad15-red)}.ad15-note a b{font-weight:400;font-size:16px}.ad15-note--quiet{background:var(--rp-panel)}.ad15-note--quiet .ad15-note-kicker{color:var(--rp-muted)}.ad15-note--test{background:var(--rp-soft)}
html body[data-theme] .app-shell .main .content .ad15-recent{display:grid;grid-template-columns:1fr 1fr;gap:22px}.ad15-recent>.card{margin:0!important;padding:25px!important;border-radius:14px!important}.ad15-recent .card-head{margin-bottom:18px}.ad15-recent .card-head h2{font-size:19px!important}.ad15-recent .card-head a{font-size:11px;color:var(--ad15-red)}.ad15-status{display:flex;gap:14px;justify-content:space-between;flex-wrap:wrap;padding:18px 0;border-top:1px solid var(--rp-line);color:var(--rp-muted);font-size:10px}.ad15-status strong{font-weight:600;color:var(--rp-ink)}
html body[data-theme] .app-shell .main .content .ad15-assignment-tools{margin:0 0 30px;border:1px solid var(--rp-line);border-radius:15px;padding:26px;background:var(--rp-panel)}.ad15-assignment-heading h2{font-size:21px!important;margin:0 0 8px!important}.ad15-assignment-heading p{font-size:12px;color:var(--rp-muted);margin:0!important;line-height:1.7}.ad15-workflow-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:23px 0 24px}.ad15-workflow-tabs[hidden]{display:none!important}
html body[data-theme] .app-shell .main .content .ad15-workflow-tabs button{display:flex;align-items:center;gap:12px;min-height:57px;padding:12px 16px;text-align:left;background:var(--rp-soft);border:1px solid var(--rp-line);border-radius:10px;color:var(--rp-muted);font-size:12px;font-weight:650;line-height:1.5;box-shadow:none;transform:none;white-space:normal}.ad15-workflow-tabs b{font-size:10px;letter-spacing:.03em;font-weight:650}.ad15-workflow-tabs button[aria-selected=true]{background:var(--ad15-red-soft)!important;border-color:var(--ad15-red)!important;color:var(--ad15-red)!important}
html body[data-theme] .app-shell .main .content .ad15-assignment-tools .admin-workflow-grid{display:block!important;margin:0!important;padding:0!important;gap:0!important}
html body[data-theme] .app-shell .main .content .ad15-assignment-tools .admin-workflow-card{display:grid!important;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:35px;margin:0!important;padding:24px 0 0!important;border:0!important;border-radius:0!important;border-top:1px solid var(--rp-line)!important;background:transparent!important;box-shadow:none!important;min-height:0!important}
html body[data-theme] .app-shell .main .content .ad15-assignment-tools .admin-workflow-card[hidden]{display:none!important}.ad15-assignment-tools .admin-workflow-step{display:block!important;min-height:0!important;margin:0!important}.ad15-assignment-tools .admin-workflow-step>span{display:none!important}.ad15-assignment-tools .admin-workflow-step h2{font-size:19px!important;margin:0 0 12px!important;line-height:1.4!important}.ad15-assignment-tools .admin-workflow-step p{font-size:12px!important;max-width:330px;line-height:1.8!important}.ad15-assignment-tools .admin-workflow-card .form-grid{margin:0!important;gap:16px!important}.ad15-assignment-tools .admin-workflow-card .form-actions{margin-top:5px!important}
html body[data-theme] .app-shell .main .content .admin-page-hero{padding:25px 28px!important;margin:0 0 24px!important;border-radius:14px!important;border:1px solid var(--rp-line)!important;border-left:3px solid var(--ad15-red)!important;background:var(--rp-panel)!important;box-shadow:none!important;gap:24px!important}
html body[data-theme] .app-shell .main .content .admin-page-hero h1{font-size:clamp(27px,2.3vw,41px)!important;line-height:1.2!important;margin:7px 0 12px!important;letter-spacing:-.045em!important}
html body[data-theme] .app-shell .main .content .admin-page-hero .muted{font-size:12px!important;line-height:1.8!important;max-width:700px}.admin-page-hero__actions{gap:9px!important}.admin-page-hero__actions .btn{font-size:11px!important;min-height:42px!important}
html body[data-theme].admin-surface .app-shell .main .content :is(.admin-stat-grid>article,.commercial-stat-card){border:1px solid var(--rp-line)!important;border-radius:12px!important;background:var(--rp-panel)!important;box-shadow:none!important;padding:19px 22px!important}
html body[data-theme].admin-surface .app-shell .main .content .admin-filter-card{border-radius:13px!important;background:var(--rp-panel)!important;border:1px solid var(--rp-line)!important;padding:23px!important;box-shadow:none!important;margin-bottom:22px!important}
html body[data-theme].admin-surface .app-shell .main .content .admin-account-card{border:1px solid var(--rp-line)!important;border-radius:14px!important;background:var(--rp-panel)!important;box-shadow:none!important}
html body[data-theme].admin-surface .app-shell .main .content .admin-account-card__head{padding:22px!important;gap:17px!important;border-radius:14px!important;background:transparent!important}.admin-account-title-line h2{font-size:18px!important;line-height:1.4!important}.admin-account-avatar{background:var(--ad15-red-soft)!important;color:var(--ad15-red)!important}.admin-account-meta{gap:7px 13px!important}.admin-account-meta span{font-size:10px!important}
html body[data-theme].admin-surface .app-shell .main .content .admin-assignment-grid{gap:20px!important}.admin-assignment-section .admin-section-heading{margin-bottom:23px!important}
@media(max-width:1250px){html body[data-theme] .app-shell .main .content .ad15-workspace{grid-template-columns:minmax(0,1fr)}.ad15-rail{grid-template-columns:1fr 1fr;padding-top:0}.ad15-note--test{grid-column:1/-1}.ad15-stats>a{padding:17px;gap:10px}.ad15-stat-icon{width:33px;height:37px}.ad15-stats strong{font-size:26px}.ad15-stats b{display:none}}
@media(max-width:900px){html body[data-theme] .app-shell .main .content .ad15-heading{align-items:flex-start;flex-direction:column;gap:18px}.ad15-environment{align-self:stretch}.ad15-environment a{margin-left:auto}.ad15-task-grid{gap:14px}.ad15-task{padding:23px}.ad15-task h3{font-size:20px!important}.ad15-workflow-tabs{grid-template-columns:1fr;gap:8px}.ad15-workflow-tabs button{min-height:48px!important}.ad15-assignment-tools .admin-workflow-step p{max-width:none}.ad15-nav-primary>a{padding:10px 12px!important}.ad15-more-panel{gap:16px!important;padding:18px!important}html body[data-theme] .app-shell .main .content .ad15-assignment-tools .admin-workflow-card{grid-template-columns:1fr!important;gap:20px!important}}
@media(max-width:650px){html body[data-theme] .app-shell .main .content .ad15-nav{gap:7px;padding:7px;margin-bottom:24px}.ad15-nav-primary{width:100%;display:grid!important;grid-template-columns:1fr 1fr;gap:5px!important}.ad15-nav-primary>a{justify-content:flex-start!important;padding:10px 12px!important;font-size:11px!important;gap:8px!important}.ad15-nav-primary .ad15-nav-icon svg{width:16px;height:16px}.ad15-more{width:100%!important;margin:0!important}.ad15-more>summary{min-height:42px!important;font-size:11px!important}.ad15-more-panel{grid-template-columns:1fr!important;max-height:min(65dvh,var(--ad15-menu-height,65dvh))!important;gap:20px!important}.ad15-more-section h2{border-bottom:1px solid var(--rp-line);padding-bottom:8px!important}.ad15-more-section a{min-height:54px!important}.ad15-home{gap:21px!important}.ad15-heading p:not(.eyebrow){font-size:11px}.ad15-stats{grid-template-columns:1fr 1fr!important;gap:10px!important}.ad15-stats>a{padding:17px 14px;gap:11px}.ad15-stats small{font-size:9px}.ad15-stats strong{font-size:25px}.ad15-stat-icon{width:31px;height:35px;border-radius:8px}.ad15-stat-icon svg{width:18px;height:18px}.ad15-task-grid,.ad15-rail{grid-template-columns:1fr}.ad15-section-title h2{font-size:19px!important}.ad15-task{padding:24px}.ad15-task-links a{font-size:12px;min-height:43px}.ad15-task p{font-size:12px}.ad15-note{padding:23px}.ad15-note p{font-size:12px}.ad15-recent{grid-template-columns:1fr!important;gap:18px!important}.ad15-recent>.card{padding:21px!important}.ad15-status{font-size:10px;padding-top:16px}.ad15-assignment-tools{padding:21px!important}.ad15-assignment-heading h2{font-size:20px!important}.ad15-assignment-heading p{font-size:11px}.ad15-workflow-tabs{padding-block:18px 21px}.ad15-workflow-tabs button{font-size:11px!important}.ad15-assignment-tools .admin-workflow-card .btn{width:100%}}

html body[data-theme] .app-shell .main .content .ad15-more[data-placement=above] .ad15-more-panel{top:auto;bottom:calc(100% + 8px)}

/* experience-v1416.css */
/* 1.4.16: guided start and single-surface date filters */
.gs16-hero,.gs16-banner,.gs16-finish{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;border:1px solid var(--line);border-radius:18px;background:var(--surface-2);margin-bottom:22px}.gs16-hero{background:linear-gradient(110deg,rgba(220,35,75,.09),transparent),var(--surface-2)}.gs16-hero h1{font-size:clamp(26px,3vw,44px);margin:8px 0 14px}.gs16-hero p,.gs16-banner p,.gs16-finish p{max-width:740px;line-height:1.7;color:var(--muted)}.gs16-banner h2{margin:5px 0;font-size:24px}.gs16-progress{padding:20px 0 28px}.gs16-progress>div{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.gs16-progress span{color:var(--muted);font-size:13px}.gs16-progress progress{display:block;width:100%;height:8px;border:0;border-radius:8px;accent-color:#d31b49;overflow:hidden}.gs16-progress progress::-webkit-progress-bar{background:var(--line)}.gs16-progress progress::-webkit-progress-value{background:#d31b49}.gs16-layout{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.6fr);gap:26px;margin-bottom:26px}.gs16-steps{display:grid;gap:10px;align-content:start}.gs16-steps a{display:flex;align-items:center;gap:14px;padding:18px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);color:var(--text);text-decoration:none}.gs16-steps a[aria-current]{border-color:#df3258;background:rgba(210,30,70,.08)}.gs16-steps a>span:nth-child(2){flex:1}.gs16-steps strong,.gs16-steps small{display:block}.gs16-steps small{margin-top:4px;color:var(--muted)}.gs16-number{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border-radius:50%;background:rgba(210,30,70,.1);color:var(--text)}.gs16-detail{padding:clamp(24px,4vw,54px);border:1px solid var(--line);border-radius:18px;background:var(--surface-2)}.gs16-detail h2{font-size:32px;margin:12px 0 20px}.gs16-detail>p{max-width:660px;line-height:1.8;color:var(--muted)}.gs16-status{padding:20px 0;margin:18px 0;border-block:1px solid var(--line)}.gs16-status p{color:var(--muted);font-size:14px;line-height:1.7;margin-bottom:0}.gs16-detail>form{margin-top:12px}.gs16-detail footer{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-top:35px}.gs16-detail footer a{color:var(--text);font-size:14px}.gs16-finish h2{font-size:23px}.gs16-finish button{white-space:normal}.gs16-finish button:disabled{opacity:.45;cursor:not-allowed}
html body[data-theme] #portal-content .toolbar label:has(>input[type="date"]),html body[data-theme] #portal-content .toolbar label:has(>input[type="datetime-local"]){display:flex!important;flex-direction:row!important;align-items:center;gap:12px;padding:0 14px!important;border:1px solid var(--line)!important;border-radius:10px!important;background:var(--surface-2)!important;min-width:0;min-height:48px;height:auto!important;max-height:none!important;overflow:visible!important;box-shadow:none!important}
html body[data-theme] #portal-content .toolbar label>input[type="date"],html body[data-theme] #portal-content .toolbar label>input[type="datetime-local"]{flex:1;min-width:0;width:100%;max-width:100%;border:0!important;box-shadow:none!important;background:transparent!important;border-radius:0!important;padding:12px 0!important;margin:0!important;height:auto!important;color:var(--text)}
html body[data-theme] #portal-content .toolbar label:has(>input[type="date"]):focus-within{outline:2px solid #d72650;outline-offset:2px}html body[data-theme] #portal-content .report-filter-toolbar{display:grid!important;grid-template-columns:minmax(180px,1.2fr) minmax(190px,1fr) minmax(190px,1fr) auto!important;align-items:stretch!important;gap:12px!important}html body[data-theme] #portal-content .report-filter-toolbar>select{min-width:0;width:100%}
@media(max-width:1000px){html body[data-theme] #portal-content .report-filter-toolbar{grid-template-columns:1fr 1fr!important}.gs16-layout{grid-template-columns:240px minmax(0,1fr)}}
@media(max-width:700px){.gs16-layout{grid-template-columns:1fr}.gs16-hero,.gs16-banner,.gs16-finish{align-items:flex-start;flex-direction:column;padding:22px}.gs16-progress>div{flex-direction:column}.gs16-steps{grid-template-columns:1fr 1fr}.gs16-steps a{padding:12px;gap:8px}.gs16-steps strong{font-size:13px}.gs16-steps small{font-size:11px}.gs16-steps b{display:none}.gs16-number{width:26px;height:26px}.gs16-detail h2{font-size:27px}html body[data-theme] #portal-content .report-filter-toolbar{grid-template-columns:minmax(0,1fr)!important}}

/* Legal navigation: long return text must remain reachable on small screens. */
html body .legal-public-nav .legal-nav-actions .legal-return-link{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;min-height:44px;max-width:100%;white-space:normal;text-align:center;line-height:1.4}
html body .legal-public-nav .legal-nav-actions .legal-return-link:focus-visible{outline:3px solid #d72650;outline-offset:4px}
html body .legal-public-nav .legal-nav-actions .auth-theme-switch{display:inline-flex!important;align-items:center;flex-shrink:0}

/* maintenance-v1419.css */
/* Maintenance announcement: scoped styles shared by portal and login. */
.maintenance-notice{display:flex;align-items:flex-start;gap:16px;padding:20px 22px;border:1px solid #d5b56a;border-left:4px solid #ae7019;border-radius:18px;background:#fff9ec;color:#40331b;box-sizing:border-box;min-width:0;max-width:100%;margin:0 0 22px;text-align:left;font-family:inherit}
.maintenance-notice__icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:13px;background:#f0dfb5;color:#78520d}
.maintenance-notice__icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8}
.maintenance-notice__content{flex:1;min-width:0}
.maintenance-notice__heading{display:flex;align-items:center;justify-content:space-between;gap:8px 16px;flex-wrap:wrap;margin-bottom:9px}
.maintenance-notice__kicker{font-size:.7rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#725217}
.maintenance-notice__impact{font-size:.76rem;font-weight:700;color:#654612;overflow-wrap:anywhere}
.maintenance-notice .maintenance-notice__title{display:block;font-size:1.07rem;line-height:1.45;color:inherit;overflow-wrap:anywhere}
.maintenance-notice .maintenance-notice__period{margin:5px 0 0;font-size:.85rem;line-height:1.6;color:inherit;overflow-wrap:anywhere}
.maintenance-notice__details{margin-top:12px;border-top:1px solid #dbc79a;padding-top:10px}
.maintenance-notice__details summary{cursor:pointer;font-size:.83rem;font-weight:700;color:inherit;line-height:1.55;list-style:revert}
.maintenance-notice__details>div{padding-top:8px;font-size:.87rem;line-height:1.65}
.maintenance-notice .maintenance-notice__text{white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 10px;color:inherit;font-size:inherit;line-height:inherit}
.maintenance-notice__text:last-child{margin-bottom:0}
.maintenance-notice__details summary:focus-visible{outline:2px solid currentColor;outline-offset:4px;border-radius:3px}
body[data-theme="dark"] .maintenance-notice{background:#252218;border-color:#6f592e;border-left-color:#e3b34f;color:#f2e6ca}
body[data-theme="dark"] .maintenance-notice__icon{background:#44361d;color:#f1c46c}
body[data-theme="dark"] .maintenance-notice__kicker,body[data-theme="dark"] .maintenance-notice__impact{color:#f1c46c}
body[data-theme="dark"] .maintenance-notice__details{border-color:#675431}
.maintenance-admin-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px;align-items:start}
.maintenance-admin-grid>.card,.maintenance-admin-aside,.maintenance-admin-aside>.card{min-width:0}
.maintenance-admin-aside{display:grid;gap:24px}
.maintenance-admin-aside .maintenance-notice{margin-bottom:0}
.maintenance-preview-note{margin:16px 0 0;font-size:.85rem}
.maintenance-admin-grid textarea{resize:vertical;min-height:100px}
@media(max-width:1000px){.maintenance-admin-grid{grid-template-columns:minmax(0,1fr)}.maintenance-admin-aside{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){.maintenance-notice{gap:10px;padding:16px 14px;border-radius:14px}.maintenance-notice__icon{flex-basis:32px;width:32px;height:32px;border-radius:10px}.maintenance-notice__icon svg{width:19px;height:19px}.maintenance-notice__heading{align-items:flex-start;gap:5px}.maintenance-notice .maintenance-notice__title{font-size:1rem}.maintenance-admin-grid,.maintenance-admin-aside{gap:18px}}

/* admin-v1420.css */
/* Administration uses the same surfaces, typography and controls as the portal. */
.admin-surface .content{min-width:0}
/* Keep captions above their controls instead of drawing a second field container. */
html body.admin-surface .content :is(.aw20-detail-grid form,.aw20-filters) label{display:flex;flex-direction:column;gap:8px;min-width:0;padding:0!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;font-size:.8rem;line-height:1.6}
.aw20-back{display:flex;align-items:center;gap:12px;padding:12px 18px;margin:0 12px 8px;border:1px solid var(--rp-line);border-radius:12px;color:var(--rp-muted);font-size:.81rem;font-weight:650;text-decoration:none;background:var(--rp-panel)}
.aw20-sidebar .sidebar-nav .nav-section{margin-top:20px}
.aw20-sidebar .sidebar-nav-link{min-height:42px}
.aw20-quicknav{display:flex;flex-wrap:wrap;gap:7px;padding:0 0 20px;margin:0 0 24px;border-bottom:1px solid var(--rp-line)}
.aw20-quicknav a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 13px;border:1px solid var(--rp-line);border-radius:11px;background:var(--rp-panel);color:var(--rp-muted);font-size:.79rem;font-weight:700;text-decoration:none}
.aw20-quicknav a:hover,.aw20-quicknav a.is-active{color:var(--rp-ink);border-color:var(--rp-accent);background:color-mix(in srgb,var(--rp-accent) 7%,var(--rp-panel))}
.aw20-quicknav svg{display:block;width:17px;height:17px}
.aw20-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin:0 0 28px;min-width:0}
.aw20-head>div{min-width:0}.aw20-head h1{font-size:clamp(1.55rem,2.4vw,2.15rem);line-height:1.24;letter-spacing:-.035em;margin:7px 0 10px;overflow-wrap:anywhere}.aw20-head p{max-width:70ch;line-height:1.65;margin:0}.aw20-head>.btn{flex:0 0 auto}
.aw20-environment{display:flex;gap:10px;align-items:center;padding:12px 16px;border:1px solid var(--rp-line);border-radius:12px;background:var(--rp-panel);font-size:.8rem;white-space:nowrap}.aw20-environment small{display:block;color:var(--rp-muted);margin-top:3px}.aw20-dot{display:inline-block;flex:0 0 7px;width:7px;height:7px;border-radius:50%;background:#39a68c}
.aw20-inboxes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:0 0 24px}
.aw20-inbox{display:flex;gap:18px;align-items:flex-start;min-width:0;position:relative;border:1px solid var(--rp-line);border-radius:20px;background:var(--rp-panel);padding:26px;text-decoration:none;color:var(--rp-ink);box-shadow:0 6px 24px #00000004;transition:border-color .15s,box-shadow .15s}
.aw20-inbox:hover{border-color:var(--rp-accent);box-shadow:0 8px 28px #0000000a}.aw20-inbox>div{flex:1;min-width:0}.aw20-inbox h2{font-size:1.18rem;line-height:1.4;margin:10px 0}.aw20-inbox p{font-size:.86rem;color:var(--rp-muted);line-height:1.75;margin:0}.aw20-inbox-icon{display:grid;place-items:center;flex:0 0 43px;width:43px;height:43px;border-radius:12px;background:var(--rp-soft);color:var(--rp-accent)}.aw20-inbox-icon svg{width:23px;height:23px}.aw20-inbox-count{font-size:2rem;font-weight:750;line-height:1.15;flex:0 0 auto}.aw20-inbox-count small{display:block;font-size:.7rem;font-weight:550;color:var(--rp-muted);margin-top:5px}.aw20-inbox-action{display:flex;align-items:center;gap:14px;color:var(--rp-accent);font-size:.82rem;font-weight:750;margin-top:22px}
.aw20-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:28px}.aw20-metrics>a{display:flex;flex-direction:column;justify-content:space-between;gap:14px;min-width:0;padding:20px 22px;border:1px solid var(--rp-line);border-radius:16px;background:var(--rp-panel);text-decoration:none;color:var(--rp-ink)}.aw20-metrics>a:hover{border-color:var(--rp-accent)}.aw20-metrics span{font-size:.8rem;color:var(--rp-muted);font-weight:650;line-height:1.55}.aw20-metrics strong{font-size:1.8rem;font-weight:750;line-height:1}
.aw20-results-head{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin:0 0 18px}.aw20-results-head h2{font-size:1.06rem;margin:0}.aw20-results-head>span,.aw20-results-head>p{font-size:.8rem;color:var(--rp-muted);margin:0}
.aw20-area-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.aw20-area h3{font-size:.94rem;margin:0 0 12px}.aw20-area>div{display:grid}.aw20-area a{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--rp-line);padding:13px 0;text-decoration:none;color:var(--rp-ink);min-height:48px;font-size:.81rem;line-height:1.5}.aw20-area a:last-child{border:0}.aw20-area a>span{display:flex;color:var(--rp-muted)}.aw20-area svg{width:18px;height:18px}.aw20-area strong{flex:1;min-width:0;font-weight:600;overflow-wrap:anywhere}.aw20-area b{font-weight:400;color:var(--rp-muted)}.aw20-area a:hover{color:var(--rp-accent)}
.aw20-section{margin-bottom:24px}.aw20-dashboard-lower{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:24px}.aw20-compact-list>a{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--rp-line);text-decoration:none;color:var(--rp-ink)}.aw20-compact-list>a>span:nth-child(2){min-width:0;flex:1}.aw20-compact-list strong{font-size:.85rem;overflow-wrap:anywhere}.aw20-compact-list small,.aw20-activity small{display:block;font-size:.76rem;color:var(--rp-muted);margin-top:4px;overflow-wrap:anywhere}.aw20-avatar{display:grid;place-items:center;width:35px;height:35px;flex:0 0 35px;background:var(--rp-soft);border-radius:11px;color:var(--rp-accent);font-size:.85rem;font-weight:700}.aw20-activity article{display:flex;align-items:flex-start;gap:13px;padding:14px 0;border-bottom:1px solid var(--rp-line)}.aw20-activity .aw20-dot{margin-top:7px}.aw20-activity strong{font-size:.82rem;overflow-wrap:anywhere}
.aw20-list-panel{padding:24px!important}.aw20-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;align-items:end;border-bottom:1px solid var(--rp-line);padding-bottom:24px;margin:0 0 24px}.aw20-filters--short{grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto}.aw20-filters label{min-width:0;display:flex;flex-direction:column;gap:7px;font-size:.78rem;font-weight:650}.aw20-filters .aw20-search{grid-column:span 2}.aw20-filters--short .aw20-search{grid-column:auto}.aw20-filter-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.aw20-filter-actions>a{font-size:.77rem;color:var(--rp-muted)}
.aw20-ticket-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,220px) 18px;align-items:center;gap:24px;padding:21px 8px;border-top:1px solid var(--rp-line);text-decoration:none;color:var(--rp-ink);transition:background .15s}.aw20-ticket-row:hover{background:var(--rp-soft)}.aw20-ticket-copy,.aw20-ticket-info{min-width:0}.aw20-ticket-copy h3{font-size:1rem;line-height:1.45;margin:8px 0 6px;overflow-wrap:anywhere}.aw20-ticket-copy p{font-size:.82rem;line-height:1.6;color:var(--rp-muted);margin:0;overflow-wrap:anywhere}.aw20-ticket-copy>small{font-size:.77rem;color:var(--rp-muted);display:block;margin-top:7px;overflow-wrap:anywhere}.aw20-meta{display:flex;gap:6px 14px;align-items:center;flex-wrap:wrap;color:var(--rp-muted);font-size:.72rem;font-weight:650}.aw20-ticket-info{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.aw20-ticket-info>strong{font-size:.78rem;overflow-wrap:anywhere}.aw20-ticket-info>small{font-size:.71rem;color:var(--rp-muted)}.aw20-row-arrow{color:var(--rp-accent);font-size:1.1rem}.aw20-badge{display:inline-block;max-width:100%;padding:5px 10px;border:1px solid var(--rp-line);border-radius:7px;background:var(--rp-soft);color:var(--rp-ink);font-size:.71rem;font-weight:750;line-height:1.6;overflow-wrap:anywhere}.aw20-badge--urgent{color:var(--rp-accent);background:color-mix(in srgb,var(--rp-accent) 8%,var(--rp-panel))}
.aw20-empty{text-align:center;padding:44px 15px;color:var(--rp-muted)}.aw20-empty>span{color:#39a68c;font-size:2rem}.aw20-empty h3{font-size:1rem;color:var(--rp-ink)}.aw20-empty p{font-size:.86rem;line-height:1.7}.aw20-pagination{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;margin-top:24px;padding-top:20px;border-top:1px solid var(--rp-line)}.aw20-pagination>span{font-size:.8rem;color:var(--rp-muted)}
.aw20-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:24px;align-items:start;margin-bottom:24px}.aw20-detail-grid>*,.aw20-side>*,.aw20-application{min-width:0}.aw20-side{display:grid;gap:20px}.aw20-side h2,.aw20-thread h2,.aw20-application h2{font-size:1.05rem}.aw20-backlink{display:inline-block;margin-bottom:17px;color:var(--rp-muted);font-size:.81rem;text-decoration:none}.aw20-message{margin:16px 0;padding:20px;border:1px solid var(--rp-line);border-radius:14px;background:var(--rp-panel)}.aw20-message--original{background:var(--rp-soft)}.aw20-message--staff{border-left:3px solid var(--rp-accent)}.aw20-message--note{background:color-mix(in srgb,#e5ae43 7%,var(--rp-panel));border-color:color-mix(in srgb,#e5ae43 45%,var(--rp-line))}.aw20-message header{display:flex;align-items:baseline;justify-content:space-between;gap:8px 18px;flex-wrap:wrap}.aw20-message header strong{font-size:.84rem}.aw20-message header span{font-size:.72rem;color:var(--rp-muted)}.aw20-message p,.aw20-prewrap{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.88rem;line-height:1.85;margin:13px 0 0}.aw20-compose{padding-top:20px;border-top:1px solid var(--rp-line);margin-top:24px}.aw20-compose textarea{min-height:150px;resize:vertical}.aw20-compose>.muted{font-size:.8rem;line-height:1.7}.aw20-compose-actions{display:flex;gap:12px;flex-wrap:wrap}.aw20-compose-actions .btn{white-space:normal;line-height:1.5}
.aw20-facts dl{display:grid;gap:7px;margin-bottom:0}.aw20-facts dt{font-size:.73rem;color:var(--rp-muted);margin-top:12px}.aw20-facts dd{margin:0;font-size:.85rem;overflow-wrap:anywhere}.aw20-application-data{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:26px 0}.aw20-application-data dt{font-size:.77rem;color:var(--rp-muted);margin-bottom:7px}.aw20-application-data dd{margin:0;font-weight:600;font-size:.93rem;overflow-wrap:anywhere}.aw20-application h3{font-size:.91rem}.aw20-manual-note{border-top:1px solid var(--rp-line);margin-top:30px;padding-top:24px}.aw20-manual-note>p{font-size:.85rem;color:var(--rp-muted);line-height:1.8}.aw20-delete summary{cursor:pointer;font-size:.85rem;font-weight:650}.aw20-delete>p{font-size:.8rem;line-height:1.7}
@media(max-width:1250px){.aw20-inboxes{grid-template-columns:1fr}.aw20-area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.aw20-detail-grid{grid-template-columns:minmax(0,1fr)}.aw20-side{grid-template-columns:repeat(2,minmax(0,1fr))}.aw20-metrics>a{padding:17px}.aw20-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.aw20-filters--short{grid-template-columns:repeat(2,minmax(0,1fr))}.aw20-filters--short .aw20-search{grid-column:1/-1}}
@media(max-width:700px){.aw20-head{flex-direction:column;gap:16px;margin-bottom:22px}.aw20-environment{padding:10px 13px}.aw20-quicknav{gap:6px;margin-bottom:20px;padding-bottom:16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.aw20-quicknav a{font-size:.69rem;flex-direction:column;padding:8px 4px;gap:5px;line-height:1.4}.aw20-quicknav svg{width:16px;height:16px}.aw20-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.aw20-metrics>a{padding:16px}.aw20-metrics span{font-size:.73rem}.aw20-metrics strong{font-size:1.6rem}.aw20-inbox{padding:20px;gap:14px}.aw20-inbox h2{font-size:1.05rem}.aw20-inbox-icon{display:none}.aw20-inbox-count{font-size:1.7rem}.aw20-area-grid,.aw20-dashboard-lower,.aw20-side{grid-template-columns:1fr}.aw20-list-panel{padding:18px!important}.aw20-filters{gap:13px}.aw20-filter-actions{grid-column:1/-1}.aw20-ticket-row{grid-template-columns:minmax(0,1fr) 14px;gap:10px 12px;padding:18px 0}.aw20-ticket-copy{grid-column:1}.aw20-ticket-info{grid-column:1;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 12px}.aw20-ticket-info>small{width:100%}.aw20-row-arrow{grid-column:2;grid-row:1/3;align-self:center}.aw20-message{padding:16px}.aw20-application-data{grid-template-columns:1fr;gap:20px}.aw20-compose-actions{flex-direction:column}.aw20-pagination{gap:12px}.aw20-pagination .btn{width:auto}.aw20-filters--short{grid-template-columns:1fr}.aw20-head>.btn{width:100%}}
@media(prefers-reduced-motion:reduce){.aw20-inbox,.aw20-ticket-row{transition:none}}

/* admin-v1421.css */
.aw20-metrics>article{display:flex;flex-direction:column;gap:16px;justify-content:space-between;min-width:0;padding:20px 22px;border:1px solid var(--rp-line);border-radius:16px;background:var(--rp-panel)}
.storage21-default{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr);gap:36px;margin-bottom:24px}.storage21-default h2{font-size:1.15rem}.storage21-default p{font-size:.85rem;line-height:1.8}.storage21-default form,.storage21-row form{display:grid;gap:12px;align-content:start}.storage21-default label,.storage21-row label,.storage21-search label{display:grid;gap:8px;font-size:.8rem;font-weight:650;min-width:0}.storage21-search{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding:12px 0 24px}.storage21-search label{flex:1;min-width:180px}.storage21-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,300px);gap:32px;padding:26px 0;border-top:1px solid var(--rp-line);scroll-margin-top:90px}.storage21-row h3{font-size:1rem;margin:0 0 9px;overflow-wrap:anywhere}.storage21-row p{font-size:.82rem;color:var(--rp-muted)}.storage21-row small{display:block;line-height:1.8;font-size:.75rem}.storage21-row progress{display:block;width:100%;height:8px;margin:15px 0;border:0;border-radius:8px;accent-color:var(--rp-accent);overflow:hidden;background:var(--rp-soft)}.storage21-row progress::-webkit-progress-bar{background:var(--rp-soft)}.storage21-row progress::-webkit-progress-value{background:var(--rp-accent);border-radius:8px}.storage21-row progress::-moz-progress-bar{background:var(--rp-accent)}
@media(max-width:1000px){.storage21-default{grid-template-columns:1fr;gap:16px}}
@media(max-width:700px){.storage21-row{grid-template-columns:1fr;gap:20px}.aw20-metrics>article{padding:16px}.storage21-search .btn{width:auto}.storage21-default{gap:12px}}
/* Squared theme control, using the signed-in portal palette. */
html body[data-theme] .app-shell .main .topbar form:is(#portal-theme-desktop,#portal-theme-mobile){--picker-bg:var(--rp-soft);--picker-surface:var(--rp-panel);--picker-line:var(--rp-line);--picker-muted:var(--rp-muted);--picker-ink:var(--rp-ink);display:flex!important;align-items:center!important;justify-content:flex-start!important;flex:0 0 auto!important;gap:3px!important;padding:4px!important;width:auto!important;min-width:0!important;min-height:40px!important;height:40px!important;max-height:40px!important;box-sizing:border-box!important;border:1px solid var(--picker-line)!important;border-radius:11px!important;background:var(--picker-bg)!important;box-shadow:none!important;overflow:visible!important}
html body[data-theme] .app-shell .main .topbar form:is(#portal-theme-desktop,#portal-theme-mobile) button{appearance:none!important;display:flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;min-width:36px!important;width:auto!important;min-height:30px!important;height:30px!important;max-height:30px!important;padding:0 10px!important;border:0!important;border-radius:7px!important;background:transparent!important;color:var(--picker-muted)!important;font:700 12px/1.65 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;text-align:center!important;letter-spacing:normal!important;box-shadow:none!important;transform:none!important;cursor:pointer}
html body[data-theme] .app-shell .main .topbar form:is(#portal-theme-desktop,#portal-theme-mobile) button.active{background:var(--picker-surface)!important;color:var(--picker-ink)!important;box-shadow:0 2px 5px #0001!important}
html body[data-theme] .app-shell .main .topbar form:is(#portal-theme-desktop,#portal-theme-mobile) button:focus-visible{outline:3px solid #347df1!important;outline-offset:4px!important}
@media(max-width:480px){html body[data-theme] .app-shell .main .topbar form:is(#portal-theme-desktop,#portal-theme-mobile){padding:3px!important;gap:1px!important;min-height:40px!important;border-radius:9px!important}html body[data-theme] .app-shell .main .topbar form:is(#portal-theme-desktop,#portal-theme-mobile) button{min-width:32px!important;padding:0 8px!important;font-size:10px!important;height:32px!important;min-height:32px!important;max-height:32px!important}}
@media(max-width:360px){html body[data-theme] .app-shell .main .topbar form:is(#portal-theme-desktop,#portal-theme-mobile){padding:3px!important;gap:1px!important;min-height:40px!important}html body[data-theme] .app-shell .main .topbar form:is(#portal-theme-desktop,#portal-theme-mobile) button{min-width:28px!important;padding:0 6px!important;font-size:10px!important;height:32px!important;min-height:32px!important;max-height:32px!important}}

.aw20-avatar svg{display:block;width:18px;height:18px}html body[data-theme] .app-shell .main .topbar form:is(#portal-theme-desktop,#portal-theme-mobile) button svg{display:block!important;width:14px!important;height:14px!important;stroke:currentColor!important;fill:none!important}

/* Keep the desktop controls on one shared vertical rhythm. */
html body[data-theme] .app-shell .main > .topbar .topbar-desktop-shell :is(.topbar-account-info.has-role,.topbar-account-info.name-only,.topbar-logout .btn){box-sizing:border-box!important;height:40px!important;min-height:40px!important;max-height:40px!important}
@media(min-width:900px) and (max-width:1400px){
html body[data-theme]:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet .topbar-desktop-shell :is(.topbar-account-info.has-role,.topbar-account-info.name-only,.topbar-logout .btn),
html body[data-theme]:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet form#portal-theme-desktop{height:36px!important;min-height:36px!important;max-height:36px!important}
html body[data-theme]:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet form#portal-theme-desktop{padding:3px!important}
html body[data-theme]:not(.sidebar-collapsed) .app-shell .main > .topbar.topbar--expanded-tablet form#portal-theme-desktop button{height:28px!important;min-height:28px!important;max-height:28px!important}
}

/* trial-v1420.css */
.trial20{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(30px,5vw,90px);padding-top:110px;padding-bottom:110px;border-top:1px solid var(--lp-line);scroll-margin-top:100px}
.lp15-landing:has(.trial20-form :focus) .back-to-top-btn{visibility:hidden;opacity:0;pointer-events:none}
.trial20-intro h2{font-size:clamp(2.5rem,4.4vw,4.4rem);margin:20px 0!important;line-height:1.08!important}.trial20-intro>p:not(.lp15-kicker){color:var(--lp-muted);max-width:47ch;font-size:1rem;line-height:1.85}.trial20-intro ol{display:grid;gap:24px;list-style:none;margin:34px 0 0;padding:0}.trial20-intro li{display:flex;align-items:flex-start;gap:18px}.trial20-intro li>span{font-size:.76rem;font-weight:750;color:var(--lp-red);padding-top:4px}.trial20-intro li strong{font-size:.91rem}.trial20-intro li p{color:var(--lp-muted);font-size:.85rem;line-height:1.8;margin-top:5px!important;max-width:42ch}
.trial20-card{border:1px solid var(--lp-line);background:var(--lp-surface);border-radius:24px;padding:clamp(22px,3vw,38px);box-shadow:var(--lp-shadow);align-self:start}.trial20-card>h3{font-size:1.45rem;line-height:1.4}.trial20-hint{font-size:.83rem;line-height:1.8;color:var(--lp-muted);margin-top:12px!important;margin-bottom:26px!important}.trial20-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 16px}.trial20-form label{display:flex;flex-direction:column;gap:8px;color:var(--lp-ink);font-size:.8rem;line-height:1.6;font-weight:650}.trial20-form label small{font-weight:450;color:var(--lp-muted);display:inline}.trial20-form input:not([type=checkbox]),.trial20-form textarea{display:block;min-width:0;width:100%;min-height:49px;padding:12px 14px;font:inherit;font-weight:450;line-height:1.6;border:1px solid var(--lp-line);border-radius:11px;background:var(--lp-bg);color:var(--lp-ink);box-shadow:none;outline-offset:3px}.trial20-form textarea{min-height:100px;resize:vertical}.trial20-form input::placeholder,.trial20-form textarea::placeholder{color:var(--lp-muted);opacity:.8}.trial20-full{grid-column:1/-1}.trial20-form .trial20-consent{display:flex;flex-direction:row;align-items:flex-start;gap:11px;font-weight:450;font-size:.76rem;color:var(--lp-muted);line-height:1.8}.trial20-consent input{appearance:auto;flex:0 0 18px;width:18px;height:18px;accent-color:var(--lp-red);margin:5px 0 0}.trial20-consent a{color:var(--lp-ink);text-decoration:underline;text-underline-offset:3px}.trial20-form .lp15-button{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;font-size:.84rem;line-height:1.5;white-space:normal;border:0;cursor:pointer;min-height:53px}.trial20-form .trial20-trap{display:none!important}.trial20-error{border:1px solid var(--lp-red);border-radius:12px;padding:16px;margin:20px 0;background:var(--lp-tint);font-size:.8rem;line-height:1.75;color:var(--lp-ink)}.trial20-error ul{margin:9px 0 0;padding-left:18px}.trial20-success{padding:26px 0;text-align:left}.trial20-success>span{display:grid;place-items:center;width:50px;height:50px;border-radius:14px;border:1px solid var(--lp-line);background:var(--lp-soft);color:var(--lp-red);font-size:1.5rem;margin-bottom:25px}.trial20-success h3{font-size:1.6rem}.trial20-success p{color:var(--lp-muted);font-size:.95rem;line-height:1.85;margin-top:16px!important;margin-bottom:26px!important}
@media(max-width:1000px){.trial20{gap:30px;grid-template-columns:1fr;padding-top:70px;padding-bottom:70px}.trial20-intro>p:not(.lp15-kicker){max-width:65ch}.trial20-intro ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.trial20-intro li{gap:12px}.trial20-card{width:100%}}
@media(max-width:600px){.trial20{padding-top:54px;padding-bottom:54px;scroll-margin-top:80px}.trial20-intro h2{font-size:2.7rem}.trial20-intro ol{grid-template-columns:1fr;gap:18px}.trial20-form{grid-template-columns:1fr;gap:17px}.trial20-card{padding:22px 19px;border-radius:20px}.trial20-card>h3{font-size:1.25rem}.trial20-form input:not([type=checkbox]),.trial20-form textarea{font-size:16px}.trial20-form .lp15-button{font-size:.8rem}}

.trial24-invite{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-block:22px;padding:22px 28px;border:1px solid var(--lp-line);border-left:3px solid var(--lp-red);border-radius:15px;background:var(--lp-surface)}
.trial24-invite .lp15-kicker{font-size:9px;letter-spacing:.12em;margin-bottom:7px}.trial24-invite strong{display:block;color:var(--lp-ink);font-size:clamp(17px,1.3vw,22px);line-height:1.4;letter-spacing:-.025em}.trial24-invite p:not(.lp15-kicker){color:var(--lp-muted);font-size:12px;line-height:1.7;margin-top:6px}.trial24-invite .lp15-button{flex-shrink:0;min-height:46px;font-size:12px;padding:11px 18px;gap:22px}.lp15-nav nav .trial24-nav-link{color:var(--lp-red);font-weight:750}.rp1404-registration-closed a{display:inline-flex;margin-top:10px;font-weight:700}
@media(max-width:760px){.trial24-invite{margin-block:16px;padding:18px 20px;gap:16px}.trial24-invite p:not(.lp15-kicker){font-size:12px}.trial24-invite .lp15-button{gap:14px}}
@media(max-width:600px){.trial24-invite{flex-direction:column;align-items:stretch;gap:16px;padding:18px}.trial24-invite .lp15-button{justify-content:space-between;width:100%;min-height:46px}.trial24-invite strong{font-size:19px}.trial24-invite .lp15-kicker{font-size:8px}.lp15-hero-copy .lp15-actions>.lp15-button{white-space:normal;text-align:left;line-height:1.5;gap:18px}.lp15-hero-copy .lp15-actions>.lp15-button>span{flex-shrink:0}}

