/* Aus tokens.css, styles.css, konfig.css gebaut (werkzeuge/css-einbetten.mjs). Nicht von Hand ändern.
   Für die Seite «Dateien» in WordPress: alles gilt nur in #efb-dateien-app. */
/* Rücksetzer: Regeln der Website wirken im Behälter nicht (SVG behält seine Attribute) */
#efb-dateien-app :where(:not(svg, svg *)) { all: revert; }
/* ---- tokens.css ---- */
#efb-dateien-app { color-scheme: light;   

  
  --b: #0071ED;
  --b-hell: #2F8CFF;
  --b-zart: #E6F0FD;
  --b-zart-2: #D3E4FB;
  --navy: #1B3A6B;          
  --navy-2: #24508F;
  --navy-tief: #12294D;
  --tinte: #2A2A2A;
  --tinte-2: #4B5A6E;
  --grau: #5A697D;          
  --linie: #D6E0EC;
  --linie-2: #E8EEF6;
  --flaeche: #F3F7FC;
  --flaeche-seite: #F4F7FB; 
  --gut: #1E8A55;
  --gut-zart: #E7F6EE;
  --gut-text: #14613C;
  --warn: #B4690E;
  --warn-zart: #FDF3E6;
  --warn-text: #7A4508;
  --fehler: #D2483A;
  --fehler-text: #C0392B;
  --fehler-zart: #FDECEA;
  --marke-hell: #9CC7FF;    
  --ic-hell: #8EC2FF;       

  
  --glanz: linear-gradient(135deg, #1B8CFF 0%, #0071ED 48%, #005BC2 100%);
  --glanz-text: linear-gradient(135deg, #0071ED 0%, #005BC2 100%);  
  --glanz-hell: linear-gradient(135deg, #FFFFFF 0%, #F5F9FE 52%, #E9F0FA 100%);
  --karte: linear-gradient(150deg, #FFFFFF 0%, #F7FAFE 60%, #EEF4FB 100%);
  --schrift-verlauf: linear-gradient(90deg, #2A2A2A 0%, #0071ED 148%);
  --schrift-verlauf-weiss: linear-gradient(90deg, #FFFFFF 0%, #FFFFFF 30%, #79B6FF 140%);
  --karten-kante: linear-gradient(90deg, #5AA7FF, #0071ED 40%, #1B3A6B);
  --zf-kopf: linear-gradient(120deg, #12294D 0%, #1B3A6B 60%, #24508F 100%);

  
  --s1: 0 1px 2px rgba(18, 41, 77, .06), 0 2px 8px rgba(18, 41, 77, .05);
  --s2: 0 2px 4px rgba(18, 41, 77, .05), 0 14px 34px -10px rgba(18, 41, 77, .22);
  --s3: 0 4px 10px rgba(18, 41, 77, .08), 0 28px 60px -18px rgba(18, 41, 77, .35);
  --s-blau: 0 10px 26px -8px rgba(0, 113, 237, .55);
  --s-knopf: 0 12px 26px -12px rgba(0, 113, 237, .9);
  --s-knopf-hover: 0 16px 30px -12px rgba(0, 113, 237, 1);
  --s-menue: 0 12px 32px rgba(27, 57, 106, .14);   
  --fokus-ring: 0 0 0 4px rgba(0, 113, 237, .32);   
  --fehler-ring: 0 0 0 4px rgba(210, 72, 58, .12);

  
  --aus: cubic-bezier(.215, .61, .355, 1);
  --aus-stark: cubic-bezier(.16, 1, .3, 1);
  --ein-aus: cubic-bezier(.45, 0, .2, 1);
  --feder: cubic-bezier(.34, 1.56, .64, 1);

  
  --radius: 12px;           
  --radius-klein: 10px;     
  --radius-pille: 999px;    
  --radius-menue: 5px;      
  

  
  --t-h1: clamp(32px, 4.6vw, 56px);          
  --t-titel: clamp(25px, 2.7vw, 34px);       
  --t-lead: clamp(15px, 1.4vw, 18px);
  --t-augenbraue: 12px;                      
  --t-knopf: 16.5px;                         
  --t-feld: 16px;
  --t-label: 15.5px;
  --t-klein: 13.5px;
  --t-menue: 17.64px;                      

  
  --knopf-h: 54px;                           
  --feld-h: 58px;
  --buehne-max: 1112px;                      
  --zf-breite: 330px;
  --buehne-abstand: 24px;
  --held-text-max: 623px;                    
  --kante-navy: 120px; }
/* ---- styles.css ---- */
#efb-dateien-app { color-scheme: light;
  --bg: #FAFAFA;
  --bg2: #F1F5FA;
  --bg3: #E3EBF5;
  --card: #FFFFFF;
  --ink: #2A2A2A;
  --text2: #4B4B4B;
  --muted: #666666;
  --line: #E2E7EE;
  --blue: #0071ED;
  --blue-hover: #005FCC;
  --link: #0071ED;
  --navy: #1B396A;
  --navy-hell: #2A5596;
  --hell: #1F8BFF;
  --warn: #A4460E;
  --wm-t: #2A2A2A;
  --wm-b: #0071ED;
  --shadow: 0 1px 3px rgba(27, 57, 106, .06), 0 12px 36px rgba(27, 57, 106, .10);
  --focus: 0 0 0 3px var(--bg), 0 0 0 5px var(--blue);
  --ease: cubic-bezier(.2, .7, .2, 1);
  --kopf-h: 76px; }
@media (min-width: 1240px) {
  #efb-dateien-app { --kopf-h: 112px; }
}
#efb-dateien-app * { box-sizing: border-box; }
#efb-dateien-app { -webkit-text-size-adjust: 100%; }
#efb-dateien-app { margin: 0;
  background: var(--bg);
  color: var(--ink);
  font: 400 16px/1.55 Poppins, system-ui, -apple-system, "Segoe UI", sans-serif; }
#efb-dateien-app [hidden] { display: none !important; }
#efb-dateien-app a { color: var(--link); text-underline-offset: .18em; }
#efb-dateien-app a:hover { color: var(--blue-hover); }
#efb-dateien-app :focus-visible { outline: none; box-shadow: var(--focus); }
#efb-dateien-app .sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
#efb-dateien-app .breit { width: 100%; max-width: 1440px; margin: 0 auto; padding: 0 16px; }
@media (min-width: 600px) {
  #efb-dateien-app .breit { padding: 0 30px; }
}
#efb-dateien-app .spalte { width: 100%; max-width: 880px; margin: 0 auto; padding: 0 16px; }
@media (min-width: 600px) {
  #efb-dateien-app .spalte { padding: 0 30px; }
}
#efb-dateien-app .wortmarke { display: block; width: 150px; height: 38px; }
@media (min-width: 1240px) {
  #efb-dateien-app .wortmarke { width: 180px; height: 45px; }
}
#efb-dateien-app .pfeil-unten { width: 12px; height: 12px; flex: none; transition: transform .2s var(--ease); }
@keyframes menue-auf { from { opacity: 0; transform: translateY(-8px); } }
#efb-dateien-app .held-raster { display: grid; }
#efb-dateien-app .held-text { padding: 28px 0 0; min-width: 0; }
@media (min-width: 1000px) {
  #efb-dateien-app .held-raster { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; min-height: clamp(460px, 40vw, 600px); }
  #efb-dateien-app .held-text { align-self: center; padding: 24px 0 120px; }
}
#efb-dateien-app .eyebrow { margin: 0 0 16px;
  font-size: 13px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--link); }
#efb-dateien-app h1 { margin: 0;
  font-weight: 600;
  font-size: clamp(33.6px, 20px + 3vw, 58.4px);
  line-height: 1.2;
  overflow-wrap: anywhere;
  hyphens: auto;
  text-wrap: balance; }
#efb-dateien-app .titel-verlauf { background: linear-gradient(90deg, var(--ink) 0, var(--blue) 148.38%);
  -webkit-background-clip: text; background-clip: text;
  color: transparent; -webkit-text-fill-color: transparent; }
@media (forced-colors: active) {
  #efb-dateien-app .titel-verlauf { background: none; color: CanvasText; -webkit-text-fill-color: CanvasText; }
}
#efb-dateien-app .wegweiser { margin: 0 0 22px; font-size: 14px; }
#efb-dateien-app .wegweiser ol { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 0; list-style: none; margin: 0; padding: 0; }
#efb-dateien-app .wegweiser li { display: inline-flex; align-items: center; min-width: 0; color: var(--text2); }
#efb-dateien-app .wegweiser li + li::before { content: ""; width: 6px; height: 6px; margin: 0 12px 0 10px; border-top: 1.5px solid var(--muted); border-right: 1.5px solid var(--muted); transform: rotate(45deg); flex: none; }
#efb-dateien-app .wegweiser a { color: var(--text2); text-decoration: none; transition: color .2s; }
#efb-dateien-app .wegweiser a:hover { color: var(--blue); text-decoration: underline; }
#efb-dateien-app .wegweiser [aria-current] { color: var(--link); font-weight: 500; overflow-wrap: anywhere; }
#efb-dateien-app .datum { margin: 14px 0 0; font-size: clamp(17.6px, 16px + .6vw, 23.2px); font-weight: 500; color: var(--navy); }
#efb-dateien-app .einleitung { margin: 15px 0 0; max-width: 34em; font-size: clamp(17px, 15.68px + .34vw, 19.64px); line-height: 1.4; color: var(--ink); }
#efb-dateien-app .platzhalter { display: block; height: 1em; background: var(--bg3); animation: atmen 1.6s ease-in-out infinite alternate; }
#efb-dateien-app .platzhalter.t { height: clamp(33.6px, 20px + 3vw, 58.4px); width: 76%; }
#efb-dateien-app .platzhalter.d { height: 22.4px; width: 42%; margin-top: 16px; }
@keyframes atmen { to { opacity: .45; } }
#efb-dateien-app .collage { position: relative; container-type: size; height: 210px; margin: 28px -16px 0; overflow: hidden; }
@media (min-width: 600px) {
  #efb-dateien-app .collage { margin: 32px -30px 0; height: 260px; }
}
#efb-dateien-app .held { overflow-x: clip; }
@media (min-width: 1000px) {
  #efb-dateien-app .collage { height: auto; margin: 0; overflow: visible; }
}
#efb-dateien-app .raute-bild { position: absolute; aspect-ratio: 1; overflow: hidden;
  border: 6px solid var(--bg); background: var(--navy);
  transform: rotate(45deg);
  animation: raute-ein 1s var(--ease) backwards; }
#efb-dateien-app .raute-bild img { position: absolute; left: -21%; top: -21%; width: 142%; height: 142%; object-fit: cover;
  transform: rotate(-45deg) scale(1.02);
  animation: schwenk 4.5s cubic-bezier(.3, 0, .2, 1) .4s both; }
#efb-dateien-app .r1 { width: 92cqh; left: calc(50% - 46cqh); top: 4cqh; animation-delay: .25s; z-index: 2; }
#efb-dateien-app .r2 { width: 70cqh; left: calc(16% - 35cqh); top: 22cqh; animation-delay: .1s; }
#efb-dateien-app .r3 { width: 70cqh; left: calc(84% - 35cqh); top: 22cqh; animation-delay: .4s; }
#efb-dateien-app .r2 img { animation-delay: .2s; }
#efb-dateien-app .r3 img { animation-delay: .6s; }
#efb-dateien-app .r1::after { content: ""; position: absolute; inset: -40%; pointer-events: none;
  background: linear-gradient(90deg, transparent 38%, rgba(255, 255, 255, .32) 50%, transparent 62%);
  transform: translateX(-110%) rotate(-45deg);
  animation: lichtstreif 1.8s var(--ease) 1.1s both; }
