/* A62, F-10–F-14: Gemeinsame Oberfläche; Druck bleibt unabhängig vom Farbschema. */
@media screen {
    :root { --grund:#f3f5f2; --flaeche:#fff; --text:#202c26; --gedaempft:#596b60; --rand:#dce5de; --akzent:#236d4c; --weich:#e9f2eb; --warnung:#88520c; --warnflaeche:#fff3dc; --fehler:#a32923; color-scheme:light; }
    @media (prefers-color-scheme:dark) {
        :root:not([data-farbschema="hell"]) { --grund:#171d19; --flaeche:#212a24; --text:#e7eee9; --gedaempft:#adbbb1; --rand:#3c4c41; --akzent:#93d8ad; --weich:#2b4032; --warnung:#f2c57e; --warnflaeche:#3e3020; --fehler:#ffb4ab; --verweis:#9ec9ff; --verweis-hover:#d0e4ff; color-scheme:dark; }
    }
    :root[data-farbschema="dunkel"] { --grund:#171d19; --flaeche:#212a24; --text:#e7eee9; --gedaempft:#adbbb1; --rand:#3c4c41; --akzent:#93d8ad; --weich:#2b4032; --warnung:#f2c57e; --warnflaeche:#3e3020; --fehler:#ffb4ab; --verweis:#9ec9ff; --verweis-hover:#d0e4ff; color-scheme:dark; }
    :root[data-farbschema="hell"] { --verweis:#1a5c9e; --verweis-hover:#0f3f70; }
    .mdb-rohworte { overflow-wrap:anywhere; word-break:break-all; }
    .lager-negativ { color:var(--fehler); }
    .aenderungsstatus { font-size:.8rem; color:var(--warnung); margin:.6rem 0; grid-column:1 / -1; }
    body { line-height:1.55; }
    .anwendung { padding:4.75rem 0 0 14rem; }
    .anwendung > main.huelle { max-width:84rem; padding:2rem 2.25rem 3rem; min-width:0; }
    h1 { font-size:1.8rem; letter-spacing:-.045em; line-height:1.25; }
    h2 { letter-spacing:-.02em; }
    .seitenkopf { margin:0 0 1.5rem; }
    .kopfleiste { position:fixed; top:0; left:0; right:0; height:4.75rem; background:var(--flaeche); border-bottom:1px solid var(--rand); z-index:45; }
    .kopfleiste-inhalt { height:100%; display:flex; align-items:center; flex-wrap:nowrap; gap:1rem; padding:0 1.25rem; margin:0; max-width:none; }
    .marke { font-size:1rem; flex:0 0 12.5rem; color:var(--text); }
    .kopfsuche { order:0; flex:1 1 18rem; max-width:30rem; margin:0 auto 0 0; }
    .kopfsuche input { width:100%; background:var(--grund); border-radius:.6rem; min-height:2.75rem; }
    .farbschema-wahl { display:flex; align-items:center; gap:.5rem; font-size:.78rem; color:var(--gedaempft); margin:0; }
    .farbschema-wahl select { font:inherit; padding:.55rem .6rem; min-height:2.75rem; background:var(--flaeche); color:var(--text); border:1px solid var(--rand); border-radius:.5rem; }
    .kontomenue { position:relative; font-size:.85rem; }
    .kontomenue > summary { cursor:pointer; padding:.7rem; border:1px solid var(--rand); border-radius:.5rem; white-space:nowrap; }
    .konto-inhalt { position:absolute; top:100%; right:0; min-width:13rem; padding:1rem; margin-top:.5rem; border:1px solid var(--rand); border-radius:.65rem; background:var(--flaeche); box-shadow:0 8px 24px #0002; }
    .konto-inhalt a { display:block; padding:.3rem 0 .7rem; }
    .hauptnavigation { position:fixed; left:0; top:4.75rem; bottom:0; width:14rem; padding:1.2rem .8rem; background:var(--flaeche); border-right:1px solid var(--rand); overflow-y:auto; z-index:40; }
    .hauptnavigation > summary,.navigation .konto-mobil { display:none; }
    .navigation { display:flex; flex-direction:column; align-items:stretch; gap:.25rem; }
    .navigation .menuepunkt { display:flex; align-items:center; gap:.65rem; min-height:2.9rem; padding:.65rem .8rem; border-radius:.55rem; font-size:.9rem; }
    .navigation .menuepunkt.hier { background:var(--weich); box-shadow:none; color:var(--akzent); }
    .nav-symbol { width:1.2rem; height:1.2rem; flex-shrink:0; }
    .nav-gruppe { margin:0; }
    .nav-gruppe > summary::after { margin-left:auto; }
    .nav-unterpunkte { padding:.25rem 0 .5rem 1.2rem; }
    .nav-unterpunkte a { display:flex; align-items:center; justify-content:space-between; min-height:2.6rem; border-radius:.4rem; color:var(--gedaempft); text-decoration:none; padding:.5rem .7rem; font-size:.83rem; }
    .nav-unterpunkte a:hover,.nav-unterpunkte a[aria-current] { color:var(--akzent); background:var(--weich); }
    .nav-gruppe:nth-last-of-type(2) { border-top:1px solid var(--rand); padding-top:.7rem; margin-top:.6rem; }
    .mobilnavigation { display:none; }
    .sprunglink { position:fixed; top:-6rem; left:1rem; z-index:100; background:var(--flaeche); padding:1rem; border:2px solid var(--akzent); }
    .sprunglink:focus { top:.5rem; }
    :is(a,button,input,select,textarea,summary):focus-visible { outline:3px solid var(--verweis); outline-offset:3px; }
    .anmeldung-darstellung { display:flex; justify-content:flex-end; padding:1rem; }
    .anmeldeseite > main { max-width:36rem; }
    .knopf,.knopf-flach { margin-top:0; min-height:2.75rem; padding:.65rem .95rem; border-radius:.55rem; }
    .knopf { font-weight:650; }
    .karte,.meldung,.hinweis,.diagramm,.formular.zeile { border-radius:.7rem; }
    .meldung,.hinweis { line-height:1.55; }
    .meldung.fehler,.feldfehler { color:var(--fehler); }
    .warnend { color:var(--warnung); }
    .befund-warnung { background:var(--warnflaeche); }
    .formular.breit { max-width:42rem; background:var(--flaeche); border:1px solid var(--rand); border-radius:.7rem; padding:1.4rem; }
    .formular.breit .feld { display:flex; flex-direction:column; margin-bottom:.85rem; gap:.25rem; }
    .formular.breit .feld > label { margin-top:0; }
    .formular :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { min-height:2.8rem; border-radius:.45rem; }
    .formular :is(input[type=checkbox],input[type=radio]) { accent-color:var(--akzent); min-width:1.25rem; min-height:1.25rem; }
    .feld:has([required]) > label::after { content:' *'; color:var(--akzent); }
    .formular .feldhinweis { margin:.15rem 0; }
    .formular .knopf { margin-top:1rem; }
    details.formular-zusatz,details.bereich-details { background:var(--flaeche); border:1px solid var(--rand); border-radius:.6rem; padding:.85rem 1rem; margin:1rem 0; }
    .formular-zusatz > summary,.bereich-details > summary { cursor:pointer; font-weight:600; min-height:2rem; }
    .formular-zusatz .feld:first-of-type { margin-top:1rem; }
    .formular-hilfe { display:block; color:var(--gedaempft); font-size:.78rem; margin:.35rem 0; }
    .zeitknoepfe,.reiter { flex-wrap:wrap; gap:.4rem; }
    .zeitknopf,.reiter a { border:1px solid var(--rand); border-radius:1.2rem; padding:.45rem .8rem; background:var(--flaeche); text-decoration:none; min-height:2.5rem; }
    .zeitknopf.hier,.reiter .hier { background:var(--weich); border-color:var(--akzent); color:var(--akzent); }
    .zeit-eigener { margin-top:.7rem; }
    .zeit-eigener summary { cursor:pointer; font-size:.85rem; color:var(--gedaempft); }
    .listenfilter { display:flex; flex-wrap:wrap; gap:.6rem; align-items:center; margin:1rem 0; }
    .listenfilter label { margin:0; font-size:.9rem; }
    .listenfilter input { width:18rem; max-width:100%; padding:.65rem .8rem; border:1px solid var(--rand); background:var(--flaeche); color:var(--text); border-radius:.5rem; }
    .listenfilter button { border:1px solid var(--rand); background:var(--flaeche); color:var(--text); border-radius:1.5rem; padding:.6rem .8rem; min-height:2.6rem; }
    .listenfilter button[aria-pressed=true] { color:var(--akzent); border-color:var(--akzent); background:var(--weich); }
    .listenfilter [role=status] { font-size:.8rem; color:var(--gedaempft); }
    .seitenreiter { display:flex; flex-wrap:wrap; gap:.4rem; margin:0 0 1.4rem; border-bottom:1px solid var(--rand); padding-bottom:.7rem; }
    .seitenreiter a { padding:.6rem .9rem; border-radius:.5rem; color:var(--gedaempft); text-decoration:none; min-height:2.75rem; }
    .seitenreiter a[aria-selected=true] { background:var(--weich); color:var(--akzent); font-weight:650; }
    .reiter-bereich { min-width:0; }
    .automaten-kurzinfo { display:grid; grid-template-columns:repeat(auto-fit,minmax(10rem,1fr)); gap:1rem; margin:1.5rem 0; }
    .automaten-kurzinfo > div { background:var(--flaeche); border:1px solid var(--rand); border-radius:.65rem; padding:1rem; }
    .automaten-kurzinfo dt { font-size:.8rem; color:var(--gedaempft); }.automaten-kurzinfo dd { margin:.35rem 0 0; font-weight:650; }
    .dashboard-kopf { display:flex; align-items:center; flex-wrap:wrap; justify-content:space-between; gap:1rem; margin-bottom:1.5rem; }
    .dashboard-kopf > div { min-width:0; }.dashboard-kopf h1 { margin:0; }.dashboard-kopf p { margin:.3rem 0 0; }
    .dashboard-zahlen { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; }
    .dashboard-zahl { padding:1.2rem; background:var(--flaeche); border:1px solid var(--rand); border-radius:.7rem; min-width:0; }
    .dashboard-zahl.heute { border-color:var(--akzent); box-shadow:inset 0 3px var(--akzent); }
    .dashboard-zahl h2 { font-size:.85rem; color:var(--gedaempft); margin:0; font-weight:500; }
    .dashboard-wert { display:block; font-size:1.8rem; font-weight:700; letter-spacing:-.05em; margin:.5rem 0; }
    .dashboard-zahl .vergleich { font-size:.75rem; display:block; }.dashboard-zahl .vergleich:empty { display:none; }
    .dashboard-zahl small { display:block; color:var(--gedaempft); font-size:.78rem; }
    .dashboard-aktionen { display:flex; justify-content:space-between; gap:1rem; flex-wrap:wrap; margin:.8rem 0 1.2rem; }
    .dashboard-aktionen a { font-size:.85rem; font-weight:600; }
    .betriebsstatus { margin:0 0 1.3rem; border:1px solid var(--rand); border-radius:.6rem; padding:.8rem 1rem; background:var(--flaeche); }
    .betriebsstatus > summary { cursor:pointer; font-size:.85rem; }
    .betriebsstatus.status-warnung { border-left:4px solid var(--warnung); }.betriebsstatus.status-fehler { border-left:4px solid var(--fehler); }
    .betriebsstatus .status-details { margin-top:1rem; }
    .dashboard-raster { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); align-items:start; gap:1.3rem; margin-bottom:1.3rem; }
    .dashboard-panel { background:var(--flaeche); border:1px solid var(--rand); border-radius:.7rem; padding:1.3rem; min-width:0; }
    .dashboard-panel h2 { margin:0 0 1rem; }.dashboard-panel .seitenkopf h2 { margin:0; }.dashboard-spalte { min-width:0; }.dashboard-spalte > h2 { font-size:1rem; margin-top:1.2rem; }.dashboard-panel .seitenkopf { margin:0 0 .6rem; }
    .aufgabenliste { padding:0; margin:0; list-style:none; }.aufgabenliste li { padding:.9rem 0; border-top:1px solid var(--rand); display:flex; justify-content:space-between; align-items:center; gap:1rem; }.aufgabenliste li:first-child { border-top:0; }.aufgabenliste small { display:block; color:var(--gedaempft); font-size:.8rem; margin-top:.2rem; }
    .aufgabenliste a { white-space:nowrap; font-size:.85rem; }.kurzverkaeufe li { align-items:start; }.kurzverkaeufe a { white-space:normal; }.kurzverkaeufe .betrag { white-space:nowrap; }
    .kennzahlen-details { margin:1rem 0; }.kennzahlen-details summary { cursor:pointer; font-weight:600; }.kennzahlen-details h2 { margin-top:1.5rem; }
    .live-status { display:block; font-size:.78rem; gap:.6rem; background:var(--flaeche); border:1px solid var(--rand); border-radius:.6rem; padding:.6rem .8rem; margin:1rem 0; }.live-status .knopf-flach { min-height:2.3rem; padding:.4rem .6rem; font-size:.78rem; }
    table { background:var(--flaeche); }th,td { padding:.75rem .65rem; }tbody tr:hover { background:var(--weich); }
    [hidden] { display:none!important; }
    @media(max-width:1199px) { .dashboard-zahlen { grid-template-columns:repeat(2,minmax(0,1fr)); }.kopfleiste-inhalt { gap:.7rem; }.farbschema-wahl > span { display:none; }.nur-breit { display:none; } }
    @media(max-width:959px) {
        .anwendung { padding:4.25rem 0 4.6rem; }.anwendung > main.huelle { padding:1.5rem 1rem 2rem; }.kopfleiste { height:4.25rem; }.kopfleiste-inhalt { padding:0 1rem; }.marke { flex:0 1 auto; max-width:12rem; }.kopfsuche { flex:1; }.kopfsuche input { font-size:.85rem; }.kontomenue summary { padding:.6rem; }
        .hauptnavigation { position:relative; top:auto; left:auto; bottom:auto; width:auto; border-right:0; border-bottom:1px solid var(--rand); padding:.8rem 1rem; z-index:35; }.hauptnavigation > summary { display:block; font-weight:650; cursor:pointer; }.hauptnavigation[open] > summary { margin-bottom:.8rem; }.mit-js .hauptnavigation:not([open]) { display:none; }.navigation .konto-mobil { display:flex; }
        .mobilnavigation { position:fixed; display:flex; justify-content:space-around; bottom:0; left:0; right:0; padding:.4rem .4rem max(.4rem,env(safe-area-inset-bottom)); background:var(--flaeche); border-top:1px solid var(--rand); z-index:50; }.mobilnavigation a { display:flex; flex-direction:column; gap:.15rem; align-items:center; justify-content:center; min-width:0; flex:1; min-height:3rem; font-size:.68rem; padding:.3rem; color:var(--gedaempft); text-decoration:none; border-radius:.5rem; }.mobilnavigation a[aria-current] { color:var(--akzent); background:var(--weich); font-weight:650; }.mobilnavigation .nav-symbol { width:1.25rem; height:1.25rem; }
        .fahreransicht .mobilnavigation { justify-content:center; }.fahreransicht .mobilnavigation a { max-width:12rem; }.dashboard-raster { grid-template-columns:1fr; }.dashboard-panel { padding:1rem; }
    }
    @media(max-width:600px) {
        .kopfleiste-inhalt { gap:.45rem; padding:0 .7rem; }.marke { display:none; }.fahreransicht .marke { display:block; font-size:.85rem; margin-right:auto; }.kopfsuche { min-width:0; }.kopfsuche input { padding:.55rem; }.farbschema-wahl select { max-width:6.7rem; padding:.5rem .35rem; font-size:.76rem; }.kontomenue summary { font-size:.75rem; }.kontomenue > summary::marker { font-size:.6rem; }
        h1 { font-size:1.55rem; overflow-wrap:anywhere; }.dashboard-kopf { gap:.7rem; flex-wrap:nowrap; align-items:flex-start; }.dashboard-kopf > .knopf { flex-shrink:0; max-width:10rem; }.dashboard-kopf .knopf { font-size:.8rem; }.dashboard-zahlen { gap:.6rem; }.dashboard-zahl { padding:.9rem .8rem; }.dashboard-wert { font-size:1.5rem; }.dashboard-zahl small { font-size:.72rem; }
        .seitenreiter { gap:.2rem; }.seitenreiter a { font-size:.8rem; padding:.5rem .65rem; }.formular.breit { padding:1rem; }.formular.zeile { grid-template-columns:1fr; }.formular.zeile .knopf { margin-top:.6rem; }.zeitform { flex-wrap:wrap; }.zeitknoepfe { display:flex; }.zeitknopf { font-size:.78rem; }
        .listenfilter input { width:100%; }.listenfilter label { flex:1 1 100%; }.listenfilter button { font-size:.8rem; }.listenfilter [role=status] { flex-basis:100%; }
        .mit-js .mobile-karten { overflow:visible; border:0; }.mit-js .mobile-karten table,.mit-js .mobile-karten tbody { display:block; width:100%; background:none; }.mit-js .mobile-karten thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }.mit-js .mobile-karten tr { display:block; background:var(--flaeche); border:1px solid var(--rand); border-radius:.6rem; padding:.55rem .8rem; margin-bottom:.75rem; }.mit-js .mobile-karten td { display:grid; grid-template-columns:minmax(5.5rem,.45fr) minmax(0,1fr); column-gap:.7rem; padding:.4rem 0; border:0; text-align:left; overflow-wrap:anywhere; }.mit-js .mobile-karten td::before { content:attr(data-beschriftung); font-size:.75rem; color:var(--gedaempft); text-align:left; }.mit-js .mobile-karten td > :is(a,span,form,div) { min-width:0; }.mit-js .mobile-karten td > .unterzeile { grid-column:2; }.mit-js .mobile-karten td:first-child { font-weight:650; }.mit-js .mobile-karten td.aktionen { display:flex; flex-wrap:wrap; gap:.4rem; }.mit-js .mobile-karten td.aktionen::before { display:none; }
        .dashboard-panel .aufgabenliste li { gap:.6rem; }.aufgabenliste .knopf-flach { min-height:2.5rem; padding:.45rem .6rem; font-size:.75rem; }
    }
    @media(prefers-reduced-motion:no-preference) { .knopf,.knopf-flach,.menuepunkt { transition:background-color .12s,border-color .12s; } }
}
@media print {
    :root { color-scheme:light; }
    .hauptnavigation,.mobilnavigation,.farbschema-wahl,.anmeldung-darstellung,.sprunglink,.seitenreiter,.listenfilter { display:none!important; }
    .anwendung { padding:0; }.anwendung > main.huelle { margin:0; max-width:none; }
    [data-reiter-bereich][hidden] { display:block!important; }
    .dashboard-zahlen { display:block; }.dashboard-zahl { break-inside:avoid; }
}
