:root{--bg:#f6f7f9;--surface:#fff;--text:#20242a;--muted:#707780;--line:#e6e8eb;--line-strong:#d6d9dd;--primary:#0754a6;--primary-hover:#063f7c;--brand-green:#78c800;--brand-blue:#0754a6;--danger:#a23a3a;--success:#2f6b4f;--radius:10px;--shadow:0 1px 2px rgba(20,28,38,.04),0 8px 24px rgba(20,28,38,.035)}
*{box-sizing:border-box}html{font-size:16px}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.5}a{color:#0754a6;text-decoration:none}a:hover{text-decoration:underline}.topbar{min-height:62px;padding:0 28px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:28px;position:sticky;top:0;z-index:20}.brand,.topbar>strong{color:var(--text);font-weight:700;font-size:15px;letter-spacing:-.01em;text-decoration:none}.topbar nav{display:flex;align-items:center;gap:5px;flex:1}.topbar nav a{padding:8px 10px;border-radius:7px;color:#4d545c;font-size:13px;text-decoration:none}.topbar nav a:hover{background:#f1f3f5;color:var(--text)}.topbar>span{font-size:13px;color:var(--muted);white-space:nowrap}.container{max-width:1200px;margin:32px auto 60px;padding:0 24px}.narrow{max-width:860px}h1,h2,h3{letter-spacing:-.025em;color:#1d2228}h1{font-size:25px;line-height:1.2;margin:0 0 20px}h2{font-size:17px;margin:0 0 16px}h3{font-size:14px;margin:28px 0 12px}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:22px}.page-head h1{margin-bottom:5px}.page-head p{margin:0;color:var(--muted)}.card,.stat,.table-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.card{padding:22px;margin-bottom:18px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.grid.two,.two{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:19px}.stat small,.muted,small{color:var(--muted)}.stat b,.big{display:block;font-size:27px;font-weight:650;letter-spacing:-.035em;margin-top:6px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 18px}label{display:block;margin:9px 0;color:#343a41;font-size:13px;font-weight:600}label small{display:block;font-weight:400;margin-top:5px}input,select,textarea{display:block;width:100%;margin-top:6px;padding:10px 11px;border:1px solid var(--line-strong);border-radius:7px;background:#fff;color:var(--text);font:inherit;outline:none;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:#8da2b6;box-shadow:0 0 0 3px rgba(80,111,140,.09)}input[readonly],input:disabled{background:#f5f6f7;color:#737980}textarea{resize:vertical;min-height:96px}button,.button{display:inline-flex;width:auto;align-items:center;justify-content:center;border:1px solid var(--primary);border-radius:7px;padding:9px 14px;background:var(--primary);color:#fff!important;font:inherit;font-weight:600;cursor:pointer;text-decoration:none;transition:.15s}button:hover,.button:hover{background:var(--primary-hover);text-decoration:none}.button.small{padding:7px 10px}.danger-btn{background:#fff!important;border-color:#e1b9b9!important;color:var(--danger)!important}.form-actions{display:flex;align-items:end}.inline,.toolbar{display:flex;gap:10px}.inline input,.toolbar input{margin:0;flex:1}.alert{padding:11px 13px;border:1px solid #d9e1ea;border-radius:8px;background:#f4f7fa;margin:0 0 18px}.alert.danger,.danger{background:#fff4f4;border-color:#eed0d0;color:#8c3333}.alert.success,.success{background:#f2f8f4;border-color:#cfe3d6;color:#285d45}.table-wrap{overflow:auto;margin-bottom:18px}.card>.table-wrap{box-shadow:none;margin:10px 0 0}table{width:100%;border-collapse:collapse;min-width:700px}th,td{text-align:left;padding:12px 14px;border-bottom:1px solid #eceef0;vertical-align:middle}th{background:#fafafa;color:#69717a;font-size:11px;text-transform:uppercase;letter-spacing:.045em;font-weight:700}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfcfd}td small{display:block;margin-top:2px}.badge{display:inline-block;padding:3px 7px;border-radius:5px;background:#f0f1f2;color:#555d66;font-size:11px;font-weight:600}.badge.success{background:#eaf4ee;color:#2d6248}.assignment{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid var(--line)}.assignment:last-child{border-bottom:0}.assignment small{display:block;margin-top:3px}.assignment form{margin:0}.auth{min-height:100vh;display:grid;place-items:center;background:var(--bg)}.auth-card{width:min(390px,calc(100% - 32px));background:#fff;border:1px solid var(--line);border-radius:12px;padding:28px;box-shadow:var(--shadow)}.auth-card h1{font-size:22px}.auth-card button{width:100%;margin-top:8px}
@media(max-width:800px){.topbar{position:static;min-height:0;padding:12px 16px;flex-wrap:wrap;gap:8px 16px}.topbar nav{order:3;width:100%;overflow:auto;gap:2px}.topbar nav a{white-space:nowrap}.container{margin:22px auto 40px;padding:0 14px}.grid,.grid.two,.two,.form-grid{grid-template-columns:1fr}.page-head{flex-direction:column;gap:12px}.inline,.toolbar{flex-direction:column}.inline button,.toolbar button{width:100%}.card{padding:17px}table{min-width:650px}}

.status-badge{display:inline-flex;align-items:center;min-height:24px;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:650;line-height:1;white-space:nowrap;border:1px solid transparent}
.badge-success{background:#ecfdf3;color:#166534;border-color:#bbf7d0}
.badge-warning{background:#fffbeb;color:#92400e;border-color:#fde68a}
.badge-info{background:#eff6ff;color:#1e40af;border-color:#bfdbfe}
.badge-danger{background:#fef2f2;color:#991b1b;border-color:#fecaca}
.badge-neutral{background:#f4f4f5;color:#52525b;border-color:#e4e4e7}
.badge-primary{background:#eef2ff;color:#3730a3;border-color:#c7d2fe}
.stat span{display:block;margin-top:6px;font-size:12px;color:#6b7280}



.settings-nav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}.settings-nav a{display:inline-flex;padding:8px 11px;border:1px solid #e2e8f0;border-radius:7px;background:#fff;text-decoration:none;color:#334155;font-size:13px}.settings-nav a:hover{background:#f8fafc}
.member-summary{grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:18px}.member-summary .stat b{font-size:18px}.member-summary .stat>div{margin-top:8px}
@media(max-width:1000px){.member-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.member-summary{grid-template-columns:1fr}}

/* V2.7 – visuelle Überarbeitung */
:root{--surface:#fff;--surface-soft:#f8fafc;--line:#e5e7eb;--line-strong:#d7dce2;--text:#172033;--muted:#6b7280;--accent:#315b72;--accent-dark:#24475a}
body{background:#f5f7f9;color:var(--text)}
.topbar{background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);box-shadow:0 1px 3px rgba(15,23,42,.035)}
.brand{font-weight:750;letter-spacing:-.025em}.topbar nav a{border-radius:6px;padding:8px 10px}.topbar nav a:hover{background:#f1f5f7}
main,.container{max-width:1280px}
.card{border:1px solid var(--line);box-shadow:0 1px 2px rgba(15,23,42,.025);border-radius:9px}.card.flush{padding:0;overflow:hidden}
button,.button{border-radius:7px;font-weight:650;box-shadow:none}.button.secondary{background:#fff;color:var(--text);border:1px solid var(--line-strong)}
input,select,textarea{border-color:#d8dde3;border-radius:7px;background:#fff}input:focus,select:focus,textarea:focus{border-color:#8ba4b2;box-shadow:0 0 0 3px rgba(49,91,114,.08);outline:0}
table{border-collapse:separate;border-spacing:0}thead th{background:#f8fafb;color:#667085;font-size:11px;text-transform:uppercase;letter-spacing:.045em;font-weight:700}tbody tr:hover{background:#fafcfd}td,th{border-bottom:1px solid #edf0f2}
.dashboard-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:12px 0 25px}.dashboard-hero h1{font-size:30px;letter-spacing:-.035em;margin:4px 0 5px}.dashboard-hero p{margin:0;color:var(--muted)}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.09em;font-weight:750;color:var(--accent)}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:28px}.metric-card{background:#fff;border:1px solid var(--line);border-radius:9px;padding:17px 18px;min-height:112px;display:flex;flex-direction:column}.metric-label{font-size:12px;color:var(--muted);font-weight:600}.metric-card>strong{font-size:27px;letter-spacing:-.035em;margin-top:9px;font-variant-numeric:tabular-nums}.metric-note{font-size:12px;color:#87909c;margin-top:auto}
.dashboard-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.dashboard-section{margin-bottom:24px}.section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:10px}.section-title h2{font-size:16px;margin:0 0 2px;letter-spacing:-.01em}.section-title p{font-size:12px;color:var(--muted);margin:0}.section-title>a{font-size:12px;text-decoration:none;color:var(--accent);font-weight:650}
.list-card{padding:0;overflow:hidden}.dashboard-list-row{min-height:66px;padding:10px 13px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #edf0f2;text-decoration:none;color:inherit}.dashboard-list-row:last-child{border-bottom:0}.dashboard-list-row:hover{background:#fafcfd}.date-tile{width:42px;height:42px;border:1px solid #dde3e7;border-radius:7px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fafbfc;flex:none}.date-tile strong{font-size:16px;line-height:16px}.date-tile span{font-size:9px;color:var(--muted);margin-top:2px}.list-main{min-width:0;display:flex;flex-direction:column;gap:3px;flex:1}.list-main strong{font-size:13px}.list-main span,.list-meta{font-size:11px;color:var(--muted)}.list-meta{white-space:nowrap}.list-value{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:5px}.list-value strong{font-size:13px}.empty-state{padding:24px;text-align:center;color:var(--muted);font-size:13px}.text-right{text-align:right}
.page-head h1{letter-spacing:-.025em}.status-badge{border-radius:5px;padding:4px 7px;font-size:11px}
@media(max-width:900px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-columns{grid-template-columns:1fr}}
@media(max-width:600px){.dashboard-hero{align-items:flex-start;flex-direction:column}.dashboard-hero h1{font-size:26px}.metric-grid{grid-template-columns:1fr 1fr;gap:8px}.metric-card{padding:14px;min-height:100px}.metric-card>strong{font-size:23px}.section-title{align-items:flex-start}.dashboard-list-row{padding:9px 11px}}

/* V2.8 – Branding und UI-Feinschliff */
.topbar{min-height:64px}.brand{display:inline-flex;align-items:center;gap:10px}.brand>span{display:flex;flex-direction:column;line-height:1.05}.brand small{font-size:10px;font-weight:550;color:#7a8592;margin-top:4px;letter-spacing:0}.tenant-logo-small{width:36px;height:36px;object-fit:contain;border-radius:7px;border:1px solid #e5e9ed;background:#fff;padding:3px}.tenant-logo-dashboard{width:58px;height:58px;object-fit:contain;border:1px solid #e2e7eb;border-radius:10px;background:#fff;padding:5px;box-shadow:0 1px 2px rgba(15,23,42,.04)}.tenant-hero-title{display:flex;align-items:center;gap:15px}.tenant-logo-table{width:32px;height:32px;object-fit:contain;border:1px solid #e5e9ed;border-radius:6px;background:#fff;padding:2px}.tenant-name-cell{display:flex;align-items:center;gap:10px}.logo-setting{display:grid;grid-template-columns:120px minmax(0,1fr);gap:18px;align-items:center;margin-top:18px;padding-top:18px;border-top:1px solid #edf0f2}.tenant-logo-preview{width:110px;height:80px;object-fit:contain;border:1px solid #e1e6ea;border-radius:8px;background:#fafbfc;padding:8px}.logo-placeholder{width:110px;height:80px;border:1px dashed #cfd6dc;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#89929c;font-size:11px;background:#fafbfc}.card{transition:border-color .15s ease,box-shadow .15s ease}.card:hover{border-color:#d9dfe4}.metric-card{position:relative;overflow:hidden}.metric-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#dfe7eb}.metric-card:nth-child(1):before{background:#6f8f9f}.metric-card:nth-child(2):before{background:#809b89}.metric-card:nth-child(3):before{background:#b39a70}.metric-card:nth-child(4):before{background:#8c8aa5}.form-grid label{font-size:12px;font-weight:650;color:#475467}.alert{border-radius:7px}.page-head p{color:#737d89}@media(max-width:650px){.tenant-logo-dashboard{width:48px;height:48px}.logo-setting{grid-template-columns:1fr}}

/* V2.9 – Navigation und Mitgliederdetail */
.member-header{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:14px 0 18px}.member-kicker{font-size:11px;color:#7b8590;text-transform:uppercase;letter-spacing:.07em;font-weight:700}.member-title-line{display:flex;align-items:center;gap:12px;margin-top:3px}.member-title-line h1{margin:0;font-size:30px;letter-spacing:-.035em}.member-contact-line{display:flex;gap:8px;margin-top:7px;font-size:12px;color:#737e89}.member-contact-line a{color:#526d7c;text-decoration:none}.member-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#fff;border:1px solid #e2e6e9;border-radius:9px;margin-bottom:18px}.member-facts>div{padding:14px 16px;border-right:1px solid #edf0f2;display:flex;flex-direction:column;gap:3px}.member-facts>div:last-child{border-right:0}.member-facts span{font-size:10px;text-transform:uppercase;letter-spacing:.055em;color:#818b96;font-weight:700}.member-facts strong{font-size:16px}.member-facts small{font-size:10px;color:#818b96}.member-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px;align-items:start}.member-main{min-width:0}.member-card{margin-bottom:18px}.card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:17px}.card-heading h2{font-size:16px;margin:0 0 3px}.card-heading p{font-size:11px;color:#818a95;margin:0}.form-section{padding:2px 0 18px;margin-bottom:17px;border-bottom:1px solid #edf0f2}.form-section:last-of-type{border-bottom:0;margin-bottom:5px}.form-section h3,.membership-history h3{font-size:11px;text-transform:uppercase;letter-spacing:.055em;color:#6f7a85;margin:0 0 12px}.sticky-card{position:sticky;top:84px}.current-membership{padding:14px;background:#f7f9fa;border:1px solid #e5e9ec;border-radius:7px;margin-bottom:16px;display:flex;flex-direction:column}.current-membership span{font-size:10px;color:#7e8791;text-transform:uppercase;letter-spacing:.05em}.current-membership strong{font-size:15px;margin-top:5px}.current-membership b{font-size:20px;margin-top:8px}.current-membership small{color:#7e8791;margin-top:2px}.compact-form{padding-bottom:17px;border-bottom:1px solid #edf0f2}.form-grid.one{grid-template-columns:1fr}.button-full{width:100%}.membership-history{padding-top:17px}.history-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 0;border-bottom:1px solid #edf0f2}.history-item:last-child{border-bottom:0}.history-item>div{display:flex;flex-direction:column}.history-item strong{font-size:12px}.history-item span{font-size:10px;color:#838d97;margin-top:3px}.link-danger{border:0;background:transparent!important;box-shadow:none!important;padding:3px!important;color:#a34f4f;font-size:10px}.empty-state.compact{padding:14px}.form-actions{display:flex;justify-content:flex-end}
@media(max-width:1100px){.user-menu{margin-left:auto}.member-layout{grid-template-columns:1fr}.sticky-card{position:static}.member-sidebar{order:-1}.member-facts{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.user-menu-text{display:none}.brand small{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-header{align-items:flex-start;flex-direction:column}.member-title-line{align-items:flex-start;flex-direction:column;gap:7px}.member-title-line h1{font-size:25px}.member-facts{grid-template-columns:1fr 1fr}.member-facts>div:nth-child(2){border-right:0}.member-facts>div{border-bottom:1px solid #edf0f2}.member-facts>div:nth-last-child(-n+2){border-bottom:0}}

/* V2.10 */
.brand-mark{width:36px;height:36px;border-radius:8px;display:grid;place-items:center;background:#315b72;color:#fff;font-weight:800;font-size:17px;flex:none}.brand-copy strong{font-size:14px;max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-copy small{font-size:10px;color:#7a8592;margin-top:4px;font-weight:550}.topbar-inner{gap:18px}.main-nav{flex:1}
.member-search-card{padding:12px 14px}.modal-backdrop[hidden]{display:none}.modal-backdrop{position:fixed;inset:0;z-index:1000;background:rgba(15,23,42,.45);display:flex;align-items:center;justify-content:center;padding:22px;backdrop-filter:blur(2px)}.modal-panel{width:min(820px,100%);max-height:calc(100vh - 44px);overflow:auto;background:#fff;border-radius:11px;box-shadow:0 24px 70px rgba(15,23,42,.2);border:1px solid #dfe4e8}.modal-header,.modal-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 20px;border-bottom:1px solid #e9edf0}.modal-header h2{margin:3px 0 0}.modal-footer{border-top:1px solid #e9edf0;border-bottom:0;justify-content:flex-end;background:#fafbfc;position:sticky;bottom:0}.modal-body{padding:5px 20px 20px}.modal-close{width:34px;height:34px;border-radius:7px;background:#f3f5f6!important;color:#475467!important;padding:0!important;font-size:22px;line-height:1;border:1px solid #e1e5e8!important}.form-section{padding:16px 0;border-bottom:1px solid #edf0f2}.form-section:last-child{border-bottom:0}.form-section h3{font-size:13px;margin:0 0 12px}.modal-open{overflow:hidden}
.template-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:18px;align-items:start}.placeholder-toolbar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:14px 0 10px}.placeholder-toolbar>span{font-size:11px;font-weight:700;color:#667085;text-transform:uppercase;letter-spacing:.04em}.placeholder-chip{background:#eef3f5!important;color:#315b72!important;border:1px solid #d8e2e7!important;border-radius:6px!important;padding:6px 9px!important;font-size:11px!important}.placeholder-chip:hover{background:#e5edef!important}.table-action{display:inline-flex;padding:6px 9px;border-radius:6px;background:#eef3f5;color:#315b72;text-decoration:none;font-size:12px;font-weight:650}.table-action:hover{background:#e2eaee}
.settings-model-card{border-left:3px solid #315b72}.settings-savebar{position:sticky;bottom:12px;z-index:20;background:rgba(255,255,255,.96);border:1px solid #dce2e6;border-radius:9px;box-shadow:0 8px 25px rgba(15,23,42,.09);padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:16px}.settings-savebar>div{display:flex;flex-direction:column}.settings-savebar strong{font-size:13px}.settings-savebar span{font-size:11px;color:#7a8592;margin-top:2px}
@media(max-width:900px){.template-layout{grid-template-columns:1fr}.brand-copy strong{max-width:150px}}@media(max-width:650px){.modal-backdrop{padding:0;align-items:flex-end}.modal-panel{max-height:94vh;border-radius:12px 12px 0 0}.settings-savebar{bottom:6px}.settings-savebar>div{display:none}.brand-copy strong{max-width:120px}}

/* V2.11 – Dashboard-Logo, Member Actions, Templates */
.primary-action,.button.primary-action{background:#315b72!important;color:#fff!important;border:1px solid #315b72!important}.primary-action:hover,.button.primary-action:hover{background:#24475a!important;border-color:#24475a!important}.primary-table-action{background:#315b72;color:#fff}.primary-table-action:hover{background:#24475a;color:#fff}
.template-page-head{margin-bottom:22px}.template-overview{margin-bottom:26px}.template-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.template-card{display:flex;align-items:center;gap:13px;background:#fff;border:1px solid #e2e7eb;border-radius:9px;padding:15px;text-decoration:none;color:#172033;transition:.15s ease}.template-card:hover{border-color:#b9c8d0;box-shadow:0 3px 12px rgba(15,23,42,.05);transform:translateY(-1px)}.template-card-icon,.empty-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:8px;background:#eef3f5;color:#315b72;font-weight:800;font-size:13px;flex:none}.template-card-main{display:flex;flex-direction:column;min-width:0;gap:3px;flex:1}.template-card-main strong{font-size:13px}.template-card-main span{font-size:11px;color:#667085;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.template-card-main code{font-size:10px;color:#8a939d;background:none;padding:0}.template-card-arrow{font-size:24px;color:#9aa3ad}.empty-template-state{text-align:center;padding:38px 20px}.empty-template-state .empty-icon{margin:0 auto 12px}.empty-template-state h3{margin:0 0 5px}.empty-template-state p{color:#667085;margin:0 auto 17px;max-width:440px;font-size:12px}
.template-workspace{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:16px;align-items:start}.template-editor-main{padding:20px}.template-meta-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:12px}.template-body-label{margin-top:13px}.template-body-label textarea{min-height:310px;line-height:1.6;font-family:inherit;resize:vertical}.template-editor-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:15px;margin-top:15px;border-top:1px solid #edf0f2}.template-editor-footer>div{display:flex;gap:8px}.placeholder-panel{padding:0;overflow:hidden;position:sticky;top:82px}.placeholder-panel-head{padding:16px;border-bottom:1px solid #edf0f2}.placeholder-panel-head h3{margin:0 0 3px;font-size:14px}.placeholder-panel-head p{margin:0;color:#77818c;font-size:11px}.placeholder-item{width:100%;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;text-align:left!important;background:#fff!important;color:#172033!important;border:0!important;border-bottom:1px solid #edf0f2!important;border-radius:0!important;padding:12px 14px!important;box-shadow:none!important}.placeholder-item:hover{background:#f8fafb!important}.placeholder-item>span{display:flex;flex-direction:column;gap:2px}.placeholder-item strong{font-size:11px}.placeholder-item small{font-size:9px;color:#89929c;font-weight:400}.placeholder-item code{font-size:9px;color:#315b72;background:#edf3f5;border-radius:4px;padding:3px 5px}.placeholder-help{margin:13px;padding:11px;border-radius:7px;background:#f6f8f9}.placeholder-help strong{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#667085}.placeholder-help p{font-size:10px;color:#7a8490;margin:4px 0 0;line-height:1.45}
@media(max-width:900px){.template-workspace{grid-template-columns:1fr}.placeholder-panel{position:static}.template-card-grid{grid-template-columns:1fr}}@media(max-width:600px){.template-meta-grid{grid-template-columns:1fr}.template-editor-footer{align-items:stretch;flex-direction:column}.template-editor-footer>div{justify-content:flex-end}}

/* V2.12 */
button:not(.secondary):not(.danger):not(.link-danger):not(.modal-close):not(.placeholder-chip):not(.placeholder-item):not(.simple-nav-trigger):not(.mobile-menu-toggle),.button:not(.secondary):not(.danger){background:#315b72!important;color:#fff!important;border:1px solid #315b72!important;box-shadow:none!important;text-decoration:none}
button:not(.secondary):not(.danger):not(.link-danger):not(.modal-close):not(.placeholder-chip):not(.placeholder-item):not(.simple-nav-trigger):not(.mobile-menu-toggle):hover,.button:not(.secondary):not(.danger):hover{background:#24475a!important;color:#fff!important;border-color:#24475a!important}
.button.secondary,button.secondary{background:#eef2f4!important;color:#344054!important;border:1px solid #d4dbe0!important}.button.secondary:hover,button.secondary:hover{background:#e4e9ec!important;color:#202936!important}

/* V2.13 */
.brand-mark-neutral{background:#eef2f4!important;color:#52606d!important;border:1px solid #dbe1e5;font-size:12px}

/* V2.14 */
.brand{display:flex!important;align-items:center;gap:10px}.brand-name{font-size:14px;font-weight:750;color:#172033;text-decoration:none;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-name:hover{color:#315b72}.cron-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.cron-code{margin-top:14px;padding:12px;border:1px solid #e2e7eb;border-radius:7px;background:#f8fafb}.cron-code span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#77818c;font-weight:700;margin-bottom:6px}.cron-code code{display:block;overflow-wrap:anywhere}.cron-rules>div{display:flex;flex-direction:column;padding:10px 0;border-bottom:1px solid #edf0f2}.cron-rules>div:last-child{border-bottom:0}.cron-rules strong{font-size:12px}.cron-rules span{font-size:11px;color:#77818c;margin-top:2px}@media(max-width:800px){.cron-grid{grid-template-columns:1fr}}

/* V2.15 – Unterverzeichnis-/URL-Korrektur */
.tenant-logo-small{display:block!important;width:38px!important;height:38px!important;object-fit:contain!important;background:#fff!important;border:1px solid #e1e6ea!important;border-radius:7px!important;padding:3px!important}
.brand>.tenant-logo-small{cursor:default}

/* V2.16 */
.smtp-settings{margin-top:18px;padding-top:16px;border-top:1px solid #edf0f2}.smtp-settings h3{margin:0 0 12px;font-size:13px}.mail-test-box{margin-top:18px;padding:14px;background:#f7f9fa;border:1px solid #e2e7eb;border-radius:8px;display:grid;grid-template-columns:1fr minmax(220px,320px) auto;gap:12px;align-items:center}.mail-test-box>div{display:flex;flex-direction:column;gap:2px}.mail-test-box span{font-size:10px;color:#77818c}.toggle-label{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important}.toggle-label input{width:auto!important}@media(max-width:760px){.mail-test-box{grid-template-columns:1fr}}

/* V2.18 HTML editor */
.html-editor{border:1px solid #d8dee4;border-radius:8px;overflow:hidden;background:#fff}.html-editor:focus-within{border-color:#167c80;box-shadow:0 0 0 3px rgba(22,124,128,.10)}.html-editor-toolbar{display:flex;flex-wrap:wrap;gap:5px;align-items:center;padding:8px;background:#f7f9fa;border-bottom:1px solid #e4e8ec}.html-editor-toolbar button{width:auto;min-width:34px;margin:0;padding:6px 9px;border:1px solid #d8dee4;border-radius:5px;background:#fff;color:#27333d;font-size:11px}.html-editor-toolbar button:hover{background:#edf4f4;border-color:#b8cccc}.toolbar-separator{width:1px;height:24px;background:#d8dee4;margin:0 3px}.html-editor-area{min-height:260px;padding:18px;outline:0;line-height:1.6;font-size:13px}.html-editor-area h2{font-size:20px;margin:18px 0 8px}.html-editor-area p{margin:0 0 12px}.html-editor-area ul{padding-left:24px}

/* V2.19 editor placeholder hotfix */


/* V2.22: technische HTML-Felder niemals anzeigen */
textarea[hidden]{display:none!important}.html-editor textarea{display:none!important}

/* V2.23 Global-Admin-Statistiken */
.system-metric-grid{margin-top:14px}.global-admin-columns{margin-top:20px}.mail-stat-bars{height:190px;display:flex;align-items:flex-end;gap:7px;padding:18px 4px 28px}.mail-stat-day{height:100%;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px;min-width:0}.mail-stat-bar{width:min(24px,80%);min-height:3px;background:#167c80;border-radius:5px 5px 2px 2px}.mail-stat-day span{font-size:8px;color:#7b858d;white-space:nowrap;transform:rotate(-45deg);transform-origin:center}.stat-legend{display:flex;gap:22px;flex-wrap:wrap;border-top:1px solid #edf0f2;padding-top:12px;font-size:11px;color:#6d7780}.stat-legend strong{color:#26343e;font-size:15px;margin-right:4px}@media(max-width:760px){.mail-stat-bars{height:150px;gap:3px}.mail-stat-day span{font-size:7px}}

/* V2.28 Tarife */
.pricing-grid,.plan-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:20px 0}.pricing-card,.plan-admin-card{position:relative}.pricing-card.current-plan{outline:2px solid #167c80}.plan-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#edf6f6;color:#12676b;font-size:11px;font-weight:800;letter-spacing:.08em}.plan-price{font-size:28px;font-weight:800;margin:14px 0}.plan-price small{font-size:12px;font-weight:500;color:#78838b}.pricing-card ul{padding-left:20px;min-height:105px;line-height:1.9}.module-switches{display:grid;gap:10px;margin:14px 0}.module-switches label{display:flex;align-items:center;gap:8px}.plan-summary{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}@media(max-width:900px){.pricing-grid,.plan-admin-grid{grid-template-columns:1fr}.plan-summary{align-items:flex-start;flex-direction:column}}

.tariff-thanks{max-width:820px;margin:20px auto}.payment-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}.payment-details>div,.payment-reference{padding:14px;border:1px solid #dfe7e8;border-radius:12px}.payment-details span,.payment-reference span{display:block;font-size:12px;color:#738087;margin-bottom:5px}.payment-reference{margin:16px 0 22px}.payment-reference strong{font-size:22px}.payment-reference p{margin-bottom:0}.tariff-thanks h1{margin-top:8px}@media(max-width:700px){.payment-details{grid-template-columns:1fr}}

.status-badge.warning{background:#fff4d6;color:#765500}.status-badge.success{background:#e4f5ea;color:#17643a}.status-badge.danger{background:#fde8e8;color:#9a2525}.approval-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}

/* V2.64 – Benutzerlimit */
.user-limit-pill{display:flex;align-items:center;gap:9px;padding:9px 12px;border:1px solid #dce5e9;border-radius:10px;background:#fff;white-space:nowrap}.user-limit-pill strong{font-size:16px;color:#17394a}.user-limit-pill span{font-size:11px;color:#64748b}.disabled-action{opacity:.6;cursor:not-allowed;pointer-events:none}@media(max-width:600px){.user-limit-pill{width:100%;justify-content:space-between}.approval-actions{width:100%}.approval-actions .button{width:100%}}

/* V2.65 – Passwortvorschlag & Berechtigungsstufe */
.password-suggest-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.password-suggest-wrap input{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.03em}.password-generate{white-space:nowrap;margin:0!important}.permission-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef4f6;color:#315b72;font-size:.78rem;font-weight:750}
@media(max-width:560px){.password-suggest-wrap{grid-template-columns:1fr}.password-generate{width:100%}}

/* V2.66 – Benutzeraktionen */
.user-row-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.user-row-actions form{margin:0}.small-button{padding:6px 9px!important;font-size:11px!important}.danger-button{background:#fff!important;color:#b42318!important;border:1px solid #f0b8b3!important}.danger-button:hover{background:#fff4f2!important}.option-checkbox-control{padding:7px 10px;border-radius:9px;background:#f1f5f9}
@media(max-width:700px){.user-row-actions{min-width:190px}.user-row-actions form{flex:1}.user-row-actions button{width:100%}}

/* V2.67 */
.danger-link{border:0;background:transparent;color:#b42318;cursor:pointer;padding:0;font:inherit}.danger-link:hover{text-decoration:underline}

/* V2.68/2.69 – Kommunikation */
.single-member-field[hidden]{display:none!important}.single-member-field.is-visible{display:flex!important}
.communication-detail-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px 0;border-bottom:1px solid #e7ecef}.communication-detail-meta div{display:grid;gap:3px}.communication-detail-meta span{font-size:12px;color:#64748b}.communication-detail-meta strong{font-size:14px;color:#17394a}.communication-detail-body{padding:20px 0 4px;line-height:1.65;overflow-wrap:anywhere}.communication-detail-body img{max-width:100%;height:auto}
@media(max-width:650px){.single-member-field.is-visible{display:block!important}.communication-detail-meta{grid-template-columns:1fr}}
/* V2.70 – Kommunikations-Popup */
.communication-open-button{border:0;background:transparent;cursor:pointer;font:inherit}.communication-popup{z-index:1200}.communication-popup-panel{width:min(760px,calc(100vw - 32px));max-height:85vh;overflow:auto}.communication-popup-meta{display:flex;gap:16px;flex-wrap:wrap;padding:0 0 14px;border-bottom:1px solid #e7ecef;color:#64748b;font-size:13px}.communication-popup-body{padding:18px 0 2px;line-height:1.65;overflow-wrap:anywhere}.communication-popup-body img{max-width:100%;height:auto}@media(max-width:600px){.communication-popup-meta{display:grid;gap:5px}.communication-popup-panel{width:calc(100vw - 20px)}}

/* V2.71 – Offene Beiträge */
.contribution-summary-row{display:grid;grid-template-columns:minmax(220px,.75fr) minmax(360px,1.25fr);gap:16px;margin-bottom:16px}.contribution-generate-card{display:flex;align-items:center;justify-content:space-between;gap:20px}.contribution-generate-card h2{margin-bottom:4px}.contribution-generate-card p{margin:0}.contribution-generate-form{display:flex;align-items:end;gap:8px;margin:0}.contribution-generate-form label{margin:0;min-width:120px}.contribution-generate-form input{max-width:120px}.bulk-contribution-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:0 0 14px}.bulk-select-label{display:flex;align-items:center;gap:7px;margin:0;font-weight:600}.bulk-select-label input,.checkbox-column input{width:auto}.small-bulk-button{padding:8px 12px!important}.small-bulk-button:disabled{opacity:.5;cursor:not-allowed}.checkbox-column{width:34px;text-align:center}
@media(max-width:760px){.contribution-summary-row{grid-template-columns:1fr}.contribution-generate-card{align-items:flex-start;flex-direction:column}.contribution-generate-form{width:100%}.contribution-generate-form label{flex:1}.contribution-generate-form input{max-width:none}.bulk-contribution-actions .button{width:100%}}

/* V2.72 – Bestellübersicht Tarifoption */
.order-summary .option-price-preview{display:none!important}
.order-summary .option-price-preview.is-visible{display:grid!important}

/* V2.82 – Header/Navigation neu aufgebaut */
.topbar{position:sticky;top:0;z-index:1000;min-height:66px;padding:0 24px;background:#fff;border-bottom:1px solid #e7ebef;box-shadow:0 1px 2px rgba(15,23,42,.025);overflow:visible}
.topbar-inner{width:100%;max-width:1500px;min-height:66px;margin:0 auto;display:flex;align-items:center;gap:24px;overflow:visible}
.brand{display:flex;align-items:center;gap:11px;min-width:210px;text-decoration:none}
.tenant-logo-small,.tenant-logo-fallback{width:42px;height:42px;flex:0 0 42px;border:0;border-radius:9px;background:#f7f9fa;object-fit:contain;padding:3px}
.tenant-logo-fallback{display:grid;place-items:center;color:#315b72;font-size:16px;font-weight:750;padding:0}
.brand-copy{display:flex;flex-direction:column;min-width:0;line-height:1.15}.brand-name{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#172033;font-size:14px;font-weight:750;text-decoration:none}.brand-name:hover{color:#315b72;text-decoration:none}.brand-copy small{margin-top:4px;color:#87919c;font-size:10px;font-weight:500}
.main-nav{display:flex;align-items:stretch;align-self:stretch;gap:20px;flex:1;min-width:0;overflow:visible}
.simple-nav-group{position:relative;display:flex;align-items:stretch}
.main-nav>a,.simple-nav-trigger{position:relative;display:flex;align-items:center;gap:7px;height:auto;min-height:66px;margin:0;padding:0;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#52606d!important;font:inherit;font-size:13px;font-weight:600;line-height:1;white-space:nowrap;text-decoration:none!important;cursor:pointer}
.main-nav>a:hover,.simple-nav-trigger:hover,.simple-nav-group.open>.simple-nav-trigger{background:transparent!important;color:#172033!important}
.main-nav>a.active,.simple-nav-group.is-active>.simple-nav-trigger{background:transparent!important;color:#173f53!important}
.main-nav>a.active:after,.simple-nav-group.is-active>.simple-nav-trigger:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:#315b72;border-radius:2px 2px 0 0}
.menu-line-icon{display:grid;width:17px;height:17px;place-items:center;color:#7a8793;opacity:1}.menu-line-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.simple-nav-group.is-active .menu-line-icon,.main-nav>a.active .menu-line-icon{color:#315b72}
.simple-nav-trigger>span:last-child{margin-left:0;color:#a0a8b0;font-size:9px}
.simple-nav-menu{display:none;position:absolute;top:calc(100% + 7px);left:-13px;min-width:215px;padding:6px;background:#fff;border:1px solid #e2e7eb;border-radius:9px;box-shadow:0 14px 36px rgba(15,23,42,.12);z-index:1100}
.simple-nav-group.open>.simple-nav-menu{display:block}.simple-nav-menu-right{left:auto;right:-12px}
.simple-nav-menu a{display:block;padding:9px 10px;border-radius:6px;color:#475569;font-size:12px;font-weight:550;white-space:nowrap;text-decoration:none}.simple-nav-menu a:hover{background:#f5f7f8;color:#173f53;text-decoration:none}
.user-menu{display:flex;align-items:center;gap:4px;margin-left:auto;padding-left:18px;border-left:1px solid #e7ebef;white-space:nowrap}.user-menu-text{display:flex;flex-direction:column;align-items:flex-end;line-height:1.15;margin-right:4px}.user-menu-text strong{font-size:11px}.user-menu-text small{margin-top:3px;color:#8a949e;font-size:9px}.user-action{padding:6px 7px;border-radius:5px;color:#64748b;font-size:11px;text-decoration:none}.user-action:hover{background:#f5f7f8;text-decoration:none}.user-action.logout{color:#9a4d4d}
.mobile-menu-toggle{display:none!important;background:#fff!important;color:#334155!important;border:1px solid #dce2e6!important;box-shadow:none!important}
.application-review-form{min-width:220px;display:grid;gap:8px}.application-review-form select{min-width:210px}.application-review-actions{display:flex;gap:6px;flex-wrap:wrap}.application-review-actions button{padding:7px 10px;font-size:12px}
.public-application-page{background:#f1f5f9;min-height:100vh}.public-application-wrap{width:min(900px,calc(100% - 28px));margin:40px auto}.public-application-card{padding:30px}.application-club-head{display:flex;align-items:center;gap:18px;margin-bottom:24px}.application-club-head img{width:76px;height:76px;object-fit:contain;border-radius:12px}
.application-dashboard-status{display:grid;grid-template-columns:34px 1fr auto 14px;align-items:center;gap:11px;margin:0 0 18px;padding:12px 14px;border:1px solid #e2e8f0;border-radius:9px;background:#fff;color:#334155;text-decoration:none}.application-dashboard-status:hover{border-color:#cbd5e1;box-shadow:0 3px 12px rgba(15,23,42,.05);text-decoration:none}.application-dashboard-status.has-open{border-left:3px solid #0f766e}.application-status-icon{font-size:16px;color:#0f766e}.application-dashboard-status strong{display:block;font-size:13px}.application-dashboard-status small{display:block;color:#64748b;margin-top:2px;font-size:11px}.application-dashboard-status b{font-size:15px;color:#0f766e}.application-status-arrow{font-size:20px;color:#94a3b8}
@media(max-width:1180px) and (min-width:801px){.topbar{padding:0 16px}.topbar-inner{gap:15px}.brand{min-width:175px}.brand-name{max-width:170px}.main-nav{gap:12px}.main-nav>a,.simple-nav-trigger{font-size:12px}.menu-line-icon{display:none}.user-menu-text{display:none}}
@media(max-width:800px){
 .topbar{padding:9px 12px;min-height:60px}.topbar-inner{min-height:42px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.brand{min-width:0}.tenant-logo-small,.tenant-logo-fallback{width:36px!important;height:36px!important;flex-basis:36px}.brand-name,.brand-copy small{max-width:44vw}.mobile-menu-toggle{display:inline-flex!important;align-items:center;gap:4px;padding:7px 9px!important}.mobile-menu-toggle span{display:block;width:17px;height:2px;background:#334155;border-radius:2px}.mobile-menu-toggle b{margin-left:3px;font-size:11px}
 .user-menu{gap:2px;padding-left:0;border-left:0}.user-menu-text{display:none}.user-action{padding:7px 5px}
 .main-nav{display:none;position:absolute;left:10px;right:10px;top:calc(100% + 1px);max-height:calc(100vh - 82px);overflow-y:auto;padding:8px;background:#fff;border:1px solid #e2e7eb;border-radius:10px;box-shadow:0 16px 40px rgba(15,23,42,.15)}.main-nav.open{display:block}
 .simple-nav-group{display:block;width:100%}.main-nav>a,.simple-nav-trigger{width:100%;min-height:40px;padding:0 8px!important;font-size:13px;justify-content:flex-start}.main-nav>a.active:after,.simple-nav-group.is-active>.simple-nav-trigger:after{display:none}.simple-nav-trigger>span:last-child{margin-left:auto}
 .simple-nav-menu,.simple-nav-menu-right{position:static;min-width:0;margin:0 0 4px 22px;padding:0 0 4px;background:transparent;border:0;border-left:1px solid #e5e7eb;border-radius:0;box-shadow:none}.simple-nav-menu a{padding:7px 11px;color:#64748b}.simple-nav-menu a:hover{background:transparent;color:#173f53}
}

/* V2.83 – Kommunikationsvorlagen */
.template-overview+.template-overview{margin-top:30px}.system-template-card{border-left:3px solid #315b72}.system-template-card .template-card-icon{background:#edf3f6;color:#315b72}.template-card-main small{display:block;margin-top:5px;color:#8a949e;font-size:10px}.plan-feature-note{border-style:dashed;background:#fafbfc}.plan-feature-note p{margin-bottom:0}

/* V2.84 – Analyse & Mitglieder-Übersichten */
.analytics-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:18px}.analytics-kpi-grid .metric-card{min-width:0}.metric-card strong.positive{color:#0f766e}.metric-card strong.negative{color:#b45309}.analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0}.analytics-grid-wide{grid-template-columns:1.35fr .65fr}.analytics-panel{margin:0;min-width:0}.movement-chart{height:180px;display:flex;align-items:flex-end;gap:8px;padding:12px 4px 0;border-bottom:1px solid #e2e8f0}.movement-col{height:100%;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:5px}.movement-bars{height:145px;width:100%;display:flex;align-items:flex-end;justify-content:center;gap:3px}.movement-bars i{display:block;width:min(10px,35%);min-height:3px;border-radius:3px 3px 0 0}.movement-bars .entry,.legend-dot.entry{background:#0f766e}.movement-bars .exit,.legend-dot.exit{background:#94a3b8}.movement-col small{font-size:9px;color:#64748b}.chart-legend{display:flex;gap:16px;margin-top:10px;font-size:11px;color:#64748b}.legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}.analytics-progress-row{display:grid;grid-template-columns:minmax(100px,1fr) 2fr 45px;align-items:center;gap:10px;padding:9px 0}.analytics-progress-row>div:first-child{display:flex;justify-content:space-between;gap:8px}.analytics-progress-row span{font-size:10px;color:#94a3b8}.analytics-progress{height:7px;background:#eef2f4;border-radius:99px;overflow:hidden}.analytics-progress i,.analytics-bar-row i{display:block;height:100%;background:#315b72;border-radius:99px}.analytics-progress-row b{font-size:11px;text-align:right}.analytics-bar-row{display:grid;grid-template-columns:120px 1fr 35px;gap:10px;align-items:center;padding:9px 0}.analytics-bar-row>div{height:7px;background:#eef2f4;border-radius:99px;overflow:hidden}.analytics-bar-row span,.analytics-bar-row b{font-size:11px}.analytics-bar-row b{text-align:right}.analytics-person-row,.analytics-action-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #eef2f4;color:#334155;text-decoration:none}.analytics-person-row:last-child,.analytics-action-row:last-child{border-bottom:0}.analytics-person-row:hover,.analytics-action-row:hover{color:#0f766e;text-decoration:none}.analytics-person-row span{display:flex;flex-direction:column}.analytics-person-row small{margin-top:2px;color:#94a3b8;font-size:10px}.analytics-person-row b,.analytics-action-row strong{font-size:11px}.finance-stat{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #eef2f4}.finance-stat:last-child{border:0}.finance-stat span{color:#64748b}.finance-stat strong{font-size:13px}
@media(max-width:1200px){.analytics-kpi-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:800px){.analytics-grid,.analytics-grid-wide{grid-template-columns:1fr}.analytics-kpi-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.analytics-kpi-grid{grid-template-columns:1fr}.analytics-bar-row{grid-template-columns:95px 1fr 30px}.analytics-progress-row{grid-template-columns:1fr 1.4fr 40px}}

/* V2.86 – Kündigungshinweis */
.dashboard-cancellation-notice{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:13px;margin:0 0 18px;padding:14px 16px;border:1px solid #f0d59b;border-left:4px solid #d59b16;border-radius:9px;background:#fffaf0;color:#5f4a18}.dashboard-cancellation-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f5dfae;font-weight:800}.dashboard-cancellation-notice strong{display:block}.dashboard-cancellation-notice p{margin:3px 0 0;font-size:12px;color:#78652f}.dashboard-cancellation-notice .button{white-space:nowrap}@media(max-width:700px){.dashboard-cancellation-notice{grid-template-columns:34px 1fr}.dashboard-cancellation-notice .button{grid-column:1/-1;width:100%}}

/* V2.87 */
.system-mail-template{margin-top:18px}.system-mail-template textarea{min-height:230px}.placeholder-help{margin:10px 0 16px;color:#64748b;font-size:12px}.placeholder-help code{display:inline-block;margin:2px;padding:3px 6px;border-radius:5px;background:#f1f5f9;color:#315b72}

/* V2.89 – öffentliche Startseite & Rechtliches */
.login-page{margin:0;min-height:100vh;background:#f4f7f8;color:#172033}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr)}.login-brand-panel{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:48px clamp(36px,7vw,100px);overflow:hidden;background:linear-gradient(145deg,#173c4c 0%,#24576a 52%,#173b4b 100%);color:#fff}.login-brand-panel:after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-210px;bottom:-230px;border:90px solid rgba(255,255,255,.045)}.login-brand{display:flex;align-items:center;gap:12px;font-size:15px;position:relative;z-index:1}.login-mark,.legal-brand span{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#fff;color:#24576a;font-weight:800}.login-copy{max-width:650px;position:relative;z-index:1}.login-copy .eyebrow{color:#bcd4dc}.login-copy h1{margin:14px 0 18px;color:#fff;font-size:clamp(34px,4vw,58px);line-height:1.03;letter-spacing:-.045em}.login-copy>p{max-width:590px;color:#d6e4e9;font-size:16px}.login-benefits{display:grid;gap:17px;margin-top:36px}.login-benefits>div{display:flex;gap:12px;align-items:flex-start}.login-benefits b{display:grid;place-items:center;flex:0 0 25px;height:25px;border-radius:50%;background:rgba(255,255,255,.12);color:#dff7ee}.login-benefits span{display:flex;flex-direction:column}.login-benefits strong{font-size:13px}.login-benefits small{margin-top:2px;color:#bcd0d7}.login-trust{position:relative;z-index:1;color:#adc5cd;font-size:11px}.login-form-panel{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:42px;background:#fff}.login-card{width:min(440px,100%)}.login-card h2{font-size:32px;margin:7px 0 5px}.login-intro{margin:0 0 24px;color:#697580}.login-card label{margin:15px 0}.login-card input{padding:13px 14px;border-radius:10px}.login-submit{width:100%;justify-content:space-between;margin-top:8px;padding:13px 16px;border-radius:10px}.login-privacy-note{display:flex;gap:10px;margin-top:18px;padding:12px;border-radius:10px;background:#f5f8f8;color:#68757e;font-size:11px}.login-privacy-note p{margin:0}.public-footer{width:min(440px,100%);display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:34px;color:#8a949c;font-size:11px}.public-footer span{margin-left:auto}.legal-page{background:#f5f7f8}.legal-top{min-height:68px;padding:0 max(24px,calc((100vw - 1040px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff;border-bottom:1px solid #e5e9ec}.legal-brand{display:flex;align-items:center;gap:10px;color:#172033;font-weight:750;text-decoration:none}.legal-brand span{width:32px;height:32px;background:#24576a;color:#fff}.legal-top nav{display:flex;gap:18px;font-size:12px}.legal-wrap{max-width:920px;margin:48px auto;padding:0 24px}.legal-title{margin-bottom:22px}.legal-title h1{font-size:34px;margin-top:7px}.legal-card{background:#fff;border:1px solid #e2e7ea;border-radius:16px;padding:clamp(24px,5vw,48px);box-shadow:0 8px 30px rgba(15,23,42,.04)}.legal-card h2{font-size:17px;margin:30px 0 9px}.legal-card h2:first-of-type{margin-top:8px}.legal-card p{color:#56616b;line-height:1.75}.legal-lead{font-size:15px;padding-bottom:20px;border-bottom:1px solid #edf0f2}.legal-footer{max-width:920px;margin:0 auto 45px;padding:0 24px;color:#8a949c;font-size:11px}.legal-footer a{float:right}
@media(max-width:900px){.login-shell{grid-template-columns:1fr}.login-brand-panel{min-height:auto;padding:34px 28px}.login-copy{margin:55px 0}.login-copy h1{font-size:38px}.login-form-panel{padding:42px 24px}.login-trust{display:none}}@media(max-width:620px){.login-copy{margin:38px 0}.login-copy h1{font-size:31px}.login-benefits{margin-top:26px}.legal-top{padding:14px 18px;align-items:flex-start}.legal-top nav{gap:8px 12px;flex-wrap:wrap;justify-content:flex-end}.legal-brand{font-size:0}.legal-wrap{margin-top:30px}.public-footer span{width:100%;margin-left:0}.legal-card{border-radius:12px}}

.dashboard-av-notice{display:flex;align-items:center;gap:16px;margin:0 0 20px;padding:16px 18px;border:1px solid #f4c96b;border-radius:14px;background:#fffbeb;color:#78350f}.dashboard-av-notice>div:nth-child(2){flex:1}.dashboard-av-notice strong{display:block;color:#92400e}.dashboard-av-notice p{margin:4px 0 0;color:#92400e}.dashboard-av-notice .button{flex:0 0 auto}@media(max-width:700px){.dashboard-av-notice{align-items:flex-start;flex-wrap:wrap}.dashboard-av-notice .button{width:100%;text-align:center}}

/* Verevion Markenauftritt */
.system-logo-header{display:block;max-width:155px;max-height:42px;object-fit:contain}
.login-system-logo{display:block;max-width:220px;max-height:72px;object-fit:contain}
.system-logo-admin-preview{display:flex;align-items:center;gap:22px;padding:16px;margin:12px 0 18px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}
.system-logo-admin-preview img{max-width:240px;max-height:90px;object-fit:contain}
.system-logo-remove{margin-left:auto;white-space:nowrap}
.eyebrow{color:var(--brand-blue)!important}
.login-mark,.tenant-logo-fallback{background:linear-gradient(135deg,var(--brand-blue),var(--brand-green))!important}
.login-submit,.primary-action{background:linear-gradient(100deg,var(--brand-blue),#087db7)!important;border-color:var(--brand-blue)!important}
@media(max-width:700px){.system-logo-admin-preview{align-items:flex-start;flex-direction:column}.system-logo-remove{margin-left:0}.system-logo-header{max-width:125px}}

/* V2.99 – Verevion Startseite */
.login-page{background:#f7f9fc}
.login-shell{grid-template-columns:minmax(0,1.12fr) minmax(420px,.88fr)}
.login-brand-panel{position:relative;padding:46px clamp(36px,6.5vw,92px);background:radial-gradient(circle at 88% 12%,rgba(120,200,0,.12),transparent 28%),radial-gradient(circle at 5% 88%,rgba(7,84,166,.09),transparent 30%),linear-gradient(145deg,#f8fbff 0%,#f3f8fc 52%,#f8fbf4 100%);color:#102a43;border-right:1px solid #e1e9f0}
.login-brand-panel:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(7,84,166,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(7,84,166,.025) 1px,transparent 1px);background-size:42px 42px}
.login-brand{z-index:2}.login-logo-surface{display:inline-flex;align-items:center;justify-content:flex-start;min-height:72px;padding:9px 16px;border:1px solid rgba(7,84,166,.09);border-radius:16px;background:#fff;box-shadow:0 10px 30px rgba(7,48,92,.07)}
.login-system-logo{max-width:230px;max-height:58px;filter:none}.login-mark{background:linear-gradient(135deg,var(--brand-blue),var(--brand-green))!important;color:#fff!important;box-shadow:0 8px 20px rgba(7,84,166,.16)}
.login-copy{max-width:720px;z-index:2}.login-copy .eyebrow{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:rgba(7,84,166,.07);color:var(--brand-blue)!important}
.login-copy h1{margin:17px 0 18px;color:#0d315b;font-size:clamp(38px,4.4vw,64px);line-height:1.01;letter-spacing:-.055em}.login-copy h1 span{color:var(--brand-blue)}
.login-copy .login-lead{max-width:650px;margin:0;color:#52687d;font-size:17px;line-height:1.7}.login-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:30px}
.login-feature{display:flex;gap:13px;min-height:112px;padding:17px;border:1px solid rgba(7,84,166,.1);border-radius:15px;background:rgba(255,255,255,.76);box-shadow:0 6px 20px rgba(20,52,82,.035)}
.login-feature-icon{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:10px;background:#eaf3fc;color:var(--brand-blue);font-size:10px;font-weight:800;letter-spacing:.05em}.login-feature:nth-child(2) .login-feature-icon,.login-feature:nth-child(4) .login-feature-icon{background:#eff8e5;color:#4e8600}
.login-feature div{display:flex;flex-direction:column}.login-feature strong{color:#153a61;font-size:13px}.login-feature small{margin-top:4px;color:#687d8f;line-height:1.5}
.login-brand-line{display:flex;align-items:flex-start;gap:12px;margin-top:22px;padding-top:19px;border-top:1px solid rgba(7,84,166,.1)}.login-brand-line>span{width:4px;height:36px;border-radius:4px;background:linear-gradient(var(--brand-blue),var(--brand-green))}.login-brand-line p{max-width:560px;margin:0;color:#62778a;font-size:12px;line-height:1.6}.login-brand-line strong{color:#173d65}
.login-trust{display:flex;align-items:center;gap:8px;z-index:2;color:#6e8192;font-size:11px}.login-trust-dot{width:7px;height:7px;border-radius:50%;background:var(--brand-green);box-shadow:0 0 0 4px rgba(120,200,0,.12)}
.login-form-panel{background:#fff}.login-card .eyebrow{color:var(--brand-blue)!important}.login-card h2{color:#11365e}.login-card input:focus{border-color:#77a6d2;box-shadow:0 0 0 3px rgba(7,84,166,.08)}.login-privacy-note{background:#f6f9fc;border:1px solid #edf2f6}
@media(max-width:900px){.login-brand-panel{border-right:0;border-bottom:1px solid #e1e9f0}.login-copy{margin:46px 0}.login-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.login-brand-panel{padding:26px 20px}.login-logo-surface{min-height:60px;padding:7px 12px}.login-system-logo{max-width:190px;max-height:48px}.login-copy{margin:34px 0}.login-copy h1{font-size:36px}.login-copy .login-lead{font-size:15px}.login-feature-grid{grid-template-columns:1fr}.login-feature{min-height:auto}}

/* V3.03 – Platzhalter in der Mitgliederkommunikation */
.mail-placeholder-box{margin-top:16px;padding:15px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc}.mail-placeholder-box>div:first-child{display:flex;flex-direction:column;gap:2px;margin-bottom:11px}.mail-placeholder-box>div:first-child span{color:#64748b;font-size:12px}.mail-placeholder-list{display:flex;flex-wrap:wrap;gap:8px}.mail-placeholder{display:flex;align-items:center;gap:8px;width:auto!important;padding:8px 10px!important;border:1px solid #dbe5ed!important;border-radius:9px!important;background:#fff!important;color:#334155!important;box-shadow:none!important}.mail-placeholder:hover{border-color:#8fb5d6!important;background:#f5faff!important}.mail-placeholder span{font-size:12px;font-weight:700}.mail-placeholder code{padding:2px 5px;border-radius:5px;background:#eef4f8;color:#0754a6;font-size:11px}@media(max-width:620px){.mail-placeholder-list{display:grid;grid-template-columns:1fr}.mail-placeholder{justify-content:space-between}}

/* V3.08 – Mitglieder-Paginierung */
.pagination{display:flex;align-items:center;justify-content:center;gap:14px;padding:18px 12px 4px}.pagination span{font-size:13px;color:#64748b;font-weight:700}@media(max-width:620px){.pagination{justify-content:space-between}.pagination .button{width:auto}}

/* V3.11 Mitglieder-Aktivitätshistorie */
.member-audit-card{margin-top:22px}.member-audit-card>summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;list-style:none}.member-audit-card>summary::-webkit-details-marker{display:none}.member-audit-card>summary:after{content:'⌄';font-size:20px}.member-audit-card[open]>summary:after{transform:rotate(180deg)}.member-audit-content{padding:0 20px 20px}@media(max-width:620px){.member-audit-card>summary{align-items:flex-start;flex-direction:column;gap:4px}}

/* V3.31 */.member-section-nav{display:flex;gap:8px;flex-wrap:wrap;margin:-4px 0 20px}.member-section-nav a{padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#475569;text-decoration:none;font-size:12px;font-weight:700}.document-count{padding:6px 10px;border-radius:999px;background:#f1f5f9;color:#64748b;font-size:11px;font-weight:800}.document-upload-panel{margin-bottom:20px;padding:18px;border:1px dashed #b9cad8;border-radius:14px;background:#f8fbfd}.document-upload-copy{display:flex;flex-direction:column;margin-bottom:14px}.document-upload-grid{display:grid;grid-template-columns:1.2fr 1fr 1.2fr auto;gap:12px;align-items:end}.document-list{display:flex;flex-direction:column}.document-row{display:grid;grid-template-columns:48px minmax(0,1.4fr) minmax(150px,.7fr) auto;gap:14px;align-items:center;padding:15px 2px;border-top:1px solid #edf1f4}.document-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#eef5fb;color:var(--brand-blue);font-size:10px;font-weight:900}.document-info,.document-meta{display:flex;flex-direction:column;gap:3px}.document-info span,.document-meta small{color:#64748b;font-size:11px}.document-category{width:max-content;padding:4px 8px;border-radius:999px;background:#f1f5f9;font-size:11px;font-weight:700}.document-actions{display:flex;gap:7px}.document-actions form{margin:0}.button.small{padding:7px 10px;font-size:11px}.button.danger{background:#fff;border-color:#fecaca;color:#b91c1c}.cashbook-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px}.cashbook-entry-card{margin-bottom:20px}.cashbook-type{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:800}.cashbook-type.income{background:#ecfdf5;color:#047857}.cashbook-type.expense{background:#fff1f2;color:#be123c}.metric-card-link{text-decoration:none;color:inherit}@media(max-width:900px){.document-upload-grid{grid-template-columns:1fr 1fr}.document-row{grid-template-columns:44px 1fr}.document-meta,.document-actions{grid-column:2}.cashbook-metrics{grid-template-columns:1fr}}@media(max-width:620px){.document-upload-grid{grid-template-columns:1fr}.member-section-nav{overflow:auto;flex-wrap:nowrap}.member-section-nav a{white-space:nowrap}}

/* V3.33 – Dashboard, Tarif-/Bestellstrecke und destructive actions */
.button.danger,.btn-danger,button.danger,a.button.danger{
 background:#c62828!important;border:1px solid #c62828!important;color:#fff!important;
 box-shadow:0 5px 14px rgba(198,40,40,.14)
}
.button.danger:hover,.btn-danger:hover,button.danger:hover,a.button.danger:hover{
 background:#a91f1f!important;border-color:#a91f1f!important;color:#fff!important;
 transform:translateY(-1px)
}
.button.danger:focus-visible,.btn-danger:focus-visible{outline:3px solid rgba(198,40,40,.22);outline-offset:2px}
.dashboard-hero-v2{
 position:relative;overflow:hidden;border:1px solid #dbe6ee;border-radius:20px;
 background:linear-gradient(135deg,#fff 0%,#f6fafc 58%,#eef6fb 100%);
 box-shadow:0 12px 34px rgba(15,23,42,.055);padding:28px
}
.dashboard-hero-v2:after{content:"";position:absolute;width:230px;height:230px;border-radius:50%;right:-90px;top:-110px;background:rgba(30,111,159,.055)}
.dashboard-metrics-v2{gap:14px;margin-top:18px}
.dashboard-metrics-v2 .metric-card{
 border:1px solid #e3eaf0;border-radius:16px;background:#fff;box-shadow:0 7px 22px rgba(15,23,42,.035);
 padding:18px;min-height:118px;transition:.18s ease
}
.dashboard-metrics-v2 .metric-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(15,23,42,.06)}
.dashboard-metrics-v2 .metric-label{text-transform:uppercase;letter-spacing:.055em;font-size:10px;font-weight:800;color:#718096}
.dashboard-metrics-v2 .metric-card strong{font-size:28px;line-height:1.1;margin-top:10px}
.dashboard-grid-v2{gap:18px;margin-top:18px}
.dashboard-grid-v2>.card{border-radius:18px;border-color:#e3eaf0;box-shadow:0 7px 22px rgba(15,23,42,.035)}
.dashboard-grid-v2 .card-heading{padding-bottom:15px;border-bottom:1px solid #eef2f5;margin-bottom:6px}
.plan-current-compact{
 padding:16px 18px!important;border-radius:15px!important;display:grid!important;
 grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:18px!important;
 min-height:0!important
}
.plan-current-compact h2,.plan-current-compact h3{margin:2px 0!important;font-size:18px!important}
.plan-current-compact .plan-price,.plan-current-compact .price{font-size:22px!important}
.plan-grid-v2{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
.plan-grid-v2 .plan-card{border:1px solid #e1e8ee;border-radius:18px;box-shadow:0 6px 20px rgba(15,23,42,.035);padding:22px;transition:.18s ease}
.plan-grid-v2 .plan-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(15,23,42,.07);border-color:#c8d8e4}
.plan-grid-v2 .plan-card.current{box-shadow:0 0 0 2px rgba(30,111,159,.12),0 10px 26px rgba(15,23,42,.05)}
.plan-comparison-v2{margin-top:22px;border:1px solid #e3eaf0;border-radius:18px;background:#fff;overflow:hidden}
.comparison-table-v2{margin:0!important}
.comparison-table-v2 thead th{position:sticky;top:0;background:#f7fafc;z-index:2;padding:14px 12px}
.comparison-table-v2 tbody tr:nth-child(even){background:#fbfcfd}
.comparison-table-v2 td{padding:12px;border-top:1px solid #edf1f4}
.checkout-page-head{margin-bottom:18px}
.checkout-card{border-radius:19px!important;border:1px solid #e2e9ef!important;box-shadow:0 12px 34px rgba(15,23,42,.055)!important}
.checkout-card .form-grid{gap:15px}
.checkout-card label{font-weight:700}
.checkout-card input,.checkout-card select,.checkout-card textarea{background:#fbfdfe}
@media(max-width:900px){
 .plan-grid-v2{grid-template-columns:1fr}
 .plan-current-compact{grid-template-columns:1fr!important}
 .dashboard-hero-v2{padding:22px}
}
@media(max-width:620px){
 .dashboard-hero-v2{border-radius:16px;padding:18px}
 .dashboard-metrics-v2 .metric-card{min-height:100px}
 .dashboard-metrics-v2 .metric-card strong{font-size:24px}
 .plan-comparison-v2{overflow-x:auto}
 .comparison-table-v2{min-width:680px}
}

/* V3.37 */
.cashbook-booking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}.cashbook-booking-grid .card{margin:0}@media(max-width:900px){.cashbook-booking-grid{grid-template-columns:1fr}}

/* V3.38 – Dashboard Mitgliedschaftsprüfung */
.dashboard-attention-card{border:1px solid #f0d9a7!important;background:linear-gradient(180deg,#fffdf7 0%,#fff 100%)!important}
.dashboard-review-list{display:flex;flex-direction:column;gap:8px}
.dashboard-review-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid #eceff2;border-radius:12px;background:#fff;text-decoration:none;color:inherit}
.dashboard-review-row:hover{border-color:#cbd8e0;box-shadow:0 5px 16px rgba(15,23,42,.04)}
.dashboard-review-row div{display:flex;flex-direction:column;gap:3px}.dashboard-review-row span:not(.button){font-size:12px;color:#6b7785}
@media(max-width:620px){.dashboard-review-row{align-items:flex-start;flex-direction:column}.dashboard-review-row .button{width:100%;text-align:center}}
\n/* V3.39 – sachlicheres, handgestaltetes Tenant-Dashboard */
.dashboard-home-head{align-items:center;border-bottom:1px solid #e8edf0;padding:4px 0 20px;margin-bottom:22px}
.dashboard-home-head h1{font-size:27px;margin:3px 0 4px;letter-spacing:-.025em}
.dashboard-home-head p{max-width:680px;font-size:14px}
.dashboard-club-name{display:block;font-size:12px;font-weight:700;color:#667681;margin-bottom:2px}
.dashboard-home-head .tenant-logo-dashboard{box-shadow:none;border-radius:8px}
.dashboard-section-head{display:flex;justify-content:space-between;align-items:end;margin:4px 0 10px}
.dashboard-section-head h2{font-size:16px;margin:0;color:#263642}.dashboard-section-head p{font-size:12px;margin:2px 0 0;color:#7b8790}
.dashboard-summary-grid{gap:10px}.dashboard-summary-grid .metric-card{min-height:auto;padding:15px 16px;border-radius:10px;box-shadow:none}
.dashboard-summary-grid .metric-card:before{display:none}.dashboard-summary-grid .metric-card>strong{font-size:24px;letter-spacing:-.025em}
.dashboard-summary-grid .metric-label{text-transform:none;letter-spacing:0;font-size:12px}.dashboard-summary-grid .metric-note{font-size:11px}
.dashboard-task-card{box-shadow:none!important;border-color:#e5d6ae!important;background:#fffdf8!important}
.dashboard-task-card .card-heading h2{font-size:17px}.dashboard-task-card .card-heading p{max-width:760px}
.dashboard-cancellation-notice,.dashboard-av-notice{box-shadow:none!important}
.application-dashboard-status{box-shadow:none!important}
.dashboard-section .section-title h2{font-size:17px}.dashboard-section .section-title p{font-size:12px}
@media(max-width:650px){.dashboard-home-head{padding-bottom:16px}.dashboard-home-head h1{font-size:24px}.dashboard-summary-grid{grid-template-columns:1fr 1fr}.dashboard-summary-grid .metric-card{padding:13px}.dashboard-summary-grid .metric-card>strong{font-size:21px}}


/* V3.40 – responsive application layer */
html{max-width:100%;overflow-x:hidden}
body{max-width:100%;overflow-x:hidden}
img,svg,video{max-width:100%;height:auto}
input,select,textarea,button{max-width:100%}
.table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
table{max-width:100%}
.page-head,.card-heading,.toolbar,.filter-bar,.actions,.form-actions,.modal-actions{min-width:0}
.page-head>div,.card-heading>div,.toolbar>div{min-width:0}
.page-head h1,.card h2,.card h3{overflow-wrap:anywhere}
.form-grid>*{min-width:0}

/* Login V3.40 */
.login-page-v340{background:#f5f7f8}
.login-shell-v340{min-height:100vh;display:grid;grid-template-columns:minmax(360px,44%) minmax(420px,56%)}
.login-brand-panel-v340{padding:clamp(32px,5vw,72px);display:flex;flex-direction:column;justify-content:space-between;background:#173746;color:#fff}
.login-brand-panel-v340 .login-brand{margin:0}
.login-copy-v340{max-width:570px}
.login-copy-v340 h1{font-size:clamp(36px,4.2vw,58px);line-height:1.08;letter-spacing:-.035em;margin:0 0 20px;color:#fff}
.login-copy-v340 .login-lead{font-size:18px;line-height:1.65;color:rgba(255,255,255,.78);max-width:520px}
.login-simple-points{margin-top:38px;display:grid;gap:0;border-top:1px solid rgba(255,255,255,.16)}
.login-simple-points>div{padding:17px 0;border-bottom:1px solid rgba(255,255,255,.16);display:grid;gap:3px}
.login-simple-points strong{font-size:14px;color:#fff}.login-simple-points span{font-size:13px;color:rgba(255,255,255,.66)}
.login-brand-panel-v340 .login-trust{font-size:12px;color:rgba(255,255,255,.56)}
.login-form-panel-v340{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:36px;background:#fff}
.login-card-v340{width:min(100%,430px);box-shadow:none;border:0;padding:0;background:transparent}
.login-card-v340 h2{font-size:30px;letter-spacing:-.02em;margin-bottom:7px;color:#172033}
.login-card-v340 .login-intro{margin:0 0 28px;color:#66727e}
.login-card-v340 label{display:grid;gap:7px;margin-bottom:17px;font-weight:600;color:#273746}
.login-card-v340 input{width:100%;min-height:48px;border-radius:9px}
.login-card-v340 .login-submit{width:100%;min-height:49px;border-radius:9px;justify-content:center;margin-top:4px}
.login-forgot{text-align:center;margin-top:18px}.login-session-note{font-size:12px;line-height:1.5;color:#7a8791;text-align:center;margin-top:28px}
.login-mobile-brand{display:none;font-weight:750;color:#173746;margin-bottom:34px}
.login-form-panel-v340 .public-footer{margin-top:42px}

/* Desktop/tablet robustness */
@media(max-width:1180px){
 .content,.main-content,.page-content{min-width:0}
 .metrics-grid,.dashboard-metrics-v2{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .dashboard-grid,.dashboard-grid-v2{grid-template-columns:1fr!important}
 .settings-layout,.tenant-settings-layout{grid-template-columns:220px minmax(0,1fr)!important}
}

/* Full mobile optimization */
@media(max-width:760px){
 body{font-size:14px}
 .app-shell,.layout,.main-layout{min-width:0;width:100%}
 .content,.main-content,.page-content{padding:16px!important;width:100%!important;max-width:100%!important}
 .page-head{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:14px!important;margin-bottom:18px!important}
 .page-head>div:last-child,.page-actions,.header-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important;width:100%}
 .page-head .button,.page-actions .button,.header-actions .button{flex:1 1 auto;justify-content:center;text-align:center}
 .page-head h1{font-size:26px!important;line-height:1.15!important}
 .card{padding:16px!important;border-radius:12px!important}
 .card-heading{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important}
 .card-heading .button{width:100%;justify-content:center}
 .metrics-grid,.dashboard-metrics-v2,.stats-grid,.kpi-grid,.cashbook-metrics,.plan-compare-grid-v2{grid-template-columns:1fr!important;gap:10px!important}
 .metric-card,.stat-card,.kpi-card{min-height:auto!important;padding:15px!important}
 .dashboard-hero,.dashboard-hero-v2{padding:18px!important}
 .dashboard-review-row{flex-direction:column!important;align-items:stretch!important}
 .dashboard-review-row .button{width:100%!important}
 .form-grid,.form-grid.two,.form-grid-2,.grid-2,.two-col,.two-column{grid-template-columns:1fr!important}
 .form-grid .span-2,.form-grid [class*="span-"]{grid-column:auto!important}
 label,input,select,textarea{width:100%}
 input,select,textarea{font-size:16px!important}
 textarea{min-height:110px}
 .button,button,input[type=submit]{min-height:42px}
 .toolbar,.filter-bar,.filters,.actions,.form-actions,.modal-actions{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:9px!important}
 .toolbar .button,.filter-bar .button,.filters .button,.actions .button,.form-actions .button,.modal-actions .button{width:100%;justify-content:center;text-align:center}
 .table-wrap{margin-left:-4px;margin-right:-4px;width:calc(100% + 8px)}
 table{min-width:680px}
 th,td{padding:10px 9px!important;white-space:normal}
 .settings-layout,.tenant-settings-layout{display:block!important}
 .tenant-settings-nav,.settings-nav{display:flex!important;overflow-x:auto!important;gap:7px!important;width:100%!important;position:static!important;margin-bottom:16px!important;padding:4px 0 10px!important;scrollbar-width:thin}
 .tenant-settings-nav .nav-title,.settings-nav .nav-title{display:none}
 .tenant-settings-nav a,.settings-nav a{white-space:nowrap;flex:0 0 auto}
 .modal,.modal-dialog,.order-dialog{max-width:calc(100vw - 24px)!important;width:calc(100vw - 24px)!important;max-height:calc(100vh - 24px)!important;overflow-y:auto!important}
 .member-head,.member-summary,.profile-head{flex-direction:column!important;align-items:stretch!important}
 .tabs,.tab-nav{overflow-x:auto!important;flex-wrap:nowrap!important;-webkit-overflow-scrolling:touch}
 .tabs a,.tab-nav a{white-space:nowrap}
 .cashbook-booking-grid{grid-template-columns:1fr!important}
 .plan-matrix-card-v2{overflow:hidden}.plan-matrix-card-v2 .table-wrap{overflow-x:auto}
 .public-footer{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:10px 16px!important;text-align:center}
}

/* Login phone/tablet */
@media(max-width:860px){
 .login-shell-v340{display:block;min-height:100vh}
 .login-brand-panel-v340{display:none}
 .login-form-panel-v340{min-height:100vh;padding:28px 20px;justify-content:center}
 .login-card-v340{width:100%;max-width:430px}
 .login-mobile-brand{display:block}
 .login-form-panel-v340 .public-footer{width:100%;max-width:430px;margin-top:36px}
}
@media(max-width:420px){
 .content,.main-content,.page-content{padding:12px!important}
 .card{padding:14px!important}
 .login-form-panel-v340{padding:24px 18px}
 .login-card-v340 h2{font-size:27px}
 .page-head h1{font-size:24px!important}
}

/* V3.42 – Kategorienverwaltung */
.category-create-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:12px;align-items:end;margin:16px 0 20px;padding:16px;border:1px solid #e7ebee;border-radius:12px;background:#f8fafb}
.category-create-form label{display:grid;gap:7px;margin:0}.category-create-form label>span{font-size:13px;font-weight:700;color:#40515d}
.category-create-form input{width:100%;min-height:44px}.category-create-form .button{min-height:44px}
.category-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap}.category-actions form{margin:0}
.category-actions .button{white-space:nowrap}
@media(max-width:700px){.category-create-form{grid-template-columns:1fr}.category-create-form .button{width:100%;justify-content:center}.category-actions{justify-content:flex-start;flex-direction:column;align-items:stretch}.category-actions form,.category-actions .button{width:100%}}


/* V3.43 – mobile navigation and mobile UI rebuild */
.mobile-nav-backdrop{display:none}
@media(max-width:900px){
 body.nav-open{overflow:hidden}
 .topbar{position:sticky;top:0;z-index:1000}
 .topbar-inner{min-height:64px;padding:8px 14px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important}
 .brand{min-width:0;display:flex;align-items:center;gap:10px}
 .brand-copy{min-width:0}.brand-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px!important}.brand-copy small{display:none!important}
 .tenant-logo-small,.system-logo-header{max-width:42px!important;max-height:42px!important}
 .mobile-menu-toggle{display:flex!important;align-items:center;justify-content:center;width:44px;height:44px;padding:0!important;border:1px solid #dfe5e8!important;border-radius:10px!important;background:#fff!important}
 .mobile-menu-toggle span{position:absolute;width:18px;height:2px;background:#243746;border-radius:2px;transition:.2s}
 .mobile-menu-toggle span:nth-child(1){transform:translateY(-6px)}.mobile-menu-toggle span:nth-child(3){transform:translateY(6px)}
 .mobile-menu-toggle b{display:none!important}
 .mobile-menu-toggle.open span:nth-child(1){transform:rotate(45deg)}.mobile-menu-toggle.open span:nth-child(2){opacity:0}.mobile-menu-toggle.open span:nth-child(3){transform:rotate(-45deg)}
 .main-nav{display:flex!important;position:fixed!important;z-index:1100!important;top:0!important;right:0!important;bottom:0!important;width:min(86vw,340px)!important;height:100dvh!important;padding:76px 14px 24px!important;background:#fff!important;box-shadow:-16px 0 38px rgba(18,35,48,.16)!important;overflow-y:auto!important;transform:translateX(105%)!important;transition:transform .22s ease!important;flex-direction:column!important;align-items:stretch!important;gap:5px!important}
 .main-nav.open{transform:translateX(0)!important}
 .mobile-nav-backdrop{position:fixed;z-index:1050;inset:0;border:0;background:rgba(12,25,34,.38);opacity:0;pointer-events:none;transition:opacity .2s;display:block}
 body.nav-open .mobile-nav-backdrop{opacity:1;pointer-events:auto}
 .main-nav>a,.simple-nav-trigger{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:11px!important;width:100%!important;min-height:46px!important;padding:11px 12px!important;border:0!important;border-radius:9px!important;background:transparent!important;color:#253744!important;text-align:left!important;font-size:14px!important;font-weight:650!important}
 .main-nav>a.active,.simple-nav-group.is-active>.simple-nav-trigger{background:#eef4f5!important;color:#173746!important}
 .nav-separator{height:1px!important;min-height:1px!important;background:#edf0f2!important;margin:8px 4px!important;width:auto!important}
 .simple-nav-group{display:block!important;width:100%!important;position:static!important}
 .simple-nav-trigger>span:last-child{margin-left:auto}
 .simple-nav-menu,.simple-nav-menu-right{display:none!important;position:static!important;inset:auto!important;transform:none!important;width:100%!important;min-width:0!important;margin:2px 0 6px!important;padding:3px 0 3px 38px!important;background:transparent!important;border:0!important;box-shadow:none!important}
 .simple-nav-group.open>.simple-nav-menu{display:grid!important}
 .simple-nav-menu a{display:block!important;padding:10px 11px!important;border-radius:8px!important;color:#52616c!important;font-size:14px!important}
 .simple-nav-menu a:hover{background:#f4f6f7!important;color:#173746!important}
 .user-menu{display:none!important} /* account links remain desktop-only; mobile nav is the sole navigation surface */
 .menu-line-icon{width:18px!important;height:18px!important;flex:0 0 18px!important}
}

/* Mobile content – less boxed, more native */
@media(max-width:760px){
 body{background:#f4f6f7}
 .container{width:100%!important;max-width:none!important;padding:14px!important;margin:0!important}
 .page-head{padding:4px 2px 2px!important;margin:0 0 14px!important}
 .page-head p{font-size:13px!important;line-height:1.5!important;margin-top:5px!important}
 .card{border-radius:12px!important;padding:15px!important;margin-bottom:12px!important;box-shadow:none!important;border:1px solid #e4e8eb!important}
 .card+.card{margin-top:12px!important}
 .settings-card-head{margin-bottom:12px!important}
 .settings-card-head h2,.card h2{font-size:18px!important;margin-bottom:4px!important}
 .settings-subcard{padding:14px!important;border-radius:10px!important;background:#f8fafb!important;border:1px solid #e7ebee!important;margin:12px 0!important}
 .settings-subcard h3{font-size:15px!important;margin:0 0 4px!important}
 .settings-inline-form{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;margin-top:12px!important}
 .settings-inline-form .button{width:100%!important}
 .category-create-form{padding:13px!important;margin:12px 0 14px!important;background:#f8fafb!important;border-radius:10px!important}
 .table-wrap{width:100%!important;margin:0!important;overflow:visible!important}
 /* category tables become mobile rows rather than wide tables */
 #kassenbuch table,#dokumente table{min-width:0!important;display:block!important}
 #kassenbuch thead,#dokumente thead{display:none!important}
 #kassenbuch tbody,#dokumente tbody{display:grid!important;gap:8px!important}
 #kassenbuch tr,#dokumente tr{display:grid!important;grid-template-columns:1fr auto!important;gap:5px 10px!important;padding:12px!important;border:1px solid #e6eaed!important;border-radius:10px!important;background:#fff!important}
 #kassenbuch td,#dokumente td{display:block!important;border:0!important;padding:0!important}
 #kassenbuch td:first-child,#dokumente td:first-child{font-size:14px!important;align-self:center}
 #kassenbuch td:nth-child(2),#dokumente td:nth-child(2){font-size:12px!important;color:#6b7780!important;text-align:right}
 #kassenbuch td:last-child,#dokumente td:last-child{grid-column:1/-1!important;margin-top:7px!important;padding-top:9px!important;border-top:1px solid #eef1f2!important}
 #kassenbuch .category-actions,#dokumente .category-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}
 #kassenbuch .category-actions form,#dokumente .category-actions form{width:100%!important}
 #kassenbuch .category-actions .button,#dokumente .category-actions .button{width:100%!important;min-height:39px!important;font-size:13px!important}
 #kassenbuch .empty-state,#dokumente .empty-state{grid-column:1/-1!important}
 .tenant-settings-nav,.settings-nav{margin:0 -14px 14px!important;padding:2px 14px 10px!important;width:calc(100% + 28px)!important;background:#f4f6f7!important}
 .tenant-settings-nav a,.settings-nav a{padding:8px 11px!important;border:1px solid #dfe5e8!important;border-radius:999px!important;background:#fff!important;font-size:13px!important}
 .tenant-settings-nav a.active,.settings-nav a.active{background:#173746!important;color:#fff!important;border-color:#173746!important}
 .form-grid{gap:12px!important}
 .form-grid label{margin:0!important}
 .form-grid input,.form-grid select,.form-grid textarea{margin-top:6px!important}
 .alert{border-radius:10px!important;padding:12px 13px!important}
 .dashboard-review-list{gap:8px!important}
 .dashboard-review-row{padding:12px!important;border-radius:10px!important}
}
@media(max-width:390px){
 .container{padding:10px!important}
 .card{padding:13px!important;border-radius:10px!important}
 #kassenbuch .category-actions,#dokumente .category-actions{grid-template-columns:1fr!important}
}

/* V3.44 – Off-Canvas-Menü vollständig ausblenden */
@media(max-width:900px){
 .main-nav{
   right:0!important;
   transform:translate3d(110%,0,0)!important;
   visibility:hidden!important;
   pointer-events:none!important;
   opacity:0!important;
   box-shadow:none!important;
   will-change:transform;
 }
 .main-nav.open{
   transform:translate3d(0,0,0)!important;
   visibility:visible!important;
   pointer-events:auto!important;
   opacity:1!important;
   box-shadow:-16px 0 38px rgba(18,35,48,.16)!important;
 }
 body:not(.nav-open) .main-nav{transform:translate3d(calc(100% + 40px),0,0)!important}
 body:not(.nav-open) .mobile-nav-backdrop{visibility:hidden!important}
 body.nav-open .mobile-nav-backdrop{visibility:visible!important}
}


/* V3.45 – desktop/mobile separation */
.mobile-menu-toggle,.mobile-nav-backdrop{display:none}
@media(min-width:901px){
 .mobile-menu-toggle,.mobile-nav-backdrop{display:none!important}
 .main-nav{visibility:visible!important;opacity:1!important;pointer-events:auto!important;transform:none!important}
 .main-nav::before,.main-nav::after,.simple-nav-trigger::before,.simple-nav-trigger::after{content:none!important}
}

/* V3.45 – mobile data tables become readable records */
@media(max-width:760px){
 .mobile-card-table{overflow:visible!important}
 .mobile-card-table table{display:block!important;min-width:0!important;width:100%!important}
 .mobile-card-table thead{display:none!important}
 .mobile-card-table tbody{display:grid!important;gap:10px!important;width:100%!important}
 .mobile-card-table tr{display:block!important;width:100%!important;padding:13px!important;border:1px solid #e3e8eb!important;border-radius:11px!important;background:#fff!important}
 .mobile-card-table td{display:grid!important;grid-template-columns:minmax(92px,34%) minmax(0,1fr)!important;gap:10px!important;align-items:start!important;width:100%!important;padding:6px 0!important;border:0!important;border-bottom:1px solid #f0f2f3!important;white-space:normal!important;overflow-wrap:anywhere!important}
 .mobile-card-table td:last-child{border-bottom:0!important;padding-bottom:0!important}
 .mobile-card-table td::before{content:attr(data-mobile-label);font-size:11px!important;line-height:1.35!important;font-weight:700!important;color:#78858e!important;text-transform:uppercase!important;letter-spacing:.025em!important}
 .mobile-card-table td[data-mobile-label=""],.mobile-card-table td:not([data-mobile-label]){grid-template-columns:1fr!important}
 .mobile-card-table td[data-mobile-label=""]::before,.mobile-card-table td:not([data-mobile-label])::before{display:none!important}
 .mobile-card-table td .button,.mobile-card-table td button{max-width:100%}
 .mobile-card-table .user-row-actions,.mobile-card-table .category-actions{justify-content:flex-start!important}
 .mobile-card-table tr:has(.empty-state){padding:0!important}
 .mobile-card-table .empty-state{display:block!important;text-align:center!important;padding:18px!important;border:0!important}
}

/* V3.45 – compact tenant dashboard */
.dashboard-summary-grid-v345{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:9px!important}
.dashboard-summary-grid-v345 .metric-card{padding:14px!important;min-width:0!important}
.dashboard-summary-grid-v345 .metric-card strong{font-size:22px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-summary-grid-v345 .metric-note{font-size:11px!important;line-height:1.35!important}
.dashboard-work-grid-v345{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:16px}
.dashboard-quick-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.dashboard-quick-actions a{padding:12px;border:1px solid #e5e9eb;border-radius:10px;background:#fff;color:#263845;text-decoration:none;font-weight:700;font-size:13px}
.dashboard-quick-actions a span{display:block;margin-top:3px;color:#78858e;font-size:11px;font-weight:500}
@media(max-width:1050px){.dashboard-summary-grid-v345{grid-template-columns:repeat(5,minmax(130px,1fr))!important;overflow-x:auto;padding-bottom:5px}.dashboard-work-grid-v345{grid-template-columns:1fr}}
@media(max-width:760px){.dashboard-summary-grid-v345{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory;margin-right:-14px!important;padding-right:14px!important}.dashboard-summary-grid-v345 .metric-card{flex:0 0 154px!important;scroll-snap-align:start}.dashboard-quick-actions{grid-template-columns:1fr!important}}

/* V3.45 – analytics additions */
.analytics-secondary-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 18px}
.analytics-secondary-kpis .metric-card{padding:14px;box-shadow:none}
.analytics-secondary-kpis strong{font-size:21px}
@media(max-width:900px){.analytics-secondary-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.analytics-secondary-kpis{grid-template-columns:1fr 1fr;gap:8px}.analytics-secondary-kpis .metric-card{padding:12px}.analytics-secondary-kpis strong{font-size:18px}}

/* V3.46 – Tags & Familien */
.member-organize-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0}
.member-organize-card{margin:0!important}.member-organize-card .card-heading a{font-size:12px}
.tag-picker{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px}.tag-picker label{cursor:pointer}.tag-picker input{position:absolute;opacity:0;pointer-events:none}.tag-picker span,.member-tag{display:inline-flex;align-items:center;padding:5px 9px;border:1px solid #dce4e8;border-radius:999px;background:#f4f7f8;color:#344955;font-size:12px;font-weight:700}.tag-picker input:checked+span{background:#173746;color:#fff;border-color:#173746}
.member-tags-inline{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}.member-tags-inline .member-tag{padding:3px 7px;font-size:10px}.member-family-hint{display:block;color:#70808a;margin-top:3px}
.family-create-form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}.family-create-form label,.family-member-form label{display:grid;gap:6px}.family-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.family-card{display:flex;justify-content:space-between;gap:12px;margin:0!important}.family-card h3{margin:0 0 4px}.family-card p{margin:0 0 5px;color:#65747d}.family-card small{display:block;color:#65747d}
.family-member-form{display:grid;grid-template-columns:1fr 1fr;gap:9px}.family-member-form .button{grid-column:1/-1;justify-self:start}.family-role-form{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding-top:12px;margin-top:12px;border-top:1px solid #edf0f2}.family-role-form label{display:flex;align-items:center;gap:6px;font-size:13px}.family-member-list{display:grid;gap:5px;margin-top:12px}.family-member-list a{display:flex;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:8px;background:#f7f9fa;text-decoration:none}.family-member-list span{font-size:12px;color:#74818a}
.tag-admin-list{display:grid;gap:7px}.tag-admin-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #edf0f2}.tag-admin-row:last-child{border-bottom:0}.tag-admin-row>div{display:flex;align-items:center;gap:8px}.tag-admin-row small{color:#74818a}
@media(max-width:850px){.family-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.member-organize-grid,.family-grid{grid-template-columns:1fr}.family-create-form,.family-member-form{grid-template-columns:1fr}.family-create-form .button,.family-member-form .button{width:100%}.family-card{align-items:flex-start}.family-member-list a{display:grid}.family-role-form{display:grid;grid-template-columns:1fr 1fr}.family-role-form .button{grid-column:1/-1;width:100%}}

/* V3.48 – direkte Familienverknüpfung / GlobalAdmin */
.family-direct-form{display:grid;grid-template-columns:1fr 1fr auto;gap:9px;align-items:end}.family-direct-form label{display:grid;gap:6px}.family-payer-form{display:flex;align-items:end;justify-content:space-between;gap:12px;padding:12px 0;margin-top:12px;border-top:1px solid #edf0f2}.family-link-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.family-link-row>a{min-width:0}
.plan-admin-grid,.plan-admin-card,.module-switches,.modern-switches,.switch-row{min-width:0;max-width:100%;box-sizing:border-box}.switch-row>span:first-child{min-width:0;overflow-wrap:anywhere}.switch{margin-left:auto}
@media(max-width:700px){.family-direct-form{grid-template-columns:1fr}.family-direct-form .button{width:100%}.family-payer-form{display:grid}.family-payer-form .button{width:100%}.family-link-row{grid-template-columns:1fr}.family-link-row form,.family-link-row button{width:100%}.switch-row{gap:10px;padding:11px}.plan-admin-card{padding:16px!important}}

/* V3.50 – einheitliche Schalter statt sichtbarer Checkboxen */
.ui-switch-label{position:relative}
.ui-switch-input{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;margin:0!important;pointer-events:none}
.ui-switch-control{position:relative;display:inline-flex;flex:0 0 38px;width:38px;height:22px;border-radius:999px;background:#cbd4d9;vertical-align:middle;cursor:pointer;transition:background .18s ease,box-shadow .18s ease}
.ui-switch-control::after{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(20,35,45,.25);transition:transform .18s ease}
.ui-switch-input:checked+.ui-switch-control{background:#173746}
.ui-switch-input:checked+.ui-switch-control::after{transform:translateX(16px)}
.ui-switch-input:focus-visible+.ui-switch-control{box-shadow:0 0 0 3px rgba(23,55,70,.18)}
.ui-switch-input:disabled+.ui-switch-control{opacity:.5;cursor:not-allowed}
.ui-switch-label>.ui-switch-control{order:-1}
.checkbox-option.ui-switch-label,.family-role-form label.ui-switch-label,.family-payer-form label.ui-switch-label{display:flex!important;align-items:flex-start!important;gap:10px!important}
.checkbox-option.ui-switch-label>.ui-switch-control{margin-top:1px}
td .ui-switch-label{display:inline-flex;align-items:center;gap:8px}
@media(max-width:700px){.ui-switch-control{flex-basis:40px;width:40px;height:23px}.ui-switch-control::after{width:17px;height:17px}.ui-switch-input:checked+.ui-switch-control::after{transform:translateX(17px)}}

/* V3.51 – Familientarif-Aktivierung */
.family-plan-activate-form{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(220px,.8fr) auto;gap:10px;align-items:end;padding:14px;margin:12px 0;border:1px solid #dfe6e9;border-radius:10px;background:#f8fafb}.family-plan-activate-form>div{align-self:center}.family-plan-activate-form strong,.family-plan-activate-form small{display:block}.family-plan-activate-form small{margin-top:3px;color:#70808a;font-weight:400}.family-plan-activate-form label{display:grid;gap:5px}
@media(max-width:800px){.family-plan-activate-form{grid-template-columns:1fr}.family-plan-activate-form .button{width:100%}}

/* V3.52 – Zahlungsart / IBAN-Feedback */
.direct-debit-fields[hidden]{display:none!important}.direct-debit-fields{margin-top:14px;padding-top:14px;border-top:1px solid #e7ecef}
.iban-feedback{display:block!important;margin-top:7px!important;font-size:14px!important;line-height:1.35!important;font-weight:700!important}
.iban-feedback.is-valid{color:#16813b!important}.iban-feedback.is-invalid{color:#c62828!important}
.payment-method-section>.toggle-label{margin-bottom:4px}

/* V3.54 */
.family-plan-active-note{display:grid;gap:4px;padding:14px;border:1px solid #dbe5e9;border-radius:10px;background:#f7fafb}.family-plan-active-note strong{font-size:15px}.family-plan-active-note span{font-weight:700}.family-plan-active-note small{color:#687983}

/* V3.58 */
.template-delete-form{margin-top:16px;padding-top:16px;border-top:1px solid #e7ecef;display:flex;justify-content:flex-end}
/* V3.59 */
.family-remove-form{min-width:220px}.family-remove-choice{margin-top:10px;padding:12px;border:1px solid #e1e7ea;border-radius:10px;background:#f8fafb;display:grid;gap:10px}.family-remove-choice[hidden]{display:none!important}.family-remove-choice label{display:grid;gap:6px;font-size:12px;font-weight:700}.family-remove-choice small{font-weight:400;color:#687983}.family-remove-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}@media(max-width:700px){.family-remove-form{width:100%}.family-remove-actions .button{width:100%}}
/* V3.61 Familienzuordnung */
.family-member-search-label{position:relative}.family-search-results{position:absolute;z-index:30;left:0;right:0;top:calc(100% - 18px);max-height:280px;overflow:auto;background:#fff;border:1px solid #dbe3e7;border-radius:8px;box-shadow:0 10px 24px rgba(20,35,45,.12)}.family-search-results button{width:100%;display:flex;justify-content:space-between;gap:12px;text-align:left;padding:10px 12px;border:0;border-bottom:1px solid #edf1f3;background:#fff;cursor:pointer}.family-search-results button:hover{background:#f5f8f9}.family-search-results button span,.family-search-empty{color:#687983}.family-search-empty{padding:12px}.family-reference-card{display:grid;gap:6px;padding:14px;border:1px solid #dbe5e9;border-radius:10px;background:#f7fafb}.family-reference-card a{display:flex;justify-content:space-between;gap:12px;align-items:center;text-decoration:none}

/* V3.64: Zahlungsart bei Sammelverbuchung */
.bulk-payment-method{display:flex;align-items:center;gap:8px;margin:0;font-weight:600}.bulk-payment-method select{width:auto;min-width:150px;padding:7px 34px 7px 10px}@media(max-width:700px){.bulk-payment-method{width:100%;justify-content:space-between}.bulk-payment-method select{flex:1;max-width:220px}}

/* V3.74 – Detailansicht Familie + SEPA-Lastschrift vorbereiten */
.family-start-note{display:grid;gap:5px;margin:0 0 20px;padding:14px 16px;border:1px solid #dfe7ea;border-radius:10px;background:#f8fafb}
.family-start-note strong{font-size:14px}.family-start-note span{color:#687983;line-height:1.45}
.family-direct-form{grid-template-columns:minmax(0,1.35fr) minmax(210px,.65fr) auto;align-items:start;column-gap:12px;row-gap:8px;margin-bottom:20px}
.family-direct-form>label{height:100%;grid-template-rows:auto 42px auto;align-content:start}
.family-direct-form>label>input,.family-direct-form>label>select{height:42px;box-sizing:border-box}
.family-direct-form>label:not(.family-member-search-label)::after{content:"";display:block;min-height:18px}
.family-direct-form>.button{height:42px;margin-top:25px;align-self:start}
.family-plan-activate-form{display:block;padding:16px 18px;margin:18px 0;border:1px solid #dfe6e9;border-radius:10px;background:#f8fafb}
.family-plan-activate-form>div{margin-bottom:14px}.family-plan-activate-form>div strong{font-size:15px}.family-plan-activate-form>div small{max-width:720px;line-height:1.5;margin-top:5px}
.family-plan-activate-form>label{display:grid;gap:6px;max-width:560px;margin-bottom:12px}.family-plan-activate-form>label select{width:100%}.family-plan-activate-form>.button{margin-right:8px}
.sepa-filter-bar{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:16px 18px;margin:4px 0 16px;border:1px solid #e0e7ea;border-radius:10px;background:#f8fafb}
.sepa-filter-fields{display:grid;grid-template-columns:repeat(2,minmax(180px,240px));gap:12px}.sepa-filter-fields label{display:grid;gap:6px;font-weight:700}.sepa-filter-actions{display:flex;gap:8px;flex-wrap:wrap}
.sepa-selection-summary{display:grid;grid-template-columns:repeat(2,minmax(0,220px));gap:10px;margin:0 0 16px}.sepa-selection-summary>div{display:grid;gap:2px;padding:13px 15px;border:1px solid #e2e8eb;border-radius:9px;background:#fff}.sepa-selection-summary strong{font-size:20px}.sepa-selection-summary span{font-size:12px;color:#687983}
.sepa-export-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:14px 16px;margin-bottom:12px;border:1px solid #e2e8eb;border-radius:9px;background:#fbfcfc}.sepa-export-toolbar>label:first-child{display:grid;gap:6px;min-width:230px;font-weight:700}.sepa-select-all{display:flex!important;align-items:center;gap:9px;font-weight:700;margin:0!important;padding:8px 0}.sepa-export-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;padding-top:16px;margin-top:4px;border-top:1px solid #edf0f2}
@media(max-width:800px){.family-direct-form{grid-template-columns:1fr}.family-direct-form>label{height:auto;grid-template-rows:auto 42px auto}.family-direct-form>label:not(.family-member-search-label)::after{display:none}.family-direct-form>.button{width:100%;margin-top:0}.family-plan-activate-form>label{max-width:none}.family-plan-activate-form>.button{width:100%;margin:0}.sepa-filter-bar,.sepa-export-toolbar{display:grid;grid-template-columns:1fr;align-items:stretch}.sepa-filter-fields{grid-template-columns:1fr 1fr}.sepa-filter-actions .button{flex:1}.sepa-selection-summary{grid-template-columns:1fr 1fr;max-width:none}.sepa-export-toolbar>label:first-child{min-width:0}.sepa-export-actions{justify-content:space-between}}
@media(max-width:520px){.sepa-filter-fields,.sepa-selection-summary{grid-template-columns:1fr}.sepa-filter-actions{display:grid;grid-template-columns:1fr}.sepa-export-actions{display:grid}.sepa-export-actions .button{width:100%}}

/* V3.76 – kompakte Übersicht offene Beiträge */
.contribution-year-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:0 0 16px}.contribution-year-card{display:block;padding:15px 17px;border:1px solid var(--border,#dfe4ea);border-radius:9px;background:#fff;color:inherit;text-decoration:none}.contribution-year-card:hover{border-color:#b9c6ce;background:#fbfcfd}.contribution-year-card.active{border-color:var(--accent,#315f78);box-shadow:inset 0 0 0 1px var(--accent,#315f78)}.contribution-year-card .eyebrow{display:block;margin-bottom:5px;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.045em;color:var(--muted,#6b7780)}.contribution-year-card strong{display:block;font-size:22px;line-height:1.15}.contribution-year-card small{display:block;margin-top:5px;color:var(--muted,#6b7780);font-size:12px}.contribution-filter-card{padding:16px 18px;margin-bottom:16px}.contribution-filter-card .card-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:12px}.contribution-filter-card .card-heading h2{font-size:15px;margin:0 0 2px}.contribution-filter-card .card-heading p{font-size:12px;margin:0;color:var(--muted)}.filter-result{display:flex;align-items:baseline;gap:6px;white-space:nowrap}.filter-result strong{font-size:15px}.filter-result span{font-size:12px;color:var(--muted)}.contribution-filter-grid{display:grid;grid-template-columns:150px 175px minmax(145px,1fr) minmax(145px,1fr) auto;gap:10px;align-items:end}.contribution-filter-grid label{display:flex;flex-direction:column;gap:5px;margin:0;font-size:12px;font-weight:650}.contribution-filter-grid select,.contribution-filter-grid input{height:40px;margin:0;padding:7px 10px;font-size:13px}.contribution-filter-buttons{display:flex;gap:7px;align-items:center}.contribution-filter-buttons .button{min-height:40px;padding:9px 13px;white-space:nowrap}.due-date{white-space:nowrap}.due-date.is-due{font-weight:700}.due-date.is-future{color:var(--muted)}.contribution-overdue td{background:rgba(180,35,24,.018)}
@media(max-width:1050px){.contribution-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contribution-filter-buttons{grid-column:1/-1}.contribution-year-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.contribution-year-cards{grid-template-columns:1fr}.contribution-filter-card .card-heading{display:block}.filter-result{margin-top:8px}.contribution-filter-grid{grid-template-columns:1fr}.contribution-filter-buttons{grid-column:auto;flex-wrap:wrap}.contribution-filter-buttons .button{flex:1}}

/* V3.77 – eigenständiger Bank-&-SEPA-Bereich */
.bank-sepa-card{overflow:hidden}.bank-sepa-heading{align-items:flex-start}.bank-sepa-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:24px}.bank-sepa-bank,.bank-sepa-mandate{min-width:0;padding:18px;border:1px solid #e1e7ea;border-radius:10px;background:#fbfcfc}.bank-sepa-section-title{display:grid;gap:3px;margin-bottom:16px}.bank-sepa-section-title>strong{font-size:15px}.bank-sepa-section-title>span{font-size:13px;color:var(--muted,#687983);line-height:1.45}.bank-sepa-fields{grid-template-columns:1fr 1fr}.bank-sepa-fields label:first-child{grid-column:1/-1}.bank-sepa-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:16px}.bank-sepa-status-grid>div{display:grid;gap:4px;padding:11px 12px;border:1px solid #e4e9ec;border-radius:8px;background:#fff}.bank-sepa-status-grid span{font-size:11px;color:var(--muted,#687983);text-transform:uppercase;letter-spacing:.035em;font-weight:700}.bank-sepa-status-grid strong{font-size:14px}.bank-sepa-toggle{display:flex!important;align-items:flex-start!important;justify-content:space-between;gap:18px;padding:14px 0 0;margin:0!important;border-top:1px solid #e5eaed}.bank-sepa-toggle>span{display:grid;gap:4px;min-width:0}.bank-sepa-toggle small{font-weight:400;color:var(--muted,#687983);line-height:1.45}.bank-sepa-actions{margin-top:18px;padding-top:16px;border-top:1px solid #edf0f2}@media(max-width:900px){.bank-sepa-layout{grid-template-columns:1fr}.bank-sepa-fields{grid-template-columns:1fr 1fr}}@media(max-width:600px){.bank-sepa-fields,.bank-sepa-status-grid{grid-template-columns:1fr}.bank-sepa-fields label:first-child{grid-column:auto}.bank-sepa-toggle{display:grid!important;grid-template-columns:1fr}.bank-sepa-actions .button{width:100%}}


/* V3.78 – Mitgliedsakte: Tags, Familie und bedingte Zusatzfelder */
.sepa-mandate-date{font-size:12px!important;font-weight:650!important;letter-spacing:0!important}
.member-organize-grid{display:grid!important;grid-template-columns:1fr!important;gap:16px!important;width:100%}
.member-organize-card{width:100%;min-width:0}
.tag-picker{display:flex!important;flex-wrap:wrap;gap:8px;margin:4px 0 14px}
.tag-picker label{position:relative;display:inline-flex!important;align-items:center!important;margin:0!important;padding:0!important;cursor:pointer}
.tag-picker label input[type=checkbox]{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important}
.tag-picker label>span{display:inline-flex;align-items:center;min-height:34px;padding:7px 12px;border:1px solid #d8e0e5;border-radius:8px;background:#fff;color:var(--text,#24323a);font-size:13px;font-weight:650;transition:.15s ease}
.tag-picker label:hover>span{border-color:#aebdc6;background:#f8fafb}
.tag-picker label input[type=checkbox]:checked+span{border-color:var(--accent,#315f78);background:var(--accent,#315f78);color:#fff;box-shadow:none}
.tag-picker label input[type=checkbox]:focus-visible+span{outline:2px solid var(--accent,#315f78);outline-offset:2px}
.tag-picker .ui-switch-control{display:none!important}
.family-start-note{margin-bottom:18px!important}
.family-direct-form,.family-plan-activate-form,.family-member-list,.family-reference-card{max-width:none!important;width:100%}

/* V3.79 – Tags und einheitliche Breite der Mitgliedsakte */
.member-content-width{width:calc(100% - 328px);min-width:0}
.tag-picker .tag-choice>span{user-select:none}
.tag-picker .tag-choice.is-selected>span,.tag-picker .tag-choice input[type=checkbox]:checked+span{border-color:var(--accent,#315f78)!important;background:var(--accent,#315f78)!important;color:#fff!important;box-shadow:0 0 0 1px rgba(49,95,120,.08)}
.tag-picker .tag-choice.is-selected:hover>span{filter:brightness(.94)}
@media(max-width:1100px){.member-content-width{width:100%}}

/* V3.80 GlobalAdmin */
.tenant-contact-box{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft,#f8fafc);margin-top:10px}.tenant-contact-box span{color:var(--muted)}
.tenant-module-overrides{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin-top:12px}.tenant-override-row{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--border)}.tenant-override-row span{display:flex;flex-direction:column;gap:3px}.tenant-override-row small{color:var(--muted)}
@media(max-width:850px){.tenant-module-overrides{grid-template-columns:1fr}.tenant-override-row{grid-template-columns:1fr}.tenant-override-row select{width:100%}}
/* V3.81 Tenant registration */
.login-register-cta{margin-top:18px;padding-top:18px;border-top:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;gap:12px}.login-register-cta span{font-size:13px;color:#64748b}.public-register-page{background:#f4f7f8}.public-register-shell{max-width:1040px;margin:0 auto;padding:38px 22px 60px}.public-register-head{margin-bottom:22px}.public-register-head>a{font-weight:700;text-decoration:none}.public-register-head h1{margin:16px 0 6px}.public-register-head p{color:#64748b;max-width:760px}.public-register-form{padding:28px}.public-register-form section+section{border-top:1px solid #e2e8f0;margin-top:26px;padding-top:24px}.public-register-form h2{font-size:18px;margin:0 0 16px}.registration-success{max-width:720px;padding:30px}.field-valid{color:#15803d!important}.field-invalid{color:#b91c1c!important}.tenant-approval-box{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;margin-bottom:24px;border:1px solid #f59e0b;border-radius:14px;background:#fffbeb}.tenant-approval-box p{margin:4px 0 0;color:#78716c}.tenant-approval-box button{flex:0 0 auto}@media(max-width:700px){.login-register-cta,.tenant-approval-box{align-items:stretch;flex-direction:column}.public-register-shell{padding:22px 14px}.public-register-form{padding:20px}}

/* V3.83 Support */
.support-layout{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.6fr);gap:28px;align-items:start}.support-create{display:grid;gap:16px}.support-filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}.support-filters a{padding:8px 11px;border:1px solid #dbe3e8;border-radius:9px;text-decoration:none;color:#52606a;background:#fff;font-size:13px;font-weight:700}.support-filters a.active{background:#163f43;color:#fff;border-color:#163f43}.support-status{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800;background:#eef2f4;color:#44515a}.support-status-open{background:#fff2d7;color:#8a5a00}.support-status-waiting_tenant{background:#e8f2ff;color:#245b9c}.support-status-answered{background:#e8f7ef;color:#23724a}.support-status-closed{background:#eef1f3;color:#66717a}.ticket-thread{display:grid;gap:14px;max-width:920px;margin-bottom:22px}.ticket-message{border:1px solid #e0e6e9;border-radius:14px;background:#fff;padding:16px 18px}.ticket-message.is-support{border-left:4px solid #167c80}.ticket-message-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px;font-size:13px}.ticket-message-head span{color:#7b858d}.ticket-message-body{line-height:1.6;white-space:normal}.ticket-reply{max-width:920px}.ticket-actions{display:flex;gap:10px;flex-wrap:wrap}.support-admin-filter{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:18px 0}.support-admin-filter label{min-width:180px;flex:1}.support-admin-filter button,.support-admin-filter>a{flex:0 0 auto}.support-template-card{margin-bottom:20px}.support-template-card code{font-size:11px}.support-metrics{margin-bottom:18px}@media(max-width:850px){.support-layout{grid-template-columns:1fr}.support-admin-filter{display:grid;grid-template-columns:1fr 1fr}.support-admin-filter label{min-width:0}}@media(max-width:560px){.support-admin-filter{grid-template-columns:1fr}.ticket-message-head{display:block}.ticket-message-head span{display:block;margin-top:3px}}
.support-attachment-list{display:flex;flex-wrap:wrap;gap:10px}.support-attachment{display:flex;align-items:center;justify-content:space-between;gap:18px;min-width:240px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;text-decoration:none;background:var(--surface,#fff)}.support-attachment span{font-size:.82rem;color:var(--muted)}.support-attachments{margin-bottom:18px}

/* V3.86 Support ticket layout restoration */
.support-attachments{max-width:920px;margin-bottom:18px}
.support-attachment-list{display:grid;gap:8px}
.support-attachment{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 13px;border:1px solid #e0e6e9;border-radius:10px;background:#fff;text-decoration:none;color:inherit}
.support-attachment:hover{border-color:#b8c8cc;background:#f8fafb}
.support-attachment span{font-size:12px;color:#7b858d;white-space:nowrap}
.ticket-message.is-tenant{background:#fff}
@media(max-width:560px){.support-attachment{align-items:flex-start;flex-direction:column;gap:3px}}