#efb-dateien-app .raute-deko { position: absolute; aspect-ratio: 1; transform: rotate(45deg); animation: raute-ein .9s var(--ease) .55s backwards; }
#efb-dateien-app .d1 { width: 9cqmin; left: 4%; top: 8%; background: var(--blue); }
#efb-dateien-app .d2 { width: 14cqmin; right: 3%; top: 6%; border: 2px solid var(--blue); animation-name: raute-ein, schweben; animation-duration: .9s, 3.5s; animation-timing-function: var(--ease), ease-in-out; animation-iteration-count: 1, 1; animation-fill-mode: backwards, forwards; animation-delay: .55s, 1.2s; }
@media (max-width: 999.98px) {
  #efb-dateien-app .d1, #efb-dateien-app .d2 { display: none; }
}
@media (min-width: 1000px) {
  #efb-dateien-app .r1 { width: 56cqmin; left: calc(58% - 28cqmin); top: calc(40% - 28cqmin); }
  #efb-dateien-app .r2 { width: 36cqmin; left: calc(22% - 18cqmin); top: calc(74% - 18cqmin); }
  #efb-dateien-app .r3 { width: 34cqmin; left: calc(80% - 17cqmin); top: calc(79% - 17cqmin); }
}
@keyframes raute-ein { from { opacity: 0; clip-path: inset(50%); } to { opacity: 1; clip-path: inset(0); } }
@keyframes schwenk { from { transform: rotate(-45deg) scale(1.12) translate(2%, -2%); } to { transform: rotate(-45deg) scale(1.02); } }
@keyframes lichtstreif { to { transform: translateX(110%) rotate(-45deg); } }
@keyframes schweben { to { transform: rotate(45deg) translate(-6px, -6px); } }
#efb-dateien-app .auftakt { animation: auftakt .75s var(--ease) backwards; animation-delay: calc(var(--n, 0) * 80ms + 80ms); }
#efb-dateien-app .n-0 { --n: 0; }
#efb-dateien-app .n-1 { --n: 1; }
#efb-dateien-app .n-2 { --n: 2; }
#efb-dateien-app .n-3 { --n: 3; }
#efb-dateien-app .n-4 { --n: 4; }
#efb-dateien-app .n-5 { --n: 5; }
#efb-dateien-app .symbole { position: absolute; }
#efb-dateien-app .wm-b { fill: var(--wm-b); }
#efb-dateien-app .wm-t { fill: var(--wm-t); }
#efb-dateien-app .wm-s { stroke: var(--wm-b); }
@keyframes auftakt { from { opacity: 0; transform: translateY(16px); } }
#efb-dateien-app .arbeit { position: relative; padding: 0 0 88px; margin-top: -48px; }
@media (min-width: 1000px) {
  #efb-dateien-app .arbeit { margin-top: -96px; }
}
#efb-dateien-app .ablage { position: relative; z-index: 3; overflow: hidden; isolation: isolate;  
  padding: 56px 28px 48px; min-height: 340px;
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  text-align: center; color: #fff;
  background:
    radial-gradient(90% 70% at 50% 0%, var(--navy-hell) 0%, transparent 65%),
    radial-gradient(60% 50% at 50% 110%, rgba(0, 113, 237, .35), transparent 70%),
    var(--navy);
  box-shadow: 0 34px 60px -34px rgba(14, 31, 59, .7);
  cursor: pointer;
  transition: transform .35s var(--ease), box-shadow .35s var(--ease); }
@media (min-width: 600px) {
  #efb-dateien-app .ablage { padding: 72px 48px 60px; min-height: 400px; }
}
#efb-dateien-app .ablage > * { position: relative; z-index: 1; }
#efb-dateien-app .ablage .licht { position: absolute; z-index: 0; top: -30%; width: 44%; height: 150%; pointer-events: none;
  background: linear-gradient(180deg, rgba(140, 195, 255, .30), rgba(140, 195, 255, .05) 60%, transparent 80%);
  clip-path: polygon(44% 0, 56% 0, 100% 100%, 0 100%);
  filter: blur(4px);
  transform-origin: 50% 0;
  opacity: .55;
  transition: opacity .35s var(--ease), rotate .5s var(--ease);
  animation: kegel 9s ease-in-out infinite alternate; }
#efb-dateien-app .ablage .l1 { left: 2%; rotate: -16deg; }
#efb-dateien-app .ablage .l2 { right: 2%; rotate: 16deg; animation-delay: -4.5s; }
@keyframes kegel { from { transform: rotate(-4deg); } to { transform: rotate(4deg); } }
#efb-dateien-app .ablage .ecke { position: absolute; width: 44px; height: 44px; border: 0 solid var(--hell); pointer-events: none;
  transition: transform .3s var(--ease), border-color .3s; }
#efb-dateien-app .ablage .ecke.tl { top: 18px; left: 18px; border-top-width: 3px; border-left-width: 3px; }
#efb-dateien-app .ablage .ecke.tr { top: 18px; right: 18px; border-top-width: 3px; border-right-width: 3px; }
#efb-dateien-app .ablage .ecke.bl { bottom: 18px; left: 18px; border-bottom-width: 3px; border-left-width: 3px; }
#efb-dateien-app .ablage .ecke.br { bottom: 18px; right: 18px; border-bottom-width: 3px; border-right-width: 3px; }
#efb-dateien-app .emblem { position: relative; width: 60px; height: 60px; margin: 6px 0 28px;
  display: grid; place-items: center; color: #fff; }
#efb-dateien-app .emblem::before { content: ""; position: absolute; inset: 0; background: var(--blue); transform: rotate(45deg);
  box-shadow: 0 0 0 0 rgba(31, 139, 255, .5); transition: transform .35s var(--ease), box-shadow .35s; }
#efb-dateien-app .emblem svg { position: relative; width: 24px; height: 24px; display: block; }
#efb-dateien-app .ablage .emblem svg { animation: heben 2.6s ease-in-out infinite; }
@keyframes heben { 50% { transform: translateY(-3px); } }
#efb-dateien-app .ablage h2 { margin: 0; font-size: clamp(21.6px, 18.4px + .8vw, 29.6px); font-weight: 600; letter-spacing: -.01em; }
#efb-dateien-app .ablage .oder { margin: 6px 0 20px; color: rgba(255, 255, 255, .72); }
#efb-dateien-app .ablage .loslassen { display: none; margin: 10px 0 0; font-size: 17px; color: rgba(255, 255, 255, .85); }
#efb-dateien-app .ablage .hinweis { margin: 24px 0 0; max-width: 34em; font-size: 14px; color: rgba(255, 255, 255, .72); }
#efb-dateien-app .ablage:hover .emblem::before { transform: rotate(45deg) scale(1.06); }
#efb-dateien-app .ablage.ueber { transform: scale(1.012); box-shadow: 0 40px 80px -30px rgba(0, 113, 237, .55); }
#efb-dateien-app .ablage.ueber .licht { opacity: 1; }
#efb-dateien-app .ablage.ueber .l1 { rotate: -6deg; }
#efb-dateien-app .ablage.ueber .l2 { rotate: 6deg; }
#efb-dateien-app .ablage.ueber .ecke { border-color: #fff; }
#efb-dateien-app .ablage.ueber .tl { transform: translate(10px, 10px); }
#efb-dateien-app .ablage.ueber .tr { transform: translate(-10px, 10px); }
#efb-dateien-app .ablage.ueber .bl { transform: translate(10px, -10px); }
#efb-dateien-app .ablage.ueber .br { transform: translate(-10px, -10px); }
#efb-dateien-app .ablage.ueber .emblem::before { transform: rotate(45deg) scale(1.16); box-shadow: 0 0 0 14px rgba(31, 139, 255, .18), 0 0 40px 6px rgba(31, 139, 255, .45); }
#efb-dateien-app .ablage.ueber .oder, #efb-dateien-app .ablage.ueber .knoepfe, #efb-dateien-app .ablage.ueber .hinweis { display: none; }
#efb-dateien-app .ablage.ueber .loslassen { display: block; }
body.zieht::after { content: ""; position: fixed; inset: 0; z-index: 20; pointer-events: none;
  background: rgba(14, 31, 59, .5); backdrop-filter: blur(2px);
  animation: einblenden .2s ease both; }
body.zieht #efb-dateien-app .ablage { z-index: 21; }
@keyframes einblenden { from { opacity: 0; } }
#efb-dateien-app .ablage.kompakt { min-height: 0; padding: 36px 28px; }
#efb-dateien-app .ablage.kompakt .emblem { width: 44px; height: 44px; margin-bottom: 20px; }
#efb-dateien-app .ablage.kompakt .emblem svg { width: 20px; height: 20px; }
#efb-dateien-app .ablage.kompakt .hinweis { display: none; }
#efb-dateien-app #band-fortsetzen { margin-bottom: 20px; }
#efb-dateien-app .knoepfe { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; }
#efb-dateien-app .knopf { font: 500 17.64px/1.2 Poppins, sans-serif;
  min-height: 50.5px; padding: 0 22.5px;
  border: 1.5px solid var(--blue); border-radius: 0;
  background: var(--blue); color: #fff;
  cursor: pointer;
  transition: background-color .3s ease-in-out, border-color .3s ease-in-out, color .3s ease-in-out, transform .3s ease-in-out; }
#efb-dateien-app .knopf:hover { background: var(--blue-hover); border-color: var(--blue-hover); color: #fff; }
#efb-dateien-app .knopf:active { transform: translateY(1px); }
#efb-dateien-app .knopf.zweit { background: transparent; color: var(--link); border-color: currentColor; }
#efb-dateien-app .knopf.zweit:hover { background: color-mix(in srgb, var(--blue) 8%, transparent); color: var(--blue-hover); }
#efb-dateien-app .ablage .knopf:hover { background: var(--hell); border-color: var(--hell); }
#efb-dateien-app .ablage .knopf.zweit { color: #fff; border-color: rgba(255, 255, 255, .55); }
#efb-dateien-app .ablage .knopf.zweit:hover { background: rgba(255, 255, 255, .1); border-color: #fff; }
#efb-dateien-app .ablage :focus-visible { box-shadow: 0 0 0 3px var(--navy), 0 0 0 5px #fff; }
#efb-dateien-app .knopf.klein { min-height: 42px; padding: 0 18px; font-size: 15px; }
#efb-dateien-app .textknopf { font: 500 13px/1 Poppins, sans-serif; color: var(--muted);
  background: none; border: 0; padding: 8px 6px; min-height: 36px; cursor: pointer; }
