/* Service-Landing · sl-reflex.css (reflex_50, 2026-09-28; + reflex_51 Dienstplan, reflex_52 Speiseplan, reflex_53 Fahrzeugkalender, reflex_54 Uebungsanlage, reflex_55 Profil, reflex_56 Divera + Embeds)
   App-spezifische Ergaenzung zu floris-core reflex.css – alles unter .rf.
   1 Rahmen (.sl-inhalt)  2 Kollisionen Altklassen  3 Startseite (.sl-dash)  4 Systemseiten Anmelden/Fehler (.sl-sys)
   5 Dienstplan  6 Speiseplan  7 Fahrzeugkalender  8 Uebungsanlage  9 Profil  10 Divera-Verwaltung (.dv-*)  11 Embeds (.sl-emb).  Nicht von Hand in reflex.css eingreifen. */

/* ---------- 1 Rahmen + alte Variablen auf Reflex-Tokens ---------- */
.rf{--primary:var(--red);--primary-dk:#A81F16;--primary-lt:var(--red);--text:var(--ink);--text-muted:var(--mut);--border:var(--ln);--white:var(--sf);--radius:14px;--blue:var(--blu);--orange:var(--amb);--green:var(--grn);--shadow:0 1px 3px rgba(0,0,0,.08);--shadow-lg:0 8px 24px rgba(0,0,0,.12)}
.rf .sl-inhalt{width:100%;max-width:1100px;margin:0 auto;padding:2rem 1.5rem;box-sizing:border-box}
.rf .sl-inhalt.sl-neu{max-width:1440px;padding:8px 40px 48px}
@media (max-width:1180px){.rf .sl-inhalt.sl-neu{padding:8px 20px 40px}}

/* ---------- 2 Kollisionen reflex.css <-> Altklassen (Uebergangsregeln .sl-alt mit reflex_56 entfernt: alle Seiten umgebaut) ---------- */
/* reflex.css kennt .ok/.warn/.chk/.hint/a – Kollisionen mit Altklassen neutralisieren */
.rf .sl-inhalt p.hint{line-height:inherit}
.rf .sl-inhalt a:is(.fzk-btn,.fzk-day,.fzkm-tag-zelle,.fr,.ua-tag){color:var(--text)}
.rf .sl-inhalt a:is(.fzk-btn.primary,.fzk-btn.aktiv,.fzk-balken,.fzkm-chip){color:#fff}
.rf .sl-inhalt a.fzk-btn.gefahr{color:var(--primary-dk)}
.rf .sl-inhalt a.fzkm-tag.ticket{color:#8a4b00}

/* ---------- 3 Startseite (Entwurf C_Reflex / SL_Anpassen) ---------- */
.rf .sl-dash .dashboard-welcome{margin:0}
.rf .sl-dash .sl-rollen{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.rf .sl-dash .sl-rolle{font-size:12px;font-weight:600;padding:5px 10px;border-radius:99px;background:var(--sf)}
.rf .sl-dash .sl-gruss{margin:0;font-family:'Space Grotesk',sans-serif;font-size:clamp(40px,5.4vw,76px);font-weight:700;line-height:.95;letter-spacing:-.035em}
.rf .sl-dash .sl-gruss span{color:var(--red)}
.rf .sl-dash .sl-gruss-sub{margin:10px 0 0;color:var(--mut);font-size:15px}
.rf .sl-dash .sl-kopf-statisch{padding:40px 0 32px}
.rf .sl-dash .lp-kopf{align-items:flex-end;margin:0;padding:40px 0 32px;gap:16px}
.rf .sl-dash .lp-werkzeuge{gap:10px}
/* Knoepfe aus landing-anpassen.js als Reflex-Pills */
.rf .sl-dash .lp-btn{height:44px;padding:0 18px;border-radius:99px;border:1.5px solid var(--ink);background:transparent;color:var(--ink);font:700 14px 'Public Sans',sans-serif;gap:8px}
.rf .sl-dash .lp-btn:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.rf .sl-dash .lp-btn--primaer{background:var(--ink);color:var(--bg)}
.rf .sl-dash .lp-btn--primaer:hover{background:var(--red);border-color:var(--red);color:#fff}
.rf .sl-dash .lp-btn[aria-pressed="true"]{background:var(--sig);border-color:var(--sig);color:#121417}
.rf .sl-dash .lp-btn--klein{height:32px;padding:0 12px;font-size:13px}
.rf .sl-dash .lp-kat-sort .lp-btn:disabled{opacity:.35;border-color:var(--ln);color:var(--mut);background:transparent}
.rf .sl-dash .lp-leiste{background:var(--ambbg);border:0;border-radius:14px;padding:14px 18px;margin:0 0 20px;font-size:14px}
.rf .sl-dash .lp-leiste-text{color:var(--ambt)}
.rf .sl-dash.lp-ziel-modus .lp-leiste{background:var(--blubg)}
.rf .sl-dash.lp-ziel-modus .lp-leiste-text{color:var(--blut)}
.rf .sl-dash .lp-status{color:var(--mut)}
.rf .sl-dash .lp-status--ok{color:var(--grnt)}
.rf .sl-dash .lp-status--fehler{color:var(--errt)}
.rf .sl-dash .lp-admin{background:var(--sf);border:1.5px dashed var(--ln);border-radius:18px;padding:18px 22px;margin:0 0 20px;font-size:14px}
.rf .sl-dash .lp-admin h4{font-family:'Space Grotesk',sans-serif;font-size:16px;font-weight:600;color:var(--ink);margin:0 0 6px}
.rf .sl-dash .lp-admin p{color:var(--mut)}
.rf .sl-dash .lp-ziel{border-bottom-color:var(--ln)}
.rf .sl-dash .lp-ziel-info{background:var(--blubg);color:var(--blut) !important;border-radius:12px}
.rf .sl-dash :is(.lp-kat-name,.lp-ziel-wahl,.lp-ziel-filter){height:40px;box-sizing:border-box;padding:0 12px;border-radius:12px;border:1.5px solid var(--ln);background:var(--sf);color:var(--ink);font:500 14px 'Public Sans',sans-serif}
/* Kategorien als nummerierte Abschnitte */
.rf .sl-dash .lp-bereich{counter-reset:slk}
.rf .sl-dash .lp-kat{display:grid;grid-template-columns:240px minmax(0,1fr);gap:32px;margin:0;padding:20px 0;border-top:1px solid var(--ln);counter-increment:slk}
.rf .sl-dash .lp-kat:has(> .lp-kat-kopf[hidden]){grid-template-columns:minmax(0,1fr)}
.rf .sl-dash .lp-kat-kopf{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin:0;min-height:0}
.rf .sl-dash .lp-kat-kopf::before{content:counter(slk,decimal-leading-zero);font-family:'Space Grotesk',sans-serif;font-size:44px;font-weight:700;line-height:1;color:var(--red);letter-spacing:-.02em}
.rf .sl-dash .lp-kat-toggle{flex-wrap:wrap;gap:4px 8px;margin-top:4px;font-family:'Space Grotesk',sans-serif;font-size:20px;font-weight:600;line-height:1.2;color:var(--ink)}
.rf .sl-dash .lp-kat-toggle:hover{color:var(--redt)}
.rf .sl-dash .lp-kat-toggle svg{width:14px;height:14px;color:var(--mut)}
.rf .sl-dash .lp-kat-anzahl{flex-basis:100%;padding:0;background:none;border-radius:0;font-family:'Public Sans',sans-serif;font-size:13px;font-weight:400;color:var(--mut);padding-left:22px}
.rf .sl-dash .lp-kat-anzahl::after{content:' Anwendungen'}
.rf .sl-dash .lp-kat-linie{display:none}
.rf .sl-dash .lp-kat-admin,.rf .sl-dash .lp-kat-sort{flex-wrap:wrap}
.rf .sl-dash .lp-kat-name{width:100%}
/* Kachel-Raster */
.rf .sl-dash .module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.rf .sl-dash .module-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:14px;min-height:150px;box-sizing:border-box;padding:18px;border-radius:18px;border:0;background:var(--sf);color:var(--ink);text-decoration:none;box-shadow:none;transition:transform .15s,box-shadow .15s}
.rf .sl-dash .module-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.10);color:var(--ink);border:0}
.rf .sl-dash .module-icon{width:42px;height:42px;border-radius:99px;border:1.5px solid currentColor;background:none;color:inherit;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.rf .sl-dash .module-icon svg{width:20px;height:20px}
.rf .sl-dash .module-info h3{margin:0;font-family:'Space Grotesk',sans-serif;font-size:19px;font-weight:600;line-height:1.15}
.rf .sl-dash .module-info p{margin:4px 0 0;font-size:13.5px;line-height:1.35;color:var(--mut)}
.rf .sl-dash .module-arrow{position:absolute;top:18px;right:18px;font-size:0;color:var(--mut)}
.rf .sl-dash .module-arrow svg{width:18px;height:18px}
.rf .sl-dash .module-card:hover .module-arrow{color:var(--red)}
.rf .sl-dash .module-card.sl-t-hero{grid-column:span 2;background:var(--hero);color:#FFFFFF}
.rf .sl-dash .module-card.sl-t-hero .module-icon{border-color:var(--sig);color:var(--sig)}
.rf .sl-dash .module-card.sl-t-hero h3{font-size:24px}
.rf .sl-dash .module-card.sl-t-hero p{color:var(--herom)}
.rf .sl-dash .module-card.sl-t-rot{grid-column:span 2;background:var(--red);color:#FFFFFF}
.rf .sl-dash .module-card.sl-t-rot p{color:#FFE3E0}
.rf .sl-dash .module-card:is(.sl-t-hero,.sl-t-rot) .module-arrow,.rf .sl-dash .module-card:is(.sl-t-hero,.sl-t-rot):hover .module-arrow{color:inherit}
/* Bearbeiten */
.rf .sl-dash .lp-karte-werkzeug{position:absolute;top:12px;right:12px}
.rf .sl-dash :is(.lp-griff,.lp-auge){width:34px;height:34px;border-radius:99px;border:1.5px solid var(--ln);background:var(--sf2);color:var(--mut)}
.rf .sl-dash :is(.lp-griff,.lp-auge):hover{color:var(--ink);border-color:var(--ink)}
.rf .sl-dash.lp-bearbeiten .module-card:hover{transform:none}
.rf .sl-dash.lp-bearbeiten .module-card.lp-versteckt{display:flex;opacity:.5;background:repeating-linear-gradient(45deg,var(--sf),var(--sf) 8px,var(--sf2) 8px,var(--sf2) 16px);color:var(--ink)}
.rf .sl-dash.lp-bearbeiten .module-card.lp-versteckt .lp-auge{color:var(--redt);border-color:var(--red)}
.rf .sl-dash.lp-bearbeiten .lp-kat > .module-grid{border-radius:18px;min-height:150px}
.rf .sl-dash.lp-bearbeiten .lp-kat > .module-grid:empty{outline-color:var(--ln)}
.rf .sl-dash .lp-platzhalter{min-height:150px;border:2px dashed var(--red);border-radius:18px;background:var(--redbg)}
.rf .module-card.lp-zieht{box-shadow:0 16px 40px rgba(0,0,0,.25)}
/* Kompakt */
.rf .sl-dash.lp-kompakt .module-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.rf .sl-dash.lp-kompakt .module-card{min-height:0;flex-direction:row;align-items:center;justify-content:flex-start;gap:12px;padding:12px 14px;border-radius:14px}
.rf .sl-dash.lp-kompakt .module-info{flex:1;min-width:0}
.rf .sl-dash.lp-kompakt .module-info h3{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rf .sl-dash.lp-kompakt .module-card:is(.sl-t-hero,.sl-t-rot){grid-column:span 1}
.rf .sl-dash.lp-kompakt .module-icon{width:34px;height:34px}
.rf .sl-dash.lp-kompakt .module-icon svg{width:17px;height:17px}
.rf .sl-dash.lp-kompakt .module-info h3,.rf .sl-dash.lp-kompakt .module-card.sl-t-hero h3{font-size:16px}
.rf .sl-dash.lp-kompakt .module-info p,.rf .sl-dash.lp-kompakt .module-arrow{display:none}
.rf .sl-dash.lp-kompakt .lp-karte-werkzeug{position:static;margin-left:auto}
.rf .sl-dash.lp-kompakt .lp-kat{padding:14px 0}
.rf .sl-dash.lp-kompakt .lp-kat-kopf::before{font-size:28px}
.rf .sl-dash.lp-kompakt.lp-bearbeiten .lp-kat > .module-grid{min-height:60px}
@media (max-width:1180px){
  .rf .sl-dash .module-grid,.rf .sl-dash.lp-kompakt .module-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .rf .sl-dash .lp-kat{grid-template-columns:180px minmax(0,1fr);gap:20px}
}
@media (max-width:900px){
  .rf .sl-dash .module-grid,.rf .sl-dash.lp-kompakt .module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rf .sl-dash .lp-kat{grid-template-columns:minmax(0,1fr);gap:12px}
  .rf .sl-dash .lp-kat-kopf{flex-direction:row;flex-wrap:wrap;align-items:center}
  .rf .sl-dash .lp-kat-kopf::before{font-size:28px}
  .rf .sl-dash .lp-kat-anzahl{flex-basis:auto;padding-left:0}
  .rf .sl-dash .lp-kopf,.rf .sl-dash .sl-kopf-statisch{padding:24px 0 20px}
}
@media (max-width:560px){
  .rf .sl-dash .module-grid,.rf .sl-dash.lp-kompakt .module-grid{grid-template-columns:minmax(0,1fr)}
  .rf .sl-dash .module-card:is(.sl-t-hero,.sl-t-rot){grid-column:span 1}
  .rf .sl-dash .module-card{min-height:120px}
}

/* ---------- 4 Systemseiten (Entwurf SL_System) ---------- */
.rf.sl-sys .fl-main{display:flex;align-items:center;justify-content:center;padding:72px 20px 40px;box-sizing:border-box;position:relative}
.rf.sl-sys .sl-sys-th{position:absolute;top:18px;right:24px}
.rf .sl-pane{width:100%;max-width:520px;min-height:560px;border-radius:24px;padding:40px;display:flex;flex-direction:column;box-sizing:border-box;background:var(--sf);color:var(--ink)}
.rf .sl-pane.hero{background:var(--hero);color:#FFFFFF}
.rf .sl-pane .sl-logo{width:56px;height:56px;border-radius:99px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#FFFFFF}
.rf .sl-pane .sl-logo img{width:100%;height:100%;object-fit:contain}
.rf .sl-pane .sl-t{margin:28px 0 0;font-family:'Space Grotesk',sans-serif;font-size:48px;font-weight:700;letter-spacing:-.035em;line-height:.98}
.rf .sl-pane .sl-t.klein{font-size:40px}
.rf .sl-pane .sl-t span{color:var(--sig)}
.rf .sl-pane .sl-p{margin:14px 0 0;font-size:15px;line-height:1.55;color:var(--mut)}
.rf .sl-pane.hero .sl-p,.rf .sl-pane.hero .sl-hinweis{color:var(--herom)}
.rf .sl-pane .sl-aktionen{margin-top:auto;padding-top:28px;display:flex;flex-direction:column;gap:14px}
.rf .sl-pane .sl-aktionen.zeile{flex-direction:row;flex-wrap:wrap;gap:10px}
.rf .sl-pane .pill{height:52px;padding:0 22px;font-size:15px}
.rf .sl-pane .pill.sig{justify-content:flex-start}
.rf .sl-pane .sl-ms{width:20px;height:20px;flex-shrink:0}
.rf .sl-pane .sl-hinweis{font-size:13px;color:var(--mut);line-height:1.5}
.rf .sl-pane .sl-hinweis a{color:inherit;font-weight:700}
.rf .sl-pane.hero .sl-lokal{color:#FFFFFF;font-weight:600;font-size:14px}
.rf .sl-pane .sl-ausruf{font-family:'Space Grotesk',sans-serif;font-size:96px;font-weight:700;color:var(--red);line-height:.9;letter-spacing:-.04em}
.rf .sl-pane form{display:flex;flex-direction:column;gap:14px;margin-top:24px}
@media (max-width:560px){.rf .sl-pane{padding:28px;min-height:0}.rf .sl-pane .sl-t{font-size:40px}}

/* ---------- 5 Dienstplan (reflex_51, Entwuerfe SL_Dienstplan_* / P_Dienstplan) ---------- */
.rf{--dp-gf:#1F8A4C;--dp-at:#D42A1F;--dp-wt:#2F6FD6;--dp-rd:#E39A1C;--dp-ab:#6F767F;--dp-chip:#F4F5F1}
html[data-theme=dark] .rf{--dp-gf:#3CC47A;--dp-at:#FF6B5E;--dp-wt:#5B95F0;--dp-rd:#F2B040;--dp-ab:#8A8F96;--dp-chip:#22262B}
@media (prefers-color-scheme:dark){html:not([data-theme=light]) .rf{--dp-gf:#3CC47A;--dp-at:#FF6B5E;--dp-wt:#5B95F0;--dp-rd:#F2B040;--dp-ab:#8A8F96;--dp-chip:#22262B}}
.rf .dp-seite{display:flex;flex-direction:column;gap:16px;padding-top:24px}
.rf .dp-seite .h1 span.pkt{color:var(--red)}
.rf .dp-kopf{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}
.rf .dp-kopf > div:first-child{flex:1 1 320px;min-width:0}
.rf .dp-2sp{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:16px;align-items:start}
.rf .dp-liste{padding:0;overflow:hidden}
.rf .dp-row{display:grid;grid-template-columns:110px 90px 1fr 160px 130px;align-items:center;min-height:60px;padding:0 20px;border-top:1px solid var(--ln);text-decoration:none;color:var(--ink)}
.rf a.dp-row:hover{background:var(--sf2);color:var(--ink)}
.rf .dp-row.h{min-height:44px;border-top:0;font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}
.rf .dp-row.jetzt{background:var(--sf2)}
.rf .dp-row .kw{font-family:'Space Grotesk',sans-serif;font-size:22px;font-weight:700}
.rf .dp-row .go{text-align:right;font-weight:700;font-size:13px}
.rf .dp-row .rel{color:var(--mut);font-size:12px}
.rf .dp-row.arch{color:var(--mut)}
.rf .dp-leer{padding:28px 20px;color:var(--mut);border-top:1px solid var(--ln)}
.rf .dp-neu .seg{background:var(--hin);margin-bottom:16px}
.rf .dp-neu .seg button{flex:1;justify-content:center;color:#FFFFFF}
.rf .dp-neu .seg button.on{background:var(--sig);color:#121417}
.rf .dp-neu .f > label{color:var(--herom)}
.rf .dp-neu .in{background:var(--hin);border-color:var(--hl);color:#FFFFFF}
.rf .dp-neu p{font-size:12.5px;color:var(--herom);margin:12px 0 14px}
/* Wochenraster (Ansicht + Bearbeiten) */
.rf .dp{background:var(--sf);border-radius:18px;overflow:hidden}
.rf .dp-scroll{overflow-x:auto}
.rf .dp-scroll .dp{min-width:980px}
.rf .dp .r,.rf .dp .hr{display:grid;grid-template-columns:220px repeat(5,minmax(0,1fr))}
.rf .dp .r{border-top:1px solid var(--ln);min-height:44px}
.rf .dp .r > div{padding:6px 10px;display:flex;flex-wrap:wrap;gap:4px;align-content:center;align-items:center;border-left:1px solid var(--ln)}
.rf .dp .r > div:first-child{border-left:0;font-weight:700;font-size:14px;gap:10px;flex-wrap:nowrap;padding-left:14px}
.rf .dp .hr{min-height:48px}
.rf .dp .hr div{display:flex;align-items:center;padding:0 12px;font-family:'Space Grotesk',sans-serif;font-size:16px;font-weight:700}
.rf .dp .hr div span{font-family:'Public Sans',sans-serif;font-size:12px;color:var(--mut);font-weight:600;margin-left:8px}
.rf .dp .gh{height:30px;display:flex;align-items:center;padding:0 14px;background:var(--sf2);border-top:1px solid var(--ln);font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
.rf .dp .bar,.rf .dp-leg .bar{width:4px;height:22px;border-radius:99px;flex-shrink:0;display:inline-block;background:var(--dp-ab)}
.rf .bar.gf{background:var(--dp-gf)}.rf .bar.at{background:var(--dp-at)}.rf .bar.wt{background:var(--dp-wt)}.rf .bar.rd{background:var(--dp-rd)}.rf .bar.ab{background:var(--dp-ab)}
.rf .dp .p{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:8px;background:var(--dp-chip);font-size:13px;font-weight:600;white-space:nowrap}
.rf .dp-leg{display:flex;gap:16px;flex-wrap:wrap}
.rf .dp-leg span{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600}
.rf .dp-leg .bar{height:12px}
.rf .dp .s{width:100%;height:36px;border-radius:10px;border:1.5px solid transparent;background:var(--sf2);color:var(--ink);font:600 13px 'Public Sans',sans-serif;padding:0 6px}
.rf .dp .s:hover{border-color:var(--ln)}
.rf .dp .s.e{background:transparent;border:1.5px dashed var(--ln);color:var(--mut);font-weight:500}
.rf .dp .x{margin-left:auto;width:26px;height:26px;border-radius:99px;border:0;background:transparent;color:var(--mut);cursor:pointer;font-size:15px;flex-shrink:0}
.rf .dp .x:hover{background:var(--sf2);color:var(--redt)}
.rf .dp .add{height:36px;margin:6px 0 6px 14px;border-radius:99px;font-size:13px}
.rf .dp .adds{border-top:1px solid var(--ln);display:flex;flex-wrap:wrap;gap:0 8px}
.rf .dp-aktion{height:120px}
.rf .sb.dp-sb{max-width:1360px;margin:0 auto}
.rf .sb .pill{height:44px}
/* Archiv */
.rf .dp-filter{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;padding:16px 20px}
.rf .dp-filter form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}
.rf .dp-filter .trenn{width:1px;align-self:stretch;background:var(--ln);margin:0 4px}
.rf .dp-jahr{display:flex;align-items:center;gap:12px;margin:6px 0 0}
.rf .dp-jahr b{font-family:'Space Grotesk',sans-serif;font-size:26px}
.rf .dp-mg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.rf .dp-mo{background:var(--sf);border-radius:18px;padding:16px;display:flex;flex-direction:column;gap:4px}
.rf .dp-mo h3{margin:0 0 4px;font-family:'Space Grotesk',sans-serif;font-size:16px;font-weight:600}
.rf .dp-wk{display:flex;align-items:center;gap:6px;border-radius:12px}
.rf .dp-wk:hover{background:var(--sf2)}
.rf .dp-wk a.w{display:flex;align-items:center;gap:10px;flex:1;height:40px;padding:0 10px;text-decoration:none;color:var(--ink);font-size:14px;min-width:0}
.rf .dp-wk a.w b{font-family:'Space Grotesk',sans-serif;width:52px;flex-shrink:0}
.rf .dp-wk a.w span{color:var(--mut);font-size:12.5px}
.rf .dp-wk a.xl{font-size:12px;font-weight:700;color:var(--mut);text-decoration:none;padding:0 10px;white-space:nowrap}
.rf .dp-wk a.xl:hover{color:var(--redt)}
@media (max-width:1180px){.rf .dp-2sp{grid-template-columns:minmax(0,1fr)}.rf .dp-mg{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.rf .dp-row{grid-template-columns:64px 1fr 110px;padding:10px 14px}.rf .dp-row > :nth-child(2),.rf .dp-row > :nth-child(5){display:none}.rf .dp-mg{grid-template-columns:minmax(0,1fr)}.rf .sb.dp-sb{left:12px;right:12px;height:auto;flex-wrap:wrap;padding:10px 14px;border-radius:18px}}

/* ---------- 6 Speiseplan (reflex_52, Entwuerfe SL_Speiseplan / SL_Speiseplan_Verwalten) ---------- */
.rf .sp-seite{display:flex;flex-direction:column;gap:16px;padding-top:24px}
.rf .sp-seite .h1 span.pkt{color:var(--red)}
.rf .sp-seite .h2{margin:0}
.rf .sp-kopf{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap}
.rf .sp-titel{flex:1 1 420px;min-width:0}
.rf .sp-titel .sub b{color:var(--ink)}
.rf .sp-betrag{padding:16px 22px;display:flex;align-items:center;gap:22px}
.rf .sp-betrag-wert{font-size:32px}
.rf .sp-betrag-hint{font-size:12px;color:var(--herom)}
.rf .sp-legende{display:flex;flex-direction:column;gap:6px}
.rf .sp-person{align-self:flex-start}
.rf .sp-person a{color:inherit}
.rf .sp-kiosk{max-width:640px}
.rf .sp-kiosk-form{display:flex;align-items:flex-end;gap:12px;margin-top:16px;flex-wrap:wrap}
.rf .sp-kiosk-form .f{flex:1 1 260px}
.rf .sp-kiosk-form .pill{height:44px}
.rf .sp-leer{color:var(--mut)}
/* Buchen: Wochen + Tageskarten */
.rf .sp-wh{display:flex;align-items:baseline;gap:10px;margin-top:4px}
.rf .sp-wh b{font-family:'Space Grotesk',sans-serif;font-size:20px}
.rf .sp-wk{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:8px}
.rf .sp-day{background:var(--sf);border-radius:18px;padding:16px;display:flex;flex-direction:column;gap:10px;min-height:178px;box-sizing:border-box}
.rf .sp-day.sel{box-shadow:inset 0 0 0 2px var(--ink)}
.rf .sp-day.past{background:var(--sf2)}
.rf .sp-day.past .sp-dg{color:var(--mut)}
.rf .sp-day.past.sel{box-shadow:inset 0 0 0 2px var(--ln)}
.rf .sp-dh{display:flex;align-items:center;justify-content:space-between;gap:6px;flex-wrap:wrap}
.rf .sp-dd{font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:700}
.rf .sp-dg{font-family:'Space Grotesk',sans-serif;font-size:19px;font-weight:600;line-height:1.2;overflow-wrap:break-word;hyphens:auto}
.rf .sp-tog{margin-top:auto;display:flex;align-items:center;gap:10px;min-height:44px;padding:0 14px;border-radius:14px;background:var(--sf2);font-weight:700;font-size:14px;cursor:pointer;box-sizing:border-box}
.rf .sp-tog input,.rf .sp-pz input[type=checkbox]{width:20px;height:20px;margin:0;accent-color:#D42A1F;flex-shrink:0}
.rf .sp-day.sel .sp-tog{background:var(--ink);color:var(--bg)}
.rf .sp-tog.aus{background:transparent;padding:0;min-height:0;color:var(--mut);font-weight:600;font-size:13px;cursor:default}
.rf .sp-day.sel .sp-tog.aus{background:transparent;color:var(--mut)}
.rf .sp-tog.gesperrt{cursor:not-allowed;color:var(--errt);background:var(--errbg);font-size:13px}
.rf .sp-pos{margin-top:auto;display:flex;flex-direction:column;gap:6px}
.rf .sp-pz{display:flex;align-items:center;gap:8px}
.rf .sp-pz label{display:flex;align-items:center;gap:8px;flex:1;min-width:0;font-weight:600;font-size:14px;cursor:pointer}
.rf .sp-pz .sp-stk{width:64px;height:34px;padding:0 8px;text-align:center}
.rf .sp-pz input:disabled + span{color:var(--mut)}
.rf .sp-frist{font-size:13px;font-weight:600;color:var(--mut)}
.rf .sb.sp-sb #sp-status{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.rf .sb .pill:disabled{opacity:.4;cursor:default;background:transparent;color:#FFFFFF}
.rf .sp-ov .dlg{max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);overflow:auto}
.rf .sp-dlg-kopf{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.rf .sp-dlg-kopf h2{color:var(--redt)}
.rf .sp-dlg-liste{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px;font-size:14px}
.rf .sp-dlg-liste b{font-family:'Space Grotesk',sans-serif}
/* Verwalten: Kalender + Seitenleiste */
.rf .sp-blaettern{display:flex;align-items:center;gap:8px}
.rf a.icb{text-decoration:none}
.rf .sp-freigabe{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 12px 12px 18px;border-radius:14px;background:var(--ambbg);color:var(--ambt);font-size:14px}
.rf .sp-freigabe span{flex:1 1 280px}
.rf .sp-2sp{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:16px;align-items:start}
.rf .sp-kal{display:flex;flex-direction:column;gap:8px}
.rf .sp-cal{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.rf .sp-cal-h{padding:0 4px}
.rf .sp-cell{background:var(--sf);border-radius:14px;padding:12px;min-height:112px;box-sizing:border-box;display:flex;flex-direction:column;gap:6px;text-decoration:none;color:var(--ink)}
.rf a.sp-cell:hover{box-shadow:inset 0 0 0 1.5px var(--ln);color:var(--ink)}
.rf a.sp-cell.on{box-shadow:inset 0 0 0 2px var(--ink)}
.rf .sp-cell.vorbei{background:var(--sf2)}
.rf .sp-cd{font-family:'Space Grotesk',sans-serif;font-size:13px;font-weight:700;color:var(--mut)}
.rf .sp-cg{font-weight:700;font-size:14px;line-height:1.3;overflow-wrap:break-word;hyphens:auto}
.rf .sp-cell.leer .sp-cg{color:var(--mut);font-weight:600}
.rf .sp-cn{margin-top:auto;display:flex;gap:4px;align-items:center;flex-wrap:wrap}
.rf .sp-aside{position:sticky;top:16px}
.rf .sp-panel{display:flex;flex-direction:column;gap:14px}
.rf .sp-panel[hidden]{display:none}
.rf .sp-panel-kopf{display:flex;align-items:center;justify-content:space-between;gap:10px}
.rf .sp-tagform{display:flex;flex-direction:column;gap:14px}
.rf .sp-chk{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;cursor:pointer}
.rf .sp-chk input{width:18px;height:18px;margin:0;accent-color:#D42A1F}
.rf .sp-knoepfe{display:flex;gap:8px}
.rf .sp-knoepfe .pill.dk{flex-grow:1}
.rf .sp-block{border-top:1px solid var(--ln);padding-top:14px;margin:0;display:flex;flex-direction:column;gap:8px}
.rf .sp-posz{display:flex;flex-direction:column;font-size:14px}
.rf .sp-namen,.rf .sp-nm-leg{display:flex;flex-wrap:wrap;gap:4px}
.rf .sp-nm{display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:99px;font-size:12.5px;font-weight:700;background:var(--redbg);color:var(--redt)}
.rf .sp-nm.bezahlt{background:var(--grnbg);color:var(--grnt)}
.rf .sp-nm.eingeladen{background:var(--blubg);color:var(--blut)}
.rf .sp-nm-leg{margin-top:2px}
.rf .sp-nm-leg .sp-nm{height:18px;font-size:11px;padding:0 7px}
.rf .sp-nachbuchen{flex-direction:row;align-items:center}
.rf .sp-nachbuchen .in{flex:1;min-width:0}
.rf .sp-nachbuchen .pill{height:38px}
/* Buchungen & Zahlungen */
.rf .sp-zahl-kopf{display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}
.rf .sp-zahl-kopf .h2{flex-grow:1}
.rf .sp-filter{background:var(--sf2)}
.rf .sp-er{display:grid;grid-template-columns:200px 70px 110px minmax(0,1fr) 130px;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--ln)}
.rf .sp-er.h{border-top:0;font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mut);padding:0 0 8px;border-bottom:1.5px solid var(--ink)}
.rf .sp-er.h + .sp-er{border-top:0}
.rf .sp-er[hidden]{display:none}
.rf .sp-prog{height:6px;border-radius:99px;background:var(--gry);overflow:hidden;margin-top:6px;max-width:170px}
.rf .sp-prog span{display:block;height:100%;background:var(--grn);border-radius:99px;transition:width .2s}
.rf .sp-offen{color:var(--mut);font-weight:600;font-family:'Public Sans',sans-serif}
.rf .sp-offen.rot{color:var(--errt);font-family:'Space Grotesk',sans-serif;font-weight:700}
.rf .sp-bzs{display:flex;flex-wrap:wrap}
.rf .sp-bz{display:inline-flex;align-items:center;gap:2px;height:28px;padding:0 2px 0 8px;border-radius:99px;border:1.5px solid var(--ln);font-size:12.5px;font-weight:700;margin:2px 4px 2px 0;background:var(--sf);box-sizing:border-box}
.rf .sp-bz[hidden]{display:none}
.rf .sp-bz label{display:inline-flex;align-items:center;gap:5px;cursor:pointer;white-space:nowrap}
.rf .sp-bz input{width:15px;height:15px;margin:0;accent-color:#1F8A4C}
.rf .sp-bz.paid{background:var(--grnbg);border-color:transparent;color:var(--grnt)}
.rf .sp-bz.inv{background:var(--gry);border-color:transparent;color:var(--gryt)}
.rf .sp-bz.inv{padding-right:2px}
.rf .sp-bz .sp-bz-auto{display:inline-flex;align-items:center;white-space:nowrap;cursor:default}
.rf .sp-bz button{width:22px;height:22px;border-radius:99px;border:0;background:transparent;color:var(--mut);cursor:pointer;font-size:14px;padding:0;line-height:1}
.rf .sp-bz button:hover{color:var(--redt);background:var(--redbg)}
.rf .sp-er-akt{text-align:right}
.rf .sp-er-akt .ch{display:none}
.rf .sp-er.erledigt .sp-er-akt .ch{display:inline-flex}
.rf .sp-er.erledigt [data-alle-bezahlt]{display:none}
.rf .sp-zahl-fuss{display:flex;align-items:center;gap:12px;margin-top:14px;flex-wrap:wrap}
.rf .sp-zahl-fuss b{color:var(--ink)}
/* Esser verwalten */
.rf .sp-esser-kopf{display:flex;align-items:flex-end;gap:12px;margin-bottom:14px;flex-wrap:wrap}
.rf .sp-esser-kopf > div{flex:1 1 320px}
.rf .sp-esser-kopf .hint{margin:4px 0 0}
.rf .sp-esser-neu{display:flex;gap:8px;align-items:center}
.rf .sp-esser-neu .in{width:280px;max-width:60vw}
.rf .sp-esser-neu .pill{height:38px}
.rf .sp-esser{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.rf .sp-esser form{display:flex;align-items:center;justify-content:space-between;gap:6px;height:40px;padding:0 6px 0 14px;border-radius:12px;background:var(--sf2);font-size:14px;font-weight:600;margin:0}
.rf .sp-esser form span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rf .sp-esser button{width:28px;height:28px;border-radius:99px;border:0;background:transparent;color:var(--mut);cursor:pointer;font-size:15px;flex-shrink:0}
.rf .sp-esser button:hover{background:var(--redbg);color:var(--redt)}
@media (max-width:1180px){
  .rf .sp-wk{grid-template-columns:repeat(3,minmax(0,1fr))}
  .rf .sp-2sp{grid-template-columns:minmax(0,1fr)}
  .rf .sp-aside{position:static}
  .rf .sp-er{grid-template-columns:170px 60px 100px minmax(0,1fr)}
  .rf .sp-er > .sp-er-akt{grid-column:4;text-align:left}
  .rf .sp-er.h > span:last-child{display:none}
  .rf .sp-esser{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:760px){
  .rf .sp-wk{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rf .sp-cal{grid-template-columns:minmax(0,1fr)}
  .rf .sp-cal-h{display:none}
  .rf .sp-cell{min-height:0}
  .rf .sp-betrag{width:100%;box-sizing:border-box;flex-wrap:wrap}
  .rf .sp-er{grid-template-columns:minmax(0,1fr) auto;gap:6px 12px}
  .rf .sp-er.h{display:none}
  .rf .sp-er > span:nth-child(2){display:none}
  .rf .sp-er > .sp-bzs,.rf .sp-er > .sp-er-akt{grid-column:1 / -1}
  .rf .sp-esser{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rf .sp-esser-neu{width:100%}
  .rf .sp-esser-neu .in{flex:1;width:auto;max-width:none}
}
@media (max-width:480px){
  .rf .sp-wk{grid-template-columns:minmax(0,1fr)}
  .rf .sp-day{min-height:0}
  .rf .sp-esser{grid-template-columns:minmax(0,1fr)}
}

/* ---------- 7 Fahrzeugkalender (reflex_53, Entwuerfe P_Fahrzeugkalender / SL_FZK_*) ---------- */
.rf{--fk-bu:var(--blu);--fk-ws:var(--red);--fk-ad:var(--grey);--fk-tp:var(--amb)}
.rf .fk-seite{display:flex;flex-direction:column;gap:16px;padding-top:24px}
.rf .fk-kopf{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}
.rf .fk-kopf > .fk-titel{flex:1 1 420px;min-width:0}
.rf .fk-kopf .sub b{color:var(--ink)}
.rf .fk-leiste{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.rf .fk-leiste form{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0}
.rf .fk-leiste .in{height:40px;border-radius:99px;border:0;font-size:14px;font-weight:600;width:auto;min-width:190px;max-width:260px}
.rf .fk-leiste .chk{background:transparent;padding:0 4px;min-height:40px}
.rf .fk-mtitel{font-family:'Space Grotesk',sans-serif;font-size:24px;font-weight:700;margin:0 8px;white-space:nowrap}
.rf .fk-leg{margin-left:auto;display:flex;gap:14px;flex-wrap:wrap}
.rf .fk-leg span{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;white-space:nowrap}
.rf .fk-leg i{width:14px;height:8px;border-radius:99px;display:inline-block}
.rf .fk-leg i.eigen{background:transparent;box-shadow:inset 0 0 0 2px var(--sig)}
.rf .fk-bu{background:var(--fk-bu)}.rf .fk-ws{background:var(--fk-ws)}.rf .fk-ad{background:var(--fk-ad)}.rf .fk-tp{background:var(--fk-tp)}
.rf .fk-hinweis{font-size:12.5px;color:var(--mut)}
/* Zeitleiste (Woche/Monat) */
.rf .fk-cal{background:var(--sf);border-radius:18px;overflow:auto;max-width:100%;position:relative}
.rf .fk-grid{min-width:100%}
.rf .fk-grid.woche{min-width:980px}
.rf .fk-grid.monat{min-width:1560px}
.rf .fk-row{display:grid;grid-template-columns:240px minmax(0,1fr);border-top:1px solid var(--ln);min-height:52px}
.rf .fk-row.kopf{border-top:0;min-height:52px;position:sticky;top:0;z-index:4;background:var(--sf)}
.rf .fk-name{position:sticky;left:0;z-index:3;background:var(--sf);border-right:1px solid var(--ln);padding:6px 14px;display:flex;flex-direction:column;justify-content:center;gap:3px;min-width:0}
.rf .fk-row.kopf .fk-name{font-size:12px;color:var(--mut);font-weight:600}
.rf .fk-name .z1{display:flex;align-items:baseline;gap:6px;white-space:nowrap;overflow:hidden;min-width:0}
.rf .fk-name a.fr{font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:700;color:var(--ink);text-decoration:none;flex-shrink:0}
.rf .fk-name .bz{font-size:12px;color:var(--mut);overflow:hidden;text-overflow:ellipsis}
.rf .fk-name .tags{display:flex;gap:4px;flex-wrap:wrap;align-items:center;font-size:12px;color:var(--mut)}
.rf .fk-name .tags em{font-style:normal;margin-right:2px}
.rf .fk-mini{display:inline-block;height:18px;line-height:18px;padding:0 7px;border-radius:99px;font-size:10.5px;font-weight:700;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box;vertical-align:middle}
.rf .fk-name-klick{cursor:pointer}
.rf .fk-row:hover > .fk-name-klick{background:var(--sf2)}
.rf .fk-row:hover > .fk-name-klick a.fr{color:var(--redt)}
.rf .fk-gruppe{height:34px;display:flex;align-items:center;padding:0 16px;font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;border-top:1px solid var(--ln);background:var(--sf2);color:var(--mut)}
.rf .fk-gruppe span{position:sticky;left:16px}
.rf .fk-gruppe.kritisch{color:var(--errt)}
.rf .fk-leer{padding:24px 16px;color:var(--mut);border-top:1px solid var(--ln)}
.rf .fk-track{position:relative;display:grid}
.rf .fk-dh{display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:12px;color:var(--mut);font-weight:600;border-left:1px solid transparent}
.rf .fk-dh b{font-family:'Space Grotesk',sans-serif;font-size:18px;color:var(--ink);line-height:1.1}
.rf .fk-grid.monat .fk-dh{font-size:10.5px}.rf .fk-grid.monat .fk-dh b{font-size:14px}
.rf .fk-dh.we{color:var(--mut);opacity:.75}
.rf .fk-dh.heute,.rf .fk-dh.heute b{color:var(--redt);opacity:1}
.rf .fk-dh.heute{background:var(--today);box-shadow:inset 0 3px 0 var(--red)}
.rf .fzk-day{display:block;border-left:1px solid var(--ln);min-height:52px;text-decoration:none}
.rf .fzk-day:first-child{border-left:0}
.rf .fzk-day.we{background:color-mix(in srgb,var(--sf2) 60%,transparent)}
.rf .fzk-day.heute{background:var(--today);box-shadow:inset 2px 0 0 var(--red)}
.rf a.fzk-day:hover{background:var(--sf2)}
.rf .sl-inhalt a.fzk-balken,.rf .fzk-balken{position:absolute;top:calc(50% - 15px);height:30px;border-radius:8px;padding:0 10px;font-size:12px;font-weight:700;line-height:1.2;color:#FFFFFF;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;display:flex;align-items:center;text-decoration:none;z-index:2;box-sizing:border-box}
.rf .fzk-balken:hover{filter:brightness(1.08)}
.rf .fzk-balken.buchung{background:var(--fk-bu)}.rf .fzk-balken.werkstatt{background:var(--fk-ws)}.rf .fzk-balken.ausser_dienst{background:var(--fk-ad)}.rf .fzk-balken.termin{background:var(--fk-tp)}
.rf .sl-inhalt a.fzk-balken.termin,.rf .sl-inhalt a.fzkm-chip.termin{color:#121417}
.rf .fzk-balken.eigen,.rf .fzkm-chip.eigen{box-shadow:inset 0 0 0 2px var(--sig)}
/* Ticket-Popup */
.rf details.fzk-tk{display:inline-block;position:relative}
.rf details.fzk-tk summary{list-style:none;cursor:pointer}
.rf details.fzk-tk summary::-webkit-details-marker{display:none}
.rf .fk-row:has(details.fzk-tk[open]){position:relative;z-index:6}
.rf .fk-row:has(details.fzk-tk[open]) .fk-name{z-index:7}
.rf .fzk-tk-pop{display:none;position:absolute;z-index:50;top:24px;left:0;background:var(--sf);border:1px solid var(--ln);border-radius:14px;box-shadow:0 12px 32px rgba(0,0,0,.18);padding:8px;min-width:280px;white-space:normal}
.rf details.fzk-tk[open] .fzk-tk-pop{display:flex;flex-direction:column}
.rf .fzk-tk-pop a{display:block;padding:8px 10px;border-radius:10px;color:var(--ink);text-decoration:none;font-size:13px;font-weight:600}
.rf .fzk-tk-pop a:hover{background:var(--sf2)}
.rf .fzk-tk-pop small{color:var(--mut);font-weight:500}
/* Tabellen-Karten */
.rf .fk-karte .h2{margin-bottom:12px}
.rf .fk-karte{overflow-x:auto}
.rf .fk-karte .tb a.oeffnen{font-weight:700;color:var(--ink)}
.rf .fk-typ{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:99px;font-size:12px;font-weight:700;white-space:nowrap;color:#FFFFFF}
.rf .fk-typ.termin{color:#121417}
.rf .fk-typ.buchung{background:var(--fk-bu)}.rf .fk-typ.werkstatt{background:var(--fk-ws)}.rf .fk-typ.ausser_dienst{background:var(--fk-ad)}.rf .fk-typ.termin{background:var(--fk-tp)}
/* Monatsansicht Fahrzeug */
.rf .fk-fzg-h1{margin:0;font-family:'Space Grotesk',sans-serif;font-size:52px;font-weight:700;letter-spacing:-.03em;line-height:1}
.rf .fk-fzg-h1 span{font-size:24px;color:var(--mut);letter-spacing:0;font-weight:600}
.rf .fk-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.rf .fk-chips a.ch{text-decoration:none}
.rf .fzkm-kal{background:var(--sf);border-radius:18px;overflow:hidden}
.rf .fzkm-kopfzeile{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));height:38px}
.rf .fzkm-kopfzeile div{display:flex;align-items:center;padding:0 12px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
.rf .fzkm-woche{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--ln);min-height:104px;row-gap:4px;padding-bottom:8px}
.rf .fzkm-tag-zelle{grid-row:1 / -1;border-left:1px solid var(--ln);display:block;text-decoration:none;color:var(--ink);position:relative}
.rf .fzkm-tag-zelle:first-child{border-left:0}
.rf .fzkm-tag-zelle.we .nr{color:var(--mut)}
.rf .fzkm-tag-zelle.aussen .nr{color:var(--mut);opacity:.5}
.rf .fzkm-tag-zelle.heute{background:var(--today);box-shadow:inset 0 2px 0 var(--red)}
.rf .fzkm-tag-zelle.heute .nr{color:var(--redt)}
.rf a.fzkm-tag-zelle:hover{background:var(--sf2)}
.rf a.fzkm-tag-zelle:hover .plus{opacity:1}
.rf .fzkm-tag-zelle .nr{position:absolute;top:6px;left:10px;font-family:'Space Grotesk',sans-serif;font-size:14px;font-weight:700}
.rf .fzkm-tag-zelle .plus{position:absolute;top:5px;right:10px;font-size:15px;font-weight:700;color:var(--redt);opacity:0}
.rf .sl-inhalt a.fzkm-chip,.rf .fzkm-chip{position:relative;z-index:1;margin:0 4px;height:26px;border-radius:8px;padding:0 10px;font-size:12px;font-weight:700;line-height:26px;color:#FFFFFF;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-decoration:none;box-sizing:border-box}
.rf .fzkm-chip:hover{filter:brightness(1.08)}
.rf .fzkm-chip.weiter-links{margin-left:0;border-top-left-radius:0;border-bottom-left-radius:0}
.rf .fzkm-chip.weiter-rechts{margin-right:0;border-top-right-radius:0;border-bottom-right-radius:0}
.rf .fzkm-chip.buchung{background:var(--fk-bu)}.rf .fzkm-chip.werkstatt{background:var(--fk-ws)}.rf .fzkm-chip.ausser_dienst{background:var(--fk-ad)}.rf .fzkm-chip.termin{background:var(--fk-tp)}
.rf .fzkm-chip .zt{font-weight:800;margin-right:4px}
/* Eintrag */
.rf .fk-2sp{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:16px;align-items:start}
.rf .fk-form{display:flex;flex-direction:column;gap:18px}
.rf .fk-g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.rf .fk-form .in{height:46px}
.rf .fk-form select.in.fz{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:17px}
.rf .fk-form textarea.in{height:auto;min-height:90px;padding:12px 14px;line-height:1.5;resize:vertical}
.rf .fk-form .in:disabled{background:var(--sf2);color:var(--ink);opacity:1}
.rf .fk-art{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.rf .fk-art label{height:52px;border-radius:14px;border:1.5px solid var(--ln);background:var(--sf);color:var(--ink);font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;position:relative;text-transform:none;letter-spacing:0;padding:0 8px;text-align:center}
.rf .fk-art label i{width:14px;height:8px;border-radius:99px;display:inline-block;flex-shrink:0}
.rf .fk-art input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.rf .fk-art label:has(input:checked){border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.rf .fk-art label:has(input:focus-visible){outline:2px solid var(--redt);outline-offset:2px}
.rf .fk-art label:has(input:disabled){cursor:default}
.rf .fk-art label:has(input:disabled:not(:checked)){opacity:.5}
.rf .fk-aside{display:flex;flex-direction:column;gap:16px}
.rf .fk-zr .kl{color:var(--herom)}
.rf .fk-zr-tag{font-family:'Space Grotesk',sans-serif;font-size:28px;font-weight:700;margin-top:8px}
.rf .fk-zr-zeit{font-size:15px;color:var(--herom);margin-top:2px}
.rf .fk-zr-bar{height:10px;border-radius:99px;background:#3A3F46;margin-top:16px;position:relative;overflow:hidden}
.rf .fk-zr-bar span{position:absolute;top:0;bottom:0;border-radius:99px;background:var(--fk-bu)}
.rf .fk-proto{font-size:13.5px;line-height:1.6}
.rf .fk-storno{display:flex;gap:8px;margin:0}
.rf .fk-storno .in{height:42px}
.rf .fk-storno .pill{height:42px}
.rf .fk-sb-platz{height:96px}
/* Kiosk-Eintrag */
.rf .fk-kiosk{max-width:1100px;margin:0 auto;width:100%;display:flex;flex-direction:column;gap:24px;padding-top:24px}
.rf .fk-kiosk-box{background:var(--sf);border-radius:28px;padding:44px;display:flex;flex-direction:column;gap:32px}
.rf .fk-kiosk-kopf{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.rf .fk-kiosk-fzg{font-family:'Space Grotesk',sans-serif;font-size:72px;font-weight:700;letter-spacing:-.04em;line-height:1}
.rf .fk-kiosk-typ{height:40px;padding:0 18px;border-radius:99px;font-size:18px;font-weight:800;display:inline-flex;align-items:center}
.rf .fk-kiosk-typ.storno{text-decoration:line-through}
.rf .fk-kiosk-zeit{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.rf .fk-kiosk-zeit > div{padding:24px;border-radius:20px;background:var(--sf2)}
.rf .fk-kiosk-zeit .kl{font-size:14px}
.rf .fk-kiosk-zeit b{display:block;font-family:'Space Grotesk',sans-serif;font-size:40px;font-weight:700;margin-top:6px}
.rf .fk-kiosk-hinweis{margin:0;font-size:16px;color:var(--mut)}
.rf .fk-kiosk-akt{display:flex;gap:14px;flex-wrap:wrap}
.rf .fk-kiosk-akt .pill{height:64px;padding:0 28px;font-size:18px;border-width:2px;flex:1 1 260px}
/* Verwalten */
.rf .fk-v2{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:16px;align-items:start}
.rf .fk-v2 > div{display:flex;flex-direction:column;gap:16px;min-width:0}
.rf .fk-karte .hint{margin:0 0 16px}
.rf .fk-karte h2.h2{margin-bottom:6px}
.rf .fk-links td.akt{white-space:nowrap}
.rf .fk-links td.akt > div{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}
.rf .fk-links td.akt form{margin:0;display:inline-flex}
.rf .fk-links .in.mono{height:36px;min-width:180px}
.rf .fk-links .erz{font-size:11.5px;color:var(--mut);font-weight:500}
.rf .fk-pers{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--ln);font-size:14px}
.rf .fk-pers .av{width:30px;height:30px;font-size:11px}
.rf .fk-pers > div{flex-grow:1;min-width:0}
.rf .fk-pers > div span{display:block;font-size:12.5px;color:var(--mut);overflow:hidden;text-overflow:ellipsis}
.rf .fk-pers form{margin:0}
.rf .fk-add{display:flex;gap:8px;margin-top:10px}
.rf .fk-add .in{height:40px;font-size:14px}
.rf .fk-add .pill{height:40px}
.rf .fk-bb-kopf{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}
.rf .fk-bb-kopf > div{flex:1 1 360px}
.rf .fk-bb-kopf .pill{margin-bottom:16px}
.rf .tb tr.fk-lz td{background:var(--sf2);font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mut);padding:8px 10px}
.rf .tb td.fk-fr{font-family:'Space Grotesk',sans-serif;font-weight:700}
.rf .fk-sw{position:relative;display:inline-block;width:44px;height:26px;cursor:pointer;vertical-align:middle}
.rf .fk-sw input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;z-index:1}
.rf .fk-sw span{position:absolute;inset:0;border-radius:99px;background:var(--gry);transition:background .15s}
.rf .fk-sw span:after{content:'';position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:99px;background:var(--sf);transition:left .15s}
.rf .fk-sw input:checked + span{background:var(--ink)}
.rf .fk-sw input:checked + span:after{left:21px;background:var(--sig)}
.rf .fk-sw input:focus-visible + span{outline:2px solid var(--redt);outline-offset:2px}
@media (max-width:1180px){
  .rf .fk-2sp,.rf .fk-v2{grid-template-columns:minmax(0,1fr)}
  .rf .fk-leg{margin-left:0;width:100%}
}
@media (max-width:760px){
  .rf .fk-row{grid-template-columns:150px minmax(0,1fr)}
  .rf .fk-name{padding:6px 10px}
  .rf .fk-name .bz{display:none}
  .rf .fk-grid.woche{min-width:720px}
  .rf .fk-fzg-h1{font-size:40px}.rf .fk-fzg-h1 span{display:block;font-size:17px;margin-top:6px}
  .rf .fzkm-woche{min-height:80px}
  .rf .fzkm-chip{font-size:11px;padding:0 5px;margin:0 2px}
  .rf .fzkm-chip .zt{display:none}
  .rf .fzkm-kopfzeile div{padding:0 6px;font-size:10.5px}
  .rf .fzkm-tag-zelle .nr{left:6px}
  .rf .fzkm-tag-zelle .nr .hx{display:none}
  .rf .fk-karte .tb .opt{display:none}
  .rf .fk-g2,.rf .fk-art{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rf .fk-kiosk-box{padding:24px;border-radius:22px;gap:20px}
  .rf .fk-kiosk-fzg{font-size:48px}
  .rf .fk-kiosk-zeit{grid-template-columns:minmax(0,1fr)}
  .rf .fk-kiosk-zeit b{font-size:28px}
  .rf .fk-links td.akt > div{justify-content:flex-start}
  .rf .fk-links thead{display:none}
  .rf .fk-links tr{display:grid;grid-template-columns:minmax(0,1fr);padding:8px 0;border-bottom:1px solid var(--ln)}
  .rf .fk-links td{border-bottom:0;padding:4px 0}
  .rf .fk-add{flex-wrap:wrap}
  .rf .sb.fk-sb{left:12px;right:12px;bottom:12px;height:auto;flex-wrap:wrap;padding:10px 12px 12px 16px;border-radius:18px;gap:8px}
  .rf .sb.fk-sb > span{width:100%;font-size:12.5px;font-weight:600}
  .rf .sb.fk-sb .pill{flex:1 1 auto}
  .rf .fk-sb-platz{height:150px}
}
@media (max-width:480px){
  .rf .fk-g2{grid-template-columns:minmax(0,1fr)}
  .rf .fk-leiste .in{min-width:0;flex:1 1 160px}
}

/* ---------- 8 Uebungsanlage (reflex_54, Entwuerfe P_Uebungsanlage / SL_UA_Verwalten) ---------- */
.rf .ua-seite{display:flex;flex-direction:column;gap:16px;padding-top:24px}
.rf .ua-kopf{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}
.rf .ua-kopf > .ua-titel{flex:1 1 420px;min-width:0}
.rf .ua-mnav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.rf .ua-2sp{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:16px;align-items:start}
.rf .ua-links,.rf .ua-rechts{display:flex;flex-direction:column;gap:12px;min-width:0}
.rf .ua-leg{display:flex;gap:18px;flex-wrap:wrap}
.rf .ua-leg span{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600}
/* Monatsraster */
.rf .ua-cal{background:var(--sf);border-radius:18px;overflow:hidden}
.rf .ua-dh,.rf .ua-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.rf .ua-dh div{height:40px;display:flex;align-items:center;padding:0 12px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
.rf .ua-tag{min-height:112px;box-sizing:border-box;padding:10px 8px;border-top:1px solid var(--ln);border-left:1px solid var(--ln);display:flex;flex-direction:column;gap:6px;min-width:0;scroll-margin-top:96px}
.rf .ua-tag:nth-child(7n+1){border-left:0}
.rf .ua-nr{display:flex;align-items:baseline;gap:6px}
.rf .ua-nr b{font-family:'Space Grotesk',sans-serif;font-size:15px}
.rf .ua-nr .ua-wt{display:none;font-size:13px;font-weight:600;color:var(--mut)}
.rf .ua-nr em{font-style:normal;font-size:12px;font-weight:800;color:var(--redt)}
.rf .ua-tag.aussen .ua-nr b{color:var(--mut);opacity:.55}
.rf .ua-tag.heute{background:var(--today);box-shadow:inset 0 0 0 2px var(--red)}
.rf .ua-tag.heute .ua-nr b{color:var(--redt)}
/* Termin im Aufsichtsplan: Status = Farbe (gruen besetzt, gelb 1 offen, rot 2 offen, grau ausgefallen) */
.rf .ua-t{--ua-c:var(--grn);--ua-bg:var(--grnbg);--ua-t:var(--grnt);display:flex;flex-direction:column;gap:4px;padding-top:6px;border-top:1px dashed var(--ln);min-width:0}
.rf .ua-nr + .ua-t{border-top:0;padding-top:0}
.rf .ua-t.st-teil{--ua-c:var(--amb);--ua-bg:var(--ambbg);--ua-t:var(--ambt)}
.rf .ua-t.st-offen{--ua-c:var(--err);--ua-bg:var(--errbg);--ua-t:var(--errt)}
.rf .ua-t.st-aus{--ua-c:var(--grey);--ua-bg:var(--gry);--ua-t:var(--gryt)}
.rf .ua-tz{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;white-space:nowrap}
.rf .ua-tz .dot{background:var(--ua-c)}
.rf .ua-t.st-aus .ua-tz span{text-decoration:line-through;color:var(--mut)}
.rf .ua-tb{font-size:11.5px;color:var(--mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rf .ua-t form{margin:0}
.rf .ua-sl{position:relative;display:flex;align-items:center;gap:4px;width:100%;box-sizing:border-box;min-height:26px;padding:3px 7px;border-radius:8px;border:0;font-family:'Public Sans',sans-serif;font-size:12px;font-weight:700;text-align:left;line-height:1.25;background:var(--grnbg);color:var(--grnt)}
.rf .ua-sl .n{flex-shrink:0;opacity:.75}
.rf .ua-sl .w{flex-grow:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rf .ua-sl .x{display:none;position:absolute;right:0;top:0;bottom:0;padding:0 7px;align-items:center;border-radius:0 8px 8px 0;background:inherit;font-size:14px;line-height:1}
.rf button.ua-sl{cursor:pointer}
.rf button.ua-sl.bes:hover .x,.rf button.ua-sl.bes:focus-visible .x{display:flex}
.rf .ua-sl.mein{background:var(--ink);color:var(--bg);box-shadow:inset 3px 0 0 var(--sig)}
.rf .ua-sl.frei{background:var(--ua-bg);color:var(--ua-t)}
.rf .ua-sl.frei:hover{box-shadow:inset 0 0 0 1.5px var(--ua-c)}
.rf .ua-slz{display:flex;gap:3px;align-items:flex-start;min-width:0}
.rf .ua-slp{display:flex;flex-direction:column;gap:3px;flex-grow:1;min-width:0}
.rf .ua-plus1{width:22px;height:26px;flex-shrink:0;border-radius:8px;border:1px dashed var(--ln);background:transparent;color:var(--mut);font:700 15px/1 'Public Sans',sans-serif;cursor:pointer;padding:0}
.rf .ua-plus1:hover,.rf .ua-plus1:focus-visible{color:var(--ink);border-color:var(--ink);border-style:solid}
.rf .ua-sl.aus{background:var(--gry);color:var(--gryt);text-decoration:line-through}
.rf .ua-sl:focus-visible{outline:2px solid var(--redt);outline-offset:1px}
.rf .ua-sl#offen:target{box-shadow:0 0 0 3px var(--sig),inset 0 0 0 1.5px var(--ua-c)}
/* rechte Spalte */
.rf .ua-next{display:flex;flex-direction:column;gap:10px}
.rf .ua-next .ua-next-d{font-size:30px}
.rf .ua-next-z{font-size:14px;font-weight:600}
.rf .ua-next-z span{color:var(--herom);font-weight:500}
.rf .ua-next .pill{align-self:flex-start;margin-top:6px}
.rf .ua-kpi{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.rf .ua-kpi .kv{margin-top:8px}
.rf .ua-kpi .hint{margin-top:4px}
.rf .ua-kpi .bar{margin-top:10px}
.rf .ua-lvbo .h2{margin-bottom:6px;font-size:18px}
.rf .ua-lvbo .hint{margin:0}
.rf .ua-lvbo ol{margin:8px 0 14px;padding-left:20px;font-size:14px;line-height:1.7}
.rf .ua-note{background:var(--redbg);font-size:13.5px;line-height:1.5}
.rf .ua-karte{overflow-x:auto}
.rf .ua-karte .h2{margin-bottom:12px}
.rf .ua-karte .tb a.oeffnen{font-weight:700;color:var(--ink)}
/* Verwalten: Kalender + Seitenleiste */
.rf .sl-inhalt a.ua-tag{color:var(--ink);text-decoration:none}
.rf .ua-cal.verw .ua-tag{min-height:104px}
.rf a.ua-tag.wahl{cursor:pointer}
.rf a.ua-tag.wahl:hover{background:var(--sf2)}
.rf a.ua-tag.heute:hover{background:var(--today)}
.rf a.ua-tag.gewaehlt{box-shadow:inset 0 0 0 2px var(--ink)}
.rf a.ua-tag.heute.gewaehlt{box-shadow:inset 0 0 0 2px var(--ink),inset 0 0 0 4px var(--red)}
.rf a.ua-tag:focus-visible{outline:2px solid var(--redt);outline-offset:-3px}
.rf .ua-tm{align-self:flex-start;max-width:100%;box-sizing:border-box;font-size:12px;font-weight:700;padding:4px 8px;border-radius:8px;background:var(--grnbg);color:var(--grnt);white-space:nowrap}
.rf .ua-tm.aus{background:var(--gry);color:var(--gryt);text-decoration:line-through}
.rf .ua-em{font-size:12px;color:var(--mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rf .ua-plus{margin-top:auto;font-size:11.5px;font-weight:700;color:var(--mut);opacity:0}
.rf a.ua-tag.leer:hover .ua-plus,.rf a.ua-tag.leer:focus-visible .ua-plus{opacity:1}
.rf .ua-panel{position:sticky;top:16px;display:flex;flex-direction:column;max-height:calc(100vh - 32px);overflow:auto;box-sizing:border-box}
.rf .ua-pan{display:none;flex-direction:column;gap:14px}
.rf .ua-pan.on{display:flex}
.rf .ua-pan-kopf{display:flex;align-items:center;justify-content:space-between;gap:10px}
.rf .ua-pan-kopf h2{margin:0;font-family:'Space Grotesk',sans-serif;font-size:20px;font-weight:700}
.rf .ua-form{display:flex;flex-direction:column;gap:12px;margin:0;padding-top:14px;border-top:1px solid var(--hl)}
.rf .ua-pan-kopf + .ua-form{border-top:0;padding-top:0}
.rf .ua-tn{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--sig)}
.rf .ua-tn span{color:var(--herom)}
.rf .ua-g2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.rf .ua-panel .f > label{color:var(--herom)}
.rf .ua-panel .in{height:42px;border-color:var(--hl);background:var(--hin);color:#FFFFFF;font-size:14px;color-scheme:dark}
.rf .ua-panel .in::placeholder{color:#8A9098}
.rf .ua-panel .in:focus{outline:none;border-color:var(--sig)}
.rf .ua-aus{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;cursor:pointer}
.rf .ua-aus input{width:18px;height:18px;accent-color:#D42A1F;margin:0}
.rf .ua-knoepfe{display:flex;gap:8px}
.rf .ua-knoepfe .pill.sig{flex-grow:1}
.rf .ua-panel .pill.rd{border-color:#FF7A6E;color:#FF7A6E}
.rf .ua-panel .pill.rd:hover{background:#FF7A6E;color:#121417}
.rf .ua-info{margin:0;font-size:12px;color:var(--herom)}
.rf details.ua-neu{display:flex;flex-direction:column;gap:12px}
.rf details.ua-neu > summary{list-style:none;border-style:dashed;width:100%}
.rf details.ua-neu > summary::-webkit-details-marker{display:none}
.rf details.ua-neu[open] > summary{display:none}
.rf details.ua-neu > .ua-form{border-top:1px solid var(--hl);padding-top:14px}
/* Verwalter / Aufsicht */
.rf .ua-rechte{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;scroll-margin-top:16px}
.rf .ua-rechte .h2{margin-bottom:6px}
.rf .ua-rechte .hint{margin:0 0 14px}
.rf .ua-pers{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--ln);font-size:14px;font-weight:600}
.rf .ua-pers .av{width:30px;height:30px;font-size:11px}
.rf .ua-pers > div{flex-grow:1;min-width:0;overflow:hidden;text-overflow:ellipsis}
.rf .ua-pers.mut{font-weight:500}
.rf .ua-pers form{margin:0}
.rf .ua-add{display:flex;gap:8px;margin-top:12px}
.rf .ua-add .in{height:40px;font-size:14px;flex:1 1 auto;min-width:0}
.rf .ua-add .pill{height:40px}
@media (max-width:1180px){
  .rf .ua-2sp{grid-template-columns:minmax(0,1fr)}
  .rf .ua-rechts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .rf .ua-rechts .ua-kpi{grid-template-columns:1fr 1fr}
  .rf .ua-panel{position:static;max-height:none;scroll-margin-top:16px}
}
@media (max-width:760px){
  .rf .ua-dh{display:none}
  .rf .ua-grid{grid-template-columns:minmax(0,1fr)}
  .rf .ua-tag{min-height:0;border-left:0}
  .rf .ua-tag.aussen{display:none}
  .rf .ua-tag.leer:not(.heute){display:none}
  .rf .ua-cal.verw .ua-tag.leer{display:flex;min-height:0}
  .rf .ua-cal.verw .ua-tag.leer .ua-plus{opacity:1;margin-top:0}
  .rf .ua-nr .ua-wt{display:inline}
  .rf .ua-nr b{display:none}
  .rf .ua-t{flex-direction:row;flex-wrap:wrap;align-items:center}
  .rf .ua-t .ua-tz,.rf .ua-t .ua-tb{width:100%}
  .rf .ua-t .ua-slz{flex:1 1 140px}
  .rf .ua-rechts,.rf .ua-rechte{grid-template-columns:minmax(0,1fr)}
  .rf .ua-add{flex-wrap:wrap}
  .rf .ua-leg{gap:10px 14px}
  .rf .ua-karte .tb{min-width:560px}
}

/* ---------- 9 Mein Profil (reflex_55, Entwurf SL_Profil) ---------- */
.rf .pf-seite{display:flex;flex-direction:column;gap:20px;padding-top:24px;max-width:1040px;margin:0 auto;width:100%}
.rf .pf-kopf .sub{margin-top:10px}
.rf .pf-2sp{display:grid;grid-template-columns:380px minmax(0,1fr);gap:16px;align-items:start}
.rf .pf-hero{display:flex;flex-direction:column;gap:14px;padding:28px;min-width:0}
.rf .pf-av{width:84px;height:84px;border-radius:99px;background:var(--sig);color:#121417;display:flex;align-items:center;justify-content:center;font-family:'Space Grotesk',sans-serif;font-size:30px;font-weight:700}
.rf .pf-name{font-family:'Space Grotesk',sans-serif;font-size:30px;font-weight:700;letter-spacing:-.02em;line-height:1.1;overflow-wrap:anywhere}
.rf .pf-mail{display:flex;flex-direction:column;gap:4px;font-size:14px;font-weight:600;overflow-wrap:anywhere;padding-bottom:4px;border-bottom:1px solid var(--hl)}
.rf .pf-mail .pf-auth{font-size:12.5px;font-weight:600;color:var(--herom);padding-bottom:10px}
.rf .pf-rollen{display:flex;gap:6px;flex-wrap:wrap}
.rf .pf-rolle{font-size:12.5px;font-weight:700;padding:5px 11px;border-radius:99px;background:var(--hin);color:#FFFFFF}
.rf .pf-rolle.lz{background:#FFFFFF;color:#121417}
.rf .pf-rolle.haupt{background:var(--sig);color:#121417}
.rf .pf-rechts{display:flex;flex-direction:column;gap:16px;min-width:0}
.rf .pf-karte{display:flex;flex-direction:column;gap:14px;padding:28px;scroll-margin-top:96px}
.rf .pf-h{margin:0;font-family:'Space Grotesk',sans-serif;font-size:20px;font-weight:700;letter-spacing:-.01em}
.rf .pf-hz{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.rf .pf-st{font-size:12.5px;font-weight:700;padding:5px 11px;border-radius:99px;background:var(--gry);color:var(--gryt);white-space:nowrap}
.rf .pf-st.an{background:var(--grnbg);color:var(--grnt)}
.rf .pf-form{display:flex;flex-direction:column;gap:10px;margin:0}
.rf .pf-form .hint{margin:0}
.rf .pf-in{height:50px;font-size:16px}
.rf .pf-g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.rf .pf-feld{display:flex;flex-direction:column;gap:10px;min-width:0}
.rf .pf-form > div:last-child{margin-top:4px}
.rf .pf-fuss{margin:0;font-size:13px;color:var(--mut);line-height:1.5}
.rf .pf-entf{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0;border-top:1px solid var(--ln);padding-top:14px}
.rf .pf-entf .pf-fuss{flex:1 1 240px}
@media (max-width:900px){
  .rf .pf-2sp{grid-template-columns:minmax(0,1fr)}
  .rf .pf-hero{padding:22px}
  .rf .pf-av{width:64px;height:64px;font-size:24px}
  .rf .pf-name{font-size:26px}
}
@media (max-width:560px){
  .rf .pf-karte{padding:20px}
  .rf .pf-g2{grid-template-columns:minmax(0,1fr)}
}

/* ---------- 10 Divera-Einbindung verwalten (reflex_56, Entwurf SL_Divera) ---------- */
.rf .dv-seite{display:flex;flex-direction:column;gap:16px;padding-top:24px}
.rf .dv-kopf .bc{margin-bottom:10px}
.rf .dv-2sp{display:grid;grid-template-columns:460px minmax(0,1fr);gap:16px;align-items:start}
.rf .dv-links{display:flex;flex-direction:column;gap:16px;min-width:0}
.rf .dv-karte{display:flex;flex-direction:column;gap:14px}
.rf .dv-h{margin:0;font-family:'Space Grotesk',sans-serif;font-size:20px;font-weight:700;letter-spacing:-.01em}
.rf .dv-p{margin:0;font-size:14px;color:var(--mut);line-height:1.5}
.rf .dv-zeile{display:flex;gap:8px}
.rf .dv-zeile .in{flex:1;min-width:0}
.rf .dv-zeile .pill{height:44px}
.rf .dv-kopiert{margin:0;font-size:13px;font-weight:700;color:var(--grnt)}
.rf .dv-seg{align-self:flex-start;background:var(--sf2)}
.rf .dv-aktionen{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.rf .dv-aktionen form{margin:0}
.rf .dv-hinweis{margin:0;font-size:12.5px;color:var(--mut);line-height:1.5}
.rf .dv-hinweis code{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px;background:var(--sf2);padding:1px 5px;border-radius:6px}
.rf .dv-leer{padding:14px 16px;border-radius:12px;background:var(--sf2);color:var(--mut);font-size:14px}
.rf .dv-status{display:flex;flex-wrap:wrap;gap:8px}
.rf .dv-rechts{display:flex;flex-direction:column;gap:8px;min-width:0}
.rf .dv-frame{border-radius:18px;overflow:hidden;border:1.5px solid var(--ln);background:#0E1012}
.rf .dv-frame iframe{display:block;width:100%;height:780px;border:0}
.rf .dv-frame-leer{height:240px;display:flex;align-items:center;justify-content:center;background:var(--sf);color:var(--mut);font-size:14px}
@media (max-width:1180px){.rf .dv-2sp{grid-template-columns:minmax(0,1fr)}.rf .dv-frame iframe{height:640px}}
@media (max-width:560px){.rf .dv-zeile{flex-direction:column}.rf .dv-seg{align-self:stretch}.rf .dv-seg button{flex:1;justify-content:center;padding:0 8px}}



/* ---------- 11 Divera-Embeds (reflex_56, Stand 2 = reflex_56c): /embed/wochenuebersicht + /embed/fahrzeuge, ohne Kopfzeile ----------
   Bewusst OHNE CSS-Variablen/Grid/gap: Divera-Monitore laufen z. T. mit IE11/Trident bzw. Chrome 109 (Access-Log).
   Hell = Basis; dunkel = html[data-theme=dark] (Standard) bzw. &theme=auto per prefers-color-scheme. Generiert: p56/emb_css.py */
body.sl-emb{margin:0;min-height:100%;font-family:'Public Sans',Segoe UI,Arial,sans-serif;font-size:15px;line-height:1.4}
body.sl-emb .emb{display:block;padding:12px}
body.sl-emb .emb-karte{border-radius:16px;padding:14px 16px;margin:0 0 12px}
body.sl-emb .emb-h{margin:0 0 10px;font-family:'Space Grotesk',Segoe UI,Arial,sans-serif;font-size:18px;font-weight:700;line-height:1.2}
body.sl-emb .emb-leer{margin:0;font-size:14px}
body.sl-emb .emb-scroll{overflow-x:auto}
body.sl-emb table{border-collapse:collapse;width:100%}
body.sl-emb .emb-dp{min-width:640px;border:1px solid;border-radius:12px;border-collapse:separate;border-spacing:0;overflow:hidden;table-layout:fixed}
body.sl-emb .emb-dp th, body.sl-emb .emb-dp td{border-style:solid;border-width:1px 0 0 1px;padding:5px 8px;text-align:left;vertical-align:middle;font-size:13.5px}
body.sl-emb .emb-dp thead th{border-top-width:0;font-family:'Space Grotesk',Segoe UI,Arial,sans-serif;font-size:14px;font-weight:700;white-space:nowrap;padding:7px 8px}
body.sl-emb .emb-dp thead th span{font-family:'Public Sans',Segoe UI,Arial,sans-serif;font-size:12px;font-weight:600}
body.sl-emb .emb-dp th:first-child, body.sl-emb .emb-dp td:first-child{border-left-width:0}
body.sl-emb .emb-dp .emb-sp1{width:170px}
body.sl-emb .emb-dp tbody th{font-weight:700;white-space:normal}
body.sl-emb .bar{display:inline-block;width:4px;height:16px;border-radius:99px;margin-right:8px;vertical-align:-3px}
body.sl-emb .emb-dp .p{display:block;word-wrap:break-word}
body.sl-emb .emb-sp{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin:-4px}
body.sl-emb .emb-tag{-ms-flex:1 1 0px;flex:1 1 0px;min-width:130px;margin:4px;border-radius:12px;padding:10px 12px}
body.sl-emb .emb-tag b{display:block;font-size:12px;margin-bottom:4px}
body.sl-emb .emb-ger{font-weight:700;font-size:15px;line-height:1.3}
body.sl-emb .emb-pos{font-size:13px;margin-top:4px;line-height:1.35}
body.sl-emb .emb-stand{margin:0 4px;font-size:12px}
body.sl-emb .fe-tb{font-size:14.5px}
body.sl-emb .fe-tb th{text-align:left;padding:6px 8px;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid}
body.sl-emb .fe-tb td{text-align:left;padding:7px 8px;border-bottom:1px solid;vertical-align:top}
body.sl-emb .fe-tb tbody tr:last-child td{border-bottom-width:0}
body.sl-emb .fe-fz{font-weight:700;white-space:nowrap}
body.sl-emb .fe-fz span{display:block;font-size:12.5px;font-weight:500}
body.sl-emb .fe-zeit{white-space:nowrap}
body.sl-emb .fe-nr{font-weight:700}
body.sl-emb .fe-typ{display:inline-block;padding:3px 10px;border-radius:99px;font-size:12.5px;font-weight:700;white-space:nowrap;line-height:18px}
body.sl-emb .fe-rot{background:#D42A1F;color:#FFFFFF}
body.sl-emb .fe-gelb{color:#121417}
body.sl-emb .fe-blau{color:#FFFFFF}
body.sl-emb .fe-alle{font-weight:700}
@media (min-width:1100px){body.sl-emb{font-size:16px}body.sl-emb .emb-h{font-size:20px}body.sl-emb .emb-dp th, body.sl-emb .emb-dp td{font-size:14.5px}body.sl-emb .fe-tb{font-size:15.5px}}
/* 11a hell */
body.sl-emb{background:#ECEDE8;color:#121417}
body.sl-emb .emb-karte{background:#FFFFFF}
body.sl-emb .emb-leer, body.sl-emb .emb-stand, body.sl-emb .emb-tag b, body.sl-emb .emb-pos, body.sl-emb .emb-dp thead th span, body.sl-emb .fe-fz span, body.sl-emb .fe-nr, body.sl-emb .fe-tb thead th{color:#5A5F66}
body.sl-emb .emb-dp{border-color:#D9DBD4}
body.sl-emb .emb-dp th, body.sl-emb .emb-dp td, body.sl-emb .fe-tb th, body.sl-emb .fe-tb td{border-color:#D9DBD4}
body.sl-emb .emb-dp thead th{background:#F4F5F1}
body.sl-emb .emb-tag{background:#F4F5F1}
body.sl-emb .bar.gf{background:#1F8A4C}
body.sl-emb .bar.at{background:#D42A1F}
body.sl-emb .bar.wt{background:#2F6FD6}
body.sl-emb .bar.rd{background:#E39A1C}
body.sl-emb .bar.ab{background:#6F767F}
body.sl-emb .fe-grau{background:#E4E6E0;color:#3D4248}
body.sl-emb .fe-gelb{background:#E39A1C}
body.sl-emb .fe-blau{background:#2F6FD6}
body.sl-emb .fe-alle{color:#146338}
/* 11b dunkel (Standard) */
html[data-theme=dark] body.sl-emb{background:#0E1012;color:#EEF0EA}
html[data-theme=dark] body.sl-emb .emb-karte{background:#181B1F}
html[data-theme=dark] body.sl-emb .emb-leer, html[data-theme=dark] body.sl-emb .emb-stand, html[data-theme=dark] body.sl-emb .emb-tag b, html[data-theme=dark] body.sl-emb .emb-pos, html[data-theme=dark] body.sl-emb .emb-dp thead th span, html[data-theme=dark] body.sl-emb .fe-fz span, html[data-theme=dark] body.sl-emb .fe-nr, html[data-theme=dark] body.sl-emb .fe-tb thead th{color:#A0A6AD}
html[data-theme=dark] body.sl-emb .emb-dp{border-color:#2B3036}
html[data-theme=dark] body.sl-emb .emb-dp th, html[data-theme=dark] body.sl-emb .emb-dp td, html[data-theme=dark] body.sl-emb .fe-tb th, html[data-theme=dark] body.sl-emb .fe-tb td{border-color:#2B3036}
html[data-theme=dark] body.sl-emb .emb-dp thead th{background:#20242A}
html[data-theme=dark] body.sl-emb .emb-tag{background:#20242A}
html[data-theme=dark] body.sl-emb .bar.gf{background:#3CC47A}
html[data-theme=dark] body.sl-emb .bar.at{background:#FF6B5E}
html[data-theme=dark] body.sl-emb .bar.wt{background:#5B95F0}
html[data-theme=dark] body.sl-emb .bar.rd{background:#F2B040}
html[data-theme=dark] body.sl-emb .bar.ab{background:#8A8F96}
html[data-theme=dark] body.sl-emb .fe-grau{background:#2B3036;color:#C4C9CF}
html[data-theme=dark] body.sl-emb .fe-gelb{background:#F2B040}
html[data-theme=dark] body.sl-emb .fe-blau{background:#4F8BEA}
html[data-theme=dark] body.sl-emb .fe-alle{color:#6FD49A}
/* 11c automatisch (Geraet) */
@media (prefers-color-scheme:dark){
html:not([data-theme]) body.sl-emb{background:#0E1012;color:#EEF0EA}
html:not([data-theme]) body.sl-emb .emb-karte{background:#181B1F}
html:not([data-theme]) body.sl-emb .emb-leer, html:not([data-theme]) body.sl-emb .emb-stand, html:not([data-theme]) body.sl-emb .emb-tag b, html:not([data-theme]) body.sl-emb .emb-pos, html:not([data-theme]) body.sl-emb .emb-dp thead th span, html:not([data-theme]) body.sl-emb .fe-fz span, html:not([data-theme]) body.sl-emb .fe-nr, html:not([data-theme]) body.sl-emb .fe-tb thead th{color:#A0A6AD}
html:not([data-theme]) body.sl-emb .emb-dp{border-color:#2B3036}
html:not([data-theme]) body.sl-emb .emb-dp th, html:not([data-theme]) body.sl-emb .emb-dp td, html:not([data-theme]) body.sl-emb .fe-tb th, html:not([data-theme]) body.sl-emb .fe-tb td{border-color:#2B3036}
html:not([data-theme]) body.sl-emb .emb-dp thead th{background:#20242A}
html:not([data-theme]) body.sl-emb .emb-tag{background:#20242A}
html:not([data-theme]) body.sl-emb .bar.gf{background:#3CC47A}
html:not([data-theme]) body.sl-emb .bar.at{background:#FF6B5E}
html:not([data-theme]) body.sl-emb .bar.wt{background:#5B95F0}
html:not([data-theme]) body.sl-emb .bar.rd{background:#F2B040}
html:not([data-theme]) body.sl-emb .bar.ab{background:#8A8F96}
html:not([data-theme]) body.sl-emb .fe-grau{background:#2B3036;color:#C4C9CF}
html:not([data-theme]) body.sl-emb .fe-gelb{background:#F2B040}
html:not([data-theme]) body.sl-emb .fe-blau{background:#4F8BEA}
html:not([data-theme]) body.sl-emb .fe-alle{color:#6FD49A}
}

/* UA-21 (uebungsanlage_21, 2026-10-06): Dialog Austragen, Frist-Hinweis, Verwalten MS365/Einstellungen */
.rf .ua-ov .dlg{max-width:min(460px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto;display:flex;flex-direction:column;gap:14px}
.rf .ua-dlg-kopf{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.rf .ua-dlg-kopf h2{margin:0;font-family:'Space Grotesk',sans-serif;font-size:20px}
.rf .ua-dlg-dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:0;font-size:14px}
.rf .ua-dlg-dl dt{color:var(--mut);font-weight:600}
.rf .ua-dlg-dl dd{margin:0;font-weight:700}
.rf .ua-dlg-knoepfe{display:flex;gap:8px;flex-wrap:wrap;margin:0}
.rf .ua-sl.bes.gesperrt{opacity:.85}
.rf .ua-sl.frei.vorbei{background:var(--gry);color:var(--gryt);cursor:default}
.rf button.ua-sl.bes .x{font-size:15px}
.rf .ua-frist{background:var(--ambbg);color:var(--ambt)}
.rf .ua-meldung{background:var(--grnbg);color:var(--grnt);font-weight:600;font-size:14px}
.rf .ua-klein{font-size:12.5px;color:var(--mut);font-weight:500}
.rf .ua-add form{margin:0}
.rf .ua-einst{display:flex;flex-direction:column;gap:12px}
.rf .ua-einst .in{height:40px;font-size:14px;max-width:200px}
.rf .ua-karte .tb .pill.sm{white-space:nowrap}
/* UA-21 Ende */

/* ---------- INFOS10 (2026-10-08): Updates & Infos (Startseite-Hinweis, Liste, Seite, Pflege) ---------- */
.rf .if-bannerblock{display:grid;gap:14px;margin:0 0 28px}
.rf .if-banner{position:relative;border-radius:18px;padding:22px 26px;background:var(--sf);color:var(--ink);box-shadow:inset 6px 0 0 var(--red)}
.rf .if-banner[hidden]{display:none}
.rf .if-b-kopf{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.rf .if-chip{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:99px;font-size:12px;font-weight:700;letter-spacing:.02em;background:var(--redbg,rgba(215,38,30,.12));color:var(--redt,var(--red));white-space:nowrap}
.rf .if-chip.pin{height:20px;font-size:11px;padding:0 8px}
.rf .if-datum{font-size:13px;color:var(--mut)}
.rf .if-b-titel{margin:0 0 10px;font-family:'Space Grotesk',sans-serif;font-size:clamp(22px,2.4vw,30px);font-weight:700;letter-spacing:-.02em;line-height:1.15}
.rf .if-text{font-size:15px;line-height:1.55;max-width:78ch}
.rf .if-text p{margin:0 0 10px}
.rf .if-text ul{margin:0 0 12px;padding-left:1.25em;list-style:disc}
.rf .if-text li{margin:0 0 4px}
.rf .if-text :is(p,ul):last-child{margin-bottom:0}
.rf .if-text a{color:var(--redt,var(--red));text-decoration:underline}
.rf .if-b-akt{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.rf .if-liste{margin:36px 0 8px}
.rf .if-l-kopf{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}
.rf .if-l-kopf h2{margin:0;font-family:'Space Grotesk',sans-serif;font-size:22px;font-weight:700;letter-spacing:-.01em}
.rf .if-link{font-size:14px;font-weight:600;color:var(--redt,var(--red))}
.rf .if-eintrag{border-radius:14px;background:var(--sf);margin:0 0 8px;padding:0 18px}
.rf .if-eintrag summary{display:flex;align-items:center;gap:12px;min-height:54px;cursor:pointer;list-style:none}
.rf .if-eintrag summary::-webkit-details-marker{display:none}
.rf .if-eintrag summary::after{content:"+";margin-left:auto;font-size:20px;color:var(--mut);padding-left:8px}
.rf .if-eintrag[open] summary::after{content:"–"}
.rf .if-titel{font-weight:700;font-size:15px;min-width:0;flex:1}
.rf .if-eintrag .if-text{padding:2px 0 18px}
.rf .if-karte{margin-bottom:14px}
.rf .if-form{display:grid;gap:8px;max-width:820px}
.rf .if-form textarea.in{height:auto;min-height:220px;padding:12px 14px;line-height:1.5;resize:vertical;font-family:inherit}
.rf .if-2sp{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.rf .if-chk{display:flex;gap:10px;align-items:center;font-size:14px}
.rf .if-chk input{width:18px;height:18px;flex:none}
.rf .if-tabwrap{overflow-x:auto}
.rf .if-tab{width:100%;border-collapse:collapse;font-size:14px}
.rf .if-tab th{padding:8px 10px;text-align:left;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--mut);border-bottom:1.5px solid var(--ink)}
.rf .if-tab td{padding:10px;border-top:1px solid var(--ln);vertical-align:middle}
.rf .if-akt{display:flex;flex-wrap:wrap;gap:6px}
.rf .if-akt form{margin:0}
.rf .if-akt .pill{height:34px;font-size:13px;padding:0 12px}
.rf .if-st{font-size:12px;font-weight:700;padding:3px 9px;border-radius:99px;background:var(--sf2);color:var(--mut)}
.rf .if-st.sichtbar{background:rgba(30,150,80,.15);color:var(--grn,#1a7f4b)}
.rf .if-st.geplant{background:rgba(220,150,0,.16);color:var(--amb,#8a4b00)}
@media (max-width:700px){.rf .if-2sp{grid-template-columns:1fr}.rf .if-banner{padding:18px}.rf .if-eintrag summary{flex-wrap:wrap;padding:10px 0}}
/* ENDE INFOS10 */

/* [EBFZK10] Genehmigung SBR: Balken "beantragt" gestrichelt */
.fzk-balken.gen-beantragt{outline:2px dashed #d98e04;outline-offset:-2px;opacity:.88}

/* ---------- INFOS11 (2026-10-09): Zielgruppen ---------- */
.rf .if-ziel{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:99px;font-size:12px;font-weight:600;background:var(--sf2);color:var(--mut)}
.rf .if-ziele{border:1px solid var(--ln);border-radius:14px;padding:14px 16px;margin:6px 0;min-width:0}
.rf .if-ziele legend{padding:0 6px}
.rf .if-zgrp{border-top:1px solid var(--ln);padding:6px 0}
.rf .if-zgrp:first-of-type{border-top:0}
.rf .if-zgrp summary{cursor:pointer;font-weight:700;font-size:14px;min-height:36px;display:flex;align-items:center;gap:8px}
.rf .if-zn{font-size:12px;font-weight:700;color:var(--redt,var(--red))}
.rf .if-zliste{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:4px 16px;padding:6px 0 10px}
/* ENDE INFOS11 */

/* [LOGINMASKE-10] Anmeldeseite: Microsoft 365 + ohne Microsoft auf einer Seite, Passwort per E-Mail-Link */
.rf .sl-pane.sl-lm{min-height:0}
.rf .sl-pane .sl-lm-ms{margin-top:28px}
.rf .sl-pane .sl-lm-oder{display:flex;align-items:center;gap:12px;margin-top:26px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
.rf .sl-pane.hero .sl-lm-oder{color:var(--herom)}
.rf .sl-pane .sl-lm-oder:before,.rf .sl-pane .sl-lm-oder:after{content:"";flex:1;height:1px;background:currentColor;opacity:.35}
.rf .sl-pane .sl-lm-form{margin-top:18px}
.rf .sl-pane .sl-lm-form .pill{justify-content:center}
.rf .sl-pane.hero .f > label{color:var(--herom)}
.rf .sl-pane.hero .sl-lm-los{background:#FFFFFF;color:#14161A;border-color:#FFFFFF}
.rf .sl-pane .sl-lm-links{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;margin-top:18px;font-size:14px}
.rf .sl-pane .sl-lm-links a{color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.rf .sl-pane .sl-lm-hinweis{margin-top:22px}
.rf .sl-pane.sl-lm .err{margin-top:16px}
.rf .sl-pane.sl-lm .sl-p strong{color:var(--ink)}

/* fzkal_41: Art "Bewegungsfahrt" (Zeitleiste, Legende, Art-Kacheln, Monatsansicht) */
.fzk-balken.bewegungsfahrt, .rf .fzk-balken.bewegungsfahrt { background: #0e8f7e; color: #fff; }
.fk-bw, .rf .fk-bw, .rf i.fk-bw, .rf .fk-leg i.fk-bw, .rf .fk-art i.fk-bw { background: #0e8f7e; }
.rf { --fk-bw: #0e8f7e; }
.fzkm-chip.bewegungsfahrt { background: #0e8f7e; color: #fff; }
.fzkm-tag.belegt-bewegungsfahrt { background: #d3f1ec; color: #0b5c51; }
