*{box-sizing:border-box}body{margin:0;background:#edf2f7;color:#173047;font:16px/1.55 system-ui,-apple-system,sans-serif}a{color:#175b99}header{background:#133c67;color:white;border-bottom:5px solid #f3ce41;padding:20px 32px;display:flex;gap:24px;align-items:center;flex-wrap:wrap}.brand{color:white;text-decoration:none;letter-spacing:.06em;font-size:21px}.brand span{display:block;font-size:12px;letter-spacing:.25em;color:#f3ce41}.env{font-size:14px;background:#234c77;padding:6px 10px;border-radius:5px}.identity{margin-left:auto;display:flex;align-items:center;gap:15px}.shell{max-width:1250px;margin:auto;display:flex;gap:28px;padding:28px}nav{width:220px;flex-shrink:0;display:flex;flex-direction:column;gap:6px}nav a{text-decoration:none;padding:12px;border-radius:7px;color:#21435f}nav a:hover{background:#dbe6ef}.nav-label,.eyebrow{font-size:13px;letter-spacing:.12em;font-weight:700;color:#3c6b91}.nav-label{padding:20px 12px 0}main{flex:1;min-width:0}h1{font-size:30px;line-height:1.25;margin:8px 0 20px}h2{font-size:20px;margin:0 0 10px}p{margin:10px 0 18px}.panel{background:white;border:1px solid #d6e0e9;border-radius:12px;padding:24px;margin-bottom:20px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px}.grid .panel{margin-bottom:0}.tile{text-decoration:none;color:inherit;border-top:4px solid #24649d}.tile:hover{border-color:#24649d}.auth{max-width:480px;margin:25px auto}label{display:block;margin:14px 0;font-size:14px;font-weight:600}input,select{display:block;margin-top:6px;border:1px solid #a9bdcf;border-radius:6px;padding:12px;width:100%;font:inherit;font-size:16px;background:white;color:#173047}input:focus,select:focus{outline:3px solid #f1d467;outline-offset:2px}button,.button{display:inline-block;border:1px solid #174e82;border-radius:7px;background:#174e82;color:white;padding:11px 17px;min-height:44px;font:inherit;text-decoration:none;cursor:pointer;margin:8px 0}.secondary{background:white;color:#174e82}.danger{background:#fff5f1;border-color:#9e382a;color:#9e382a}.quiet{background:transparent;border-color:currentColor;color:inherit}.notice{background:#fff7d9;border-left:4px solid #e1b631;padding:15px 20px;margin-bottom:20px}.error{background:#fff0ee;color:#9b3026;border-left:4px solid #af4336;padding:12px 20px}.success{color:#236047}form{margin:0}header button{margin:0}.actions,.grant{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.grant{border-bottom:1px solid #e0e8ef;padding:10px 0}details{margin:18px 0}summary{cursor:pointer;min-height:44px;padding:8px 0}.check{display:flex;gap:10px;align-items:center}.check input{width:22px;height:22px;margin:0}.small{font-size:14px;color:#4c657b}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;background:#edf2f6;padding:15px;border-radius:7px}code{overflow-wrap:anywhere}.qr svg{max-width:250px;width:100%;height:auto}.qr{padding:12px;background:white;width:fit-content}footer{padding:22px;text-align:center;font-size:13px;color:#526b80}dt{color:#526b80}dd{margin:0 0 12px}@media(max-width:760px){header{padding:15px;gap:12px}.identity{width:100%;justify-content:space-between}.shell{display:block;padding:15px}nav{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-bottom:24px}nav a{background:#e1eaf2;padding:10px;font-size:14px}.nav-label{grid-column:1/-1;padding:8px}.panel{padding:20px}.grid{grid-template-columns:1fr}h1{font-size:26px}.actions{display:block}.actions button{width:100%}}

/* Kompakte Listen mit mobiler Darstellung */
.compact{width:100%;border-collapse:collapse;background:#fff}.compact th,.compact td{text-align:left;padding:12px;border-bottom:1px solid #dce1e5;vertical-align:top;overflow-wrap:anywhere}.compact th{background:#eef1f4}.compact td form{margin-top:6px}.filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:16px 0}.filters label{flex:1 1 180px}summary{cursor:pointer;font-weight:600;padding:12px 0}input,select,textarea,button,.button{min-height:44px}textarea{width:100%;min-height:90px}.grant{padding:10px;border-bottom:1px solid #ddd}pre{white-space:pre-wrap;overflow-wrap:anywhere}nav[role=navigation]{display:block;background:none}.compact details{max-width:420px}
@media(max-width:760px){.compact,.compact tbody,.compact tr,.compact td{display:block}.compact thead{display:none}.compact tr{padding:8px 12px;border-bottom:2px solid #ccd2d8}.compact td{padding:8px 0;border:0}.compact td:before{content:attr(data-label);display:block;color:#5b6672;font-size:12px;font-weight:600}.filters{display:block}.filters label{display:block}.compact .button,.compact button{width:100%}}

.password-field{position:relative;display:block}.password-field input{padding-right:54px;width:100%}.password-toggle{position:absolute;right:2px;top:2px;width:44px;min-height:40px;padding:9px;border:0;background:transparent!important;color:#344455!important;box-shadow:none}.password-toggle svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8}.password-toggle .eye-slash{display:none}.password-toggle.is-visible .eye-slash{display:block}.password-toggle:focus-visible{outline:2px solid #cf4b32;outline-offset:-2px}.compact .password-toggle{width:44px}

/* Gemeinsame Verwaltungsaktionen: kompakt auf Desktop, volle Touch-Ziele mobil. */
.filter-reset{margin:14px 0;min-height:49px;display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;white-space:nowrap}
.back-link{display:inline-flex;align-items:center;gap:7px;margin:0 0 14px;font-size:14px;min-height:36px;padding:6px 11px}
.table-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.compact .table-actions form{margin:0}
.message-preview{white-space:pre-line;overflow-wrap:anywhere;margin:12px 0;font-size:15px;line-height:1.45}.mail-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.mail-actions .button,.mail-actions button{margin:0}.mail-card h2{font-size:18px}.mail-meta{font-size:13px;color:#526b80;margin:4px 0}.mail-card details{margin:12px 0 0}.mail-card details summary{font-size:14px;padding:4px 0}
@media(min-width:761px){.compact th,.compact td{padding:7px 10px;line-height:1.35;font-size:14px}.compact th{font-size:13px}.compact .button,.compact button{min-height:32px;margin:0;padding:5px 9px;font-size:13px;line-height:1.4}.compact details{margin:3px 0 0}.compact details summary{min-height:24px;padding:2px 0;font-size:13px}.compact details p{margin:5px 0}.compact details h3{margin:8px 0 3px;font-size:14px}.compact td[data-label="Aktionen"]{min-width:210px}.compact td[data-label="Datum / Uhrzeit"]{white-space:nowrap}}
@media(max-width:760px){.filter-reset{min-height:44px;margin:8px 0 16px}.back-link{min-height:44px}.table-actions{display:block}.table-actions .button,.table-actions button{min-height:44px;width:100%;margin:4px 0}.mail-actions .button,.mail-actions button{min-height:44px}.mail-card{padding:18px}}

@media(min-width:761px) and (max-width:1100px){.compact td[data-label="Aktionen"]{min-width:115px}.table-actions{gap:5px}}
@media(pointer:coarse){.compact button,.compact .button{min-height:44px}}

.shell{max-width:1500px}.internal-drawer[hidden],.drawer-backdrop[hidden]{display:none}.internal-drawer{position:fixed;top:0;left:0;bottom:0;width:min(330px,90vw);padding:20px;overflow-y:auto;background:#edf2f7;z-index:101;display:flex;flex-direction:column;box-shadow:5px 0 25px #0003;margin:0}.drawer-backdrop{position:fixed;inset:0;background:#0008;z-index:100}.drawer-toggle{font-size:24px;min-width:48px}.drawer-close{width:100%}body.drawer-open{overflow:hidden}.hours-edit{display:grid;grid-template-columns:120px repeat(4,minmax(100px,1fr));gap:10px;align-items:center}.hours-edit label{margin:5px 0}.image-preview{max-width:100%;max-height:300px;object-fit:contain}.admin-tabs{width:auto;flex-direction:row;display:flex;flex-wrap:wrap;gap:10px;margin:15px 0}.admin-tabs a{padding:10px;background:white;border:1px solid #b7c5d4;border-radius:6px;text-decoration:none}@media(max-width:700px){.hours-edit{grid-template-columns:1fr 1fr}.hours-edit>label:first-child{grid-column:1/-1}.shell{padding:15px}.internal-drawer{display:flex}}

.application-actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;margin-top:1rem}.application-actions form{display:flex;gap:.5rem;flex-wrap:wrap;align-items:end}.application-actions input{max-width:14rem}