#efb-dateien-app .textknopf:hover { color: var(--ink); }
@media (pointer: coarse) {
  #efb-dateien-app .nur-maus { display: none !important; }
  #efb-dateien-app .ablage:not(.kompakt) { min-height: 280px; }
  #efb-dateien-app .ablage h2 { margin-bottom: 20px; }
}
@media (pointer: fine), (pointer: none) {
  #efb-dateien-app .nur-touch { display: none !important; }
}
#efb-dateien-app .bemerkung { margin-top: 32px; }
#efb-dateien-app .bemerkung label { display: block; font-weight: 600; font-size: 15px; margin-bottom: 8px; }
#efb-dateien-app .bemerkung label > span:not(.lbl) { font-weight: 400; color: var(--muted); }
#efb-dateien-app .bemerkung textarea { width: 100%; min-height: 92px; resize: vertical;
  font: 400 16px/1.5 Poppins, sans-serif; color: var(--ink);
  background: var(--card); border: 1.5px solid var(--line); border-radius: 0; padding: 13px 15px;
  transition: border-color .15s; }
#efb-dateien-app .bemerkung textarea::placeholder { color: var(--muted); opacity: .85; }
#efb-dateien-app .bemerkung textarea:focus-visible { border-color: var(--blue); box-shadow: none; outline: none; }
#efb-dateien-app .bemerkung .klein { margin: 8px 0 0; font-size: 13px; color: var(--muted); }
#efb-dateien-app .band { margin-top: 28px; padding: 18px 20px;
  background: var(--card); box-shadow: var(--shadow);
  border-left: 3px solid var(--blue);
  animation: auftakt .5s var(--ease) backwards; }
#efb-dateien-app .band.warn { border-left-color: var(--warn); }
#efb-dateien-app .band p { margin: 0; }
#efb-dateien-app .band .titel { font-weight: 600; }
#efb-dateien-app .band .text { color: var(--text2); font-size: 15px; margin-top: 2px; }
#efb-dateien-app .band .knoepfe { justify-content: flex-start; margin-top: 14px; }
#efb-dateien-app .band ul { list-style: none; margin: 10px 0 0; padding: 0; }
#efb-dateien-app .band li { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; padding: 8px 0; border-top: 1px solid var(--line); font-size: 15px; }
#efb-dateien-app .band li:first-child { border-top: 0; }
#efb-dateien-app .band li .name { flex: 1 1 200px; min-width: 0; overflow-wrap: anywhere; }
#efb-dateien-app .band li .anteil { color: var(--muted); font-variant-numeric: tabular-nums; }
#efb-dateien-app .fortschritt { margin-top: 36px; }
#efb-dateien-app .reise { --pct: 0;
  position: relative; display: grid; grid-template-columns: 52px minmax(0, 1fr) 76px; align-items: center; gap: 0 14px;
  margin: 0 0 30px; padding: 0 0 28px; }
@media (min-width: 600px) {
  #efb-dateien-app .reise { grid-template-columns: 64px minmax(0, 1fr) 104px; gap: 0 22px; margin-bottom: 34px; }
}
#efb-dateien-app .reise-punkt { position: relative; aspect-ratio: 1; display: grid; place-items: center; }
#efb-dateien-app .reise-start { color: var(--navy); }
#efb-dateien-app .reise-start::before { content: ""; position: absolute; inset: 15%; transform: rotate(45deg); background: var(--card); border: 1.5px solid var(--line); box-shadow: var(--shadow); }
#efb-dateien-app .reise-start svg { position: relative; width: 24px; height: 24px; }
#efb-dateien-app .reise-bahn { position: relative; height: 26px; }
#efb-dateien-app .reise-bahn::before { content: ""; position: absolute; left: 0; right: 0; top: 50%; height: 2px; margin-top: -1px; background: repeating-linear-gradient(90deg, var(--line) 0 8px, transparent 8px 14px); }
#efb-dateien-app .reise-spur { position: absolute; left: 0; top: 50%; height: 2px; margin-top: -1px; width: calc(var(--pct) * 1%); background: linear-gradient(90deg, var(--ink), var(--blue)); transition: width .45s var(--ease); }
#efb-dateien-app .reise-raute { position: absolute; top: 50%; left: calc(var(--pct) * 1%); width: 14px; height: 14px; margin: -7px 0 0 -7px;
  background: var(--blue); transform: rotate(45deg);
  box-shadow: 0 0 0 6px color-mix(in srgb, var(--blue) 16%, transparent);
  transition: left .45s var(--ease), opacity .3s, background-color .3s; }
#efb-dateien-app .reise-paket { position: absolute; top: 50%; left: 0; width: 6px; height: 6px; margin: -3px 0 0 -3px; background: var(--hell); transform: rotate(45deg); opacity: 0; }
#efb-dateien-app .reise.laeuft .reise-paket { animation: paket 1.8s cubic-bezier(.45, 0, .25, 1) infinite; }
#efb-dateien-app .reise.laeuft .p2 { animation-delay: .6s; }
#efb-dateien-app .reise.laeuft .p3 { animation-delay: 1.2s; }
@keyframes paket { 0% { left: 0; opacity: 0; } 15% { opacity: .9; } 85% { opacity: .9; } 100% { left: calc(var(--pct) * 1% - 10px); opacity: 0; } }
#efb-dateien-app .reise.offline .reise-raute { background: var(--warn); box-shadow: 0 0 0 6px color-mix(in srgb, var(--warn) 16%, transparent); }
#efb-dateien-app .reise-bild, #efb-dateien-app .reise-ring { position: absolute; inset: 9%; transform: rotate(45deg); }
#efb-dateien-app .reise-bild { overflow: hidden; border: 3px solid var(--card); background: var(--navy); box-shadow: var(--shadow); }
#efb-dateien-app .reise-bild img { position: absolute; left: -21%; top: -21%; width: 142%; height: 142%; object-fit: cover; transform: rotate(-45deg);
  filter: grayscale(calc(1 - var(--pct) / 100)) brightness(calc(.72 + var(--pct) / 357));
  transition: filter .45s var(--ease); }
#efb-dateien-app .reise-ring { border: 2px solid var(--blue); opacity: 0; pointer-events: none; }
#efb-dateien-app .reise-haken { position: absolute; right: 2%; bottom: 2%; width: 28px; height: 28px; padding: 6px;
  color: #fff; background: var(--blue); opacity: 0; transform: scale(.4);
  transition: opacity .3s .25s, transform .45s cubic-bezier(.34, 1.56, .64, 1) .25s; }
#efb-dateien-app .reise.da .reise-raute { opacity: 0; }
#efb-dateien-app .reise.da .reise-ring { animation: reise-ring 1.2s cubic-bezier(.2, .7, .2, 1) forwards; }
#efb-dateien-app .reise.da .reise-bild { animation: reise-an .7s cubic-bezier(.34, 1.56, .64, 1); }
#efb-dateien-app .reise.da .reise-haken { opacity: 1; transform: none; }
@keyframes reise-ring { from { opacity: .9; transform: rotate(45deg) scale(1); } to { opacity: 0; transform: rotate(45deg) scale(1.55); } }
@keyframes reise-an { 45% { transform: rotate(45deg) scale(1.08); } }
#efb-dateien-app .reise-schild { position: absolute; bottom: 0; margin: 0; font-size: 13px; font-weight: 500; color: var(--muted); white-space: nowrap; }
#efb-dateien-app .reise-schild-start { left: 0; }
#efb-dateien-app .reise-schild-ziel { right: 0; }
#efb-dateien-app .reise.da .reise-schild-ziel { color: var(--link); }
#efb-dateien-app .gesamt { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 4px 16px; }
#efb-dateien-app .gesamt .menge { font-weight: 600; font-variant-numeric: tabular-nums; }
#efb-dateien-app .gesamt .rest { color: var(--muted); font-variant-numeric: tabular-nums; }
#efb-dateien-app .balken { position: relative; height: 6px; margin-top: 10px; background: var(--line); overflow: hidden; }
#efb-dateien-app .balken.gross { height: 8px; margin-top: 12px; }
#efb-dateien-app .balken i { position: absolute; inset: 0 auto 0 0; width: 0; background: var(--blue); transition: width .45s var(--ease); overflow: hidden; }
#efb-dateien-app .balken.aktiv i::after { content: ""; position: absolute; inset: 0; width: 120px;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .55), transparent);
  animation: glanz 1.6s linear infinite; }
@keyframes glanz { from { transform: translateX(-120px); } to { transform: translateX(1200px); } }
#efb-dateien-app .balken.duenn { height: 3px; margin-top: 8px; }
#efb-dateien-app .liste { list-style: none; margin: 18px 0 0; padding: 0; }
#efb-dateien-app .datei { display: grid; grid-template-columns: 14px 1fr auto; column-gap: 12px; align-items: baseline; padding: 14px 0; border-top: 1px solid var(--line); }
#efb-dateien-app .datei:first-child { border-top: 0; }
#efb-dateien-app .datei .raute { width: 9px; height: 9px; transform: translateY(-1px) rotate(45deg); border: 1.5px solid var(--muted); justify-self: center; }
#efb-dateien-app .datei.laeuft .raute { border-color: var(--blue); background: var(--blue); animation: pulsen 1.2s ease-in-out infinite alternate; }
#efb-dateien-app .datei.fertig .raute { border-color: var(--blue); background: var(--blue); animation: aufploppen .4s var(--ease) both; }
#efb-dateien-app .datei.fehler .raute { border-color: var(--warn); background: var(--warn); }
#efb-dateien-app .datei.abgebrochen { color: var(--muted); }
#efb-dateien-app .datei .name { min-width: 0; overflow-wrap: anywhere; font-weight: 600; font-size: 15px; }
#efb-dateien-app .datei .name .pfad { font-weight: 400; color: var(--muted); }
#efb-dateien-app .datei .zustand { font-size: 13px; color: var(--muted); text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
#efb-dateien-app .datei.fertig .zustand { color: var(--link); }
#efb-dateien-app .datei.fehler .zustand { color: var(--warn); white-space: normal; }
#efb-dateien-app .datei .unten { grid-column: 2 / 4; padding: 8px 0 2px; }
#efb-dateien-app .datei .unten .balken { margin-top: 0; }
#efb-dateien-app .datei .info { grid-column: 2 / 4; display: flex; justify-content: space-between; align-items: center; gap: 12px; min-height: 24px; font-size: 13px; color: var(--muted); font-variant-numeric: tabular-nums; }
#efb-dateien-app .datei .info .textknopf { margin-right: -6px; min-height: 32px; padding: 6px; }
@keyframes pulsen { from { opacity: .35; } }
@keyframes aufploppen { from { transform: translateY(-1px) rotate(45deg) scale(.2); } }
#efb-dateien-app .bestaetigung { margin-top: 36px; padding: 28px 26px;
  display: grid; grid-template-columns: auto 1fr; gap: 4px 26px; align-items: center;
  background: var(--navy); color: #fff;
  box-shadow: 0 30px 60px -36px rgba(14, 31, 59, .7);
  animation: auftakt .6s var(--ease) backwards; }
#efb-dateien-app .bestaetigung .emblem { margin: 0 6px; width: 52px; height: 52px; }
#efb-dateien-app .bestaetigung .emblem svg { width: 24px; height: 24px; }
#efb-dateien-app .bestaetigung .haken { stroke-dasharray: 22; stroke-dashoffset: 22; animation: zeichnen .55s var(--ease) .3s forwards; }
#efb-dateien-app .bestaetigung h2 { margin: 0; font-size: 20.8px; font-weight: 600; letter-spacing: -.01em; }
#efb-dateien-app .bestaetigung p { margin: 2px 0 0; color: rgba(255, 255, 255, .8); }
#efb-dateien-app .funke { position: absolute; left: 50%; top: 50%; width: 8px; height: 8px; margin: -4px 0 0 -4px;
  background: var(--hell); opacity: 0; transform: rotate(45deg);
  animation: funke .9s var(--ease) .35s; }
