:root{--ink:#172033;--muted:#6b7280;--line:#e4e8ef;--surface:#fff;--canvas:#f5f7fa;--nav:#132238;--nav-soft:#20344f;--blue:#2864dc;--blue-soft:#eaf1ff;--green:#16794a;--green-soft:#e7f6ee;--amber:#996313;--amber-soft:#fff4d6;--red:#b33a3a;--red-soft:#feecec;--shadow:0 14px 36px rgba(31,46,72,.12)}
*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--canvas)}button,input,select{font:inherit}.app-shell{display:grid;grid-template-columns:255px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:var(--nav);color:#fff;padding:24px 16px;display:flex;flex-direction:column;z-index:4}.brand,.sidebar-footer{display:flex;align-items:center;gap:11px}.brand{padding:0 8px 24px}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#fff;color:var(--nav);font-weight:800}.brand div,.sidebar-footer div{display:grid}.brand small,.sidebar-footer small{color:#afbdd0;margin-top:2px}.tenant-label{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#91a5bf;margin:3px 8px 6px}.tenant-select{width:100%;color:#fff;background:var(--nav-soft);border:1px solid #38506e;border-radius:10px;padding:10px 12px;margin-bottom:22px}nav{display:grid;gap:4px}.nav-item{display:flex;gap:12px;width:100%;padding:11px 12px;border:0;border-radius:10px;background:transparent;color:#c9d4e3;text-align:left;cursor:pointer}.nav-item:hover,.nav-item.active{background:var(--nav-soft);color:#fff}.sidebar-footer{margin-top:auto;padding:18px 8px 0;border-top:1px solid #2c405a}.avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#dbe7fb;color:#264871;font-weight:700}main{min-width:0}.topbar{height:76px;padding:0 32px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:16px;position:sticky;top:0;z-index:3}.search{display:flex;align-items:center;gap:10px;max-width:600px;flex:1;background:var(--canvas);border:1px solid transparent;border-radius:11px;padding:10px 14px}.search:focus-within{border-color:#93b4f4;background:#fff}.search input{width:100%;border:0;outline:0;background:transparent}.primary-button,.secondary-button,.icon-button{border-radius:9px;border:0;cursor:pointer}.primary-button{background:var(--blue);color:#fff;padding:10px 16px;font-weight:700}.primary-button:hover{background:#1d51bd}.secondary-button{background:#fff;border:1px solid var(--line);padding:9px 14px}.icon-button{background:transparent;padding:7px 10px;font-size:20px}.view{padding:32px;max-width:1480px;margin:auto}.hidden{display:none!important}.page-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;margin-bottom:25px}.page-heading h1{font-size:29px;letter-spacing:-.03em;margin:4px 0}.page-heading p{margin:0;color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--blue);font-weight:800;font-size:11px;margin:0}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:0 2px 5px rgba(30,50,80,.03)}.kpi .kpi-label{color:var(--muted);font-size:13px}.kpi strong{display:block;font-size:29px;line-height:1.2;margin:8px 0}.trend{font-size:12px;color:var(--green);font-weight:700}.trend.warn{color:var(--amber)}.content-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:16px;margin-top:16px}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.card h2{font-size:17px;margin:0}.link-button{border:0;background:transparent;color:var(--blue);font-weight:700;cursor:pointer}.task-list,.activity-list{display:grid;gap:2px}.task-row,.activity-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:13px 0;border-top:1px solid var(--line)}.task-row:first-child,.activity-row:first-child{border-top:0}.task-row input{width:18px;height:18px}.task-row small,.activity-row small{display:block;color:var(--muted);margin-top:3px}.pill{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:700;background:var(--blue-soft);color:#2955a2}.pill.Aktiv,.pill.Erledigt{background:var(--green-soft);color:var(--green)}.pill.Antrag,.pill.Offen{background:var(--amber-soft);color:var(--amber)}.pill.Ehemalig,.pill.Überfällig{background:var(--red-soft);color:var(--red)}.chart{display:flex;align-items:flex-end;gap:9px;height:160px;padding-top:18px}.bar{flex:1;background:#d8e5fb;border-radius:6px 6px 2px 2px;min-height:20px;position:relative}.bar:last-child{background:var(--blue)}.bar span{position:absolute;bottom:-22px;left:50%;transform:translateX(-50%);font-size:11px;color:var(--muted)}.table-tools{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}.table-tools input,.table-tools select{border:1px solid var(--line);border-radius:9px;padding:9px 11px;background:#fff}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:13px;background:#fff}table{border-collapse:collapse;width:100%;min-width:850px}th,td{padding:13px 15px;text-align:left;border-bottom:1px solid var(--line);font-size:14px}th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em;background:#fafbfd}tbody tr:hover{background:#fafcff}.member-name{font-weight:750}.member-name small{display:block;color:var(--muted);font-weight:400;margin-top:3px}.row-action{border:1px solid var(--line);background:#fff;border-radius:7px;padding:6px 9px;cursor:pointer}.empty{text-align:center;padding:52px;color:var(--muted)}dialog{border:0;border-radius:16px;padding:0;box-shadow:var(--shadow);width:min(720px,calc(100% - 30px))}dialog::backdrop{background:rgba(11,22,39,.52)}#memberForm{padding:24px}.dialog-header{display:flex;justify-content:space-between;align-items:flex-start}.dialog-header h2{margin:4px 0 18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid label{display:grid;gap:6px;color:#465166;font-size:13px;font-weight:700}.form-grid input,.form-grid select{border:1px solid #ced5df;border-radius:9px;padding:10px 11px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}#toast{position:fixed;right:24px;bottom:24px;background:var(--nav);color:#fff;padding:12px 16px;border-radius:10px;box-shadow:var(--shadow);opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s;z-index:8}#toast.show{opacity:1;transform:none}.mobile-only{display:none}
@media(max-width:980px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-270px;width:255px;transition:.2s}.sidebar.open{left:0}.mobile-only{display:block}.topbar{padding:0 18px}.view{padding:24px 18px}}
@media(max-width:620px){.kpi-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.topbar .primary-button{font-size:0}.topbar .primary-button::after{content:"+ Neu";font-size:14px}.page-heading{display:block}.view{padding-top:22px}}

