/* Vereinskonto: nutzt die Gestaltung aus style.css, ohne Seitenleiste. */
body.konto{min-height:100vh}
.konto-header{height:76px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 32px}
.konto-header .brand{font-size:28px}
.konto-header .brand-icon{width:38px;height:42px}
.konto-header .brand-icon img{width:100%;height:100%;display:block}
.konto-user{display:flex;align-items:center;gap:14px;font-weight:600;min-width:0}
.konto-user>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.konto-tabs{display:flex;gap:6px;flex-wrap:wrap;padding:12px 32px;background:#fff;border-bottom:1px solid var(--line)}
.konto-tabs button{padding:10px 14px;border-radius:7px;background:transparent;font-weight:600;width:auto;margin:0;display:inline-flex}
.konto-tabs button.active{background:#e9f2ec}
.konto-main{max-width:1100px;margin:auto;padding:36px 32px 0}
.konto-main h1{margin-top:0}
.auth-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:22px;align-items:start}
.panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:26px}
.panel h2{font:800 21px Manrope,sans-serif;margin:0 0 8px}
.panel>p:first-of-type{margin-top:0}
.steps{margin:0;padding-left:20px;line-height:1.9}
.form .check-row{font-size:13px;line-height:1.5}
.form .check-row input{flex:none}
.form .hint{font-size:12px;margin:-8px 0 0}
.status-badge{display:inline-block;font-size:12px;font-weight:700;padding:5px 9px;border-radius:5px;background:#eef5e9}
.status-badge.warn{background:#fff4dc}
.status-badge.bad{background:#fde8e4}
.team-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-top:1px solid #dce4d6;flex-wrap:wrap}
.team-row>div{min-width:0}
.team-row small{margin-top:3px}
.row-actions{display:flex;gap:8px;flex-wrap:wrap}
.card-section{margin:14px 0 4px;font:800 14px Manrope,sans-serif}
.admin-filter{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.admin-filter button{padding:8px 12px;border-radius:6px;border:1px solid #c9d4c5;background:#fff;font-weight:600}
.admin-filter button.active{background:#174d3b;color:#fff!important;border-color:#174d3b}
.detail-list{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;font-size:13px;margin:10px 0}
.detail-list dt{font-weight:700}
.detail-list dd{margin:0;overflow-wrap:anywhere}
.class-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid var(--line);flex-wrap:wrap}
.class-row select{padding:6px;border:1px solid #c9d4c5;border-radius:5px;background:#fff}
.dev-link{word-break:break-all;background:#fff4dc;padding:12px;border-radius:6px;font-size:12px}
.footer-links{margin-left:auto;display:flex;gap:16px}
.footer-links a{text-decoration:underline}
.club-banner .status-badge{margin-top:8px}
.list-card .actions{flex-wrap:wrap}
@media(max-width:760px){
  .konto-header{height:auto;min-height:62px;padding:10px 16px}
  .konto-header .brand{font-size:23px}
  .konto-header .brand-icon{width:32px;height:35px}
  .konto-user{gap:8px}
  .konto-user>span{display:none}
  .konto-tabs{padding:10px 16px}
  .konto-main{padding:24px 16px 0}
  .auth-grid{grid-template-columns:1fr}
  .panel{padding:20px}
  .footer-links{margin-left:0}
}
/* Traineranfragen, Personenliste, Protokoll, Datenbank-Update. */
.section-line h2 span{font:500 12px 'DM Sans';padding:4px 7px;border-radius:5px;background:#e9eee7;margin-left:7px}
.request-card{border-color:#e7d8a8}
.class-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.search-row{grid-template-columns:1fr auto;align-items:end}
.search-row .primary{height:44px}
.audit{margin:26px 0 8px;background:#fff;border:1px solid var(--line);border-radius:9px;padding:16px 20px}
.audit summary{cursor:pointer;font:800 16px Manrope,sans-serif}
.audit-row{display:grid;grid-template-columns:130px 1fr auto;gap:12px;padding:9px 0;border-top:1px solid var(--line);font-size:13px}
.audit-row:first-of-type{margin-top:12px}
.audit-row span{overflow-wrap:anywhere}
.migration-panel{border-color:#e7d8a8;margin-bottom:22px}
.migration-panel h2{margin-top:12px}
.verify-hint{margin:8px 0}
.list-main .status-badge+.status-badge{margin-left:4px}
@media(max-width:760px){.search-row{grid-template-columns:1fr}.audit-row{grid-template-columns:1fr;gap:2px}}

/* Abo & Preise (Saison, Flatrate, Pilot) */
.billing-panel{margin:6px 0 22px}
.billing-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.billing-head h2{margin:6px 0 0}
.billing-sum{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:14px 0 6px}
.billing-sum b{font:800 30px Manrope}
.billing-sum span{font-size:13px}
.pilot-note{background:#edf2e5;border:1px solid #c1cfb4;border-radius:8px;padding:12px 14px;font-size:13px;margin:12px 0}
.u-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.u-pick .check-row span,.billing-opt span{display:flex;flex-direction:column;gap:2px}
.u-pick small,.billing-opt small{font-size:12px;color:#4d554c}
.billing-opt{margin-bottom:8px}
.access-card .card-top strong small{font-size:12px;font-weight:600;margin-left:2px}
.club-stats b{overflow-wrap:anywhere}
@media(max-width:760px){.club-stats b{font-size:20px}}
.konto-tabs .admin-link{padding:10px 14px;border-radius:7px;font-weight:700;color:#174d3b;margin-left:auto}

/* Mein Konto (Trainer zuerst) */
.mk-auth{max-width:620px}
.mk-tabs{display:flex;gap:6px;margin:0 0 16px}
.mk-tabs button{flex:1;padding:11px;border-radius:8px;border:1px solid #c9d4c5;background:#fff;font-weight:700}
.mk-tabs button.active{background:#174d3b;color:#fff;border-color:#174d3b}
.mk-choice{display:grid;gap:10px}
.mk-choice button{text-align:left;padding:16px;border:1px solid #c9d4c5;border-radius:10px;background:#fff;display:flex;flex-direction:column;gap:4px}
.mk-choice button:hover{border-color:#174d3b}
.mk-choice small,.mk-suggest small,.mk-slot small{font-size:12px;color:#4d554c}
.mk-links{display:flex;gap:14px;flex-wrap:wrap;margin:12px 0 0}
.mk-msg{background:#edf2e5;border:1px solid #c1cfb4;border-radius:8px;padding:10px 12px;font-size:14px}
.mk-pw{display:flex;gap:6px;align-items:center}.mk-pw input{flex:1}
.mk-eye{background:#fff;border:1px solid #c9d4c5;border-radius:6px;padding:8px 10px;width:auto}
.mk-steps{display:flex;gap:6px;list-style:none;padding:0;margin:0 0 16px;font-size:12px;font-weight:700}
.mk-steps li{flex:1;text-align:center;padding:7px 4px;border-radius:6px;background:#f0f2ee;color:#5b6359}
.mk-steps li.on{background:#174d3b;color:#fff}.mk-steps li.done{background:#dfeadf;color:#174d3b}
.mk-suggest{display:grid;gap:6px;margin:6px 0}
.mk-suggest button{text-align:left;padding:10px 12px;border:1px solid #d6ddd3;border-radius:8px;background:#fff;display:flex;flex-direction:column}
.mk-newclub{border:1px dashed #b8c6ba;border-radius:10px;padding:14px;display:grid;gap:8px}
.mk-ages{display:flex;flex-wrap:wrap;gap:6px}
.mk-ages button{padding:9px 12px;border:1px solid #c9d4c5;border-radius:8px;background:#fff;font-weight:700;width:auto}
.mk-ages button.on,.mk-slot.on{background:#174d3b;color:#fff;border-color:#174d3b}
.mk-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.mk-slot{padding:12px;border:1px solid #c9d4c5;border-radius:10px;background:#fff;display:flex;flex-direction:column;gap:3px;align-items:flex-start}
.mk-slot.off{background:#f3f4f1;color:#5b6359}
.mk-slot.on small{color:#e3efe6}
.mk-section{margin:0 0 18px}
.mk-note{margin:0 0 18px;display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:#fff8e6}
.mk-team-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:flex-start}
.mk-inline{display:flex!important;flex-wrap:wrap;gap:10px;align-items:flex-end;margin:12px 0}
.mk-inline label{margin:0}
.mk-gap{margin:14px 0}
.mk-search{width:100%;padding:11px 12px;border:1px solid #b8c6ba;border-radius:8px;font-size:15px;margin:6px 0}
.mk-cup{display:block;font-size:13px;margin-top:4px;color:#174d3b}
@media(max-width:600px){.mk-slots{grid-template-columns:1fr 1fr 1fr}.mk-steps{font-size:11px}}
.mk-hint{font-size:13px;color:#4d554c;margin:4px 0;line-height:1.5}.mk-hint:empty{display:none}
.mk-ok{color:#22755a;font-weight:700;margin:10px 0 0}
.mk-human{min-height:0;margin:10px 0}.mk-human:empty{margin:0}
.mk-sent{background:#e3f2e8;border:1px solid #b9dcc5;border-radius:10px;padding:12px 14px;margin-top:12px}
.mk-sent b{color:#1f6b45}
.mk-sent .mk-msg{margin:6px 0 0}
.req{color:#b3261e;font-weight:800}