#efb-dateien-app .funke:nth-child(even) { background: #fff; width: 6px; height: 6px; margin: -3px 0 0 -3px; }
#efb-dateien-app .f1 { --x: 0px; --y: -46px; }
#efb-dateien-app .f2 { --x: 40px; --y: -24px; }
#efb-dateien-app .f3 { --x: 42px; --y: 24px; }
#efb-dateien-app .f4 { --x: 0px; --y: 46px; }
#efb-dateien-app .f5 { --x: -40px; --y: 24px; }
#efb-dateien-app .f6 { --x: -42px; --y: -24px; }
@keyframes zeichnen { to { stroke-dashoffset: 0; } }
@keyframes funke { 0% { opacity: 1; transform: translate(0, 0) rotate(45deg) scale(.4); }
  70% { opacity: 1; }
  100% { opacity: 0; transform: translate(var(--x), var(--y)) rotate(45deg) scale(1); } }
#efb-dateien-app .angekommen { margin-top: 56px; }
#efb-dateien-app .angekommen h2 { margin: 0 0 6px; font-size: 13px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--link); }
#efb-dateien-app .angekommen .datei .zustand { color: var(--muted); }
#efb-dateien-app .angekommen .datei.fertig .raute { animation: none; }
#efb-dateien-app .meldung { max-width: 34em; padding-bottom: 8px; animation: auftakt .6s var(--ease) backwards; }
#efb-dateien-app .meldung .raute-gross { width: 22px; height: 22px; margin: 4px 0 30px 4px; transform: rotate(45deg); border: 2px solid var(--blue); }
#efb-dateien-app .meldung.warn .raute-gross { border-color: var(--warn); }
#efb-dateien-app .meldung h1 { font-size: clamp(28.8px, 19.2px + 2.4vw, 44px); }
#efb-dateien-app .meldung p { margin: 16px 0 0; color: var(--text2); font-size: 17px; }
#efb-dateien-app .meldung .knoepfe { justify-content: flex-start; margin-top: 28px; }
@media (min-width: 1000px) {
  #efb-dateien-app .held-text:has(#ansicht-meldung:not([hidden])) { padding-bottom: 24px; }
}
#efb-dateien-app .held:has(#ansicht-meldung:not([hidden])) { padding-bottom: 56px; }
@media (min-width: 1000px) {
  #efb-dateien-app .held:has(#ansicht-meldung:not([hidden])) { padding-bottom: 96px; }
}
#efb-dateien-app .hinweis-start { margin: 0 0 28px; max-width: 34em; }
#efb-dateien-app .wege { display: grid; gap: 28px; width: 100%; }
@media (min-width: 760px) {
  #efb-dateien-app .wege { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: 36px; }
}
#efb-dateien-app .weg { min-width: 0; margin: 0; }
#efb-dateien-app .weg-eyebrow { margin: 0 0 8px; font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: #8CC3FF; }
#efb-dateien-app .weg h2 { margin: 0 0 18px; font-size: clamp(20px, 17.6px + .6vw, 24.8px); }
#efb-dateien-app .feld-zeile { display: flex; flex-wrap: wrap; gap: 10px; }
@media (min-width: 480px) and (max-width: 759px) {
  #efb-dateien-app .feld-zeile { flex-wrap: nowrap; }
}
#efb-dateien-app .feld-zeile input { flex: 1 1 auto; width: 100%; min-width: 0; min-height: 50px; padding: 0 16px;
  font: 500 17px/1 Poppins, sans-serif; color: #2A2A2A; background: #fff;
  border: 2px solid transparent; border-radius: 0; }
#efb-dateien-app #eingabe-code { letter-spacing: .08em; text-transform: uppercase; }
#efb-dateien-app #eingabe-code::placeholder { letter-spacing: .08em; }
#efb-dateien-app .feld-zeile input::placeholder { color: #8A8A8A; opacity: 1; font-weight: 400; }
#efb-dateien-app .feld-zeile input:focus-visible { outline: none; border-color: var(--hell); box-shadow: 0 0 0 3px rgba(31, 139, 255, .35); }
#efb-dateien-app .feld-zeile input[aria-invalid="true"] { border-color: #FFB38A; }
#efb-dateien-app .feld-zeile .knopf { flex: none; }
#efb-dateien-app .feld-hilfe { margin: 10px 0 0; font-size: 14px; color: rgba(255, 255, 255, .74); }
#efb-dateien-app .feld-hilfe a, #efb-dateien-app .weg-danke a { color: #fff; }
#efb-dateien-app .feld-fehler { margin: 10px 0 0; font-size: 15px; font-weight: 500; color: #FFC9A8; }
#efb-dateien-app .feld-fehler::before { content: ""; display: inline-block; width: 8px; height: 8px; margin: 0 10px 1px 2px; background: currentColor; transform: rotate(45deg); }
#efb-dateien-app .weg-trenner { display: flex; align-items: center; gap: 14px; color: rgba(255, 255, 255, .7); font-size: 14px; }
#efb-dateien-app .weg-trenner::before, #efb-dateien-app .weg-trenner::after { content: ""; flex: 1; height: 1px; background: rgba(255, 255, 255, .25); }
@media (min-width: 760px) {
  #efb-dateien-app .weg-trenner { flex-direction: column; }
  #efb-dateien-app .weg-trenner::before, #efb-dateien-app .weg-trenner::after { width: 1px; height: auto; }
}
#efb-dateien-app .weg-danke { animation: auftakt .5s var(--ease) backwards; }
#efb-dateien-app .weg-danke:focus { outline: none; }
#efb-dateien-app .weg-danke .weg-text { margin: 0; color: rgba(255, 255, 255, .88); }
#efb-dateien-app .emblem.klein { width: 44px; height: 44px; margin: 4px 0 22px 4px; }
#efb-dateien-app .emblem.klein svg { width: 20px; height: 20px; }
#efb-dateien-app .weg-danke .haken { stroke-dasharray: 22; stroke-dashoffset: 22; animation: zeichnen .5s var(--ease) .2s forwards; }
#efb-dateien-app .textknopf.hell { margin-top: 12px; padding-left: 0; color: rgba(255, 255, 255, .8); text-decoration: underline; text-underline-offset: .2em; }
#efb-dateien-app .textknopf.hell:hover { color: #fff; }
#efb-dateien-app .abschnitt-titel { margin: 0 0 20px; font-size: clamp(24px, 20px + 1vw, 32px); font-weight: 600; letter-spacing: -.01em; }
#efb-dateien-app .faq { margin-top: 72px; }
#efb-dateien-app .faq-liste { display: grid; gap: 12px; }
#efb-dateien-app .faq-mehr { margin: 22px 0 0; }
#efb-dateien-app .faq-mehr a { display: inline-flex; align-items: center; gap: 10px; font-weight: 600; color: #fff; text-decoration: none; }
#efb-dateien-app .faq-mehr .pfeil-rechts { color: var(--ic-hell); }
#efb-dateien-app .faq-mehr a:hover { text-decoration: underline; text-underline-offset: 4px; }
#efb-dateien-app .faq-mehr .pfeil-rechts { width: 14px; height: 14px; flex: none; transition: transform .25s; }
#efb-dateien-app .faq-mehr a:hover .pfeil-rechts { transform: translateX(3px); }
#efb-dateien-app .faq-punkt { background: var(--bg2); }
#efb-dateien-app .faq-punkt summary { display: flex; align-items: center; justify-content: space-between; gap: 20px;
  padding: 20px 24px; cursor: pointer; list-style: none;
  font-weight: 600; font-size: 17px; line-height: 1.35; }
#efb-dateien-app .faq-punkt summary::-webkit-details-marker { display: none; }
#efb-dateien-app .faq-punkt summary:hover { color: var(--blue); }
#efb-dateien-app .faq-punkt summary .pfeil-unten { width: 14px; height: 14px; color: var(--blue); }
#efb-dateien-app .faq-punkt[open] summary .pfeil-unten { transform: rotate(180deg); }
#efb-dateien-app .faq-punkt p { margin: 0; padding: 0 24px 22px; color: var(--text2); max-width: 46em; }
#efb-dateien-app .faq-punkt[open] p { animation: einblenden .3s ease; }
#efb-dateien-app .kein-link { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px 32px;
  margin-top: 28px; padding: 28px; background: var(--card); box-shadow: var(--shadow); border-left: 3px solid var(--blue); }
@media (min-width: 600px) {
  #efb-dateien-app .kein-link { padding: 30px 36px; }
}
#efb-dateien-app .kein-link-text { flex: 1 1 320px; min-width: 0; }
#efb-dateien-app .kein-link h2 { margin: 0 0 6px; font-size: clamp(18.4px, 16.8px + .5vw, 22.4px); font-weight: 600; }
#efb-dateien-app .kein-link p { margin: 0; color: var(--text2); }
#efb-dateien-app .kein-link p.klein { margin-top: 10px; font-size: 14px; color: var(--muted); }
#efb-dateien-app .kein-link .knopf { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; }
#efb-dateien-app .senden-code { margin: 22px 0 0; color: var(--text2); }
#efb-dateien-app .senden-code a { color: var(--link); font-weight: 500; }
#efb-dateien-app .angaben { position: relative; z-index: 3; padding: 28px 22px; background: var(--card); box-shadow: var(--shadow); border-top: 3px solid var(--blue); }
@media (min-width: 600px) {
  #efb-dateien-app .angaben { padding: 34px 36px; }
}
#efb-dateien-app .angaben-titel { margin: 0 0 20px; font-size: 19.2px; font-weight: 600; }
#efb-dateien-app .angaben-felder { display: grid; gap: 20px; }
@media (min-width: 680px) {
  #efb-dateien-app .angaben-felder { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 24px; }
}
#efb-dateien-app .feld { min-width: 0; }
#efb-dateien-app .feld label { display: block; font-weight: 600; font-size: 15px; margin-bottom: 8px; }
#efb-dateien-app .feld label > span:not(.lbl) { font-weight: 400; color: var(--muted); }
#efb-dateien-app .feld input { width: 100%; min-height: 50px; padding: 0 15px;
  font: 400 16px/1 Poppins, sans-serif; color: var(--ink);
  background: var(--bg); border: 1.5px solid var(--line); border-radius: 0; transition: border-color .15s; }