/* Mitgliederprofile und visuelle Rollenkennzeichnung */
.member-name button{border:0;background:transparent;padding:0;color:#153f85;font-weight:800;cursor:pointer;text-align:left}.member-name button:hover{text-decoration:underline}
.member-row.member-trainer{background:#e6f4ff}.member-row.member-minor{background:#fff7cf}.member-row.member-special{background:#e3f7e8}.member-row:hover{filter:brightness(.985)}
.legend{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-left:auto;font-size:12px;color:var(--muted)}.legend i{display:inline-block;width:13px;height:13px;border:1px solid #d5dae2;border-radius:4px;margin-right:5px;vertical-align:-2px}
dialog{width:min(780px,calc(100% - 30px));max-height:92vh}.dialog-header{position:sticky;top:-24px;background:#fff;z-index:2;padding-top:24px}.form-box{border:1px solid var(--line);border-radius:13px;padding:17px;margin:0 0 14px}.form-box h3{font-size:15px;margin:0 0 14px}.form-grid label.full-width{grid-column:1/-1}
.profile-top{display:flex;gap:18px;align-items:center;margin-bottom:22px}.profile-avatar{display:grid;place-items:center;width:68px;height:68px;border-radius:18px;background:var(--blue-soft);color:#244f99;font-size:24px;font-weight:850}.profile-top h1{margin:0 0 5px}.profile-top p{margin:0;color:var(--muted)}.profile-actions{margin-left:auto;display:flex;gap:10px}.tabs{display:flex;gap:5px;border-bottom:1px solid var(--line);margin-bottom:18px;overflow:auto}.tab-button{border:0;background:transparent;padding:11px 14px;color:var(--muted);font-weight:700;cursor:pointer;white-space:nowrap;border-bottom:3px solid transparent}.tab-button.active{color:var(--blue);border-color:var(--blue)}.profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.info-card h2{margin:0 0 15px;font-size:16px}.info-list{display:grid;gap:12px}.info-item{display:grid;gap:3px}.info-item span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.info-item strong{font-size:14px}.function-badge{display:inline-flex;padding:10px 14px;border-radius:10px;background:#e3f7e8;color:#21663a;font-weight:800}.back-button{border:0;background:transparent;color:var(--blue);font-weight:750;cursor:pointer;padding:0 0 14px}
@media(max-width:980px){.profile-grid{grid-template-columns:1fr}}
@media(max-width:620px){.profile-top{align-items:flex-start;flex-wrap:wrap}.profile-actions{margin-left:0;width:100%}.form-grid label.full-width{grid-column:auto}.legend{width:100%;margin-left:0}}

/* Abteilungen und Kurse */
.department-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.department-card{position:relative;min-height:220px;border:1px solid var(--line);border-top:6px solid var(--department-color);border-radius:16px;background:#fff;padding:24px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:18px;box-shadow:0 4px 12px rgba(30,50,80,.05);transition:.18s}.department-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.department-card>span:nth-child(2){display:grid;gap:7px}.department-card strong{font-size:22px}.department-card small{color:var(--muted);line-height:1.45}.department-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:13px;color:#fff;background:var(--department-color);font-weight:850}.department-meta{margin-top:auto;color:var(--muted);font-size:13px}.department-card b{position:absolute;right:22px;top:24px;color:var(--department-color);font-size:22px}.department-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(115deg,color-mix(in srgb,var(--department-color) 12%,white),#fff);border:1px solid color-mix(in srgb,var(--department-color) 28%,white);border-left:7px solid var(--department-color);border-radius:16px;padding:26px;margin-bottom:18px}.department-hero h1{margin:4px 0 6px}.department-hero p{margin:0;color:var(--muted)}.department-kpis{margin-bottom:18px}.role-name{font-size:18px!important}.course-compact{width:100%;display:flex;justify-content:space-between;align-items:center;border:0;border-top:1px solid var(--line);background:#fff;padding:14px 2px;text-align:left;cursor:pointer}.course-compact:first-of-type{border-top:0}.course-compact span:first-child{display:grid;gap:4px}.course-compact small{color:var(--muted)}.course-toolbar{display:flex;justify-content:space-between;align-items:center;margin:-10px 0 18px}.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.course-card{display:grid;gap:16px}.course-open{display:flex;gap:13px;align-items:center;border:0;background:transparent;padding:0;text-align:left;cursor:pointer}.course-open>span:last-child{display:grid;gap:5px}.course-open strong{font-size:17px;color:var(--ink)}.course-open small{color:var(--muted)}.course-symbol{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:var(--blue-soft);color:var(--blue);font-size:20px}.course-stats{display:grid;gap:6px;color:var(--muted);font-size:13px;border-top:1px solid var(--line);padding-top:14px}.course-actions{display:flex;gap:8px}.danger-button{border:1px solid #f1b5b5;background:#fff;color:var(--red);border-radius:9px;padding:9px 14px;cursor:pointer}.danger-button:hover{background:var(--red-soft)}.course-info-grid{margin-bottom:18px}.occupancy{display:block;font-size:30px;margin:18px 0 12px}.progress{display:block;height:9px;border-radius:999px;background:#edf0f4;overflow:hidden}.progress i{display:block;height:100%;background:var(--blue);border-radius:inherit}.course-members .card-header p{margin:5px 0 0;color:var(--muted)}.round-add{display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:50%;background:var(--blue);color:#fff;font-size:25px;cursor:pointer}.dynamic-form{padding:24px}.picker-search{display:grid;gap:8px;font-weight:700}.picker-search select{border:1px solid #ced5df;border-radius:9px;padding:12px}.course-members{margin-top:18px}
@media(max-width:1100px){.department-grid,.course-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.department-grid,.course-grid{grid-template-columns:1fr}.department-hero{align-items:flex-start;flex-direction:column}.course-toolbar{align-items:flex-start;gap:12px;flex-direction:column}.profile-actions{flex-wrap:wrap}}

/* Anmeldung und Serverstatus */
.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#eef4ff,#f7f9fc 55%,#e9f5ef)}.login-card{width:min(440px,100%);background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:32px}.login-brand{color:var(--ink);padding:0 0 28px}.login-brand .brand-mark{background:var(--nav);color:#fff}.login-brand small{color:var(--muted)}.login-card h1{font-size:32px;margin:6px 0}.login-card>p:not(.eyebrow){color:var(--muted);margin-bottom:24px}.login-card form{display:grid;gap:16px}.login-card form label{display:grid;gap:7px;font-size:13px;font-weight:750}.login-card input{border:1px solid #ced5df;border-radius:10px;padding:12px}.login-error{min-height:18px;color:var(--red);margin:0!important;font-size:13px}.demo-hint{display:block;color:var(--muted);margin-top:20px}.fatal-error{max-width:600px;margin:15vh auto;background:#fff;border:1px solid var(--line);border-radius:16px;padding:32px}.save-error::after{content:'Änderungen konnten nicht gespeichert werden';position:fixed;right:20px;top:90px;background:var(--red);color:#fff;padding:10px 14px;border-radius:9px;z-index:20}

/* Filter, Auswahl und Excel-Export */
.filtered-member-list{margin-top:18px}.filtered-member-list .card-header p{margin:5px 0 0;color:var(--muted)}.member-list-controls{display:grid;gap:12px;margin:0 0 16px}.list-toolbar,.filter-row,.selection-row{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.list-toolbar{justify-content:space-between}.list-toolbar>span{color:var(--muted);font-size:13px;font-weight:650}.filter-toggle{display:inline-flex;align-items:center;gap:7px;border:1px solid #ced5df;border-radius:9px;background:#fff;color:var(--ink);padding:9px 12px;font-weight:750;cursor:pointer}.filter-toggle:hover,.filter-toggle.active{border-color:#8db0ed;background:var(--blue-soft);color:#244f99}.filter-toggle svg{width:17px;height:17px;fill:currentColor}.filter-toggle b{display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:var(--blue);color:#fff;font-size:11px}.filter-row{padding:13px;background:#f7f9fc;border:1px solid var(--line);border-radius:12px}.filter-row input,.filter-row select{border:1px solid #ced5df;border-radius:9px;background:#fff;padding:9px 10px;min-width:130px}.filter-row input[type=search]{flex:1;min-width:220px}.filter-row input[type=number]{width:110px;min-width:100px}.selection-row .primary-button:disabled{opacity:.45;cursor:not-allowed}.check-cell{width:42px;text-align:center}.check-cell input{width:17px;height:17px}.member-list-controls+.table-wrap table{min-width:900px}
@media(max-width:700px){.filter-row>*{width:100%!important}.selection-row{align-items:stretch;flex-direction:column}.selection-row>span{margin:0}.selection-row button{width:100%}}

/* Datenimport */
.import-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:18px;margin-bottom:18px}.import-upload h2,.import-help h2,.import-preview h2{margin:0 0 9px}.import-upload>p,.import-help p{color:var(--muted);line-height:1.55}.file-drop{margin:22px 0 16px;min-height:180px;border:2px dashed #aac1e8;border-radius:15px;background:#f7faff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:7px;padding:24px;cursor:pointer}.file-drop:hover{border-color:var(--blue);background:var(--blue-soft)}.file-drop input{position:absolute;width:1px;height:1px;opacity:0}.file-drop small{color:var(--muted)}.file-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--blue);color:#fff;font-size:25px;font-weight:800}.import-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.import-actions span,.muted{color:var(--muted);font-size:13px}.import-actions button:disabled,.import-preview button:disabled{opacity:.45;cursor:not-allowed}.import-preview .card-header p{display:flex;gap:8px;margin:6px 0 0}.import-count{display:inline-flex;padding:4px 9px;border-radius:999px;font-size:12px;font-weight:750}.import-count.valid{background:#e2f5e9;color:#17633b}.import-count.invalid{background:#fff0e1;color:#92500d}.import-warning{background:#fff0e1;color:#7d4309;border:1px solid #f0c894;border-radius:10px;padding:11px 13px;margin-bottom:14px}.import-table{min-width:950px}.import-row-invalid{background:#fff9f2}.import-errors{color:#a34c13;font-weight:700}.import-ok{color:#247647;font-weight:700}
@media(max-width:850px){.import-layout{grid-template-columns:1fr}.import-preview .card-header{align-items:flex-start;flex-direction:column}}

/* Kursteilnehmende und Kursabrechnung */
.course-participant-external{background:#f0f1f3;color:#59616d}.course-participant-external:hover{background:#e7e9ec}.course-participant-external .member-name strong{color:#4d5560}.participant-kind{display:inline-flex;padding:5px 9px;border-radius:999px;background:#e8f1ff;color:#285ca8;font-size:12px;font-weight:800}.participant-kind.external{background:#dfe2e6;color:#535c67}.payment-detail{display:block;margin-top:3px;color:var(--muted);font-size:11px}.participant-type-tabs{display:flex;gap:10px;margin:4px 0 20px}.participant-type-tabs label{display:flex;align-items:center;gap:7px;border:1px solid #ced5df;border-radius:10px;padding:10px 14px;font-weight:750;cursor:pointer}.participant-type-tabs label:has(input:checked){border-color:#7ba2e4;background:var(--blue-soft);color:#244f99}.participant-payment{margin-top:20px}.hidden[data-participant-external],.hidden[data-insurer-field],.hidden[data-participant-member]{display:none!important}

/* Anwesenheit */
.attendance-card{margin-bottom:18px}.attendance-card .card-header p{margin:5px 0 0;color:var(--muted)}.attendance-summary{display:flex;gap:12px;margin:14px 0}.attendance-summary span{display:flex;align-items:baseline;gap:6px;padding:8px 12px;border-radius:9px;background:#f4f7fb;color:var(--muted);font-size:12px}.attendance-summary strong{color:var(--ink);font-size:18px}.session-list{border-top:1px solid var(--line)}.session-row{width:100%;display:grid;grid-template-columns:1fr auto 20px;gap:18px;align-items:center;border:0;border-bottom:1px solid var(--line);background:#fff;padding:13px 2px;text-align:left;cursor:pointer}.session-row:hover{background:#f7faff}.session-row>span:first-child,.session-counts{display:grid;gap:4px}.session-row small{color:var(--muted)}.session-counts{text-align:right}.session-counts b{color:#267047;font-size:13px}.session-row i{color:var(--blue);font-style:normal;font-size:18px}.attendance-form{width:min(760px,92vw)}.session-fields{margin-bottom:18px}.attendance-toolbar{display:flex;align-items:center;justify-content:space-between;margin:10px 0}.attendance-toolbar span{font-weight:750}.attendance-editor{display:grid;gap:8px;max-height:42vh;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:8px}.attendance-person{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:9px 11px;border-radius:9px;background:#f8fafc}.attendance-person.external{background:#e9ebee}.attendance-person>div{display:grid;gap:3px}.attendance-person small{color:var(--muted)}.attendance-person select{min-width:145px;border:1px solid #ced5df;border-radius:8px;background:#fff;padding:8px}.attendance-form .dialog-actions .danger-button{margin-right:auto}
@media(max-width:620px){.session-row{grid-template-columns:1fr}.session-counts{text-align:left}.session-row i{display:none}.attendance-person{align-items:flex-start;flex-direction:column}.attendance-person select{width:100%}}

/* KI-Copilot */
.copilot-launch{position:fixed;right:24px;bottom:24px;z-index:35;width:56px;height:56px;border:0;border-radius:18px;background:linear-gradient(135deg,#315fc4,#7746c7);color:#fff;font-weight:900;font-size:17px;box-shadow:0 12px 28px rgba(37,70,145,.32);cursor:pointer}.copilot-panel{position:fixed;right:24px;bottom:92px;z-index:34;width:min(430px,calc(100vw - 32px));height:min(680px,calc(100vh - 125px));display:grid;grid-template-rows:auto 1fr auto auto;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 55px rgba(25,40,75,.24);overflow:hidden}.copilot-panel.hidden{display:none}.copilot-header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--line);background:#f7f9ff}.copilot-header>div{display:grid;gap:3px}.copilot-header small{color:var(--muted)}.copilot-messages{padding:16px;overflow:auto;display:flex;flex-direction:column;gap:12px}.copilot-message{max-width:88%;padding:11px 13px;border-radius:13px;background:#f0f3f8;line-height:1.45;white-space:pre-wrap}.copilot-message.user{align-self:flex-end;background:var(--blue);color:#fff}.copilot-message.error{background:#fff0ee;color:#932c23}.copilot-message small{display:block;margin-top:6px;color:var(--muted)}.copilot-proposal{border:1px solid #b9c9e8;border-radius:12px;padding:11px;margin-top:9px;background:#fff}.copilot-proposal strong{display:block;margin-bottom:9px}.copilot-proposal-actions{display:flex;gap:8px}.copilot-suggestions{display:flex;gap:6px;padding:0 14px 10px;overflow:auto}.copilot-suggestions button{border:1px solid #ccd5e5;border-radius:999px;background:#fff;padding:6px 9px;font-size:11px;white-space:nowrap;cursor:pointer}.copilot-panel form{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px;border-top:1px solid var(--line)}.copilot-panel textarea{resize:none;border:1px solid #cbd3df;border-radius:10px;padding:10px;font:inherit}.copilot-thinking{color:var(--muted);font-style:italic}.copilot-panel button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:600px){.copilot-launch{right:16px;bottom:16px}.copilot-panel{right:16px;bottom:82px;height:calc(100vh - 105px)}}

/* Große Copilot-Arbeitsfläche */
.copilot-panel{right:18px;top:18px;bottom:18px;width:min(650px,calc(100vw - 36px));height:auto;border-radius:24px;grid-template-rows:76px 1fr auto auto;background:linear-gradient(180deg,#fff 0%,#fbfcff 100%);box-shadow:0 24px 80px rgba(20,34,70,.3)}.copilot-launch{right:30px;bottom:30px;width:64px;height:64px;border-radius:21px;font-size:19px}.copilot-header{padding:14px 20px;background:linear-gradient(120deg,#f1f5ff,#faf7ff);border-bottom-color:#dfe5f0}.copilot-title,.copilot-header-actions{display:flex;align-items:center;gap:12px}.copilot-logo{display:grid;place-items:center;width:43px;height:43px;border-radius:14px;background:linear-gradient(135deg,#315fc4,#7746c7);color:#fff;font-weight:900;box-shadow:0 7px 18px rgba(61,76,173,.24)}.copilot-title>div{display:grid;gap:3px}.copilot-title strong{font-size:17px}.copilot-connection{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800;background:#fff1df;color:#91530f}.copilot-connection::before{content:'';width:8px;height:8px;border-radius:50%;background:currentColor}.copilot-connection.connected{background:#e3f7e8;color:#21663a}.copilot-connection.checking{background:#edf1f7;color:#6c7480}.copilot-messages{padding:24px 26px;gap:16px}.copilot-message{max-width:82%;padding:14px 16px;border-radius:17px;background:#eef2f8;box-shadow:0 2px 8px rgba(40,55,80,.05)}.copilot-message.user{border-bottom-right-radius:5px;background:linear-gradient(135deg,#315fc4,#4d6fd0)}.copilot-message:not(.user){border-bottom-left-radius:5px}.copilot-setup{max-width:none;border:1px solid #e8c891;border-radius:16px;background:#fff9ee;padding:16px}.copilot-setup-header{display:flex;gap:12px;align-items:flex-start}.copilot-setup-icon{display:grid;place-items:center;flex:0 0 36px;height:36px;border-radius:11px;background:#ffe7bc;color:#8a500d;font-weight:900}.copilot-setup h3{margin:0 0 5px;font-size:15px}.copilot-setup p{margin:0;color:#6b5b46;line-height:1.5}.copilot-setup code{display:block;margin-top:12px;padding:9px 11px;border-radius:9px;background:#302d36;color:#fff;font-size:12px;white-space:normal}.copilot-suggestions{padding:0 24px 14px;gap:8px}.copilot-suggestions button{padding:8px 12px;background:#f7f9fd;border-color:#d9e0ec;font-size:12px}.copilot-panel form{grid-template-columns:1fr 96px;padding:16px 20px 20px;background:#fff}.copilot-panel textarea{min-height:66px;border-radius:14px;padding:13px 14px}.copilot-panel form .primary-button{border-radius:12px}.copilot-proposal{padding:14px;border-radius:14px}
@media(max-width:760px){.copilot-panel{right:0;top:0;bottom:0;width:100vw;max-width:none;border-radius:0}.copilot-header{padding:12px 14px}.copilot-title small{display:none}.copilot-header-actions{gap:7px}.copilot-connection{font-size:10px}.copilot-messages{padding:18px}.copilot-panel form{grid-template-columns:1fr;padding:12px}.copilot-panel form button{width:100%}}
.agent-workspace-grid{display:grid;gap:20px}.agent-section{padding:0;overflow:hidden}.agent-section>.card-header{padding:20px 22px;border-bottom:1px solid var(--line)}.agent-section>.card-header p{margin:4px 0 0;color:var(--muted)}.agent-artifacts,.agent-changes{display:grid}.agent-artifact,.agent-change{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:15px 22px;border-bottom:1px solid #edf0f4}.agent-artifact:last-child,.agent-change:last-child{border-bottom:0}.agent-artifact>div,.agent-change>div{display:grid;gap:4px}.agent-artifact small,.agent-change small{color:var(--muted)}.agent-file-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:#e1f4e8;color:#197044;font-size:11px;font-weight:900}.change-state{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#e3f7e8;color:#21663a;font-weight:900}.change-state.undone{background:#edf0f4;color:#687385}@media(max-width:700px){.agent-artifact,.agent-change{grid-template-columns:auto 1fr}.agent-artifact>button,.agent-change>button,.agent-change>.pill{grid-column:1/-1;width:100%}}
.billing-construction{min-height:calc(100vh - 150px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:50px 20px}.construction-scene{position:relative;width:min(660px,94vw);height:340px}.billing-puzzle{position:absolute;left:50%;top:52px;translate:-50% 0;width:270px;height:220px;display:grid;place-items:center;border-radius:34px;background:linear-gradient(145deg,#e73c43,#b91425);color:#fff;box-shadow:0 24px 60px rgba(185,20,37,.28),inset 0 2px 0 rgba(255,255,255,.24)}.billing-puzzle::before{content:'';position:absolute;left:50%;top:-35px;translate:-50% 0;width:74px;height:74px;border-radius:50%;background:#dc303b;box-shadow:inset 0 2px 0 rgba(255,255,255,.2)}.billing-puzzle::after{content:'';position:absolute;right:-36px;top:73px;width:76px;height:76px;border-radius:50%;background:#f7f8fb;box-shadow:-8px 0 0 rgba(112,16,27,.12)}.billing-puzzle span{position:relative;z-index:1;font-size:30px;font-weight:900;letter-spacing:-.5px}.worker{position:absolute;bottom:37px;width:92px;height:144px}.worker-left{left:8%}.worker-right{right:8%;transform:scaleX(-1)}.worker-head{position:absolute;left:33px;top:24px;width:29px;height:31px;border-radius:50%;background:#d59a70}.helmet{position:absolute;z-index:2;left:25px;top:13px;width:45px;height:18px;border-radius:20px 20px 5px 5px;background:#f6bd28;border-bottom:5px solid #dd9413}.worker-body{position:absolute;left:24px;top:53px;width:48px;height:62px;border-radius:10px 10px 6px 6px;background:linear-gradient(90deg,#ef6d2f 0 28%,#f3c32f 28% 72%,#ef6d2f 72%)}.worker-leg{position:absolute;top:108px;width:18px;height:36px;border-radius:4px;background:#324968}.worker-leg.one{left:27px;rotate:8deg}.worker-leg.two{left:52px;rotate:-7deg}.tool-line{position:absolute;left:66px;top:72px;width:88px;height:7px;border-radius:9px;background:#566476;rotate:-28deg;transform-origin:left}.cable{position:absolute;height:8px;border-radius:9px;background:#27384e;box-shadow:0 3px 0 #9dacbd}.cable-left{left:19%;top:99px;width:135px;rotate:16deg}.cable-right{right:16%;top:111px;width:145px;rotate:-18deg}.spark{position:absolute;color:#f1ad21;font-size:30px;animation:constructionSpark 1.4s ease-in-out infinite}.spark-one{left:27%;top:81px}.spark-two{right:25%;top:78px;animation-delay:.7s}@keyframes constructionSpark{0%,100%{opacity:.25;scale:.7}50%{opacity:1;scale:1.15}}.billing-construction>.eyebrow{margin:8px 0 5px;color:#bd202e}.billing-construction h1{margin:0;font-size:clamp(34px,5vw,58px);letter-spacing:-2px}.billing-coming-copy{max-width:540px;margin:13px 0 0;color:var(--muted);font-size:17px}@media(max-width:650px){.construction-scene{height:290px}.billing-puzzle{width:210px;height:175px;top:50px}.billing-puzzle span{font-size:24px}.worker-left{left:0}.worker-right{right:0}.cable-left{left:15%;width:95px}.cable-right{right:12%;width:100px}}
.department-toolbar{display:flex;align-items:center;justify-content:space-between;margin:-10px 0 18px}.department-card{padding:0;overflow:hidden;display:block}.department-card-open{position:relative;width:100%;min-height:174px;border:0;background:transparent;padding:22px 24px 18px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:15px}.department-card-open>span:nth-child(2){display:grid;gap:7px}.department-card-open strong{font-size:22px}.department-card-open small{color:var(--muted);line-height:1.45}.department-card-open b{position:absolute;right:22px;top:24px;color:var(--department-color);font-size:22px}.department-card-actions{display:flex;gap:8px;padding:12px 18px;border-top:1px solid var(--line);background:#fafbfd}.department-card-actions button{flex:1}

/* Mitgliedschafts-Lebenszyklus */
.member-view-actions{display:flex;justify-content:flex-end;margin:-8px 0 12px}.member-view-actions button{display:flex;align-items:center;gap:8px}.member-view-actions button span{display:grid;place-items:center;min-width:22px;height:22px;border-radius:999px;background:#e9eef7;color:#42536d;font-size:11px}.archive-summary{display:flex;align-items:baseline;gap:9px;margin-bottom:16px;padding:14px 17px;border-radius:13px;background:#f1f3f6;color:var(--muted)}.archive-summary strong{font-size:26px;color:var(--ink)}.archived-member{background:#f3f4f6;color:#59616d}.archived-member .member-name strong{color:#4b535e}.lifecycle-person{display:grid;gap:4px;margin-bottom:18px;padding:14px;border-radius:12px;background:#f4f7fb}.lifecycle-person span{color:var(--muted);font-size:13px}.lifecycle-warning{margin-top:18px;border:1px solid #efc78d;border-radius:10px;background:#fff7e8;color:#78501c;padding:12px 13px;line-height:1.45}

/* Dokumente und Einwilligungen */
.documents-card .card-header p{margin:5px 0 0;color:var(--muted)}.document-list{display:grid;gap:9px;margin-top:16px}.document-row{display:grid;grid-template-columns:52px minmax(180px,1fr) 150px auto;align-items:center;gap:14px;border:1px solid var(--line);border-radius:13px;padding:12px;background:#fff}.document-row.expiring{border-color:#edc077;background:#fffbf2}.document-row.expired{border-color:#e5a3a3;background:#fff6f6}.document-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:#eaf1ff;color:#2d5da9;font-size:11px;font-weight:900}.document-row>div:nth-child(2){display:grid;gap:4px}.document-row small{color:var(--muted)}.document-validity span{font-size:12px;font-weight:750}.document-row.expiring .document-validity{color:#9a5a0d}.document-row.expired .document-validity{color:#a52c2c}.document-actions{display:flex;gap:7px}.document-drop{display:grid;gap:8px;border:2px dashed #aec1e2;border-radius:13px;background:#f7faff;padding:20px;margin-bottom:18px;font-weight:800}.document-drop small{color:var(--muted);font-weight:500}.document-drop input{padding:8px 0}
@media(max-width:950px){.document-row{grid-template-columns:52px 1fr}.document-validity,.document-actions{grid-column:2}.document-actions{flex-wrap:wrap}}

/* Vorlagenbibliothek */
.template-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding:16px 18px;border:1px solid #dfe6f1;border-radius:14px;background:linear-gradient(110deg,#f4f8ff,#fff)}.template-toolbar>div{display:flex;gap:16px;align-items:baseline}.template-toolbar span{color:var(--muted);font-size:13px}.template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.template-card{display:flex;flex-direction:column;gap:16px;min-height:300px}.template-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.template-file-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#e7efff,#f1eaff);color:#365b9c;font-size:11px;font-weight:900}.template-category{padding:6px 10px;border-radius:999px;background:#e7f5ec;color:#276a42;font-size:11px;font-weight:800}.template-card h2{margin:0 0 7px;font-size:18px}.template-card p{margin:0;color:var(--muted);line-height:1.5}.template-meta{display:grid;gap:5px;margin-top:auto;padding-top:14px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.template-meta span:first-child{color:var(--ink);font-weight:700;overflow-wrap:anywhere}.template-actions{display:flex;gap:7px;flex-wrap:wrap}.template-actions button{flex:1}.template-empty{grid-column:1/-1;display:grid;place-items:center;text-align:center;gap:9px;padding:54px;border:2px dashed #c5d2e6;border-radius:17px;background:#f9fbff}.template-empty>span{display:grid;place-items:center;width:62px;height:62px;border-radius:18px;background:#e9f0ff;color:#315fc4;font-size:28px}.template-empty h2,.template-empty p{margin:0}.template-empty p{color:var(--muted)}.template-empty button{margin-top:8px}.template-form{width:min(680px,92vw)}.template-form textarea{border:1px solid #ced5df;border-radius:9px;padding:10px;font:inherit;resize:vertical}
@media(max-width:1100px){.template-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.template-grid{grid-template-columns:1fr}.template-toolbar{align-items:flex-start;flex-direction:column}.template-toolbar button{width:100%}.template-actions{flex-direction:column}.template-actions button{width:100%}}

/* Persönlicher Mitgliederzugang */
.access-overview{margin-bottom:18px}.member-access-card{border-left:5px solid #5b78c7}.member-access-card .card-header p{margin:5px 0 0;color:var(--muted)}.access-status{padding:7px 11px;border-radius:999px;background:#eef1f5;color:#5c6572;font-size:12px;font-weight:800}.access-status.aktiv{background:#e3f7e8;color:#21663a}.access-status.eingeladen{background:#e7efff;color:#315b9d}.access-status.gesperrt{background:#fee9e7;color:#98332c}.member-access-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:18px}.invitation-result{width:min(620px,92vw)}.invitation-result>p{line-height:1.55}.invitation-result>label{display:grid;gap:7px;font-weight:750}.invitation-result input{border:1px solid #ced5df;border-radius:9px;background:#f6f8fb;padding:11px}
.member-auth-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#edf4ff,#f8f9fc 52%,#e8f6ef)}.member-auth-card{width:min(450px,100%);padding:34px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow)}.member-auth-brand{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#315fc4,#6b4bc4);color:#fff;font-weight:900}.member-auth-card h1{margin:8px 0}.member-auth-card>p:not(.eyebrow){color:var(--muted);line-height:1.5}.member-auth-card form{display:grid;gap:15px;margin:24px 0}.member-auth-card form label{display:grid;gap:7px;font-size:13px;font-weight:750}.member-auth-card input{border:1px solid #cbd3df;border-radius:10px;padding:12px}.member-auth-card>a{color:var(--blue);font-size:13px;font-weight:700}.member-portal-page{min-height:100vh;background:#f4f6f9}.member-portal-header{display:flex;align-items:center;justify-content:space-between;padding:14px max(20px,calc((100vw - 1050px)/2));background:#fff;border-bottom:1px solid var(--line)}.member-portal-header>div{display:flex;align-items:center;gap:12px}.member-portal-header .member-auth-brand{width:40px;height:40px;border-radius:11px}.member-portal{width:min(1050px,calc(100% - 36px));margin:36px auto}.member-welcome h1{margin:5px 0}.member-welcome>p:last-child{color:var(--muted)}.member-tabs{display:flex;gap:5px;margin:26px 0 18px;border-bottom:1px solid var(--line)}.member-tabs button{border:0;border-bottom:3px solid transparent;background:transparent;padding:12px 15px;color:var(--muted);font-weight:750}.member-tabs button.active{border-color:var(--blue);color:var(--blue)}.member-data-card{max-width:800px}.member-data-card .card-header p{margin:5px 0 0;color:var(--muted)}.member-readonly{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0 24px}.member-readonly>div{display:grid;gap:4px;padding:13px;border-radius:11px;background:#f5f7fa}.member-readonly span{color:var(--muted);font-size:11px;text-transform:uppercase}.member-data-card form>button{margin-top:18px}.member-success{color:#21663a;font-weight:700}
@media(max-width:650px){.member-readonly{grid-template-columns:1fr 1fr}.member-portal-header{padding:12px 16px}.member-portal{width:calc(100% - 24px);margin:24px auto}.member-tabs{overflow:auto}.member-auth-card{padding:25px}}
.member-access-card:has(.access-status.aktiv) [data-invite-member]{display:none}

/* Dokumente und Direktnachrichten im Mitgliederbereich */
.message-badge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#df3b38;color:#fff;font-size:11px}.portal-documents .card-header p{margin:5px 0 0;color:var(--muted)}.portal-document-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:18px}.portal-document{display:grid;grid-template-columns:52px 1fr 24px;align-items:center;gap:13px;border:1px solid var(--line);border-radius:13px;background:#fff;padding:14px;text-align:left;cursor:pointer}.portal-document:hover{border-color:#8faee0;background:#f8faff}.portal-document>span:nth-child(2){display:grid;gap:4px;min-width:0}.portal-document strong{overflow:hidden;text-overflow:ellipsis}.portal-document small{color:var(--muted)}.portal-document b{color:var(--blue);font-size:20px}.member-loading{padding:35px;text-align:center;color:var(--muted)}
.messenger{display:grid;grid-template-columns:340px minmax(0,1fr);height:min(680px,calc(100vh - 255px));min-height:520px;border:1px solid var(--line);border-radius:17px;background:#fff;overflow:hidden;box-shadow:0 5px 18px rgba(34,49,75,.06)}.chat-sidebar{display:grid;grid-template-rows:auto auto 1fr;border-right:1px solid var(--line);min-width:0}.chat-sidebar-head{display:flex;align-items:center;justify-content:space-between;padding:18px;border-bottom:1px solid var(--line)}.chat-sidebar-head h2{margin:0 0 3px}.chat-sidebar-head small{color:var(--muted)}.new-chat-search{padding:12px;border-bottom:1px solid var(--line);background:#f7f9fc}.new-chat-search>input{width:100%;border:1px solid #cbd4e1;border-radius:10px;padding:11px}.new-chat-search>div{display:grid;gap:5px;max-height:240px;overflow:auto;margin-top:8px}.new-chat-search>div>button{display:flex;align-items:center;gap:10px;border:0;border-radius:9px;background:#fff;padding:9px;text-align:left;cursor:pointer}.new-chat-search>div>button>span:last-child{display:grid;gap:2px}.new-chat-search small{color:var(--muted)}.chat-list{overflow:auto}.chat-list-item{width:100%;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;border:0;border-bottom:1px solid #edf0f4;background:#fff;padding:12px 15px;text-align:left;cursor:pointer}.chat-list-item:hover,.chat-list-item.active{background:#eef5ff}.chat-list-item>span:nth-child(2){display:grid;gap:4px;min-width:0}.chat-list-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.chat-list-item>b{display:grid;place-items:center;min-width:21px;height:21px;border-radius:999px;background:#2f78d0;color:#fff;font-size:11px}.chat-avatar{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#dce9ff,#eae2ff);color:#365a95;font-weight:850}.chat-list-empty{padding:28px;text-align:center;color:var(--muted)}.chat-pane{display:grid;grid-template-rows:auto 1fr auto;min-width:0;background:#f3f6fa}.chat-empty{align-self:center;justify-self:center;text-align:center;color:var(--muted);padding:28px}.chat-empty>span{font-size:40px}.chat-empty h2{color:var(--ink);margin:10px 0 5px}.chat-empty p{margin:0}.chat-header{display:flex;align-items:center;gap:11px;padding:13px 18px;border-bottom:1px solid var(--line);background:#fff}.chat-header>div{display:grid;gap:3px}.chat-header small{color:var(--muted)}.chat-messages{display:flex;flex-direction:column;gap:8px;overflow:auto;padding:22px;background-color:#edf1f5;background-image:radial-gradient(#d4dae2 0.7px,transparent 0.7px);background-size:14px 14px}.chat-bubble{align-self:flex-start;max-width:72%;padding:9px 11px 6px;border-radius:12px 12px 12px 3px;background:#fff;box-shadow:0 1px 3px rgba(25,40,60,.09)}.chat-bubble.own{align-self:flex-end;border-radius:12px 12px 3px 12px;background:#dff6d5}.chat-bubble p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.chat-bubble small{display:block;margin-top:4px;text-align:right;color:#6e7781;font-size:10px}.chat-day{align-self:center;padding:5px 9px;border-radius:8px;background:#fff;color:var(--muted);font-size:12px}.message-compose{display:grid;grid-template-columns:1fr 48px;gap:9px;padding:12px;background:#fff;border-top:1px solid var(--line)}.message-compose textarea{resize:none;border:1px solid #cbd4df;border-radius:22px;padding:11px 15px;font:inherit}.message-compose button{border-radius:50%;padding:0;font-size:18px}
@media(max-width:780px){.portal-document-grid{grid-template-columns:1fr}.messenger{grid-template-columns:1fr;height:auto;min-height:650px}.chat-sidebar{min-height:260px;max-height:330px;border-right:0;border-bottom:1px solid var(--line)}.chat-pane{min-height:500px}.chat-bubble{max-width:88%}}
.member-access-settings{max-width:760px}.member-access-settings .card-header p{margin:5px 0 0;color:var(--muted)}.access-email{display:grid;gap:4px;margin:20px 0;padding:14px;border-radius:11px;background:#f4f7fb}.access-email span{color:var(--muted);font-size:11px;text-transform:uppercase}.member-access-settings form>button{margin-top:16px}
.forgot-link{display:block;margin:-10px 0 18px;color:var(--blue);font-weight:750}.local-reset-link{display:block;margin-top:12px;padding:10px;border-radius:9px;background:#edf3ff;color:var(--blue);text-align:center}.member-auth-card button:disabled{opacity:.55;cursor:not-allowed}

/* Zentrale Mitgliederzugänge */
.access-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:18px}.access-kpi{display:grid;gap:5px;border:1px solid var(--line);border-radius:14px;background:#fff;padding:18px;text-align:left;cursor:pointer}.access-kpi:hover,.access-kpi.active{border-color:#7da3df;background:#f2f6ff}.access-kpi strong{font-size:28px;color:var(--ink)}.access-kpi span{color:var(--muted);font-weight:700}.access-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:15px}.access-toolbar .search{flex:1;max-width:none}.access-toolbar select{border:1px solid #ced5df;border-radius:10px;background:#fff;padding:10px 12px}.access-toolbar>span{margin-left:auto;color:var(--muted);font-size:13px}.access-table{min-width:900px}.access-row-actions{display:flex;gap:7px}.access-row-actions button{white-space:nowrap}
@media(max-width:850px){.access-kpis{grid-template-columns:repeat(2,1fr)}.access-toolbar{align-items:stretch;flex-direction:column}.access-toolbar>span{margin-left:0}.access-row-actions{flex-direction:column}}
.email-change{margin:18px 0;border:1px solid var(--line);border-radius:11px;background:#fafbfd;padding:12px 14px}.email-change summary{color:var(--blue);font-weight:800;cursor:pointer}.email-change form{margin-top:16px}.email-change form>button{margin-top:13px}
.session-settings{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px;padding:15px;border:1px solid var(--line);border-radius:11px;background:#f8fafc}.session-settings h3{margin:0 0 4px;font-size:15px}.session-settings p{margin:0;color:var(--muted);font-size:13px}.session-settings button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:620px){.session-settings{align-items:stretch;flex-direction:column}.session-settings button{width:100%}}
.privacy-setting{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:14px;padding:15px;border:1px solid var(--line);border-radius:11px;background:#f8fafc;cursor:pointer}.privacy-setting>span{display:grid;gap:4px}.privacy-setting small{color:var(--muted);font-weight:500}.privacy-setting input{width:22px;height:22px;accent-color:var(--blue)}
.chat-block-button{margin-left:auto;border:1px solid #e2a8a8;border-radius:8px;background:#fff;color:#a43434;padding:7px 10px;font-weight:750;cursor:pointer}.chat-block-button:hover{background:#fff0f0}
.round-add.subtle{margin-right:7px;background:#eef3f9;color:#45617e}.portal-dialog{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:rgba(22,32,48,.54);backdrop-filter:blur(3px)}.portal-dialog.hidden{display:none}.portal-dialog-card{width:min(560px,100%);max-height:min(720px,90vh);overflow:auto;border-radius:20px;background:#fff;padding:24px;box-shadow:0 24px 70px rgba(16,28,47,.28)}.portal-dialog-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.portal-dialog-card h2{margin:2px 0 0}.portal-dialog-card>header>button{border:0;background:#eef2f6;border-radius:50%;width:36px;height:36px;font-size:24px;cursor:pointer}.dialog-intro{color:var(--muted);margin:14px 0 20px}.blocked-contacts-list{display:grid;gap:9px}.blocked-contact{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid var(--line);border-radius:13px;padding:12px}.blocked-contact>span:nth-child(2){display:grid;gap:3px}.blocked-contact small{color:var(--muted)}
.mail-loading{padding:42px;text-align:center;color:#65758b}.mail-connection-warning{display:flex;gap:12px;align-items:center;margin:0 0 18px;padding:14px 18px;border:1px solid #f0c36a;border-radius:14px;background:#fff8df;color:#6d5012}.mail-connection-warning span{font-size:14px}.mail-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}.mail-summary article{display:flex;flex-direction:column;padding:18px 20px;border:1px solid #e4eaf2;border-radius:16px;background:#fff}.mail-summary strong{font-size:28px}.mail-summary span{color:#6c788b}.mail-groups{display:grid;gap:18px}.mail-group{overflow:hidden;border:1px solid #dde5ef;border-top:4px solid var(--group-color);border-radius:18px;background:#fff;box-shadow:0 5px 18px rgba(35,54,78,.05)}.mail-group-head{display:flex;justify-content:space-between;gap:20px;padding:20px 22px 14px}.mail-group-head h2{margin:5px 0}.mail-group-head p{margin:0;color:#6c788b}.ai-category-label{display:inline-flex;padding:4px 8px;border-radius:20px;background:#edf3ff;color:#3265b0;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.mail-count{align-self:start;padding:6px 10px;border-radius:20px;background:#f2f5f9;font-size:13px}.mail-task-list{border-top:1px solid #e8edf4}.mail-task-card{width:100%;display:grid;grid-template-columns:10px minmax(0,1fr) auto 20px;gap:14px;align-items:center;padding:16px 22px;border:0;border-bottom:1px solid #eef2f6;background:#fff;text-align:left;cursor:pointer}.mail-task-card:hover{background:#f8fbff}.priority-dot{width:9px;height:9px;border-radius:50%;background:#8ba0b7}.priority-hoch{background:#dc4f58}.priority-niedrig{background:#2a9d67}.mail-task-main{display:flex;min-width:0;flex-direction:column;gap:5px}.mail-task-main small{overflow:hidden;color:#65758b;text-overflow:ellipsis;white-space:nowrap}.mail-task-meta{display:flex;align-items:flex-end;flex-direction:column;gap:4px;color:#7a8798}.mail-chevron{font-size:26px;color:#789}.mail-detail-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin:18px 0;padding:26px 28px;border-left:5px solid var(--group-color);border-radius:18px;background:linear-gradient(135deg,#fff,#f4f8fe)}.mail-detail-hero h1{margin:8px 0}.mail-detail-hero p{margin:0;color:#65758b}.mail-detail-hero label{min-width:180px}.mail-detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:18px}.mail-detail-grid main,.mail-detail-grid aside{display:grid;align-content:start;gap:18px}.mail-original,.mail-reply-section,.assignment-card,.ai-action-card{padding:22px}.mail-from{display:grid;grid-template-columns:auto 1fr auto;gap:10px;padding:14px 0;border-bottom:1px solid #e8edf4;color:#67758a}.mail-body{padding:24px 4px;line-height:1.65}.mail-attachments{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding-top:14px;border-top:1px solid #e8edf4}.mail-attachments span{padding:8px 11px;border-radius:9px;background:#f1f5fa}.assignment-card dl{margin:0}.assignment-card dl div{padding:13px 0;border-bottom:1px solid #edf1f5}.assignment-card dt{font-size:12px;color:#758196;text-transform:uppercase}.assignment-card dd{margin:4px 0 0;font-weight:700}.ai-action-card{border:1px solid #cbdcff;background:linear-gradient(145deg,#f4f8ff,#fff)}.ai-action-card h2{font-size:19px}.ai-action-card button{width:100%}.email-composer{display:grid;gap:14px;margin-top:18px;padding-top:18px;border-top:1px solid #e6ebf2}.email-composer label{display:grid;gap:7px;font-weight:700}.email-composer textarea{width:100%;resize:vertical}.ai-reply-draft{color:#8a95a5;background:#fafbfd}.ai-reply-draft:focus{color:#243247;background:#fff}.composer-note{margin:-8px 0 0;color:#8692a2;font-size:12px}.reply-history{margin-top:18px;padding-top:16px;border-top:1px solid #e7ecf2}.reply-history article{display:flex;justify-content:space-between;padding:10px 0}.reply-history span{color:#6f7c90;font-size:13px}@media(max-width:850px){.mail-summary,.mail-detail-grid{grid-template-columns:1fr}.mail-detail-hero{align-items:stretch;flex-direction:column}.mail-task-meta{display:none}.mail-task-card{grid-template-columns:10px minmax(0,1fr) 20px}.mail-from{grid-template-columns:1fr}.mail-connection-warning{align-items:flex-start;flex-direction:column}}
.mail-connect-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;margin-bottom:20px;padding:22px;border:1px solid #cbd8ed;border-radius:18px;background:linear-gradient(135deg,#f7faff,#fff);box-shadow:0 6px 20px rgba(44,77,120,.06)}.mail-connect-card h2{margin:8px 0 4px}.mail-connect-card p{margin:0;color:#63738a}.test-mode-badge{display:inline-flex;padding:5px 9px;border-radius:20px;background:#e6f4ec;color:#28764c;font-size:11px;font-weight:800;text-transform:uppercase}.mail-provider-actions{display:flex;gap:10px}.provider-button{display:flex;min-width:150px;gap:10px;align-items:center;padding:12px 14px;border:1px solid #d5deea;border-radius:13px;background:#fff;text-align:left;cursor:pointer}.provider-button:hover{border-color:#80a5de;box-shadow:0 4px 14px rgba(45,84,135,.1)}.provider-button>strong{display:grid;width:32px;height:32px;place-items:center;border-radius:9px;background:#edf3fc;color:#376cb8;font-size:18px}.provider-button span{display:grid;font-weight:800}.provider-button small{color:#7d8999;font-weight:400}.email-connect-help{grid-column:1/-1;padding:14px 16px;border-radius:12px;background:#eef4ff}.email-connect-help p{margin:6px 0 12px}@media(max-width:850px){.mail-connect-card{grid-template-columns:1fr}.mail-provider-actions{flex-direction:column}.provider-button{width:100%}}
.email-category-manager{margin-bottom:20px;padding:22px}.category-manager-head,.category-settings-row{display:flex;justify-content:space-between;align-items:center;gap:18px}.category-manager-head h2{margin:5px 0}.category-manager-head p{margin:0;color:#68778c}.category-settings-row{margin:20px 0;padding:16px 18px;border-radius:14px;background:#f4f7fb}.category-settings-row>div{display:grid;gap:4px}.category-settings-row small{color:#718095}.ios-switch{position:relative;flex:0 0 auto;width:52px;height:30px}.ios-switch input{position:absolute;opacity:0;pointer-events:none}.ios-switch span{position:absolute;inset:0;border-radius:30px;background:#c8ced8;cursor:pointer;transition:.2s}.ios-switch span:after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(0,0,0,.24);transition:.2s}.ios-switch input:checked+span{background:#34c759}.ios-switch input:checked+span:after{transform:translateX(22px)}.ios-switch input:focus-visible+span{outline:3px solid rgba(57,118,216,.25)}.category-chip-list{display:flex;flex-wrap:wrap;gap:10px}.category-manage-chip{display:flex;align-items:center;gap:9px;min-width:260px;padding:10px 11px;border:1px solid #dde5ef;border-radius:12px;background:#fff}.category-manage-chip i{width:10px;height:34px;border-radius:8px}.category-manage-chip span{display:grid;flex:1}.category-manage-chip small{color:#758296}.category-manage-chip button{display:grid;width:28px;height:28px;place-items:center;border:0;border-radius:8px;background:#f1f4f8;cursor:pointer}@media(max-width:700px){.category-manager-head,.category-settings-row{align-items:stretch;flex-direction:column}.category-manage-chip{min-width:100%}}

/* Flat navigation and the shared protocol workspace. */
.sidebar nav{overflow-y:auto;min-height:0;flex:1;align-content:start;padding:0 3px 14px 0;scrollbar-width:thin;scrollbar-color:#526780 transparent}
.sidebar .brand,.sidebar .tenant-select,.sidebar .sidebar-footer{flex-shrink:0}
.sidebar .nav-item{align-items:center;padding:9px 11px;font-size:13px;line-height:1.35;min-height:38px}
.nav-icon{width:20px;flex-shrink:0;text-align:center;font-size:16px}
.sidebar .nav-item.active{box-shadow:inset 3px 0 0 #8bb6ff;background:#284260}
.sidebar{overflow:hidden}
.sidebar nav{flex:1 1 auto;min-height:0;max-height:calc(100vh - 220px);overflow-y:scroll;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}
.sidebar nav::-webkit-scrollbar{width:9px}.sidebar nav::-webkit-scrollbar-track{background:#172b4400}.sidebar nav::-webkit-scrollbar-thumb{background:#526780;border-radius:8px;border:2px solid var(--nav)}
.sidebar nav::-webkit-scrollbar-thumb:hover{background:#7890ac}
.nav-item:focus-visible,.protocol-switch button:focus-visible{outline:3px solid #78a8ff;outline-offset:2px}
.protocol-switch{display:inline-flex;gap:4px;padding:5px;margin:0 0 24px;border:1px solid #d9e1ec;border-radius:13px;background:#e9eef5;max-width:100%}
.protocol-switch button{border:0;border-radius:9px;background:transparent;color:#526178;padding:10px 20px;font-weight:700;cursor:pointer;transition:background .15s,color .15s}
.protocol-switch button[aria-pressed="true"]{background:#fff;color:#204a86;box-shadow:0 2px 6px #1f2e4818}
.protocol-switch button:hover{color:#173b71}
@media(max-width:620px){.protocol-switch{display:flex}.protocol-switch button{flex:1;padding:10px 12px}}
/* A focused inbox, using the same quiet greens and cards as Rehasport. */
.mail-inbox-header{margin:4px 0 22px}.mail-inbox-header p{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#627776;margin:0 0 6px}.mail-inbox-header h1{font-size:30px;margin:0 0 8px}.mail-inbox-header>div>span{font-size:14px;color:#637773}.mail-connection-compact{margin-bottom:26px;padding:12px 16px;border:1px solid #dae3df;border-radius:10px;background:#f5f8f6;font-size:13px;color:#536b60}.mail-connection-compact summary{cursor:pointer;font-weight:650}.mail-connection-compact summary span{font-weight:400}.mail-connection-compact .mail-provider-actions{justify-content:flex-start;margin:12px 0}.mail-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.mail-section-heading h2,.mail-list-heading h2{font-size:18px;margin:0;color:#254637}.mail-show-all{border:1px solid #ccded4;border-radius:8px;padding:9px 13px;background:white;color:#345b50;font:inherit;font-size:13px;cursor:pointer}.mail-show-all[aria-pressed=true]{background:#176b55;border-color:#176b55;color:white}#emailTasksView .mail-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:28px}.mail-category-tile{position:relative;display:grid;align-content:start;gap:9px;min-width:0;padding:20px 36px 20px 20px;text-align:left;border:1px solid #d9e4dd;border-radius:12px;background:white;font:inherit;cursor:pointer;color:#254d3c}.mail-category-tile strong{font-size:15px;line-height:1.4;overflow-wrap:anywhere}.mail-category-tile small{color:#67776f;font-size:12px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.mail-category-tile>span{position:absolute;right:15px;top:20px;color:#497568}.mail-category-tile:hover{background:#f0f7f2;border-color:#87b4a0}.mail-category-tile[aria-pressed=true]{background:#e7f2ec;border-color:#176b55;box-shadow:inset 0 0 0 1px #176b55}.mail-message-panel{border:1px solid #d9e4dd;border-radius:13px;overflow:hidden;background:white}.mail-list-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px}.mail-list-filters{display:flex;gap:10px}.mail-list-filters label{margin:0}.mail-list-filters input,.mail-list-filters select{border:1px solid #cddbd8;border-radius:8px;padding:9px 11px;font:inherit;font-size:13px;min-height:39px;background:white}.mail-list-filters input{width:250px}.mail-message-panel .mail-task-card{grid-template-columns:minmax(0,1fr) auto 18px;padding:17px 20px;gap:14px}.mail-message-panel .mail-task-card:hover{background:#f2f8f4}.mail-message-panel .mail-task-main strong{overflow-wrap:anywhere;font-size:14px}.mail-message-panel .mail-task-main small{font-size:12px}.mail-message-panel .mail-task-meta{display:flex}.mail-message-panel .mail-task-meta .pill{font-size:11px;background:#eef4f0;color:#476655}.mail-message-panel .mail-urgent{color:#a24832;font-size:11px}.mail-message-panel .mail-task-card:last-child{border-bottom:0}#emailTasksView .email-category-manager{margin:20px 0 0;padding:16px 0;border:0;border-top:1px solid #d9e4dd;background:transparent;box-shadow:none;border-radius:0}#emailCategoryManager>summary{cursor:pointer;font-size:13px;font-weight:650;color:#536b60}#emailCategoryManager .category-manager-head{margin-top:18px;font-size:13px}#emailCategoryManager .category-settings-row{background:#edf4f0}#emailCategoryManager .category-manage-chip{min-width:240px;font-size:13px}#emailTasksView :is(.mail-category-tile,.mail-show-all,.mail-task-card,summary,input,select):focus-visible{outline:3px solid #32aa9e;outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1050px){.mail-list-heading{align-items:stretch;flex-direction:column}.mail-list-filters label:first-child{flex:1}.mail-list-filters input{width:100%}}@media(max-width:700px){#emailTasksView .mail-category-grid{grid-template-columns:1fr}.mail-category-tile{padding:16px 35px 16px 16px}.mail-list-filters{flex-direction:column}.mail-list-filters select{width:100%}.mail-message-panel .mail-task-card{padding:14px;gap:8px}.mail-inbox-header h1{font-size:25px}.mail-section-heading h2{font-size:16px}.mail-connection-compact summary span{display:block;margin-top:5px}}
.mailbox-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 24px;border:1px solid #d9e4dd;border-radius:12px;background:#eef5f0;padding:16px 18px}.mailbox-bar>div:first-child{display:grid;gap:5px;min-width:0}.mailbox-bar strong{font-size:14px;color:#254d3c}.mailbox-bar small{font-size:12px;color:#63776b;overflow-wrap:anywhere}.mailbox-bar-actions{display:flex;gap:9px;align-items:center;flex-shrink:0}.mailbox-bar select{padding:9px;border:1px solid #cddbd8;border-radius:8px;background:white;max-width:230px}.mailbox-dialog{width:min(820px,94vw);max-height:90vh;overflow:auto;border:0;border-radius:18px;padding:26px;color:#213b34}.mailbox-dialog::backdrop{background:#13263780}.mailbox-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.mailbox-dialog h2{margin:0;font-size:24px}.mailbox-dialog header p{margin:8px 0;color:#63776b}.mailbox-dialog h3{font-size:17px;margin:20px 0 12px}.mailbox-dialog [data-mailbox-error]{color:#a52f35;font-size:14px;line-height:1.5}.mailbox-dialog [data-mailbox-error]:empty{display:none}.mailbox-provider-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.mailbox-provider-grid button{display:grid;gap:8px;padding:15px;text-align:left;background:#fff;border:1px solid #d9e4dd;border-radius:10px;font:inherit;color:#254d3c;cursor:pointer}.mailbox-provider-grid button:hover{background:#eef6f1;border-color:#83ab95}.mailbox-provider-grid strong{font-size:13px}.mailbox-provider-grid small,.mailbox-hint{color:#60776b;font-size:12px;line-height:1.6}.mailbox-dialog a{color:#176b55}.mailbox-dialog :is(button,input,select,summary,a):focus-visible{outline:3px solid #32aa9e;outline-offset:2px}.mailbox-dialog button:disabled{opacity:.6;cursor:wait}.mailbox-dialog .primary-button{background:#176b55}.mailbox-connect-form{margin-top:20px;padding:20px;border:1px solid #cbded2;border-radius:12px;background:#f4f8f5}.mailbox-connect-form h3{margin-top:0}.mailbox-connect-form label{display:grid;gap:6px;margin:12px 0;font-size:13px}.mailbox-connect-form input,.mailbox-connect-form select{width:100%;padding:10px;border:1px solid #cddbd8;border-radius:8px;background:white;font:inherit;box-sizing:border-box}.mailbox-connect-form .form-grid{gap:0 16px}.mailbox-connect-form details{margin:18px 0}.mailbox-connect-form summary{cursor:pointer;font-size:13px;font-weight:650}.mailbox-ms-setup p{font-size:13px;line-height:1.6}.mailbox-device-code{display:inline-block;padding:12px 18px;background:white;border:1px solid #bdd7c7;border-radius:8px;font-size:23px;letter-spacing:3px}.mailbox-account-list article{display:flex;justify-content:space-between;gap:15px;border:1px solid #d9e4dd;border-radius:10px;padding:16px;margin:10px 0}.mailbox-account-list article>div:first-child{display:grid;gap:6px;min-width:0}.mailbox-account-list strong,.mailbox-account-list small{overflow-wrap:anywhere}.mailbox-account-list small{font-size:12px;color:#60776b}.mailbox-account-list p{margin:0;font-size:12px;color:#a52f35}.mailbox-account-actions{display:flex;flex-wrap:wrap;align-content:center;justify-content:flex-end;gap:7px}.mailbox-status{font-size:12px;color:#866227}.mailbox-status.connected{color:#176b55}@media(max-width:850px){.mailbox-bar{align-items:stretch;flex-direction:column}.mailbox-bar-actions{flex-wrap:wrap}.mailbox-provider-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.mailbox-dialog{padding:18px}.mailbox-provider-grid{grid-template-columns:1fr 1fr}.mailbox-provider-grid button{padding:12px}.mailbox-connect-form{padding:14px}.mailbox-connect-form .form-grid{grid-template-columns:1fr}.mailbox-account-list article{flex-direction:column}.mailbox-account-actions{justify-content:flex-start}.mailbox-bar-actions{align-items:stretch;flex-direction:column}.mailbox-bar select{width:100%;max-width:none}}
.mail-workbench{display:grid;grid-template-columns:185px minmax(0,1fr);min-height:500px;border:1px solid #dce3e9;border-radius:13px;overflow:hidden;background:white}.mail-folder-nav{padding:14px 10px;background:#f5f7fa;border-right:1px solid #e1e6ec;display:flex;flex-direction:column;gap:4px}.mail-folder-nav button{display:flex;align-items:center;gap:10px;width:100%;border:0;border-radius:8px;background:transparent;padding:10px 12px;text-align:left;color:#536176;cursor:pointer;font:inherit;font-size:13px;min-width:0}.mail-folder-nav button>span:nth-child(2){flex:1;min-width:0}.mail-folder-nav button[aria-current=page]{background:#e0ebf9;color:#245998;font-weight:750}.mail-folder-nav button:hover{background:#e9eef5}.mail-folder-nav button[aria-pressed=true]{color:#245998;font-weight:750}.mail-folder-nav button small{margin-left:auto;font-size:11px;background:#fff;padding:2px 6px;border-radius:5px}.mail-folder-label{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#8591a1;padding:24px 12px 8px}.mail-folder-category i{width:7px;height:7px;border-radius:50%;flex:none}.mail-folder-category span{overflow-wrap:anywhere;font-size:12px;line-height:1.5}.mail-workbench-main{min-width:0}.mail-inbox-toolbar{display:flex;align-items:center;gap:12px;padding:18px 20px;border-bottom:1px solid #e5eaf0}.mail-inbox-toolbar>div{margin-right:auto}.mail-inbox-toolbar h2{font-size:18px;margin:0}.mail-inbox-toolbar small{font-size:12px;color:#65758b}.mail-inbox-toolbar input{font:inherit;font-size:13px;padding:9px 12px;border:1px solid #d5dee8;border-radius:8px;background:#f8fafc;width:240px}.mail-inbox-row{display:grid;grid-template-columns:12px minmax(115px,180px) minmax(0,1fr) 90px;align-items:start;gap:14px;width:100%;padding:18px 20px;border:0;border-bottom:1px solid #edf0f4;text-align:left;background:white;font:inherit;cursor:pointer;color:#5e6a7a}.mail-inbox-row:hover{background:#f2f6fb}.mail-inbox-row.is-unread{background:#f6f9ff;color:#243348}.mail-inbox-row.is-unread:hover{background:#eaf2ff}.mail-read-dot{font-size:11px;color:#3274ca;padding-top:3px}.mail-row-sender{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-top:1px}.is-unread .mail-row-sender,.is-unread .mail-row-copy strong{font-weight:750}.mail-row-copy{display:grid;gap:5px;min-width:0}.mail-row-copy strong{font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-row-copy small{font-size:12px;color:#8793a2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-row-date{text-align:right;font-size:11px;white-space:nowrap;padding-top:2px}.mail-row-date small{display:block;margin-top:6px;color:#7b8796}.mail-folder-empty{padding:80px 20px;text-align:center;color:#68798c}.mail-folder-empty strong{font-size:16px;color:#3d536d}.mail-folder-empty p{font-size:13px}.mail-reader-toolbar{display:flex;gap:7px;flex-wrap:wrap;padding:13px 16px;border-bottom:1px solid #e5eaf0;background:#fafbfd}.mail-reader-toolbar button{font-size:12px;padding:8px 10px}.mail-reader{padding:24px}.mail-reader>h2{margin:0 0 20px;font-size:23px;overflow-wrap:anywhere}.mail-reader-from{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #e5eaf0;padding:0 0 18px;font-size:13px}.mail-reader-from>div{display:grid;gap:4px;min-width:0;overflow-wrap:anywhere}.mail-reader-from small,.mail-reader-from time{font-size:12px;color:#788798}.mail-reader-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.8;padding:24px 0;color:#334357}.mail-suggested-action{margin:15px 0;padding:17px;border:1px solid #d1e1f4;border-radius:10px;background:#f2f7fd}.mail-suggested-action>span{font-size:11px;color:#597493}.mail-suggested-action h3{font-size:15px;margin:8px 0 12px}.mail-linked-tasks{margin:22px 0;border-top:1px solid #e5eaf0;padding:18px 0}.mail-linked-tasks h3{font-size:15px;margin:0 0 14px}.mail-linked-task{display:flex;gap:12px;padding:10px 0;align-items:start}.mail-linked-task input{width:17px;height:17px;accent-color:#2864dc;margin-top:2px}.mail-linked-task span{display:grid;gap:5px}.mail-linked-task strong{font-size:13px;font-weight:600}.mail-linked-task small{font-size:12px;color:#7b8796}.mail-linked-tasks form{display:flex;gap:8px;margin-top:15px;flex-wrap:wrap}.mail-linked-tasks form label{flex:1;min-width:160px}.mail-linked-tasks input[name=title]{width:100%;padding:10px;border:1px solid #d4dde7;border-radius:8px;font:inherit;font-size:13px}.mail-reader-reply{border-top:1px solid #e5eaf0;padding-top:20px}.mail-reader-reply .reply-history details{padding:10px 0;font-size:12px}.mail-reader-reply .reply-history summary{cursor:pointer}.mail-workbench :is(button,input,a,summary):focus-visible{outline:3px solid #78a8ff;outline-offset:2px}.task-row .row-action{display:block;margin-top:6px;font-size:12px}.task-row input:disabled{cursor:not-allowed;opacity:.5}@media(max-width:1000px){.mail-inbox-row{grid-template-columns:10px minmax(80px,130px) minmax(0,1fr) 76px;gap:9px;padding:15px 12px}.mail-workbench{grid-template-columns:155px minmax(0,1fr)}.mail-inbox-toolbar{flex-wrap:wrap;padding:14px}.mail-inbox-toolbar label{order:3;width:100%}.mail-inbox-toolbar input{width:100%}.mail-reader{padding:18px}}@media(max-width:650px){.mail-workbench{grid-template-columns:1fr}.mail-folder-nav{flex-direction:row;overflow:auto;padding:8px;border-right:0;border-bottom:1px solid #e1e6ec}.mail-folder-nav button{flex:0 0 auto;width:auto;white-space:nowrap;padding:9px 12px}.mail-folder-label,.mail-folder-category,.mail-folder-nav [data-email-all]{display:none!important}.mail-inbox-row{grid-template-columns:10px minmax(0,1fr) 80px;gap:5px 8px}.mail-read-dot{grid-column:1;grid-row:1/3}.mail-row-sender{grid-column:2;grid-row:1}.mail-row-copy{grid-column:2;grid-row:2;margin-top:4px}.mail-row-date{grid-column:3;grid-row:1/3}.mail-reader>h2{font-size:20px}.mail-reader-from{flex-direction:column;gap:8px}.mail-reader-toolbar{padding:10px}.mail-reader-toolbar button{font-size:11px}.mail-reader-reply .form-grid{grid-template-columns:1fr}.mail-folder-empty{padding:60px 16px}}
.template-picker{width:min(720px,90vw)}.template-picker-list{display:grid;gap:8px;max-height:48vh;overflow:auto;margin:16px 0}.template-pick-row{display:flex;align-items:center;gap:12px;border:1px solid #dce5ed;background:#fff;border-radius:10px;padding:14px;text-align:left;color:#20344f;cursor:pointer}.template-pick-row:not(label){flex-direction:column;align-items:flex-start;gap:4px}.template-pick-row:hover{background:#f2f6fc}.template-pick-row strong,.template-pick-row small{display:block;overflow-wrap:anywhere}.template-pick-row small{color:#677b8e;font-size:12px;margin-top:4px}.template-fill-form{width:min(820px,90vw)}.template-field-group{border:1px solid #dce5ed;border-radius:12px;margin:20px 0;padding:18px}.template-field-group legend{font-weight:700;padding:0 8px}.template-checkbox{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:12px;line-height:1.5}.template-checkbox input{width:18px!important;min-width:18px;height:18px!important;margin-top:3px}.document-create-actions,.template-attachment-bar{display:flex;gap:8px;flex-wrap:wrap}.template-attachment-bar{margin:12px 0}.template-attachment-bar>[data-library-attachments]{flex-basis:100%;display:flex;gap:8px;flex-wrap:wrap}.attachment-chip{display:inline-flex;align-items:center;gap:8px;background:#edf3ff;border:1px solid #d7e4ff;border-radius:8px;padding:6px 10px;font-size:12px;overflow-wrap:anywhere}.attachment-chip button{border:0;background:none;cursor:pointer;font-size:19px}.template-field-group input{min-width:0}@media(max-width:600px){.template-fill-form .form-grid{grid-template-columns:1fr}.template-picker,.template-fill-form{width:100%}.document-create-actions{flex-direction:column}.documents-card>.card-header{align-items:stretch;flex-direction:column;gap:12px}}
#dynamicDialog:has(.template-fill-form){width:min(900px,96vw);max-width:96vw}#dynamicDialog:has(.template-picker){width:min(780px,96vw);max-width:96vw}.template-fill-form,.template-picker{width:100%;box-sizing:border-box;min-width:0}.template-field-group{min-width:0}.template-field-group .form-grid{min-width:0}.template-checkbox input{flex-shrink:0}.template-field-group label{overflow-wrap:anywhere;min-width:0}
.task-board{display:grid;grid-template-columns:270px minmax(0,1fr);gap:22px;align-items:start}.task-category-panel{border:1px solid #dce5ed;background:#f8fafc;border-radius:14px;padding:16px}.task-category-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.task-category-heading h2{margin:0;font-size:17px}.task-category-source{display:grid;gap:6px;font-size:12px;color:#65778a;margin-bottom:16px}.task-category-source select{width:100%;min-width:0}.task-category-nav{display:grid;gap:6px}.task-category-nav button{display:flex;align-items:center;gap:9px;text-align:left;border:0;background:transparent;padding:12px 10px;border-radius:9px;cursor:pointer;color:#40536b}.task-category-nav button[aria-pressed=true]{background:#e4edfc;color:#174c9b;font-weight:700}.task-category-nav button:hover{background:#edf2f9}.task-category-nav i{width:8px;height:8px;flex-shrink:0;border-radius:50%}.task-category-nav span{flex:1;overflow-wrap:anywhere}.task-category-nav small{font-size:10px;color:#718399}.task-category-policy{display:grid;gap:12px;margin-top:20px;border-top:1px solid #dce5ed;padding-top:18px}.task-category-policy strong{font-size:13px}.task-category-policy p{font-size:12px;color:#65778a;line-height:1.5;margin:6px 0 0}.task-board-main{min-width:0;padding:0;overflow:hidden}.task-board-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:22px 22px 14px}.task-board-heading h2{margin:0;font-size:20px}.task-board-heading p{font-size:13px;color:#65778a;margin:7px 0 0}.task-board-category-actions{display:flex;gap:6px}.task-board-toolbar{display:flex;gap:10px;padding:0 22px 20px;border-bottom:1px solid #e9eef4}.task-board-toolbar label:first-child{flex:1}.task-board-toolbar input{width:100%}.task-board-row{display:flex;align-items:center;gap:14px;padding:20px 22px;border-bottom:1px solid #e9eef4}.task-board-row:last-child{border-bottom:0}.task-board-row>input{width:18px;height:18px;flex-shrink:0}.task-board-copy{flex:1;min-width:0}.task-board-copy strong{font-size:14px;overflow-wrap:anywhere}.task-board-copy small{display:block;color:#758699;font-size:12px;margin-top:7px}.task-board-links{display:flex;gap:8px;margin-top:6px}.task-category-select{max-width:215px}.task-category-select select{width:100%;font-size:12px}.task-board-row>.pill{font-size:11px}@media(max-width:1100px){.task-board-row{flex-wrap:wrap}.task-category-select{margin-left:32px;max-width:100%}.task-board-copy{flex-basis:75%}}@media(max-width:760px){.task-board{grid-template-columns:1fr}.task-category-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.task-category-policy{grid-template-columns:1fr auto}.task-board-heading{align-items:flex-start;flex-direction:column}.task-board-toolbar{flex-wrap:wrap}.task-board-toolbar label{width:100%}.task-board-toolbar select{width:100%}.task-category-panel{padding:14px}}
.task-board input[type=search],.task-board select{font:inherit;font-size:13px;min-height:38px;border:1px solid #dbe4ee;border-radius:8px;background:#fff;color:#30465f;padding:8px 10px;box-sizing:border-box}.task-category-select select{font-size:12px;max-width:215px}.task-board input[type=search]:focus,.task-board select:focus{outline:2px solid #93b4f5;outline-offset:1px}.task-category-source select{font-size:12px}.task-board-toolbar label{min-width:0}
.compose-dialog{width:min(850px,95vw);max-width:95vw;max-height:94vh;border:0;border-radius:16px;padding:0;box-shadow:0 20px 70px #16243d55}.compose-dialog::backdrop{background:#16243d77}.compose-dialog .dynamic-form{width:100%;box-sizing:border-box}.compose-dialog input,.compose-dialog select,.compose-dialog textarea{box-sizing:border-box;width:100%;border:1px solid #dbe4ee;border-radius:8px;padding:10px;font:inherit;font-size:14px}.compose-dialog label{display:grid;gap:7px;margin-top:13px}.compose-dialog summary{cursor:pointer;color:#47617f;margin-top:14px}.compose-dialog [role=alert]{color:#a52f35}.compose-dialog .attachment-chip button{flex-shrink:0}.compose-dialog small{color:#738398;font-size:12px}.compose-dialog textarea{resize:vertical;min-height:180px}.mail-folder-nav .mail-compose-button{background:#2860db;color:white;font-weight:700;margin-bottom:14px;justify-content:center}.mail-folder-nav .mail-compose-button:hover{background:#174bad}.compose-saved-attachments{display:flex;gap:8px;flex-wrap:wrap}@media(max-width:600px){.compose-dialog .form-grid{grid-template-columns:1fr}.compose-dialog .dialog-actions{flex-wrap:wrap}.compose-dialog .dynamic-form{padding:18px}}
.compose-dialog button:disabled{opacity:.45;cursor:not-allowed}.compose-dialog .composer-note{margin-top:8px;line-height:1.5}
/* Mitglieder: vorhandene Anordnung beibehalten, Oberflächen verfeinern. */
#membersView .page-heading h1,#memberProfileView h1{color:#1c304a;letter-spacing:-.035em}#membersView .page-heading p:not(.eyebrow){color:#7a8799}#membersView .table-wrap{border-color:#dfe7f1;border-radius:16px;box-shadow:0 5px 22px #1c365908}#membersView th{background:#f8fafd;color:#77879c;font-weight:650;letter-spacing:.08em;border-bottom-color:#e3eaf3}#membersView td{border-bottom-color:#edf1f6;color:#475b73}#membersView .member-name button{color:#243b58;font-weight:650;letter-spacing:-.015em}#membersView .member-name button:hover{color:#2864dc}#membersView .member-name small{color:#8190a3;font-size:12px}#membersView .member-row{transition:background-color .15s}#membersView .member-trainer{background:#f2f8ff}#membersView .member-minor{background:#fffdf2}#membersView .member-special{background:#f1faf5}#membersView .member-reha{background:#effbfa}#membersView .member-row:hover{background:#edf3fd}#membersView .member-row:has(input:checked){background:#eaf1ff}#membersView .member-trainer td:first-child{box-shadow:inset 3px 0 #93bdec}#membersView .member-minor td:first-child{box-shadow:inset 3px 0 #e4cb7c}#membersView .member-special td:first-child{box-shadow:inset 3px 0 #8dc7a8}#membersView .member-reha td:first-child{box-shadow:inset 3px 0 #72c5c0}#membersView input[type=checkbox]{accent-color:#3974dc;border-color:#ced8e5}#membersView .row-action{border-color:#dce5ef;border-radius:8px;color:#45617f;font-size:12px;font-weight:600;box-shadow:0 1px 2px #172b4605}#membersView .row-action:hover{border-color:#9ab5db;background:#f7faff;color:#2864dc}#membersView .secondary-button{border-color:#dce5ef;color:#49617c;box-shadow:0 1px 3px #172b4605}#membersView .primary-button{background:#326bdb;box-shadow:0 3px 8px #2864dc20}#membersView .primary-button:disabled{opacity:.45;box-shadow:none}#membersView .legend{color:#75849a;font-size:12px}#membersView .legend i{border:1px solid #1b3e6412}#membersView .pill{font-size:11px;font-weight:650;border:1px solid #264b7710}#membersView input:not([type=checkbox]),#membersView select{border-color:#dce5ef;background:#fff;color:#425872;border-radius:9px}#membersView input:focus-visible,#membersView select:focus-visible,#membersView button:focus-visible{outline:2px solid #8daee8;outline-offset:2px}#memberProfileView .card{border-color:#e0e7f0;box-shadow:0 4px 16px #1c365906}#memberProfileView .profile-top{border-color:#e0e7f0;box-shadow:0 5px 22px #1c365908}#memberProfileView .info-list{color:#475b73}#memberProfileView .profile-avatar{background:linear-gradient(145deg,#e9f0fc,#d8e7fb);color:#365f99}#memberProfileView .tab-button{font-weight:600}#memberProfileView .tab-button.active{box-shadow:0 2px 7px #264b7710}
/* Mitgliederentwicklung: zugänglicher Einstieg und datenbasierte Detailansicht. */
.growth-preview{display:block;width:100%;text-align:left;font:inherit;cursor:pointer;color:var(--ink);transition:border-color .15s,box-shadow .15s}.growth-preview:hover{border-color:#afc5eb;box-shadow:0 5px 22px #28589d12}.growth-preview:focus-visible{outline:3px solid #8fb0ea;outline-offset:3px}.growth-chart{width:100%;height:auto;display:block;overflow:visible}.growth-preview-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;font-size:11px;color:#8190a3}.growth-preview-footer strong{font-size:12px;color:#356bc2;font-weight:600}.growth-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}.growth-toolbar .protocol-switch{margin-bottom:0}.growth-toolbar>span{font-size:12px;color:#7a8799}.growth-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:20px}.growth-stats .card{padding:22px 24px}.growth-stats span,.growth-stats small{display:block;color:#7b8a9c;font-size:12px}.growth-stats strong{display:block;font-size:32px;font-weight:650;letter-spacing:-.04em;color:#233d5e;margin:8px 0}.growth-stats small{color:#526e91}.growth-detail-chart{padding:24px;margin-bottom:22px}.growth-key{display:flex;align-items:center;gap:7px;font-size:12px;color:#75869c}.growth-key i{width:8px;height:8px;background:#3974dc;border-radius:50%}.growth-data-note{font-size:12px;line-height:1.65;color:#7c8ba0;margin:12px 0 0;max-width:900px}.growth-months .card-header>span{font-size:12px;color:#7c8ba0}.growth-months table{min-width:520px}.growth-months td:not(:first-child),.growth-months th:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}.growth-months td small{display:block;color:#7c8ba0;font-size:11px;margin-top:4px}.growth-delta{color:#25836a}.growth-delta.negative{color:#b15b64}@media(max-width:650px){.growth-stats{grid-template-columns:1fr;gap:10px}.growth-stats .card{padding:16px 20px}.growth-toolbar{align-items:flex-start;flex-direction:column}.growth-detail-chart{padding:18px}.growth-months .card-header{align-items:flex-start;flex-direction:column;gap:7px}.growth-preview-footer{align-items:flex-start;flex-direction:column;gap:6px}}

#memberForm .required-marker{color:#b42318;font-weight:700}
#memberForm .required-hint{margin:0 0 16px;color:#667085;font-size:12px}

#membersView .member-name .member-number{color:#62748c;font-size:11px;font-variant-numeric:tabular-nums}
#membersView .member-row-actions{display:flex;align-items:center;gap:8px;white-space:nowrap}
#membersView .member-payment-warning{display:inline-flex;align-items:center;justify-content:center;flex:0 0 18px;width:18px;height:18px;border:1px solid #e3b341;border-radius:50%;background:#fff3bf;color:#805b00;font-size:12px;font-weight:800;cursor:help}
#membersView .member-payment-warning:focus-visible{outline:2px solid #b88713;outline-offset:3px}

#membersView button.member-payment-warning{padding:0;line-height:1;box-shadow:none;background:#ffe082;color:#684b00;border-color:#d7a324}
.member-mandate-hint{position:fixed;z-index:10000;pointer-events:none;max-width:calc(100vw - 16px);padding:9px 12px;border:1px solid #e8cc7a;border-radius:8px;background:#fff8dc;color:#684b00;font-size:13px;line-height:1.4;box-shadow:0 4px 16px #172b4620}

.login-areas{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;margin:0 0 24px;background:#f1f4f9;border:1px solid var(--line);border-radius:12px}
.login-areas a{padding:11px 16px;text-align:center;text-decoration:none;color:var(--muted);font-weight:750;border-radius:8px}
.login-areas a[aria-current="page"]{background:#fff;color:var(--blue);box-shadow:0 1px 4px #172b4d18}
.login-areas a:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
#loginHelp{display:block;margin-top:20px;color:var(--muted)}

/* Klarer Einstieg zum KI-Assistenten */
.copilot-launch{display:inline-flex;width:auto;min-width:150px;height:52px;align-items:center;justify-content:center;gap:9px;padding:0 18px;border:1px solid #d8c9ff;border-radius:17px;background:linear-gradient(135deg,#4328a8,#7650d8 58%,#ae78e8);box-shadow:0 12px 28px rgba(67,40,168,.28);font-size:14px;letter-spacing:.01em;white-space:nowrap;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.copilot-launch:hover{filter:saturate(1.08);transform:translateY(-2px);box-shadow:0 16px 32px rgba(67,40,168,.34)}
.copilot-launch:focus-visible{outline:3px solid #cfc1ff;outline-offset:4px}
.copilot-launch-mark{display:grid;width:26px;height:26px;place-items:center;border:1px solid #ffffff66;border-radius:9px;background:#ffffff20;color:#fff;font-size:18px;line-height:1}
@media(max-width:600px){.copilot-launch{right:16px;bottom:16px;min-width:0;height:50px;padding:0 14px;border-radius:16px}.copilot-launch-mark{width:24px;height:24px}.copilot-launch span:last-child{font-size:13px}}

/* Kontoaktionen bleiben am Konto in der Seitenleiste. */
.sidebar-footer{position:relative;display:block;padding:14px 0 0}
.account-button{display:flex;align-items:center;gap:10px;width:100%;padding:10px 8px;border:0;border-radius:10px;background:transparent;color:inherit;text-align:left;font:inherit}
.account-button:hover,.account-button[aria-expanded=true]{background:#ffffff12}
.account-copy{display:grid;gap:4px;min-width:0;flex:1}
.account-copy strong,.account-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-copy strong{font-size:13px}.account-copy small{font-size:11px;color:#a5b6cb}
.account-chevron{color:#a5b6cb;font-size:18px;transition:transform .15s ease}
.account-button[aria-expanded=true] .account-chevron{transform:rotate(180deg)}
.sidebar-footer .account-menu{position:absolute;bottom:calc(100% + 10px);left:0;right:0;z-index:10;display:grid;gap:4px;padding:7px;border:1px solid #dce3ec;border-radius:12px;background:#fff;box-shadow:0 10px 32px #09152940}
.account-menu[hidden],.account-menu [hidden]{display:none!important}
.account-menu a,.account-menu button{display:block;width:100%;padding:11px 12px;border:0;border-radius:7px;background:transparent;color:#30435d;text-align:left;text-decoration:none;font:inherit;font-size:13px}
.account-menu a:hover,.account-menu button:hover{background:#f0f3f7}
.account-menu #logoutButton{color:#a62f39}
.account-button:focus-visible,.account-menu :is(a,button):focus-visible{outline:2px solid #78a8ff;outline-offset:2px}

/* Zeiger folgt der Funktion; Eingabefelder behalten ihren Textcursor. */
:is(button,a[href],summary,select,[role=button],input[type=checkbox],input[type=radio],input[type=button],input[type=submit],input[type=file]){cursor:pointer}
:is(button,a[href],summary,[role=button]) *{cursor:inherit}
:is(.mail-linked-task,.ios-switch,.template-checkbox):has(input:enabled),:is(.mail-linked-task,.ios-switch,.template-checkbox):has(input:enabled) *{cursor:pointer}
:is(button,select,input):disabled{cursor:not-allowed}
.task-board-row,.task-row,.mail-linked-task{transition:background-color .15s ease}
:is(.task-board-row,.task-row,.mail-linked-task):is(:hover,:focus-within){background:#f1f4f8}
.task-board-title{display:block;max-width:100%;padding:0;border:0;border-radius:3px;background:transparent;color:inherit;font:inherit;font-size:14px;font-weight:700;text-align:left;overflow-wrap:anywhere;line-height:1.5}
.task-board-title:hover{color:#245998}
.task-board :is(button,input,select):focus-visible{outline:2px solid #3976d8;outline-offset:3px}

/* Eigene, zentrierte Vorschau vor dem Ausführen eines KI-Vorschlags. */
.ai-action-dialog{position:fixed;inset:0;margin:auto;width:min(820px,calc(100vw - 40px));max-height:calc(100dvh - 40px);padding:0;border:1px solid #dce3ec;border-radius:20px;background:#fff;color:#243348;box-shadow:0 28px 100px #13233a40;overflow:auto}
.ai-action-dialog::backdrop{background:#172b4680;backdrop-filter:blur(3px)}
.ai-action-form{padding:32px}
.ai-action-header{display:flex;align-items:center;gap:14px}
.ai-action-mark{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:13px;background:#edf2fb;color:#4963a5;font-size:25px}
.ai-action-header>div{flex:1;min-width:0}.ai-action-header p{margin:0 0 4px;color:#69788c;font-size:13px}
.ai-action-header h2{margin:0;font-size:25px;letter-spacing:-.025em}
.ai-action-header .icon-button{align-self:flex-start}
.ai-action-content{margin-top:28px;overflow-wrap:anywhere}
.ai-action-context{font-size:14px;color:#5b6b80;margin:0 0 12px}
.ai-action-proposal{padding:24px;border:1px solid #dce5f0;border-radius:12px;background:#f5f7fb;min-height:130px}
.ai-action-proposal h3{margin:0 0 12px;font-size:12px;font-weight:600;color:#63758e}
.ai-action-proposal p{margin:0;font-size:20px;line-height:1.55;font-weight:600;white-space:pre-wrap}
.ai-action-summary{margin:18px 0 0;font-size:14px;line-height:1.7;color:#526279;white-space:pre-wrap}
.ai-action-note{font-size:13px;color:#69788c;margin:22px 0 0}
.ai-action-error{padding:14px 16px;border:1px solid #f0c4ca;border-radius:10px;background:#fff3f4;color:#a32335;font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.ai-action-error[hidden]{display:none}
.ai-action-footer{display:flex;justify-content:flex-end;gap:12px;margin-top:28px;padding-top:22px;border-top:1px solid #e6ebf1}
.ai-action-footer button{min-width:132px;padding:13px 20px;border:0;border-radius:9px;color:#fff;font:inherit;font-size:14px;font-weight:650}
.ai-action-accept{background:#217447}.ai-action-accept:hover:enabled{background:#185c37}
.ai-action-cancel{background:#b42338}.ai-action-cancel:hover:enabled{background:#941d2e}
.ai-action-dialog button:focus-visible{outline:3px solid #7099df;outline-offset:3px}
.ai-action-dialog button:disabled{opacity:.55}
@media(max-width:600px){.ai-action-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:14px}.ai-action-form{padding:20px}.ai-action-header{gap:10px}.ai-action-header h2{font-size:21px}.ai-action-proposal{padding:18px}.ai-action-proposal p{font-size:18px}.ai-action-footer{gap:10px}.ai-action-footer button{flex:1;min-width:0;padding:12px}}
@media(prefers-reduced-motion:reduce){.task-board-row,.task-row,.mail-linked-task,.account-chevron{transition:none}}

/* Gemeinsame Bedienung: klare Fokuszustände, lesbare Felder, ruhige Aktionen. */
html{scroll-padding-top:92px}
button,a,input,select,textarea,summary,[tabindex]{scroll-margin-block:96px 24px}
:where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #7da4e7;outline-offset:3px}
textarea{font:inherit;line-height:1.55}
button{touch-action:manipulation}
:is(.primary-button,.secondary-button,.danger-button,.filter-toggle){min-height:40px;line-height:1.35;transition:background-color .15s,border-color .15s,box-shadow .15s}
.secondary-button:hover:enabled{background:#f1f5fb;border-color:#b6c7dc}
:is(.primary-button,.secondary-button,.danger-button):disabled{opacity:.5;box-shadow:none}
.form-grid>label,.info-item,.page-heading>div{min-width:0}
.form-grid :is(input,select,textarea){width:100%;min-width:0;color:var(--ink);font-weight:400;background:#fff}
.form-grid textarea{border:1px solid #ced5df;border-radius:9px;padding:10px 11px;resize:vertical}
.form-grid input[type=color]{min-height:40px;padding:4px}
.info-item strong,.page-heading h1,.profile-top h1,.document-row strong{overflow-wrap:anywhere}
.page-heading h1{line-height:1.2}.page-heading p:not(.eyebrow){line-height:1.55}
.page-heading>p{font-size:13px;flex-shrink:0}
.table-wrap{max-width:100%;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#a9b8cb #f1f4f8}
.table-wrap:focus-visible{outline:3px solid #7da4e7;outline-offset:3px}
.table-scroll-hint{display:none}
.skip-link{position:fixed;left:20px;top:12px;z-index:1000;padding:12px 18px;border-radius:9px;background:#fff;color:#214d92;font-weight:700;box-shadow:var(--shadow);transform:translateY(-160%)}
.skip-link:focus{transform:none}
.nav-backdrop{display:none}.nav-backdrop[hidden]{display:none!important}
.sidebar{height:100dvh}.sidebar .nav-item{line-height:1.4;min-height:42px}.sidebar nav{scroll-padding-block:8px}
.sidebar .avatar{flex-shrink:0}
#mainContent:focus{outline:none}
#toast{max-width:min(460px,calc(100vw - 32px));font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.app-shell~#toast{bottom:90px}

/* Filter und Auswahl behalten ihre Plätze und erklären ihre Eingaben. */
.filter-row[hidden]{display:none}
.filter-row{align-items:end;gap:12px;padding:16px}
.filter-row>label{display:grid;gap:6px;flex:1 1 135px;min-width:0;font-size:12px;font-weight:600;color:#54667c}
.filter-row>label.filter-search{flex:2 1 230px}
.filter-row>label.filter-age{flex:0 1 108px}
.filter-row label :is(input,select){width:100%;min-width:0!important;min-height:40px;font-size:14px;font-weight:400}
.filter-row input[type=number]{width:100%}
.selection-row{padding-top:2px}
.selection-row button{font-size:13px}
.access-status-field{display:grid;gap:5px;font-size:12px;color:#54667c;font-weight:600}
.access-status-field select{font-weight:400}
.access-toolbar{align-items:end}.access-toolbar .search{align-self:end;min-height:40px}
.access-kpi{transition:background-color .15s,border-color .15s}
.access-kpi:hover{border-color:#a7bedc;background:#f5f8fd}
.access-kpi:focus-visible{outline:3px solid #7da4e7;outline-offset:3px}
.course-compact:hover,.course-open:hover{color:#245998;background:#f5f8fd;border-radius:8px}
.course-card .course-open{padding:4px;min-height:48px}
.course-stats,.department-meta{line-height:1.55}
.info-list{line-height:1.55}.tabs{scrollbar-width:thin;scroll-padding-inline:10px}
.profile-top>div:not(.profile-avatar){min-width:0}
.profile-actions{flex-wrap:wrap}.profile-actions button{white-space:nowrap}
#profileContent:focus-visible{outline:2px solid #7da4e7;outline-offset:5px;border-radius:10px}
.empty{line-height:1.65}

/* Formulare bleiben auf dem Laptop vollständig bedienbar. */
#memberDialog,#dynamicDialog{max-height:calc(100dvh - 36px);overflow:auto;overscroll-behavior:contain}
#memberDialog .dialog-header,#dynamicDialog .dynamic-form>.dialog-header{position:sticky;top:0;z-index:2;background:#fff;padding:16px 0 8px;margin-top:-12px;border-bottom:1px solid #eef1f5}
#memberDialog .dialog-header h2,#dynamicDialog .dialog-header h2{font-size:23px;line-height:1.3;overflow-wrap:anywhere}
#memberDialog .dialog-header .icon-button,#dynamicDialog .dialog-header .icon-button{flex-shrink:0;min-width:40px;min-height:40px}
#memberForm>.dialog-actions,#dynamicDialog .dynamic-form>.dialog-actions{position:sticky;bottom:0;z-index:2;padding:16px 0;margin-bottom:0;background:#fff;border-top:1px solid #e4e8ef;box-shadow:0 -10px 20px #ffffffdb;flex-wrap:wrap}
#memberForm .form-box{background:#fcfdff}
#memberForm .form-box h3{color:#304b69}

@media(max-width:1100px){.page-heading{align-items:flex-start;flex-wrap:wrap;gap:8px}.profile-top{flex-wrap:wrap}.profile-actions{margin-left:0}}
@media(max-width:980px){
 .sidebar{z-index:50;box-shadow:12px 0 40px #1322381a}
 .nav-backdrop:not([hidden]){display:block;position:fixed;inset:0;z-index:49;border:0;background:#13223870;cursor:default}
 body.navigation-open{overflow:hidden}
 .topbar{gap:12px}.topbar .search{min-width:0}
 .skip-link{top:8px;left:8px}
}
@media(max-width:700px){
 .view{padding-bottom:92px}.card-header{align-items:flex-start;gap:12px;flex-wrap:wrap}
 .filter-row>label,.filter-row>label.filter-search,.filter-row>label.filter-age{flex-basis:100%}
 .selection-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
 .selection-row button{width:100%;padding:10px 8px;min-height:46px}
 .table-scroll-hint{display:block;font-size:12px;color:#66788e;margin:10px 0 8px}
 .access-toolbar{gap:12px}.access-status-field{width:100%}.access-status-field select{width:100%}
 .page-heading>p{font-size:12px;color:#7a8799}
 .document-row{gap:12px}.document-actions{flex-wrap:wrap}
 .profile-actions button{flex:1}.department-hero{gap:16px;flex-wrap:wrap}
 #toast{right:16px;bottom:80px}
}
@media(max-width:500px){
 .topbar{padding-inline:12px;gap:8px}.topbar .search{padding:10px}.topbar .search input{font-size:14px}
 .page-heading h1{font-size:26px}
 :is(.form-grid,.profile-grid){grid-template-columns:minmax(0,1fr)}
 .form-grid .full-width{grid-column:1/-1}
 #memberForm,.dynamic-form{padding:18px}
 #memberDialog .dialog-header,#dynamicDialog .dynamic-form>.dialog-header{top:0}
 #memberForm>.dialog-actions,#dynamicDialog .dynamic-form>.dialog-actions{bottom:0;margin-bottom:0}
 #memberDialog,#dynamicDialog{max-height:calc(100dvh - 24px);max-width:calc(100vw - 24px)}
 .profile-avatar{flex:0 0 54px;width:54px;height:54px;font-size:21px}
 .profile-top h1{font-size:25px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* Aufgaben und Postfach: ruhige Orientierung und sichtbare Bedienzustände. */
.workdesk-field-label{display:block;margin:0 0 6px;color:#53657b;font-size:12px;font-weight:650;line-height:1.4}
.workdesk-empty{padding:42px 24px;text-align:center;color:#63758a}
.workdesk-empty strong{display:block;color:#344c66;font-size:16px;line-height:1.5}
.workdesk-empty p{max-width:420px;margin:8px auto 18px;font-size:13px;line-height:1.65}
.workdesk-empty p:last-child{margin-bottom:0}
.task-board-toolbar{align-items:end}
.task-board-category-actions{flex-wrap:wrap;justify-content:flex-end}
.task-board-category-actions button{font-size:12px}
.task-board-row{gap:16px;line-height:1.5}
.task-board-row>input{width:20px;height:20px;accent-color:#2864dc}
.task-board-copy small{line-height:1.5}
.task-board-links:empty{display:none}
.task-board-links{flex-wrap:wrap;gap:8px 14px}
.task-category-select{min-width:150px}
.task-category-select select{min-height:38px}
.task-category-nav button,.mail-folder-nav button{min-height:40px}
.task-category-nav button[aria-pressed=true],.mail-folder-nav button[aria-current=page]{box-shadow:inset 3px 0 0 #2860bb}
.mail-folder-nav button[aria-pressed=true]{background:#e8eff8;box-shadow:inset 3px 0 0 #2860bb}
.mail-folder-nav .mail-compose-button{line-height:1.5}
.mailbox-bar-actions{align-items:end}
.mailbox-bar-actions>label{margin:0}
.mailbox-bar-actions>.secondary-button{min-height:38px}
.mailbox-provider-grid button[aria-pressed=true]{border-color:#217152;background:#edf6f0;box-shadow:inset 0 0 0 1px #217152}
.mail-inbox-toolbar{align-items:end}
.mail-inbox-toolbar>div{align-self:center}
.mail-inbox-toolbar>label{margin:0;min-width:0}
.mail-inbox-toolbar input{max-width:100%;box-sizing:border-box}
.mail-inbox-toolbar>[data-mail-refresh]{min-height:38px;white-space:nowrap}
.mail-inbox-row{min-height:78px;line-height:1.5}
.mail-inbox-row:focus-visible{position:relative;z-index:1;outline-offset:-3px}
.mail-row-copy small{color:#64748a}
.mail-row-date{color:#62748a}
.mail-reader-toolbar{gap:8px}
.mail-reader-toolbar button{min-height:36px;line-height:1.4}
.mail-reader-toolbar button:first-child{margin-right:auto}
.mail-reader-toolbar [data-mail-state=trash]{color:#9b3545}
.mail-reader-body{max-width:80ch}
.mail-reader-from time{white-space:nowrap}
.mail-attachments,.reply-history details>button{margin-top:8px}
.mail-attachments{display:flex;flex-wrap:wrap;gap:8px}
.mail-attachments button{max-width:100%;overflow-wrap:anywhere;text-align:left}
.mail-suggested-action{padding:20px}
.mail-suggested-action h3{line-height:1.55}
.mail-linked-task{margin:2px -8px;padding:12px 8px;border-radius:8px}
.mail-linked-task input{flex-shrink:0}
.mail-linked-task:has(input:checked) strong{color:#718095;text-decoration:line-through;text-decoration-thickness:1px}
.mail-linked-tasks form{align-items:end}
.mail-linked-tasks form label{margin:0}
.mail-linked-tasks form input{box-sizing:border-box}
.mail-linked-tasks form button{min-height:40px}
.mail-reader-reply .email-composer{margin-top:18px}
.mail-reader-reply .email-composer .composer-note{line-height:1.6}
.mail-loading{padding:42px 24px;color:#63758a;font-size:14px}
.mail-folder-empty p{line-height:1.6;max-width:390px;margin:10px auto 18px}
.compose-dialog [data-compose-error]:empty{display:none}
.compose-dialog [data-compose-error]:not(:empty){padding:12px 14px;border:1px solid #eac1c8;border-radius:9px;background:#fff3f4;line-height:1.5}
.compose-dialog #composeRecipientHint{font-weight:400;line-height:1.5}
.compose-dialog summary{padding:7px 0;font-size:13px}
.template-picker-list:empty{display:none}
.template-pick-row{font:inherit}
.template-pick-row:focus-visible,.template-pick-row:focus-within{outline:2px solid #3976d8;outline-offset:2px}
.template-pick-row:has(input:checked){border-color:#789ddb;background:#eef4ff}
.template-picker-list .workdesk-empty{padding:24px 12px}
.template-field-group{background:#fbfcfe}
.template-field-group .form-grid{gap:16px}
.attachment-chip{max-width:100%;min-width:0;line-height:1.5}
.attachment-chip button{display:grid;place-items:center;min-width:28px;min-height:28px;flex-shrink:0;border-radius:5px}
.attachment-chip button:hover{background:#dce7f9}
@media(max-width:1100px){.task-board-heading{align-items:flex-start}.task-board-category-actions{max-width:215px}.task-category-select{flex:1}.task-category-select select{max-width:100%}}
@media(max-width:760px){.task-board-category-actions{max-width:none;justify-content:flex-start}.mail-inbox-toolbar>div{flex:1}.mail-inbox-toolbar>label{order:3;width:100%}.mail-inbox-toolbar input{width:100%}.mail-reader-toolbar button:first-child{flex-basis:100%;margin-right:0;text-align:left}.task-board-row{padding:18px}.workdesk-empty{padding:32px 18px}}
@media(max-width:650px){.mail-workbench{align-content:start}.mail-folder-nav{align-items:center}.mail-folder-nav .mail-compose-button{margin-bottom:0}.mail-folder-nav button{min-height:42px}.task-category-nav button{padding:9px 8px;font-size:12px;line-height:1.5}.task-category-nav small{display:none}.task-category-policy{margin-top:12px;padding-top:12px}.task-category-policy strong{font-size:12px}.task-category-policy p{font-size:11px}}
@media(max-width:480px){.task-category-select{margin-left:0;flex-basis:100%}.task-board-row>.pill{margin-left:36px}.mail-reader{padding:16px}.mail-suggested-action{padding:16px}.mail-reader-toolbar button{font-size:12px}.mail-linked-tasks form button{width:100%}.mailbox-provider-grid{gap:8px}.mailbox-provider-grid button{min-width:0}.mailbox-provider-grid strong,.mailbox-provider-grid small{overflow-wrap:anywhere}}

/* Clear, consistent forms for sign-in, invitations and the member portal. */
.login-page,.member-auth-page{min-height:100dvh;padding:28px 18px;background:#f4f6f9}
.login-card,.member-auth-card{box-sizing:border-box;width:min(460px,100%);border-radius:18px;padding:34px;box-shadow:0 12px 40px #17263d0a}
.login-card h1,.member-auth-card h1{font-size:28px;line-height:1.2;letter-spacing:-.025em}
.login-card>p,.member-auth-card>p{line-height:1.6}
.login-card input,.member-auth-card input,.member-portal input:not([type=checkbox]),.member-portal textarea{font:inherit;min-width:0;max-width:100%;background:#fff;color:var(--ink,#17263d)}
.login-card input,.member-auth-card input{min-height:46px}
.login-card form label,.member-auth-card form label{font-size:14px;font-weight:600}
.login-card .primary-button,.member-auth-card .primary-button{justify-content:center;min-height:46px}
.login-card #loginHelp{display:block;margin-top:22px;line-height:1.6;color:var(--muted,#617087)}
.login-card a,.member-auth-card a{line-height:1.5;text-underline-offset:3px}
.login-card :is(a,button,input):focus-visible,.member-auth-card :is(a,button,input):focus-visible,.member-portal-page :is(a,button,input,textarea,summary,[tabindex]):focus-visible{outline:3px solid #7ba4f9;outline-offset:3px}
.login-card :is(button,a),.member-auth-card :is(button,a),.member-portal-page :is(button,a,summary){cursor:pointer}
.login-card button:disabled,.member-auth-card button:disabled,.member-portal-page button:disabled{cursor:not-allowed;opacity:.6}
.login-card .login-error:not(:empty),.member-auth-card .login-error:not(:empty),.member-portal .login-error:not(:empty){padding:12px 14px;border-radius:9px;background:#fff0ef;line-height:1.5}
.login-card .member-success,.member-auth-card .member-success,.member-portal .member-success{padding:12px 14px;border-radius:9px;background:#edf7f0;line-height:1.5}
.auth-return{display:inline-block;margin-top:4px;font-size:14px}
.field-hint{display:block;color:var(--muted,#617087);font-size:13px;font-weight:400;line-height:1.5}
.member-tabs{gap:6px;overflow-x:auto;scrollbar-width:thin;padding:3px 3px 0}
.member-tabs button{flex-shrink:0;min-height:46px;border-radius:8px 8px 0 0;cursor:pointer}
.member-tabs button:hover{background:#edf1f6;color:var(--ink,#17263d)}
.member-tabs button.active{background:#edf3ff}
.member-readonly strong,.member-portal .access-email strong{overflow-wrap:anywhere}
.member-portal .form-grid>label{min-width:0}
.member-portal .portal-document{min-width:0;text-align:left}
.member-portal .portal-document>span{min-width:0}
.member-portal .portal-document strong{overflow-wrap:anywhere}
.member-portal .portal-document:hover,.member-portal .new-chat-search button:hover{background:#f2f5fa;border-color:#b4c6e2}
.member-portal .portal-document b{font-size:13px;color:var(--blue,#285dcc);font-weight:650}
.member-portal .chat-sidebar-head{gap:10px;flex-wrap:wrap}
.member-portal .chat-sidebar-head>div{flex:1 1 160px}
.member-portal .chat-header>div{min-width:0;overflow-wrap:anywhere}
.member-portal .chat-empty{line-height:1.6}
.member-portal .chat-list-empty{line-height:1.6}
.member-portal .message-compose textarea{min-width:0}
.member-portal #messageSendStatus{grid-column:1 / -1;margin:0;font-size:13px;line-height:1.5;color:var(--muted,#617087)}
.member-portal #messageSendStatus:empty{display:none}
.member-portal #messageSendStatus.login-error{color:var(--red,#b42332)}
.member-portal .chat-messages{background-image:none}
.member-portal .session-settings{gap:16px;flex-wrap:wrap}
.member-portal .privacy-setting{gap:16px}
.member-portal .privacy-setting input{flex-shrink:0}
.member-portal .member-loading{padding:24px;color:var(--muted,#617087)}
.member-portal-page dialog.portal-dialog{display:block;position:fixed;inset:0;margin:auto;padding:0;border:0;background:#fff;border-radius:18px;width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px);box-shadow:0 24px 70px #101c2f47;overflow:auto;backdrop-filter:none}
.member-portal-page dialog.portal-dialog:not([open]){display:none}
.member-portal-page dialog.portal-dialog::backdrop{background:#16203088}
.member-portal-page dialog.portal-dialog .portal-dialog-card{box-sizing:border-box;width:100%;max-height:none;overflow:visible;border-radius:0;box-shadow:none}
@media(max-width:600px){
 .login-card,.member-auth-card{padding:25px 22px;border-radius:15px}
 .member-portal-header{align-items:flex-start;gap:14px}
 .member-portal-header>div{min-width:0;font-size:14px}
 .member-portal-header .member-auth-brand{flex-shrink:0}
 .member-portal-header>button{flex-shrink:0}
 .member-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;overflow:visible}
 .member-tabs button{padding:11px 8px;white-space:normal;text-align:center}
 .member-readonly{grid-template-columns:1fr 1fr}
 .member-portal .card{padding:18px}
 .member-portal .portal-document{grid-template-columns:auto minmax(0,1fr)}
 .member-portal .portal-document b{grid-column:2}
 .member-portal .chat-header{padding:12px;flex-wrap:wrap}
 .member-portal .chat-messages{padding:14px}
 .member-portal .chat-sidebar{max-height:340px}
 .member-portal-page .blocked-contact{grid-template-columns:40px minmax(0,1fr)}
 .member-portal-page .blocked-contact>button{grid-column:2;justify-self:start}
}
@media(prefers-reduced-motion:reduce){.member-portal-page *, .login-page *, .member-auth-page *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