#efb-dateien-app .feld input::placeholder { color: var(--muted); opacity: .85; }
#efb-dateien-app .feld input:focus-visible { border-color: var(--blue); outline: none; }
#efb-dateien-app .feld input[aria-invalid="true"] { border-color: var(--warn); }
#efb-dateien-app .feld .klein { margin: 8px 0 0; font-size: 13px; color: var(--muted); }
#efb-dateien-app .feld-fehler.dunkel { color: var(--warn); }
#efb-dateien-app .angaben .bemerkung { margin-top: 22px; }
#efb-dateien-app .angaben .bemerkung textarea { background: var(--bg); }
#efb-dateien-app .angaben.gesperrt input, #efb-dateien-app .angaben.gesperrt textarea { color: var(--text2); background: transparent; border-style: dashed; }
#efb-dateien-app .gesperrt-hinweis { margin: 14px 0 0; font-size: 13px; color: var(--muted); }
#efb-dateien-app .turnstile:empty { display: none; }
#efb-dateien-app .turnstile { margin-top: 18px; min-height: 65px; max-width: 100%; }
#efb-dateien-app #senden-angaben + .band, #efb-dateien-app #band-senden-fehler { margin-top: 20px; }
#efb-dateien-app .angaben:not([hidden]) ~ .ablage { margin-top: 24px; }
#efb-dateien-app .knoepfe.links { justify-content: flex-start; margin-top: 26px; }
#efb-dateien-app .anlaesse { list-style: none; margin: 0; padding: 0; display: grid; gap: 16px; }
#efb-dateien-app .anlass-karte { position: relative; display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 16px 22px; align-items: center;
  padding: 22px; background: var(--card); box-shadow: var(--shadow);
  animation: auftakt .5s var(--ease) backwards; }
#efb-dateien-app .anlass-karte:nth-child(2) { animation-delay: .06s; }
#efb-dateien-app .anlass-karte:nth-child(3) { animation-delay: .12s; }
@media (min-width: 680px) {
  #efb-dateien-app .anlass-karte { grid-template-columns: 84px minmax(0, 1fr) auto; padding: 24px 28px; }
}
#efb-dateien-app .datum-kachel { display: grid; place-content: center; text-align: center; aspect-ratio: 1;
  background: var(--navy); color: #fff; line-height: 1; }
#efb-dateien-app .datum-kachel .tag { font-size: 30.4px; font-weight: 600; }
#efb-dateien-app .datum-kachel .monat { margin-top: 6px; font-size: 12px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: #8CC3FF; }
#efb-dateien-app .anlass-info { min-width: 0; }
#efb-dateien-app .anlass-info h2 { margin: 0; font-size: 19.2px; font-weight: 600; overflow-wrap: anywhere; }
#efb-dateien-app .anlass-datum { margin: 4px 0 0; color: var(--link); font-weight: 500; }
#efb-dateien-app .anlass-dateien { margin: 2px 0 0; font-size: 14px; color: var(--muted); }
#efb-dateien-app .anlass-karte .knopf { display: inline-flex; align-items: center; justify-content: center; gap: 12px; text-decoration: none; grid-column: 1 / -1; }
@media (min-width: 680px) {
  #efb-dateien-app .anlass-karte .knopf { grid-column: auto; }
}
#efb-dateien-app .pfeil-rechts { width: 16px; height: 16px; flex: none; transition: transform .2s var(--ease); }
#efb-dateien-app .knopf:hover .pfeil-rechts { transform: translateX(3px); }
#efb-dateien-app .platzhalter-karte { min-height: 128px; background: var(--bg2); box-shadow: none; animation: atmen 1.6s ease-in-out infinite alternate; }
#efb-dateien-app .meine-leer { padding: 32px 28px; background: var(--card); box-shadow: var(--shadow); }
#efb-dateien-app .meine-leer .raute-gross { width: 22px; height: 22px; margin: 4px 0 24px 4px; transform: rotate(45deg); border: 2px solid var(--blue); }
#efb-dateien-app .meine-leer h2 { margin: 0; font-size: 20px; font-weight: 600; }
#efb-dateien-app .meine-leer p { margin: 10px 0 0; color: var(--text2); }
#efb-dateien-app .meldung-start { margin: 28px 0 0; }
#efb-dateien-app .pfeil-link { display: inline-flex; align-items: center; gap: 10px; font-weight: 500; text-decoration: none; }
#efb-dateien-app .pfeil-link::before { content: ""; width: 8px; height: 8px; border-left: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); }
#efb-dateien-app .pfeil-link:hover span { text-decoration: underline; }
@media (prefers-reduced-motion: reduce) {
  #efb-dateien-app *, #efb-dateien-app *::before, #efb-dateien-app *::after { transition: none !important; animation: none !important; }
  #efb-dateien-app .reise-paket { display: none; }
  #efb-dateien-app .bestaetigung .haken, #efb-dateien-app .weg-danke .haken { stroke-dashoffset: 0; }
  #efb-dateien-app .r1::after { display: none; }
}
/* ---- konfig.css ---- */
#efb-dateien-app { background: var(--navy); color: var(--tinte); }
#efb-dateien-app .held { background: var(--navy); color: #fff; overflow-x: clip; }
#efb-dateien-app .held-raster { position: relative; }
#efb-dateien-app .held .breit { max-width: calc(var(--buehne-max) + 60px); }
@media (max-width: 599.98px) {
  #efb-dateien-app .held .breit { max-width: none; }
}
#efb-dateien-app .held-text { padding-top: 18px; padding-bottom: 34px; }
@media (min-width: 1000px) {
  #efb-dateien-app .held-text { padding: 24px 0 56px; max-width: var(--held-text-max); }
}
#efb-dateien-app .wegweiser.marke { display: flex; align-items: flex-start; margin: 0 0 14px; font-size: var(--t-augenbraue); font-weight: 600; letter-spacing: .16em; text-transform: uppercase; line-height: 1.5; }
#efb-dateien-app .wegweiser.marke::before { content: ""; flex: none; width: 26px; height: 2px; margin: calc(.75em - 1px) 10px 0 0; background: linear-gradient(90deg, #5AA7FF, transparent); }
#efb-dateien-app .wegweiser-rahmen { min-width: 0; overflow: hidden; }
#efb-dateien-app .wegweiser.marke ol { gap: 4px 0; margin-left: -22px; }
#efb-dateien-app .wegweiser.marke li { color: var(--marke-hell); }
#efb-dateien-app .wegweiser.marke li::before, #efb-dateien-app .wegweiser.marke li + li::before { content: "·"; display: inline-block; width: 22px; height: auto; margin: 0; border: 0; transform: none; text-align: center; letter-spacing: 0; color: var(--marke-hell); flex: none; }
#efb-dateien-app .wegweiser.marke a { color: var(--marke-hell); }
#efb-dateien-app .wegweiser.marke a:hover { color: #fff; text-decoration: none; }
#efb-dateien-app .wegweiser.marke [aria-current] { color: #fff; font-weight: 600; }
#efb-dateien-app .held h1 { font-size: var(--t-h1); line-height: 1.12; letter-spacing: -.01em; max-width: 15ch; }
#efb-dateien-app .titel-verlauf { background: var(--schrift-verlauf-weiss); -webkit-background-clip: text; background-clip: text; }
#efb-dateien-app .einleitung { margin-top: 12px; max-width: 54ch; color: rgba(255, 255, 255, .86); font-size: var(--t-lead); line-height: 1.5; }
#efb-dateien-app .datum { color: var(--marke-hell); }
#efb-dateien-app .platzhalter { background: rgba(255, 255, 255, .12); }
#efb-dateien-app .hinweis-start { padding: 12px 15px; border-radius: var(--radius-klein); background: var(--b-zart); color: var(--navy); border-left: 0; box-shadow: none; }
#efb-dateien-app .hinweis-start.warn { background: var(--warn-zart); color: var(--warn-text); }
#efb-dateien-app .hinweis-start .titel { color: inherit; }
#efb-dateien-app .meldung h1 { color: #fff; }
#efb-dateien-app .meldung p, #efb-dateien-app .meldung #meldung-text { color: rgba(255, 255, 255, .86); }
#efb-dateien-app .meldung a { color: #fff; }
#efb-dateien-app .meldung .raute-gross, #efb-dateien-app .meldung.warn .raute-gross { background: var(--glanz); border: 0; box-shadow: 0 0 0 6px rgba(0, 113, 237, .22), 0 8px 22px -6px rgba(0, 113, 237, .8); }
#efb-dateien-app .meldung .knopf.zweit { color: #fff; border-color: rgba(255, 255, 255, .6); background: transparent; }
#efb-dateien-app .meldung .raute-gross { margin-top: 10px; }
#efb-dateien-app .senden-code { color: rgba(255, 255, 255, .86); }
#efb-dateien-app .senden-code a { color: #fff; }
html.laedt #efb-dateien-app { visibility: hidden; animation: notfall-zeigen 0s 5s forwards; }
html.laedt #efb-dateien-app #wegweiser, html.laedt #efb-dateien-app #ansicht-laden { visibility: visible; }
@keyframes notfall-zeigen { to { visibility: visible; } }
#efb-dateien-app .vertrauen { list-style: none; margin: 24px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px 12px; max-width: 600px; }
#efb-dateien-app .vertrauen li { display: inline-flex; align-items: center; gap: 9px; padding: 8px 14px 8px 10px;
  font-size: var(--t-klein); font-weight: 500; color: #fff;
  background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .16); border-radius: var(--radius-pille);
  backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
#efb-dateien-app .vertrauen svg { width: 22px; height: 22px; flex: none; color: var(--ic-hell); }
@media (max-width: 520px) {
  #efb-dateien-app .vertrauen { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin-top: 18px; }
  #efb-dateien-app .vertrauen li { font-size: 12px; padding: 6px 9px 6px 7px; gap: 6px; line-height: 1.25; }
  #efb-dateien-app .vertrauen svg { width: 18px; height: 18px; }
}
#efb-dateien-app .raute-bild { border-color: var(--navy); }
#efb-dateien-app .d2 { border-color: #5AA7FF; }
@media (max-width: 999.98px) {
  #efb-dateien-app .collage { position: absolute; top: 0; right: -16px; z-index: 0; width: min(82%, 460px); height: 300px; margin: 0;
    opacity: .16; pointer-events: none;
    -webkit-mask-image: linear-gradient(205deg, #000 30%, transparent 78%); mask-image: linear-gradient(205deg, #000 30%, transparent 78%); }
  #efb-dateien-app .held-text { position: relative; z-index: 1; }
}
#efb-dateien-app .schritte-band { background: var(--navy); padding: 0 16px 30px; }
#efb-dateien-app .schritte-kurz { display: none; }
@media (min-width: 600px) {
  #efb-dateien-app .schritte-band { padding: 0 30px 30px; }
}
#efb-dateien-app .schritte { position: relative; max-width: var(--buehne-max); margin: 0 auto; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(3, 1fr); }
#efb-dateien-app .schritte::before, #efb-dateien-app .schritte-fuellung { content: ""; position: absolute; top: 20px; left: 16.66%; right: 16.66%; height: 2px; border-radius: 2px; background: rgba(255, 255, 255, .16); }
#efb-dateien-app .schritte-fuellung { right: auto; width: 0; background: linear-gradient(90deg, #5AA7FF, #0071ED 60%, #9CC7FF);
  background-size: 200% 100%; transition: width .7s var(--aus-stark); animation: schimmer 3.2s linear infinite;
  box-shadow: 0 0 12px rgba(90, 167, 255, .55); }
#efb-dateien-app .schritt-knopf { position: relative; display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 0 4px; text-align: center; color: rgba(255, 255, 255, .58); }
#efb-dateien-app .schritt-knopf .nr { position: relative; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%;
  font-weight: 600; font-size: 15px; color: rgba(255, 255, 255, .7); background: var(--navy); border: 2px solid rgba(255, 255, 255, .28);
  transition: background .4s var(--aus), border-color .4s var(--aus), color .4s var(--aus), transform .4s var(--feder), box-shadow .4s var(--aus); }
#efb-dateien-app .schritt-knopf .nr svg { position: absolute; width: 20px; height: 20px; opacity: 0; }
#efb-dateien-app .schritt-knopf .nr svg path { stroke-dasharray: 24; stroke-dashoffset: 24; transition: stroke-dashoffset .5s var(--aus) .1s; }
#efb-dateien-app .schritt-knopf .name { font-size: var(--t-klein); font-weight: 500; line-height: 1.3; transition: color .3s; }
#efb-dateien-app .schritt-knopf.aktiv { color: #fff; }
#efb-dateien-app .schritt-knopf.aktiv .nr { color: #fff; border-color: transparent; background: var(--glanz-text); transform: scale(1.08); box-shadow: 0 0 0 6px rgba(0, 113, 237, .22), 0 8px 22px -6px rgba(0, 113, 237, .8); }
#efb-dateien-app .schritt-knopf.aktiv .nr::after { content: ""; position: absolute; inset: -7px; border-radius: 50%; border: 2px solid rgba(90, 167, 255, .55); animation: puls 2.4s var(--ein-aus) infinite; }
#efb-dateien-app .schritt-knopf.aktiv .name { font-weight: 600; }
#efb-dateien-app .schritt-knopf.erledigt { color: rgba(255, 255, 255, .88); }
#efb-dateien-app .schritt-knopf.erledigt .nr { background: #fff; border-color: #fff; color: transparent; }
#efb-dateien-app .schritt-knopf.erledigt .nr svg { opacity: 1; color: var(--b); }
#efb-dateien-app .schritt-knopf.erledigt .nr svg path { stroke-dashoffset: 0; }
@keyframes schimmer { from { background-position: 200% 0; } to { background-position: -200% 0; } }
@keyframes puls { 0%, 100% { transform: scale(.92); opacity: .8; } 50% { transform: scale(1.12); opacity: 0; } }
@media (max-width: 599.98px) {
  #efb-dateien-app .schritte-band { padding: 0 16px 18px; }
  #efb-dateien-app .schritte-kurz { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin: 0 0 10px; color: #fff; }
  #efb-dateien-app .schritte-kurz b { font-size: 16px; font-weight: 600; }
  #efb-dateien-app .schritte-kurz span { font-size: 13.5px; font-weight: 500; color: var(--marke-hell); white-space: nowrap; }
  #efb-dateien-app .schritte { gap: 6px; }
  #efb-dateien-app .schritte::before, #efb-dateien-app .schritte-fuellung { display: none; }
  #efb-dateien-app .schritt-knopf { display: block; height: 4px; padding: 0; border-radius: 4px; background: rgba(255, 255, 255, .18); transition: background .5s var(--aus); }
  #efb-dateien-app .schritt-knopf.aktiv, #efb-dateien-app .schritt-knopf.erledigt { background: linear-gradient(90deg, #5AA7FF, #0071ED); box-shadow: 0 0 10px rgba(90, 167, 255, .45); }
  #efb-dateien-app .schritt-knopf .nr, #efb-dateien-app .schritt-knopf .name { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
}
@media (max-width: 599.98px) {
  #efb-dateien-app .held-text { padding-top: 12px; padding-bottom: 22px; }
  #efb-dateien-app .vertrauen { margin-top: 14px; }
  #efb-dateien-app .schritte-band { padding-bottom: 14px; }
  #efb-dateien-app .schritte-kurz { margin-bottom: 8px; }
  #efb-dateien-app .karten-kopf { margin-bottom: 18px; }
  #efb-dateien-app .karte .weg h2 { margin-bottom: 12px; }
  #efb-dateien-app .karte .wege { gap: 22px; }
}
@media (max-width: 400px) {
  #efb-dateien-app .held h1 { font-size: 30.4px; }
  #efb-dateien-app .wegweiser.marke { letter-spacing: .1em; }
}
#efb-dateien-app .flaeche { background: var(--navy); padding: 0 12px 88px; margin-top: 0; }
@media (min-width: 600px) {
  #efb-dateien-app .flaeche { padding: 0 30px 96px; }
}
#efb-dateien-app .buehne { max-width: var(--buehne-max); margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; align-items: start; }
@media (min-width: 1100px) {
  #efb-dateien-app .buehne.mit-zf { grid-template-columns: minmax(0, 1fr) var(--zf-breite); gap: var(--buehne-abstand); }
}
#efb-dateien-app .karte { position: relative; background: #fff; border-radius: var(--radius); box-shadow: var(--s3);
  padding: clamp(22px, 3.4vw, 44px); overflow: hidden; animation: auftauchen .9s var(--aus-stark) .1s backwards; }
#efb-dateien-app .karte::before { content: ""; position: absolute; inset: 0 0 auto; height: 4px; background: var(--karten-kante); opacity: .9; }
@keyframes auftauchen { from { opacity: 0; transform: translateY(14px) scale(1.02); } }
#efb-dateien-app .karten-kopf { margin-bottom: 26px; }
#efb-dateien-app .augenbraue { display: block; margin-bottom: 8px; font-size: var(--t-augenbraue); font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--b); }
#efb-dateien-app .karten-titel { display: inline-block; margin: 0; font-size: var(--t-titel); line-height: 1.18; font-weight: 600; letter-spacing: -.01em;
  background: var(--schrift-verlauf); -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent; }
#efb-dateien-app .karten-lead { margin: 10px 0 0; max-width: 62ch; color: var(--tinte-2); }
#efb-dateien-app .karten-kopf.wechsel > * { animation: hoch .45s var(--aus-stark) backwards; }
#efb-dateien-app .karten-kopf.wechsel > :nth-child(2) { animation-delay: .05s; }
#efb-dateien-app .karten-kopf.wechsel > :nth-child(3) { animation-delay: .1s; }
@keyframes hoch { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
#efb-dateien-app .karte .knopf, #efb-dateien-app .flaeche .knopf { position: relative; overflow: hidden; display: inline-flex; align-items: center; justify-content: center; gap: 12px;
  min-height: var(--knopf-h); padding: 0 30px; border: 0; border-radius: 0;
  background: var(--b); color: #fff; font: 600 var(--t-knopf)/1.2 Poppins, sans-serif; letter-spacing: .01em;
  box-shadow: var(--s-knopf); transition: background .25s, transform .25s var(--aus-stark), box-shadow .25s; }
#efb-dateien-app .karte .knopf::after, #efb-dateien-app .flaeche .knopf::after { content: ""; position: absolute; top: 0; bottom: 0; left: -60%; width: 40%; background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .38), transparent); transform: skewX(-18deg); }
#efb-dateien-app .karte .knopf:hover, #efb-dateien-app .flaeche .knopf:hover { background: #1081FF; color: #fff; transform: translateY(-2px); box-shadow: var(--s-knopf-hover); }
#efb-dateien-app .karte .knopf:hover::after, #efb-dateien-app .flaeche .knopf:hover::after { animation: knopf-glanz .9s var(--ein-aus); }
#efb-dateien-app .karte .knopf:active, #efb-dateien-app .flaeche .knopf:active { transform: translateY(0) scale(.985); }
#efb-dateien-app .karte .knopf:disabled, #efb-dateien-app .flaeche .knopf:disabled { opacity: .6; cursor: progress; transform: none; }
#efb-dateien-app .karte .knopf.zweit, #efb-dateien-app .flaeche .knopf.zweit { background: #fff; color: var(--b); border: 1.5px solid var(--b-zart-2); box-shadow: var(--s1); }
#efb-dateien-app .karte .knopf.zweit:hover, #efb-dateien-app .flaeche .knopf.zweit:hover { background: var(--b); color: #fff; border-color: var(--b); box-shadow: var(--s-blau); }
#efb-dateien-app .karte .knopf.klein, #efb-dateien-app .flaeche .knopf.klein { min-height: 46px; padding: 0 20px; font-size: 15px; }
#efb-dateien-app .knopf .pfeil-rechts { transition: transform .3s var(--aus); }
@keyframes knopf-glanz { from { left: -60%; } to { left: 130%; } }
#efb-dateien-app .feld-k { position: relative; min-width: 0; }
#efb-dateien-app .feld-k input, #efb-dateien-app .feld-k textarea { width: 100%; min-height: var(--feld-h); padding: 24px 16px 9px;
  font: 400 var(--t-feld)/1.4 Poppins, sans-serif; color: var(--tinte);
  background: #fff; border: 1.5px solid var(--linie); border-radius: 0;
  transition: border-color .25s, box-shadow .25s, background .25s; -webkit-appearance: none; appearance: none; }
#efb-dateien-app .feld-k textarea { min-height: 128px; resize: vertical; line-height: 1.5; }
#efb-dateien-app .feld-k input::placeholder, #efb-dateien-app .feld-k textarea::placeholder { color: transparent; transition: color .2s; }
#efb-dateien-app .feld-k input:focus::placeholder, #efb-dateien-app .feld-k textarea:focus::placeholder { color: var(--grau); }
#efb-dateien-app .feld-k label { position: absolute; left: 17px; top: 18px; max-width: calc(100% - 60px); overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  font-size: var(--t-label); color: var(--grau); pointer-events: none; transform-origin: left top;
  transition: transform .25s var(--aus), color .25s; }
#efb-dateien-app .feld-k label .optional { color: var(--grau); }
#efb-dateien-app .feld-k.voll label, #efb-dateien-app .feld-k input:focus + label, #efb-dateien-app .feld-k textarea:focus + label { transform: translateY(-11px) scale(.76); color: var(--b); font-weight: 500; }
#efb-dateien-app .feld-k input:hover, #efb-dateien-app .feld-k textarea:hover { border-color: #B5C7DD; }
#efb-dateien-app .feld-k input:focus, #efb-dateien-app .feld-k textarea:focus { outline: none; border-color: var(--b); box-shadow: var(--fokus-ring); }
#efb-dateien-app .feld-k .unterstrich { position: absolute; left: 0; right: 0; top: calc(var(--feld-h) - 2px); height: 2px; background: var(--glanz); transform: scaleX(0); transform-origin: left; transition: transform .45s var(--aus-stark); pointer-events: none; }
#efb-dateien-app .feld-k.gross .unterstrich { top: auto; bottom: 0; }
#efb-dateien-app .feld-k input:focus ~ .unterstrich, #efb-dateien-app .feld-k textarea:focus ~ .unterstrich { transform: scaleX(1); }
#efb-dateien-app .feld-k .ok { position: absolute; right: 14px; top: 19px; width: 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; background: var(--gut); color: #fff; transform: scale(0); transition: transform .35s var(--feder); }
#efb-dateien-app .feld-k .ok svg { width: 13px; height: 13px; }
#efb-dateien-app .feld-k.gueltig .ok { transform: scale(1); }
#efb-dateien-app .feld-k input[aria-invalid="true"], #efb-dateien-app .feld-k textarea[aria-invalid="true"] { border-color: var(--fehler); box-shadow: var(--fehler-ring); animation: ruetteln .4s; }
#efb-dateien-app .feld-k input[readonly], #efb-dateien-app .feld-k textarea[readonly] { background: var(--flaeche); color: var(--tinte-2); border-style: dashed; }
@keyframes ruetteln { 0%, 100% { transform: translateX(0); } 20% { transform: translateX(-6px); } 40% { transform: translateX(5px); } 60% { transform: translateX(-3px); } 80% { transform: translateX(2px); } }
#efb-dateien-app .feld-hilfe-k { margin: 7px 0 0; font-size: 13px; color: var(--grau); }
#efb-dateien-app .feld-fehler-k { display: flex; gap: 8px; align-items: flex-start; margin: 7px 0 0; font-size: 13.5px; font-weight: 500; color: var(--fehler-text); animation: hoch .35s var(--aus) both; }
#efb-dateien-app .feld-fehler-k::before { content: ""; width: 7px; height: 7px; margin-top: 6px; background: currentColor; transform: rotate(45deg); flex: none; }
#efb-dateien-app .feld-zeile-k { display: flex; flex-wrap: wrap; gap: 10px; align-items: stretch; }
#efb-dateien-app .feld-zeile-k .feld-k { flex: 1 1 220px; }
#efb-dateien-app .feld-zeile-k .knopf { min-height: var(--feld-h); }
#efb-dateien-app #eingabe-code { letter-spacing: .08em; text-transform: uppercase; font-weight: 500; }
#efb-dateien-app .hinweis-k { display: flex; gap: 11px; align-items: flex-start; margin-top: 14px; padding: 12px 15px; border-radius: var(--radius-klein); font-size: 14px; line-height: 1.45; animation: hoch .45s var(--aus) both; }
#efb-dateien-app .hinweis-k svg { width: 19px; height: 19px; flex: none; margin-top: 1px; }
#efb-dateien-app .hinweis-k.gut { background: var(--gut-zart); color: var(--gut-text); }
#efb-dateien-app .hinweis-k.info { background: var(--b-zart); color: var(--navy); }
#efb-dateien-app .hinweis-k.warn { background: var(--warn-zart); color: var(--warn-text); }
#efb-dateien-app .karte .ablage { margin: 0; min-height: 300px; padding: 44px 24px 38px; color: var(--tinte-2);
  background: var(--glanz-hell); border: 1.5px dashed #AFC5E0; border-radius: var(--radius-klein); box-shadow: none; z-index: auto;
  transition: border-color .25s, background .25s, transform .35s var(--aus-stark), box-shadow .35s; }
#efb-dateien-app .karte .ablage::before, #efb-dateien-app .karte .ablage::after, #efb-dateien-app .karte .ablage .licht, #efb-dateien-app .karte .ablage .ecke { display: none; }
#efb-dateien-app .karte .ablage:hover { border-color: var(--b); box-shadow: var(--s1); }
#efb-dateien-app .karte .ablage.ueber { border-color: var(--b); border-style: solid; background: var(--b-zart); transform: scale(1.01); box-shadow: 0 0 0 4px rgba(0, 113, 237, .14), var(--s-blau); }
#efb-dateien-app .karte .ablage.kompakt { min-height: 0; padding: 26px 22px 24px; }
#efb-dateien-app .karte .ablage .emblem { width: 64px; height: 64px; border-radius: 50%; background: var(--glanz); color: #fff; transform: none;
  box-shadow: 0 0 0 6px rgba(0, 113, 237, .12), 0 12px 26px -8px rgba(0, 113, 237, .8); }
#efb-dateien-app .karte .ablage .emblem::before { content: ""; position: absolute; inset: -12px; border-radius: 50%; border: 2px solid rgba(90, 167, 255, .45); animation: puls 2.4s var(--ein-aus) infinite; transform: none; background: none; }
#efb-dateien-app .karte .ablage .emblem svg { transform: none; width: 26px; height: 26px; }
#efb-dateien-app .karte .ablage.ueber .emblem { transform: translateY(-4px) scale(1.06); }
#efb-dateien-app .karte .ablage h2 { color: var(--navy); font-size: clamp(19.2px, 16.8px + .6vw, 24px); }
#efb-dateien-app .karte .ablage .oder, #efb-dateien-app .karte .ablage .hinweis { color: var(--grau); }
#efb-dateien-app .karte .ablage .loslassen { color: var(--b); }
#efb-dateien-app .karte .ablage :focus-visible { box-shadow: var(--fokus-ring); }
#efb-dateien-app .karte .band { margin: 0 0 18px; padding: 14px 16px; border-radius: var(--radius-klein); background: var(--b-zart); box-shadow: none; border-left: 0; color: var(--navy); }
#efb-dateien-app .karte .band.warn { background: var(--warn-zart); color: var(--warn-text); }
#efb-dateien-app .karte .band .text { color: inherit; opacity: .85; }
#efb-dateien-app .karte .band li { border-top-color: rgba(27, 58, 107, .12); }
#efb-dateien-app .karte .bemerkung { margin-top: 22px; }
#efb-dateien-app .karte .angaben { padding: 0; margin: 0 0 24px; background: none; box-shadow: none; border: 0; animation: none; }
#efb-dateien-app .karte .angaben-felder { display: grid; gap: 16px; }
@media (min-width: 680px) {
  #efb-dateien-app .karte .angaben-felder { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 18px; }
}
#efb-dateien-app .karte .angaben .bemerkung { margin-top: 16px; }
#efb-dateien-app .karte .angaben.gesperrt .feld-k input, #efb-dateien-app .karte .angaben.gesperrt .feld-k textarea { background: var(--flaeche); color: var(--tinte-2); border-style: dashed; }
#efb-dateien-app .karte .gesperrt-hinweis { margin: 10px 0 0; font-size: 13px; color: var(--grau); }
#efb-dateien-app .karte .angaben:not([hidden]) ~ .ablage { margin-top: 0; }
#efb-dateien-app .karte .anlaesse { gap: 14px; }
#efb-dateien-app .karte .anlass-karte { background: var(--karte); border: 1.5px solid var(--linie); border-radius: var(--radius); box-shadow: var(--s1); transition: border-color .3s, box-shadow .35s, transform .35s var(--aus-stark); }
#efb-dateien-app .karte .anlass-karte:hover { border-color: var(--b); box-shadow: 0 0 0 1.5px var(--b), var(--s-blau); transform: translateY(-2px); }
#efb-dateien-app .karte .datum-kachel { background: var(--glanz-text); border-radius: var(--radius-klein); box-shadow: var(--s-blau); }
#efb-dateien-app .karte .datum-kachel .monat { color: #DCEBFF; }
#efb-dateien-app .karte .anlass-info h2 { color: var(--navy); }
#efb-dateien-app .karte .anlass-datum { color: var(--b); }
#efb-dateien-app .karte .anlass-dateien { color: var(--grau); }
#efb-dateien-app .karte .platzhalter-karte { background: var(--flaeche); border-color: var(--linie-2); }
#efb-dateien-app .karte .meine-leer { padding: 8px 0 0; background: none; box-shadow: none; }
#efb-dateien-app .karte .meine-leer .raute-gross { border-color: var(--b); }
#efb-dateien-app .karte .meine-leer h2 { color: var(--navy); }
#efb-dateien-app .karte .meine-leer p { color: var(--tinte-2); }
#efb-dateien-app #knopf-abmelden { color: #fff; border-color: rgba(255, 255, 255, .6); background: transparent; }
#efb-dateien-app #knopf-abmelden:hover { background: rgba(255, 255, 255, .1); }
#efb-dateien-app .karte .fortschritt { margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--linie-2); }
#efb-dateien-app .karte .reise-start::before { border-color: var(--linie); background: #fff; box-shadow: var(--s1); }
#efb-dateien-app .karte .reise-start { color: var(--navy); }
#efb-dateien-app .karte .reise-raute { background: var(--b); box-shadow: 0 0 0 6px rgba(0, 113, 237, .16), 0 6px 14px -4px rgba(0, 113, 237, .8); }
#efb-dateien-app .karte .reise-spur { background: linear-gradient(90deg, #5AA7FF, #0071ED 60%, #1B3A6B); box-shadow: 0 0 10px rgba(90, 167, 255, .5); }
#efb-dateien-app .karte .reise-bild { border-color: #fff; box-shadow: var(--s2); }
#efb-dateien-app .karte .reise-haken { background: var(--glanz); box-shadow: 0 0 0 3px #fff, var(--s-blau); border-radius: 50%; }
#efb-dateien-app .karte .balken { height: 8px; border-radius: 8px; background: var(--linie-2); }
#efb-dateien-app .karte .balken i { border-radius: 8px; background: linear-gradient(90deg, #5AA7FF, #0071ED); }
#efb-dateien-app .karte .balken.duenn { height: 4px; }
#efb-dateien-app .karte .datei { padding: 14px 4px; border-top-color: var(--linie-2); }
#efb-dateien-app .karte .datei .raute { border-color: #9AAFC9; }
#efb-dateien-app .karte .datei.laeuft .raute, #efb-dateien-app .karte .datei.fertig .raute { border-color: var(--b); background: var(--b); }
#efb-dateien-app .karte .bestaetigung { display: block; margin: 28px 0 0; padding: 30px 20px 26px; text-align: center; color: var(--tinte);
  background: var(--karte); border: 1px solid var(--linie-2); border-radius: var(--radius); box-shadow: none;
  animation: auftauchen .7s var(--aus-stark) backwards; }
#efb-dateien-app .karte .bestaetigung .emblem, #efb-dateien-app .karte .bestaetigung .funke { display: none; }
#efb-dateien-app .kreis { display: block; width: 112px; height: 112px; margin: 0 auto 20px; }
#efb-dateien-app .kreis .r1 { fill: none; stroke: #E3EEFC; stroke-width: 6; }
#efb-dateien-app .kreis .r2 { fill: none; stroke: url(#ringVerlauf); stroke-width: 6; stroke-linecap: round; stroke-dasharray: 302; stroke-dashoffset: 0; transform: rotate(-90deg); transform-origin: 50% 50%; animation: ring-zeichnen 1.1s var(--aus-stark) .1s backwards; }
#efb-dateien-app .kreis .h { fill: none; stroke: var(--b); stroke-width: 7; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 60; stroke-dashoffset: 0; animation: haken-zeichnen .55s var(--aus) .85s backwards; }
@keyframes ring-zeichnen { from { stroke-dashoffset: 302; } }
@keyframes haken-zeichnen { from { stroke-dashoffset: 60; } }
#efb-dateien-app .karte .bestaetigung h2 { font-size: clamp(22px, 2.6vw, 30px); }
#efb-dateien-app .karte .bestaetigung #bestaetigung-text { margin: 10px auto 0; max-width: 46ch; color: var(--tinte-2); }
#efb-dateien-app .naechstes { list-style: none; margin: 24px auto 0; padding: 0; max-width: 520px; display: grid; gap: 10px; text-align: left; counter-reset: s; }
#efb-dateien-app .naechstes li { counter-increment: s; display: grid; grid-template-columns: 38px 1fr; gap: 14px; align-items: center; padding: 12px 16px; border-radius: var(--radius-klein); background: #fff; border: 1px solid var(--linie-2); font-size: 14.5px; animation: hoch .6s var(--aus-stark) both; animation-delay: 1s; }
#efb-dateien-app .naechstes li:nth-child(2) { animation-delay: 1.12s; }
#efb-dateien-app .naechstes li:nth-child(3) { animation-delay: 1.24s; }
#efb-dateien-app .naechstes li::before { content: counter(s); width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: var(--glanz-text); color: #fff; font-weight: 600; box-shadow: var(--s-blau); }
#efb-dateien-app .karte .bestaetigung.teilweise .kreis .h { stroke: var(--warn); }
#efb-dateien-app .karte .angekommen { margin-top: 30px; padding-top: 22px; border-top: 1px solid var(--linie-2); }
#efb-dateien-app .karte .angekommen h2 { margin: 0 0 6px; font-size: var(--t-augenbraue); font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--grau); }
#efb-dateien-app .karte .datei .name { overflow-wrap: break-word; word-break: normal; hyphens: none; }
@media (max-width: 520px) {
  #efb-dateien-app .karte .datei { grid-template-columns: 14px minmax(0, 1fr); }
  #efb-dateien-app .karte .datei .zustand { grid-column: 2; grid-row: 2; text-align: left; padding-top: 2px; }
  #efb-dateien-app .karte .datei .name { overflow-wrap: anywhere; }
  #efb-dateien-app .karte .datei .unten, #efb-dateien-app .karte .datei .info { grid-column: 2; }
}
#efb-dateien-app .zf { position: sticky; top: 24px; border-radius: var(--radius); overflow: hidden; background: #fff; box-shadow: var(--s3); animation: auftauchen .9s var(--aus-stark) .25s backwards; }
@media (max-width: 1099.98px) {
  #efb-dateien-app .zf { position: static; }
}
#efb-dateien-app .zf-kopf { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 20px; color: #fff; background: var(--zf-kopf); overflow: hidden; }
#efb-dateien-app .zf-kopf::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: linear-gradient(90deg, rgba(174, 212, 253, 0), #AED4FD, #0076EE, #AED4FD, rgba(174, 212, 253, 0)); background-size: 200% 100%; animation: schimmer 4s linear infinite; }
#efb-dateien-app .zf-kopf h2 { margin: 0; font-size: 17px; font-weight: 600; }
#efb-dateien-app .zf-kopf p { margin: 2px 0 0; font-size: 12.5px; color: var(--marke-hell); }
#efb-dateien-app .ring { width: 54px; height: 54px; flex: none; }
#efb-dateien-app .ring .grund { fill: none; stroke: rgba(255, 255, 255, .16); stroke-width: 4; }
#efb-dateien-app .ring .wert { fill: none; stroke: url(#ringVerlauf); stroke-width: 4; stroke-linecap: round; transform: rotate(-90deg); transform-origin: 50% 50%; transition: stroke-dashoffset .9s var(--aus-stark); }
#efb-dateien-app .ring text { fill: #fff; font: 600 12px Poppins, Arial, sans-serif; }
#efb-dateien-app .zf-liste { list-style: none; margin: 0; padding: 8px 14px; }
#efb-dateien-app .zf-punkt { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 10px; align-items: start; padding: 11px 8px; border-radius: var(--radius-klein); transition: background .5s; }
#efb-dateien-app .zf-punkt + .zf-punkt { border-top: 1px solid var(--linie-2); }
#efb-dateien-app .zf-punkt svg { width: 26px; height: 26px; margin-top: 2px; color: #9AAFC9; transition: color .3s; }
#efb-dateien-app .zf-punkt.gefuellt svg { color: var(--b); }
#efb-dateien-app .zf-punkt h3 { margin: 0; font-size: 11.5px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--grau); }
#efb-dateien-app .zf-punkt .wert { margin-top: 2px; font-size: 14px; line-height: 1.4; color: var(--tinte); overflow-wrap: anywhere; }
#efb-dateien-app .zf-punkt .wert.leer { color: var(--grau); }
#efb-dateien-app .zf-punkt.neu { animation: aufleuchten 1.4s var(--aus); }
@keyframes aufleuchten { 0% { background: #DDEBFC; } 100% { background: rgba(221, 235, 252, 0); } }
#efb-dateien-app .zf-fuss { padding: 14px 20px 18px; border-top: 1px solid var(--linie-2); background: var(--karte); font-size: 13px; color: var(--tinte-2); }
#efb-dateien-app .zusage { display: flex; align-items: center; gap: 9px; margin: 0; font-weight: 600; color: var(--navy); }
#efb-dateien-app .zusage svg { width: 20px; height: 20px; color: var(--gut); flex: none; }
#efb-dateien-app .zf-fuss p + p { margin: 8px 0 0; line-height: 1.5; }
#efb-dateien-app .zf-fuss a { color: var(--b); font-weight: 500; }
#efb-dateien-app .karte .wege { gap: 30px; }
@media (min-width: 760px) {
  #efb-dateien-app .karte .wege { gap: 36px; }
}
#efb-dateien-app .karte .weg h2 { margin: 0 0 18px; font-size: clamp(21px, 1.9vw, 26px); color: var(--navy); }
#efb-dateien-app .karte .weg-eyebrow { color: var(--b); }
#efb-dateien-app .karte .weg-trenner { color: var(--grau); }
#efb-dateien-app .karte .weg-trenner::before, #efb-dateien-app .karte .weg-trenner::after { background: var(--linie); }
#efb-dateien-app .karte .weg-danke .weg-text { color: var(--tinte-2); }
#efb-dateien-app .karte .feld-hilfe a, #efb-dateien-app .karte .weg-danke a { color: var(--b); }
#efb-dateien-app .karte .textknopf.hell { color: var(--b); }
#efb-dateien-app .karte .emblem.klein { background: var(--glanz); border-radius: 50%; transform: none; box-shadow: var(--s-blau); }
#efb-dateien-app .karte .emblem.klein svg { transform: none; }
#efb-dateien-app .ablauf { padding: 0; }
#efb-dateien-app .ablauf .zf-kopf { display: block; }
#efb-dateien-app .ablauf ol { list-style: none; margin: 0; padding: 16px 18px 20px; display: grid; gap: 10px; counter-reset: s; }
#efb-dateien-app .ablauf li { counter-increment: s; display: grid; grid-template-columns: 34px 1fr; gap: 12px; align-items: start; font-size: 14px; color: var(--tinte-2); }
#efb-dateien-app .ablauf li::before { content: counter(s); width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; background: var(--glanz); color: #fff; font-weight: 600; font-size: 14px; box-shadow: var(--s-blau); }
#efb-dateien-app .ablauf li b { display: block; color: var(--navy); font-weight: 600; font-size: 14.5px; }
#efb-dateien-app .flaeche .kein-link { max-width: var(--buehne-max); margin: 24px auto 0; border-radius: var(--radius); border-left: 0; box-shadow: var(--s2); background: var(--karte); position: relative; overflow: hidden; }
#efb-dateien-app .flaeche .kein-link::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; background: var(--karten-kante); }
#efb-dateien-app .flaeche .kein-link h2 { color: var(--navy); }
#efb-dateien-app .flaeche .faq { max-width: var(--buehne-max); margin: 56px auto 0; }
#efb-dateien-app .flaeche .abschnitt-titel { background: var(--schrift-verlauf-weiss); -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent; display: inline-block; }
#efb-dateien-app .flaeche .faq-punkt { background: #fff; border: 1.5px solid var(--linie-2); border-radius: var(--radius-klein); box-shadow: var(--s1); transition: border-color .3s, box-shadow .35s; }
#efb-dateien-app .flaeche .faq-punkt:hover { box-shadow: var(--s2); }
#efb-dateien-app .flaeche .faq-punkt[open] { border-color: var(--b-zart-2); box-shadow: var(--s2); }
#efb-dateien-app .flaeche .faq-punkt summary { color: var(--navy); }
#efb-dateien-app .flaeche .faq-punkt summary .pfeil-unten { width: 30px; height: 30px; padding: 8px; border-radius: 50%; background: var(--b-zart); transition: transform .3s var(--aus), background .3s; }
#efb-dateien-app .flaeche .faq-punkt[open] summary .pfeil-unten { background: var(--b); color: #fff; }
#efb-dateien-app .flaeche .faq-punkt p { color: var(--tinte-2); }
@media (prefers-reduced-motion: reduce) {
  #efb-dateien-app .schritte-fuellung, #efb-dateien-app .zf-kopf::after, #efb-dateien-app .schritt-knopf.aktiv .nr::after, #efb-dateien-app .karte .ablage .emblem::before { animation: none !important; }
  #efb-dateien-app .kreis .r2, #efb-dateien-app .kreis .h { animation: none !important; }
}
#efb-dateien-app a.knopf { text-decoration: none; }
#efb-dateien-app .anmelden-seite .buehne { justify-items: start; }
#efb-dateien-app .anmelden-karte { width: 100%; max-width: 640px; }
#efb-dateien-app .anmelden-karte .anmelden-warum { margin-top: 26px; }
/* ---- huelle.css ---- */
/* Werkzeug in der Bricks-Seite «Dateien» der Website (nur dort, werkzeuge/css-einbetten.mjs hängt diese Datei an
   eingebettet.css an). Kopfbereich wie die Website-Seiten mit dunklem Hero (/kontakt/, /anreise/): Werte aus den
   globalen Klassen .hero, .hero__container, .hero__heading-light und .hero-raum__text, mit den Variablen von
   Automatic.css (1rem = 10px auf der Website). Gemessen am 30.10.2026 auf /kontakt/ bei 1440, 1024 und 390 px. */

/* .hero: unter dem Kopf (ab 1280 px liegt der Kopf über dem Hero), seitlich der Rand der Website */
#efb-dateien-app .held { padding-top: var(--section-padding-block); padding-inline: var(--gutter); }
@media (min-width: 1280px) { #efb-dateien-app .held { padding-top: calc(var(--section-space-xxl) * 1.5); } }
/* .hero__container: Inhaltsbreite der Website */
#efb-dateien-app .held .breit { width: var(--content-width); max-width: 100%; margin-inline: auto; padding-inline: 0; }
#efb-dateien-app .held-text { padding-top: 0; }
@media (min-width: 1000px) { #efb-dateien-app .held-text { padding-top: 0; } }
/* .hero__heading-light: H1 der Website, Verlauf Weiss nach Blau */
#efb-dateien-app .held h1 {
  font-size: var(--h1); line-height: 1.2; font-weight: 600; letter-spacing: normal; max-width: var(--h1-max-width, 100%);
  text-wrap: var(--heading-text-wrap, pretty);
}
#efb-dateien-app .titel-verlauf {
  background-image: linear-gradient(90deg, #fff 0px, #0071ED 148.38%);
  -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: #fff;
}
/* .hero-raum__text */
#efb-dateien-app .held .einleitung {
  margin-top: var(--content-gap); font-size: var(--text-l); font-weight: 400; line-height: var(--text-line-height, 1.4);
  color: #fff; max-width: 50ch;
}
@media (max-width: 1439px) { #efb-dateien-app .held .einleitung { max-width: 45ch; } }
@media (max-width: 1279px) { #efb-dateien-app .held .einleitung { max-width: 40ch; } }
@media (max-width: 991px) { #efb-dateien-app .held .einleitung { max-width: 55ch; } }
/* Text oben am Container wie /kontakt/ (eigenständig steht er mittig neben der Collage) */
@media (min-width: 1000px) { #efb-dateien-app .held-text { align-self: start; } }
