:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17231d;background:#eef3f0;--green:#087443;--dark:#16322a;--line:#d9e3de;--muted:#6c7b74;--radius:18px}*{box-sizing:border-box}body{margin:0}a{color:inherit}header{min-height:68px;padding:14px clamp(16px,4vw,30px);background:var(--dark);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}header a{text-decoration:none}.brand{font-weight:900}nav{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.container{max-width:1180px;margin:28px auto;padding:0 18px}.narrow{max-width:620px;margin:6vh auto;padding:0 18px}.hero,.panel,.plan{background:#fff;border-radius:var(--radius);box-shadow:0 8px 26px #0000000d}.hero{padding:clamp(30px,6vw,68px);background:linear-gradient(135deg,#0b5f3d,#173d31);color:#fff}.hero h1{font-size:clamp(2.2rem,6vw,4.4rem);line-height:1.02;margin:.3em 0}.hero p{font-size:1.08rem;max-width:760px}.panel{padding:24px;margin:20px 0}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:900;opacity:.75}.button,button{border:0;border-radius:11px;padding:12px 16px;background:var(--green);color:#fff;font:inherit;font-weight:800;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.button.ghost{background:#e5ece8;color:#18362c}.small{padding:8px 12px;min-height:36px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.stack,.form-grid{display:grid;gap:14px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid button{grid-column:1/-1}label{display:grid;gap:7px;font-weight:750}input,select{width:100%;min-width:0;padding:12px;border:1px solid #c9d5cf;border-radius:10px;font:inherit;background:#fff}.notice{padding:13px 15px;border-radius:12px;background:#dff2e7;margin:14px 0}.notice.error{background:#fde3e3;color:#8c2727}.notice.warning{background:#fff0cf;color:#704d00}.pricing{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.plan{padding:22px;border:1px solid var(--line)}.plan h2{margin-top:0}.price{font-size:2rem;font-weight:900}.price small{font-size:.85rem;color:var(--muted)}.plan ul{padding-left:20px;line-height:1.9}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}.metrics article{background:#fff;padding:18px;border-radius:15px;border:1px solid var(--line)}.metrics small{display:block;color:var(--muted);font-weight:750}.metrics strong{font-size:1.7rem}.feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.feature{padding:14px;border-radius:12px;border:1px solid var(--line);display:flex;gap:9px;align-items:center}.feature.off{opacity:.58}.card-head{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.muted{color:var(--muted)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:11px;border-bottom:1px solid #e5ebe7;vertical-align:top;white-space:nowrap}td small{display:block;color:var(--muted)}.admin-plans{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-edit{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end;margin:9px 0}.feature-edit label{font-size:.82rem}@media(max-width:950px){.pricing{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.form-grid,.pricing,.metrics,.feature-grid,.admin-plans{grid-template-columns:1fr}.form-grid button{grid-column:auto}.container{margin-top:18px}.hero{border-radius:0;margin-left:-18px;margin-right:-18px}.feature-edit{grid-template-columns:1fr}.feature-edit button{width:100%}}

.legal-page{max-width:900px}.legal-page h2{margin-top:28px}.legal-checks{display:grid;gap:10px}.legal-checks .checkline{display:flex;align-items:flex-start;gap:10px;font-weight:500}.legal-checks input{width:20px;height:20px;min-height:0;flex:0 0 20px}.notice.warning{background:#fff4d6;color:#654d00}

.tenant-team-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 0;border-bottom:1px solid #e3e8eb}.tenant-team-card:last-child{border-bottom:0}.tenant-team-card>div:first-child{display:grid;gap:4px;min-width:0}.tenant-team-card strong{font-size:1.05rem}.tenant-team-card small{color:#71808a}.team-list{display:grid}.status-pill{display:inline-flex;padding:5px 10px;border-radius:999px;background:#e8f2ed;font-size:.78rem;font-weight:800}@media(max-width:650px){.tenant-team-card{align-items:stretch;flex-direction:column}.tenant-team-card .actions{width:100%}.tenant-team-card .button{width:100%}}

/* V12.2 Football core */
.matchday-create{grid-template-columns:repeat(4,minmax(0,1fr))}.ticker-panel{text-align:center}.ticker-score{display:grid;justify-items:center;gap:5px;margin:22px 0}.ticker-score strong{font-size:clamp(3rem,8vw,5.5rem);line-height:1}.ticker-score span{font-size:1.8rem;font-weight:800}.goal-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.game-strip{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:18px}.game-strip span{padding:7px 10px;border-radius:999px;background:#edf1f3}.game-strip span.active{background:#dcefe4;color:#075c38;font-weight:800}.public-game-grid{display:grid;gap:12px}.public-game-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:15px;border:1px solid #dce4e8;border-radius:14px;background:#fff}.public-game-card.live{border-color:#087443;box-shadow:0 0 0 3px #08744315}.public-game-card>div:first-child{display:grid;gap:4px}.public-game-card strong{font-size:1.05rem}.public-score{display:grid;justify-items:end;font-size:1.7rem;font-weight:900}.public-score small{font-size:.72rem;text-transform:uppercase;color:#677780}.hero.compact{padding-block:28px}@media(max-width:950px){.matchday-create{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.matchday-create{grid-template-columns:1fr}.goal-grid{grid-template-columns:1fr}.public-game-card{grid-template-columns:1fr auto}}


/* V12.2.1 Landingpage ticker.live */
.landing-page{background:#fff;color:#18252c}
.landing-shell{width:min(1160px,calc(100% - 36px));margin-inline:auto}
.landing-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:15px max(18px,calc((100% - 1160px)/2));background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid #e5ece8}
.landing-brand{font-size:1.35rem;font-weight:900;color:#087443;text-decoration:none}
.landing-nav{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.landing-nav>a:not(.button){color:#40515a;text-decoration:none;font-weight:700;font-size:.92rem}
.landing-hero{padding:76px 0 64px;background:linear-gradient(180deg,#f0f8f4 0%,#fff 100%)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);gap:56px;align-items:center}
.hero-copy h1{font-size:clamp(2.8rem,6vw,5.2rem);line-height:.98;letter-spacing:-.055em;margin:12px 0 22px;max-width:780px}
.hero-lead{font-size:1.18rem;line-height:1.65;color:#52636d;max-width:760px}
.landing-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.landing-actions.centered{justify-content:center}
.landing-primary{font-size:1rem;padding:13px 20px}
.hero-points{display:flex;gap:18px;flex-wrap:wrap;margin-top:24px;color:#52636d;font-size:.9rem;font-weight:700}
.hero-demo{background:#fff;border:1px solid #dce6e1;border-radius:24px;box-shadow:0 22px 55px #173b2a18;padding:24px}
.demo-top{display:flex;justify-content:space-between;align-items:center;gap:14px;color:#66767f;font-size:.88rem}
.live-dot{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#d72638;color:#fff;font-weight:900;font-size:.72rem;letter-spacing:.04em}
.demo-score{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;text-align:center;gap:16px;padding:30px 0 24px}.demo-score strong{font-size:3.2rem}.demo-score small{font-weight:800;color:#52636d}
.demo-events{border-top:1px solid #edf1ef}.demo-events>div{display:grid;grid-template-columns:52px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid #edf1ef}.demo-events b{font-size:1.05rem}.demo-events span{color:#65757e}
.demo-push{margin-top:16px;padding:11px 13px;border-radius:12px;background:#edf8f2;color:#09633c;font-weight:800;font-size:.88rem}
.landing-section{padding:82px 0}.landing-section.alternate{background:#f7faf8}
.section-intro{max-width:760px;margin-bottom:36px}.section-intro h2,.stream-split h2,.landing-cta h2{font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.035em;margin:10px 0 14px}.section-intro p,.stream-split p,.landing-cta p{font-size:1.05rem;line-height:1.7;color:#5c6d76}
.landing-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.landing-feature-grid article,.principles-grid article{padding:22px;border:1px solid #e0e8e4;border-radius:18px;background:#fff}.landing-feature-grid h3,.principles-grid h3,.steps-grid h3{margin:10px 0 8px}.landing-feature-grid p,.principles-grid p,.steps-grid p{margin:0;color:#61717a;line-height:1.55;font-size:.94rem}.feature-icon{font-size:1.5rem}
.steps-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.steps-grid article{padding:10px 6px}.steps-grid article>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#087443;color:#fff;font-weight:900}
.stream-split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:56px;align-items:center}.stream-card{display:grid;justify-items:center;gap:12px;text-align:center;border:1px solid #dfe6e3;border-radius:22px;padding:24px;background:#f8faf9}.stream-placeholder{display:grid;place-items:center;width:100%;aspect-ratio:16/9;border-radius:15px;background:#17232a;color:#fff;font-size:3rem}.stream-card small{color:#687981;line-height:1.45}
.principles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.landing-cta{text-align:center;padding:76px 0;background:#0e3527;color:#fff}.landing-cta p{color:#d8e8e1;max-width:650px;margin:0 auto}.landing-cta .button.ghost{border-color:#b9d2c6;color:#fff}
.landing-footer{padding:30px 0;background:#0a241b;color:#d5e2dc}.landing-footer .landing-shell{display:flex;justify-content:space-between;gap:24px;align-items:center}.landing-footer div>div{display:grid;gap:4px}.landing-footer nav{display:flex;gap:18px;flex-wrap:wrap}.landing-footer a{color:#d5e2dc;text-decoration:none;font-size:.9rem}
@media(max-width:980px){.landing-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.steps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-grid,.stream-split{grid-template-columns:1fr}.hero-demo{max-width:620px}.landing-header{align-items:flex-start}.landing-nav{justify-content:flex-end}}
@media(max-width:700px){.landing-header{position:static;display:grid}.landing-nav{display:grid;grid-template-columns:1fr 1fr;gap:8px}.landing-nav a{width:100%;text-align:center}.landing-hero{padding:48px 0}.hero-copy h1{font-size:2.8rem}.landing-feature-grid,.steps-grid,.principles-grid{grid-template-columns:1fr}.landing-section{padding:58px 0}.landing-footer .landing-shell{display:grid}.landing-footer nav{display:grid;grid-template-columns:1fr 1fr}.demo-score{grid-template-columns:1fr auto 1fr}}

/* V12.2.2 Plattform-Superadmin */
.admin-platform-nav{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.admin-platform-nav a{text-decoration:none;font-weight:700}.admin-platform{padding-bottom:50px}.admin-metrics{grid-template-columns:repeat(6,minmax(0,1fr))}.admin-two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.admin-list-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 0;border-bottom:1px solid #e8edef}.admin-list-row:last-child{border-bottom:0}.admin-list-row>div:first-child{display:grid;gap:4px;min-width:0}.admin-list-row small{color:#72818a}.admin-list-row>div:last-child{display:flex;gap:8px;align-items:center}.admin-status{display:inline-flex;align-items:center;justify-content:center;padding:5px 9px;border-radius:999px;background:#e9eef1;color:#53636d;font-size:.72rem;font-weight:900;text-transform:uppercase}.admin-status.active,.admin-status.resolved{background:#dff2e8;color:#0a643e}.admin-status.suspended,.admin-status.open{background:#ffe5e5;color:#9c2424}.admin-status.reviewing,.admin-status.grace{background:#fff1c9;color:#7a5800}.admin-status.rejected{background:#ececef;color:#5f6068}.admin-search{display:grid;grid-template-columns:minmax(220px,2fr) minmax(160px,.7fr) auto;gap:12px;align-items:end}.admin-search label{margin:0}.admin-danger-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;border-left:4px solid #d24747}.admin-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.admin-detail-grid>div{display:grid;gap:5px;padding:14px;border-radius:12px;background:#f6f8f9}.admin-detail-grid small{color:#70808a}.report-message{padding:16px;border-radius:12px;background:#f5f7f8;line-height:1.6;margin:14px 0}.admin-inline-form{display:flex;align-items:end;gap:10px}.audit-context{max-width:360px;font-size:.78rem;word-break:break-word}.public-report-link{text-align:center;padding:18px}.public-report-link a{color:#71808a;font-size:.84rem}.table-wrap table small{display:block;color:#73818a;margin-top:3px}
@media(max-width:1050px){.admin-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-two-col{grid-template-columns:1fr}.admin-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.admin-platform-nav{display:grid;grid-template-columns:1fr 1fr;width:100%}.admin-search{grid-template-columns:1fr}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-detail-grid{grid-template-columns:1fr}.admin-danger-panel{align-items:stretch;flex-direction:column}.admin-list-row{align-items:stretch;flex-direction:column}.admin-list-row>div:last-child{justify-content:flex-start}.admin-inline-form{align-items:stretch;flex-direction:column}}

/* SPORTPULS V12.3 Multi-Sport */
.sport-dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.sport-dashboard-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px;border:1px solid #dde6e2;border-radius:15px;background:#fff}.sport-dashboard-card>span{font-size:2rem}.sport-dashboard-card>div{display:grid;gap:3px}.sport-dashboard-card small{color:#71818a}.sport-select-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.sport-select-card{text-align:center;padding:24px;border:1px solid #e0e7e4;border-radius:18px;background:#f8faf9}.sport-select-card.enabled{border-color:#82b79e;background:#f0f8f4}.sport-big-icon{display:block;font-size:3rem}.sport-select-card p{color:#687881;line-height:1.5;min-height:68px}.sport-home-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.sport-home-grid article{display:grid;justify-items:center;gap:8px;padding:25px;border:1px solid #e0e7e4;border-radius:18px;background:#fff}.sport-home-grid article.available{border-color:#75b496;background:#f2faf6}.sport-home-grid span{font-size:2.6rem}.sport-home-grid strong{font-size:1.1rem}.sport-home-grid small{color:#72818a;font-weight:700}@media(max-width:900px){.sport-select-grid,.sport-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sport-dashboard-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.sport-select-grid,.sport-home-grid,.sport-dashboard-grid{grid-template-columns:1fr}}

/* SPORTPULS V12.4 – Spieler/Kader/Tore/Push */
.player-create-v12{display:grid;grid-template-columns:2fr 1fr auto;gap:14px;align-items:end}.player-edit-v12{display:grid;grid-template-columns:2fr .7fr minmax(130px,.8fr) auto;gap:12px;align-items:end;padding:14px 0;border-bottom:1px solid #e6ece9}.roster-grid-v12{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}.roster-player-v12{display:grid;gap:8px;padding:14px;border:1px solid #dde6e2;border-radius:14px}.roster-player-v12 label{display:flex;align-items:center;gap:8px}.ticker-goal-box{margin:22px 0;padding:18px;border:1px solid #dce6e1;border-radius:16px;background:#f7faf8;text-align:left}.ticker-goal-box h3{margin-top:0}.ticker-player-selects{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.full-button{width:100%}.ticker-roster{display:grid;gap:5px;margin-top:18px;padding:13px;border-radius:12px;background:#f4f7f6;font-size:.9rem}.public-rosters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}.public-rosters>div{display:grid;gap:5px;padding:13px;border-radius:12px;background:#f5f8f6}.public-rosters span{color:#63747d;line-height:1.5}.public-game-card.detailed{display:block;padding:0;overflow:hidden}.public-game-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:15px}.event-list-v12{border-top:1px solid #e8edeb;padding:0 15px 12px}.event-row-v12{display:grid;grid-template-columns:52px minmax(0,1fr);gap:10px;padding:11px 0;border-bottom:1px solid #edf1ef}.event-row-v12:last-child{border-bottom:0}.event-row-v12.away{background:#fff8f7;margin-inline:-15px;padding-inline:15px}.event-row-v12 div{display:grid;gap:3px}.event-row-v12 small{color:#6d7c84}.push-public{margin-top:14px}@media(max-width:850px){.roster-grid-v12{grid-template-columns:repeat(2,minmax(0,1fr))}.player-edit-v12{grid-template-columns:1fr 1fr}.player-edit-v12 .actions{grid-column:1/-1}.public-rosters{grid-template-columns:1fr}}@media(max-width:600px){.player-create-v12,.player-edit-v12,.ticker-player-selects,.roster-grid-v12{grid-template-columns:1fr}}

/* SPORTPULS V12.5 Komfort, Korrektur, Rollen */
.game-nav-control{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:10px;margin:16px 0}.game-strip button{border:0;padding:7px 10px;border-radius:999px;background:#edf1f3;color:#25333b}.game-strip button.active{background:#dcefe4;color:#075c38;font-weight:800}.inline-action{display:inline-flex}.trash-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 0;border-bottom:1px solid #e5ece8}.trash-row>div{display:grid;gap:4px}.trash-row small{color:#71818a}.user-add-grid{display:grid;grid-template-columns:1.4fr 1.6fr 1fr auto;gap:12px;align-items:end}.permission-card{padding:18px 0;border-bottom:1px solid #e5ece8}.permission-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.permission-head>div{display:grid;gap:4px}.permission-team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0 16px}.correction-score-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end}.correction-score-grid button{align-self:end}.correction-events{margin-top:20px;border-top:1px solid #e6ece9;padding-top:16px}.correction-event-row{display:grid;grid-template-columns:minmax(120px,.9fr) .6fr 1.4fr .5fr 1.4fr .5fr auto;gap:8px;align-items:end;padding:12px 0;border-bottom:1px solid #edf1ef}.correction-event-row label{margin:0}.correction-event-row strong{align-self:center}.correction-game{scroll-margin-top:20px}@media(max-width:1000px){.permission-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.correction-event-row{grid-template-columns:repeat(3,minmax(0,1fr))}.correction-event-row .actions{grid-column:1/-1}.user-add-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.game-nav-control,.user-add-grid,.permission-team-grid,.correction-score-grid,.correction-event-row{grid-template-columns:1fr}.trash-row,.permission-head{align-items:stretch;flex-direction:column}.trash-row .actions{width:100%}}

/* SPORTPULS V12.6 Account & Mail */
.copy-link{width:100%;margin:8px 0;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.85rem}.login-links{line-height:1.9}.notice form.inline-action{display:inline-flex;margin-left:8px}.notice form.inline-action button{padding:5px 9px}.mail-health{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}

/* SPORTPULS V12.7 Trust & Organisation */
.transfer-card,.moderation-card{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 0;border-bottom:1px solid #e5ece8}.transfer-card>div,.moderation-card>div{display:grid;gap:5px}.transfer-card p,.moderation-card p{margin:3px 0}.transfer-card small,.moderation-card small{color:#6d7c84}.trust-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#e7f4ed;color:#08633c;font-size:.75rem;font-weight:900}@media(max-width:700px){.transfer-card,.moderation-card{align-items:stretch;flex-direction:column}.transfer-card .actions,.moderation-card .actions{width:100%}}

/* SPORTPULS V12.8 Public Beta */
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.health-grid article{display:grid;gap:6px;padding:16px;border-radius:14px;border:1px solid #dde5e1}.health-ok{background:#eff9f4;color:#075f3a}.health-warn{background:#fff4e5;color:#7d5000}.health-grid strong{word-break:break-word}@media(max-width:850px){.health-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.health-grid{grid-template-columns:1fr}}

/* SPORTPULS V12.8.1 UX Cleanup */
.dashboard-clean{padding-bottom:48px}.dashboard-welcome{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.dashboard-welcome h1{margin-bottom:6px}.setup-callout{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#f0f8f4;border-color:#bad9c9}.setup-callout>div{display:flex;gap:16px;align-items:center}.setup-callout h2{margin:0 0 5px}.setup-callout p{margin:0;color:#5e6f78}.setup-icon{font-size:2.5rem}.public-link-card{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:20px;margin:18px 0;border:1px solid #cfe1d8;border-radius:18px;background:#f4faf7}.public-link-card>div:first-child{display:grid;gap:5px;min-width:0}.public-link-card strong{font-size:1.05rem;word-break:break-all}.public-link-card small,.public-link-card span{color:#61737b}.quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.quick-grid>a,.org-team-grid>a{display:grid;gap:5px;padding:17px;border:1px solid #e0e7e4;border-radius:15px;background:#fff;text-decoration:none;color:inherit}.quick-grid>a:hover,.org-team-grid>a:hover{border-color:#8fc0a8}.quick-grid span{font-size:1.45rem}.quick-grid small,.org-team-grid small{color:#71818a}.disabled-link{pointer-events:none;opacity:.45}.org-team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dashboard-more{margin-top:18px}.team-create-clean .advanced-field{grid-column:1/-1;padding:10px 0}.advanced-field summary{cursor:pointer;font-weight:700}.team-card-clean small{line-height:1.4}.empty-state{display:grid;gap:5px;padding:22px;text-align:center;background:#f7f9f8;border-radius:14px}.input-with-unit{display:flex;align-items:center;gap:8px}.input-with-unit input{flex:1}.input-with-unit span{font-weight:700;color:#65757e}.matchday-create label small{display:block;margin-top:5px;color:#78878f;font-size:.8rem}.public-team-hero .actions{margin-top:16px}.public-section{margin-top:18px}.public-section h2{margin-top:0}.public-match-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 0;border-bottom:1px solid #e7ece9}.public-match-card:last-of-type{border-bottom:0}.public-match-card>div{display:grid;gap:4px}.public-match-card small,.public-match-card span{color:#697982}.public-match-card.live{padding:17px;border:1px solid #c8dfd2;border-radius:14px;background:#f1faf5;margin-top:12px}.archive-link{text-align:center;padding-top:16px}.archive-link a{font-weight:800;text-decoration:none}@media(max-width:900px){.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.org-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.dashboard-welcome,.setup-callout,.public-link-card,.public-match-card{align-items:stretch;flex-direction:column}.setup-callout>div{align-items:flex-start}.public-link-card .actions,.public-match-card .button{width:100%}.quick-grid,.org-team-grid{grid-template-columns:1fr}.dashboard-welcome>.button{width:100%}.public-link-card strong{font-size:.9rem}}

/* SPORTPULS V12.8.2 UX/Trash/Single-game fixes */
[hidden]{display:none!important}.season-needed{display:flex;justify-content:space-between;align-items:center;gap:18px}.season-needed>div{display:grid;gap:5px}.half-list-public{border-top:1px solid #e7ece9}.half-public{padding:0 15px}.half-public+.half-public{border-top:8px solid #f2f5f3}.half-public-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 0}.half-public .event-list-v12{padding-inline:0;border-top:1px solid #edf1ef}.single-games .public-game-card{grid-column:1/-1}@media(max-width:700px){.season-needed,.half-public-head{align-items:stretch;flex-direction:column}.season-needed .button{width:100%}}

/* SPORTPULS V12.8.3 Flexible Spieltag-Engine */
.wizard-shell{max-width:1100px}.wizard-step{display:none}.wizard-step.active{display:block}.wizard-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.wizard-options label{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:start;padding:18px;border:1px solid #dce5e1;border-radius:16px;cursor:pointer}.wizard-options input{grid-row:1/3;margin-top:4px}.wizard-options strong{font-size:1.04rem}.wizard-options span{color:#71818a;margin-top:4px}.wizard-options label:has(input:checked){border-color:#0d7549;background:#eef8f3}.wizard-nav{display:flex;justify-content:space-between;gap:12px;margin-top:16px}.wizard-summary{display:grid;gap:8px}.wizard-summary>div{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid #e6ece9}.wizard-summary span{color:#71818a}.section-card{grid-template-columns:auto 1fr auto}.section-order{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#0b6540;color:white;font-weight:900}.field-switcher .active{box-shadow:0 0 0 2px #0b7046 inset;background:#eaf6f0}.section-summary-public{display:flex;justify-content:space-between;align-items:center;gap:14px;background:#eef7f2;border-radius:14px;padding:14px 16px;margin:12px 0 18px}.section-summary-public strong{font-size:1.1rem}.section-builder .notice{grid-column:1/-1}@media(max-width:760px){.wizard-options{grid-template-columns:1fr}.wizard-summary>div,.section-summary-public{align-items:flex-start;flex-direction:column}.section-card{grid-template-columns:auto 1fr}.section-card>.actions{grid-column:1/-1}}
\n/* SPORTPULS V12.8.5 Ticker UX & Spielzustände */
.tenant-brand-logo{width:42px;height:42px;object-fit:contain;border-radius:10px;background:#fff;padding:3px}.ticker-v1284 .ticker-score{margin-bottom:14px}.ticker-v1284 .ticker-score small{font-size:1rem}.ticker-main-actions{justify-content:center}.ticker-main-actions button:disabled,.ticker-v1284 button:disabled{opacity:.35;cursor:not-allowed;filter:grayscale(.3)}.single-flow{max-width:640px;margin:0 auto}.next-step-hint{display:grid;gap:4px;padding:13px 16px;border-radius:13px;background:#eef7f2;color:#1a4736;margin:12px 0}.next-step-hint span{color:#557067}.ticker-correction-link{margin-top:18px}.final-match-summary{display:grid;gap:5px;padding:15px;border-radius:14px;background:#edf8f2;margin:18px auto 0;max-width:640px}.final-match-summary strong{font-size:1.05rem}.ticker-bottom-actions{position:sticky;bottom:0;z-index:15;display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:22px 0 0;padding:10px;background:rgba(238,243,240,.96);backdrop-filter:blur(10px);border:1px solid #dce5e1;border-radius:16px}.ticker-bottom-actions a,.ticker-bottom-actions button{min-height:44px;text-decoration:none;display:flex;align-items:center;justify-content:center;border-radius:11px;font-weight:800;background:#fff;color:#20312a;border:1px solid #dce5e1}.ticker-bottom-actions button{padding:8px}.ticker-mobile-shell{padding-bottom:24px}@media(max-width:650px){.ticker-mobile-shell{padding-inline:10px}.ticker-v1284{padding:20px 14px}.ticker-main-actions{display:grid;grid-template-columns:1fr 1fr}.ticker-main-actions #finish{grid-column:1/-1}.ticker-bottom-actions{grid-template-columns:1fr 1fr 1fr;font-size:.82rem}.ticker-panel h1{font-size:2rem}.ticker-score strong{font-size:4.4rem}.ticker-score span{font-size:2.35rem}}

/* V12.8.7 account */
.account-email-state{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0 20px}.account-email-state strong{word-break:break-word}@media(max-width:600px){.account-email-state{align-items:flex-start;flex-direction:column}}

/* SPORTPULS V12.8.8 - sichere YouTube-Livestreams */
.stream-current{display:grid;gap:12px;margin:0 0 22px}.stream-current small{word-break:break-all}.youtube-preview,.stream-consent{width:100%;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#0c1512}.youtube-preview iframe,.stream-consent iframe{width:100%;height:100%;border:0;display:block}.public-stream-card{overflow:hidden}.stream-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;color:#fff;background:linear-gradient(145deg,#152a23,#07110d)}.stream-placeholder strong{font-size:1.25rem}.stream-placeholder p{max-width:620px;color:#d5e2dc;line-height:1.5}.stream-placeholder .button{margin-top:8px}.stream-form{margin-top:18px}

/* SPORTPULS V12.8.9 Livestream rights & reporting */
.stream-rights-box{display:grid;gap:10px;padding:16px;border:1px solid #d8e4de;border-radius:14px;background:#f7faf8}.stream-rights-box .checkline{align-items:flex-start}.legal-mini{font-size:.82rem;color:#68776f;line-height:1.45}.stream-report-link{margin:-4px 0 18px;text-align:right}.stream-report-link a{font-size:.85rem;color:#68776f;text-decoration:underline}

/* SPORTPULS V12.9.0 – Public Frontend: black / red / white */
.landing-v129{background:#080b10;color:#f5f7fa;--sp-red:#ff142d;--sp-red-dark:#c9001b;--sp-black:#080b10;--sp-panel:#0e141c;--sp-panel-2:#111923;--sp-border:#273240;--sp-silver:#d9dde3;--sp-muted:#9ba5b2}
.landing-v129 .landing-header-v129{position:sticky;top:0;z-index:60;min-height:86px;background:rgba(6,9,13,.96);border-bottom:1px solid #202a35;padding:10px clamp(18px,4vw,54px);display:grid;grid-template-columns:minmax(220px,310px) 1fr auto;gap:30px;box-shadow:0 8px 35px rgba(0,0,0,.32);backdrop-filter:blur(18px)}
.landing-logo-link{display:flex;align-items:center;text-decoration:none;min-width:0}.landing-logo-link img{display:block;width:min(100%,285px);height:60px;object-fit:cover;object-position:center;border-radius:5px;filter:contrast(1.06) saturate(1.08)}
.landing-nav-v129{display:flex;align-items:center;justify-content:center;gap:clamp(16px,2.2vw,34px)}.landing-nav-v129 a{position:relative;color:#d9dee5;text-decoration:none;font-size:.94rem;font-weight:650;white-space:nowrap}.landing-nav-v129 a:hover,.landing-nav-v129 a.active{color:#fff}.landing-nav-v129 a.active:after{content:"";position:absolute;left:0;right:0;bottom:-20px;height:3px;background:var(--sp-red);border-radius:3px}
.landing-account-actions{display:flex;align-items:center;gap:12px}.landing-v129 .button{border-radius:8px}.landing-v129 .landing-red{background:linear-gradient(135deg,#ff1933,#e40020);border-color:#ff2840;color:#fff;box-shadow:0 0 24px rgba(255,20,45,.25)}.landing-v129 .landing-red:hover{transform:translateY(-1px);box-shadow:0 0 32px rgba(255,20,45,.4)}.landing-dark-button{background:#0d131b!important;border-color:#44505e!important;color:#fff!important}
.landing-hero-v129{position:relative;overflow:hidden;background:radial-gradient(circle at 77% 24%,rgba(255,255,255,.13),transparent 15%),radial-gradient(circle at 62% 70%,rgba(255,12,38,.18),transparent 28%),linear-gradient(120deg,#05070a 0%,#0a1017 53%,#090c11 100%);padding:74px 0 34px}.landing-hero-v129:before{content:"";position:absolute;inset:auto 0 0;height:38%;background:repeating-linear-gradient(176deg,transparent 0 35px,rgba(255,23,45,.05) 36px 37px),linear-gradient(to top,rgba(220,0,27,.15),transparent);pointer-events:none}.hero-grid-v129{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(440px,.92fr);gap:54px;align-items:center}.hero-copy-v129 h1{font-size:clamp(3.2rem,6vw,6.7rem);line-height:.91;letter-spacing:-.055em;margin:18px 0 24px;color:#fff}.hero-copy-v129 h1 span{color:var(--sp-red)}.hero-copy-v129 .hero-lead{font-size:clamp(1.15rem,1.8vw,1.55rem);line-height:1.45;color:#c5ccd5;max-width:760px}.live-pill{display:inline-flex;align-items:center;gap:9px;padding:8px 14px;border:1px solid #ff3b50;border-radius:999px;background:rgba(255,16,42,.12);color:#fff;font-weight:900;letter-spacing:.06em;box-shadow:0 0 22px rgba(255,20,45,.18)}.live-pill i{width:10px;height:10px;background:#fff;border-radius:50%;box-shadow:0 0 0 5px rgba(255,255,255,.09)}
.hero-brand-visual{position:relative;min-height:410px;display:flex;align-items:center;justify-content:center}.hero-brand-visual:before{content:"";position:absolute;inset:5% 4% 2%;background:radial-gradient(circle at 80% 18%,rgba(255,255,255,.25),transparent 10%),linear-gradient(150deg,rgba(255,255,255,.04),rgba(255,0,32,.08));border:1px solid rgba(255,255,255,.08);border-radius:24px;box-shadow:0 28px 70px rgba(0,0,0,.38)}.hero-brand-visual img{position:relative;width:100%;max-width:640px;border-radius:20px;box-shadow:0 22px 55px rgba(0,0,0,.4)}.hero-emotion-copy{position:absolute;right:-10px;bottom:14px;display:grid;gap:1px;transform:rotate(-5deg);font-family:Georgia,serif;font-style:italic;color:#fff;text-shadow:0 2px 12px #000}.hero-emotion-copy strong{font-size:clamp(1rem,1.5vw,1.35rem);font-weight:500}.hero-emotion-copy strong:last-child{color:#ff3349}
.hero-points-dark{color:#cbd2da}.hero-points-dark span{background:#0d141c;border:1px solid #26313d;border-radius:999px;padding:7px 11px}.landing-feature-strip{position:relative;margin-top:58px;display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.landing-feature-strip article{display:flex;align-items:flex-start;gap:14px;padding:19px 18px;border:1px solid #2a3542;border-radius:11px;background:linear-gradient(145deg,rgba(17,24,33,.95),rgba(8,12,17,.95));min-height:112px}.landing-feature-strip article>span{font-size:1.8rem}.landing-feature-strip article div{display:grid;gap:5px}.landing-feature-strip strong{color:#fff;font-size:1.02rem}.landing-feature-strip small{color:#aab4c1;line-height:1.35}
.landing-light-section{background:#f5f7f9;color:#111821}.landing-dark-section{background:#090d12;color:#f7f8fa;border-top:1px solid #1b242e;border-bottom:1px solid #1b242e}.landing-v129 .landing-section{padding:76px 0}.section-intro.left{text-align:left;max-width:760px;margin-left:0}.eyebrow.red{color:#e70c29}.sport-home-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:44px;align-items:center}.sport-home-grid-v129 article{background:#fff;border:1px solid #dfe4e9;box-shadow:0 12px 28px rgba(17,24,32,.06)}.sport-home-grid-v129 article.available{border-color:#ffabb5;box-shadow:0 12px 30px rgba(255,20,45,.08)}.sport-home-grid-v129 article.available small{color:#c7001b}
.landing-feature-grid-dark article{background:linear-gradient(145deg,#101720,#0b1017);border:1px solid #27313d;color:#f4f6f8;box-shadow:none}.landing-feature-grid-dark article p{color:#aeb8c3}.landing-feature-grid-dark article:hover{border-color:#6a1b28;box-shadow:0 14px 36px rgba(0,0,0,.26)}.landing-feature-grid-dark .feature-icon{filter:none}.steps-grid-v129 article{background:#fff;border:1px solid #dce2e7;color:#151b22}.steps-grid-v129 article>span{background:#0c1118;color:#fff;border:1px solid #2a333d}.steps-grid-v129 article h3{color:#111820}.steps-grid-v129 article p{color:#66717d}
.stream-split-v129 h2{font-size:clamp(2.25rem,4vw,4.4rem);line-height:1}.stream-split-v129 p{color:#c2cad3}.muted-light{color:#8f9aa6!important}.stream-card-v129{background:linear-gradient(145deg,#151c24,#06090d);border:1px solid #303b48;box-shadow:0 25px 60px rgba(0,0,0,.38)}.stream-card-v129 .stream-placeholder{background:radial-gradient(circle,rgba(255,22,47,.23),rgba(8,12,17,.95));color:#fff}.stream-card-v129 .live-dot{background:#ed0a28;color:#fff}.principles-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:0;overflow:hidden;border-radius:20px;background:#090e14;box-shadow:0 24px 60px rgba(0,0,0,.12)}.stadium-message{min-height:300px;padding:48px;display:flex;flex-direction:column;justify-content:flex-end;background:radial-gradient(circle at 40% 15%,rgba(255,255,255,.15),transparent 17%),linear-gradient(135deg,rgba(255,13,42,.17),transparent 45%),repeating-linear-gradient(165deg,#0b1118 0 46px,#111923 47px 48px);color:#fff}.stadium-message span{font-family:Georgia,serif;font-style:italic;font-size:clamp(2rem,4vw,4rem)}.stadium-message strong{font-family:Georgia,serif;font-style:italic;font-size:clamp(2.4rem,5vw,5.2rem);line-height:.95;color:#fff}.principles-list{padding:45px;display:grid;align-content:center;gap:12px;color:#fff}.principles-list p{margin:0;padding-bottom:12px;border-bottom:1px solid #242e39;font-size:1.08rem}.principles-list p::first-letter{color:#ff1733}
.landing-cta-v129{background:linear-gradient(135deg,#070a0f,#131b25);color:#fff;border-top:1px solid #26313d}.landing-cta-v129 h2{font-size:clamp(2.3rem,4vw,4.8rem);margin:12px 0}.landing-footer-v129{background:#040609;border-top:1px solid #202a34;color:#c6cdd5}.landing-footer-v129 .landing-shell{align-items:center}.footer-brand-v129{display:grid;gap:6px}.footer-brand-v129 img{width:245px;height:64px;object-fit:cover;border-radius:5px}.footer-brand-v129 span{font-size:.85rem;color:#8f9aa6}.landing-footer-v129 a:hover{color:#fff}
@media(max-width:1120px){.landing-header-v129{grid-template-columns:240px 1fr}.landing-account-actions{grid-column:2}.landing-nav-v129{grid-row:2;grid-column:1/-1;justify-content:flex-start;overflow:auto;padding-bottom:5px}.landing-nav-v129 a.active:after{bottom:-7px}.hero-grid-v129{grid-template-columns:1fr}.hero-brand-visual{max-width:760px;margin:0 auto;min-height:0}.landing-feature-strip{grid-template-columns:repeat(3,1fr)}.sport-home-layout{grid-template-columns:1fr}.principles-layout{grid-template-columns:1fr}}
@media(max-width:720px){.landing-header-v129{position:relative;display:flex;flex-wrap:wrap;gap:12px;padding:12px 16px}.landing-logo-link{width:100%}.landing-logo-link img{width:235px;height:52px}.landing-account-actions{margin-left:auto}.landing-nav-v129{order:3;width:100%;justify-content:flex-start;gap:19px}.landing-nav-v129 a{font-size:.84rem}.landing-hero-v129{padding-top:45px}.hero-grid-v129{gap:34px}.hero-copy-v129 h1{font-size:clamp(3.1rem,16vw,5rem)}.hero-brand-visual img{border-radius:13px}.hero-emotion-copy{display:none}.landing-feature-strip{grid-template-columns:1fr 1fr;margin-top:35px}.landing-feature-strip article{min-height:0}.sport-home-grid-v129{grid-template-columns:1fr 1fr}.principles-list,.stadium-message{padding:28px}.landing-v129 .landing-section{padding:54px 0}.footer-brand-v129 img{width:205px;height:54px}}
@media(max-width:480px){.landing-feature-strip{grid-template-columns:1fr}.sport-home-grid-v129{grid-template-columns:1fr}.landing-account-actions{width:100%}.landing-account-actions .button{flex:1}.hero-copy-v129 .landing-actions{display:grid;grid-template-columns:1fr}.hero-brand-visual{margin-inline:-8px}.landing-footer-v129 .landing-shell{align-items:flex-start}.landing-footer-v129 nav{display:grid;gap:8px}}
\n/* SPORTPULS V12.10.0 – Frontend consistency & navigation */
html{scroll-behavior:smooth;scroll-padding-top:105px}
.about-sportpuls-v1291{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);gap:44px;align-items:center}.about-sportpuls-v1291 .section-intro p{color:#5f6975;line-height:1.75}.about-values-v1291{display:grid;grid-template-columns:1fr 1fr;gap:12px}.about-values-v1291 article{display:grid;gap:6px;padding:20px;border:1px solid #dde3e8;border-radius:14px;background:#fff;box-shadow:0 10px 26px rgba(10,16,24,.05)}.about-values-v1291 strong{color:#111821}.about-values-v1291 span{color:#69747f;font-size:.92rem;line-height:1.45}
.public-subpage-v1291{background:#f1f3f6;color:#18202a;min-height:100vh}.public-subpage-header{position:sticky;top:0;z-index:50;min-height:78px;padding:9px clamp(18px,4vw,52px);background:#06090d;color:#fff;border-bottom:1px solid #242d38;box-shadow:0 8px 30px rgba(0,0,0,.24)}.public-subpage-logo{display:flex;align-items:center}.public-subpage-logo img{width:225px;height:54px;object-fit:cover;border-radius:5px}.public-subpage-header nav a{color:#d5dbe2}.public-subpage-header nav>a:not(.button):hover{color:#fff}.public-subpage-header .button.ghost{background:#161e28;color:#fff;border:1px solid #394654}.legal-page-v1291{max-width:980px;margin-top:42px;margin-bottom:55px}.legal-page-v1291>.panel{border-radius:18px;border:1px solid #dce2e7;box-shadow:0 16px 45px rgba(10,16,24,.08);padding:clamp(24px,4vw,48px);border-top:4px solid #e6122d}.legal-page-v1291 h1{font-size:clamp(2.1rem,4vw,3.3rem);margin:.25em 0 .65em;color:#101720}.legal-page-v1291 h2{margin-top:2em;color:#141c25}.legal-page-v1291 p{line-height:1.7;color:#4d5965}.legal-page-v1291 .eyebrow{color:#d70c27}.legal-page-v1291 .notice.warning{background:#fff7e6;color:#6c4b00;border:1px solid #f0d99e}.public-subpage-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:28px clamp(18px,4vw,52px);background:#05070a;color:#c9d0d8;border-top:1px solid #242d38}.public-subpage-footer>div{display:grid;gap:4px}.public-subpage-footer strong{color:#fff;font-size:1.1rem}.public-subpage-footer span{font-size:.84rem;color:#8f9aa6}.public-subpage-footer a{text-decoration:none;color:#b8c1cb}.public-subpage-footer a:hover{color:#fff}
.admin-brand-header{background:#06090d!important;color:#fff!important;border-bottom:1px solid #252f3a;box-shadow:0 7px 24px rgba(0,0,0,.18)}.admin-brand-mark{display:flex;align-items:center;gap:8px;font-size:1.03rem;letter-spacing:.01em}.admin-brand-mark small{font-weight:600;color:#aab4c0;font-size:.76rem}.admin-live-dot{width:9px;height:9px;border-radius:50%;background:#f31231;box-shadow:0 0 0 4px rgba(243,18,49,.14),0 0 14px rgba(243,18,49,.5)}.admin-brand-header .admin-platform-nav a{color:#d6dce3}.admin-brand-header .admin-platform-nav a:hover{color:#fff}.admin-brand-header .admin-platform-nav a:last-child{color:#ff6b7e}
@media(max-width:850px){.about-sportpuls-v1291{grid-template-columns:1fr}.public-subpage-header{position:relative}.public-subpage-header nav{width:100%;overflow:auto;flex-wrap:nowrap}.public-subpage-header nav a{white-space:nowrap}.public-subpage-footer{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.about-values-v1291{grid-template-columns:1fr}.public-subpage-logo img{width:190px;height:46px}.public-subpage-header{padding:11px 14px}.legal-page-v1291{padding:0 12px}.legal-page-v1291>.panel{padding:22px 18px}.admin-brand-header{align-items:flex-start}.admin-brand-header .admin-platform-nav{width:100%}}


/* SPORTPULS V12.10.0 – Responsive Mobile Frontend */
html,body{max-width:100%;overflow-x:hidden}
.landing-v129 main,.landing-v129 section,.landing-v129 footer,.landing-v129 header{max-width:100%}
.landing-v129 img{max-width:100%;height:auto}

@media(max-width:900px){
  html{scroll-padding-top:82px}
  .landing-v129 .landing-header-v129{
    position:sticky;top:0;z-index:70;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-rows:auto!important;
    align-items:center;
    gap:10px;
    min-height:76px;
    padding:9px 14px;
    width:100%;
    overflow:hidden;
  }
  .landing-header-v129 .landing-nav-v129{display:none!important}
  .landing-header-v129 .landing-logo-link{
    width:auto!important;min-width:0;max-width:100%;
    overflow:hidden;
  }
  .landing-header-v129 .landing-logo-link img{
    width:min(210px,100%)!important;
    height:auto!important;
    max-height:48px;
    object-fit:contain;
    object-position:left center;
    border-radius:5px;
  }
  .landing-header-v129 .landing-account-actions{
    grid-column:2!important;grid-row:1!important;
    width:auto!important;margin:0!important;
    display:flex;align-items:center;justify-content:flex-end;
    gap:7px;flex-wrap:nowrap;min-width:0;
  }
  .landing-header-v129 .landing-account-actions .button{
    flex:0 0 auto!important;
    min-height:40px;
    padding:8px 11px;
    font-size:.88rem;
    white-space:nowrap;
  }
  .landing-shell{width:min(100% - 28px,1160px)}
  .landing-hero-v129{padding-top:34px}
  .hero-grid-v129{grid-template-columns:minmax(0,1fr);gap:28px}
  .hero-copy-v129{min-width:0}
  .hero-copy-v129 h1{
    font-size:clamp(2.9rem,11.5vw,4.8rem)!important;
    line-height:.96;
    max-width:100%;
    overflow-wrap:normal;
  }
  .hero-copy-v129 h1 span{display:inline}
  .hero-lead{font-size:1rem!important;line-height:1.55}
  .landing-actions{max-width:100%}
  .landing-actions .button{max-width:100%}
  .hero-brand-visual{max-width:100%;min-width:0}
  .landing-feature-strip{max-width:100%}
  .sport-home-layout,.stream-split,.principles-layout,.about-sportpuls-v1291{min-width:0}
  .landing-footer-v129 .landing-shell{
    display:flex!important;flex-direction:column;align-items:center!important;
    justify-content:center;text-align:center;gap:20px;
  }
  .footer-brand-v129{justify-items:center;text-align:center}
  .landing-footer-v129 nav{
    display:flex!important;justify-content:center;align-items:center;
    gap:10px 18px;flex-wrap:wrap;width:100%;max-width:520px;
  }
  .landing-footer-v129 nav a{white-space:nowrap}
}

@media(max-width:620px){
  .landing-v129 .landing-header-v129{padding:8px 10px;gap:6px;min-height:68px}
  .landing-header-v129 .landing-logo-link img{width:min(176px,100%)!important;max-height:43px}
  .landing-header-v129 .landing-account-actions{gap:6px}
  .landing-header-v129 .landing-account-actions .button{padding:8px 9px;font-size:.79rem;min-height:38px}
  .landing-shell{width:calc(100% - 24px)}
  .landing-hero-v129{padding-top:30px;padding-bottom:38px}
  .hero-copy-v129 h1{font-size:clamp(2.65rem,13vw,4rem)!important;letter-spacing:-.045em}
  .hero-lead br{display:none}
  .hero-copy-v129 .landing-actions{display:grid;grid-template-columns:1fr;gap:10px;width:100%}
  .hero-copy-v129 .landing-actions .button{width:100%;min-width:0;text-align:center}
  .hero-brand-visual{display:none}
  .hero-points-dark{gap:7px}
  .hero-points-dark span{font-size:.83rem;padding:6px 9px}
  .landing-feature-strip{grid-template-columns:1fr!important;margin-top:28px;gap:10px}
  .landing-feature-strip article{padding:15px 16px}
  .landing-v129 .landing-section{padding:46px 0}
  .section-intro h2,.stream-split-v129 h2{font-size:clamp(2rem,10vw,3rem)!important}
  .sport-home-grid-v129{grid-template-columns:1fr!important}
  .steps-grid-v129,.landing-feature-grid-dark{grid-template-columns:1fr!important}
  .stadium-message,.principles-list{padding:24px!important}
  .stadium-message{min-height:220px}
  .landing-cta-v129{padding:52px 0}
  .landing-cta-v129 h2{font-size:clamp(2.2rem,10vw,3.3rem);line-height:1.05}
  .landing-cta-v129 .landing-actions{display:grid;grid-template-columns:1fr;width:100%;max-width:360px;margin-inline:auto}
  .landing-cta-v129 .button{width:100%}
  .landing-footer-v129{padding:28px 0 34px}
  .footer-brand-v129 img{width:min(220px,82vw)!important;height:auto!important}
  .landing-footer-v129 nav{display:grid!important;grid-template-columns:1fr 1fr;gap:11px 16px;max-width:340px}
  .landing-footer-v129 nav a{font-size:.88rem;text-align:center}
  .landing-footer-v129 nav a:last-child{grid-column:1/-1}
}

@media(max-width:420px){
  .landing-v129 .landing-header-v129{grid-template-columns:minmax(118px,1fr) auto!important}
  .landing-header-v129 .landing-logo-link img{width:min(150px,100%)!important}
  .landing-header-v129 .landing-account-actions .button{padding:7px 8px;font-size:.73rem;min-height:36px}
  .hero-copy-v129 h1{font-size:clamp(2.45rem,12.5vw,3.35rem)!important}
}

@media(max-width:355px){
  .landing-header-v129 .landing-logo-link img{width:126px!important}
  .landing-header-v129 .landing-account-actions .button{padding:7px 6px;font-size:.68rem}
}


/* SPORTPULS V12.10.0 – Hero/Footer polish + Teamkalender */
.hero-grid-v129{align-items:center}
.hero-brand-visual{min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:12px 0}
.hero-brand-visual:before{display:none!important}
.hero-brand-visual img{width:min(100%,560px);height:auto;object-fit:contain;border-radius:18px;box-shadow:0 22px 55px rgba(0,0,0,.42)}
.hero-emotion-copy{position:static!important;right:auto!important;bottom:auto!important;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px;transform:none!important;width:100%;text-align:center}
.hero-emotion-copy strong{font-size:1rem!important}
.footer-brand-v129{display:flex!important;flex-direction:column;align-items:flex-start;gap:8px}
.footer-brand-v129 img{width:min(285px,100%)!important;height:auto!important;object-fit:contain!important;object-position:left center!important;border-radius:6px}
.footer-brand-v129 span{line-height:1.35;white-space:normal}

.calendar-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:20px;align-items:start}
.calendar-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.calendar-form .span-2{grid-column:1/-1}.calendar-form textarea{min-height:92px;resize:vertical}
.calendar-list{display:grid;gap:12px}.calendar-event{display:grid;grid-template-columns:82px minmax(0,1fr) auto;gap:14px;align-items:start;padding:16px;border:1px solid #dfe5e8;border-radius:16px;background:#fff}
.calendar-date{display:grid;justify-items:center;border-radius:13px;background:#f1f4f6;padding:9px 7px;line-height:1}.calendar-date strong{font-size:1.45rem}.calendar-date span{font-size:.73rem;text-transform:uppercase;color:#687883;margin-top:4px}.calendar-date small{margin-top:6px;color:#89959d}
.calendar-event-main{display:grid;gap:5px;min-width:0}.calendar-event-main h3{margin:0;font-size:1.08rem}.calendar-event-meta{display:flex;gap:8px 14px;flex-wrap:wrap;color:#5f6f79;font-size:.9rem}.calendar-event-notes{margin-top:5px;color:#697780;font-size:.88rem;line-height:1.45}.calendar-event-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.calendar-type{display:inline-flex;width:max-content;padding:4px 8px;border-radius:999px;background:#eef2f4;color:#53636d;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.calendar-type.match{background:#ffe8eb;color:#a90e27}.calendar-type.training{background:#e8f2ff;color:#175d9b}.calendar-type.tournament{background:#fff2ce;color:#7b5a00}
.calendar-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.calendar-toolbar h2{margin:0}.push-check{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border-radius:12px;background:#f4f7f8}.push-check input{margin-top:3px}
@media(max-width:900px){.calendar-layout{grid-template-columns:1fr}.footer-brand-v129{align-items:center!important;text-align:center!important}.hero-emotion-copy{display:none!important}}
@media(max-width:620px){.calendar-form{grid-template-columns:1fr}.calendar-form .span-2{grid-column:auto}.calendar-event{grid-template-columns:64px minmax(0,1fr)}.calendar-event-actions{grid-column:1/-1;justify-content:flex-start}.calendar-date strong{font-size:1.25rem}.footer-brand-v129 img{width:min(270px,86vw)!important}.footer-brand-v129 span{font-size:.9rem!important;text-align:center}.landing-footer-v129 .landing-shell{gap:16px!important}}


/* SPORTPULS V12.10.0 – Vereinsgrün statt Pay-TV-Look
   Grün trägt die Plattform; Rot bleibt exklusiv für echte LIVE-Signale. */
.landing-v129{
  --sp-green:#0f7a4d;
  --sp-green-strong:#0a653f;
  --sp-green-dark:#0b2e24;
  --sp-green-deep:#071f19;
  --sp-green-soft:#eaf5ef;
  --sp-green-line:#cfe3d8;
  --sp-red:#ef1734;
  --sp-red-dark:#c90927;
  --sp-black:#071f19;
  --sp-panel:#10382d;
  --sp-panel-2:#154638;
  --sp-border:#31584a;
  --sp-silver:#e7eee9;
  --sp-muted:#aec2b8;
  background:#f5f8f6;
  color:#17231d;
}
.landing-v129 .landing-header-v129{
  background:rgba(7,31,25,.97);
  border-bottom-color:#274c3e;
  box-shadow:0 8px 30px rgba(6,37,27,.22);
}
.landing-nav-v129 a{color:#d5e5dc!important}
.landing-nav-v129 a:hover{color:#fff!important}
.landing-nav-v129 a.active{color:#fff!important}
.landing-nav-v129 a.active:after{background:#29a76c!important}
.landing-v129 .landing-red{
  background:linear-gradient(135deg,#168754,#0d6e46);
  border-color:#2b9d68;
  color:#fff;
  box-shadow:0 8px 24px rgba(10,101,63,.24);
}
.landing-v129 .landing-red:hover{box-shadow:0 10px 30px rgba(10,101,63,.34)}
.landing-dark-button{background:#143b30!important;border-color:#55796b!important;color:#fff!important}
.landing-v129 .landing-account-actions .button.ghost{background:#f5faf7!important;color:#153c30!important;border-color:#d7e7df!important}

.landing-hero-v129{
  background:
    radial-gradient(circle at 77% 24%,rgba(255,255,255,.12),transparent 15%),
    radial-gradient(circle at 64% 70%,rgba(28,151,94,.20),transparent 31%),
    linear-gradient(120deg,#071f19 0%,#0c3026 50%,#10382d 100%);
}
.landing-hero-v129:before{
  background:repeating-linear-gradient(176deg,transparent 0 35px,rgba(57,169,111,.055) 36px 37px),linear-gradient(to top,rgba(20,116,74,.18),transparent);
}
.hero-copy-v129 h1{color:#fff}
.hero-copy-v129 h1 .team-accent{color:#44c17e}
.hero-copy-v129 h1 .live-word{color:#fff}
.hero-copy-v129 .hero-lead{color:#d1ded7}
/* Rot bewusst nur für LIVE */
.live-pill{border-color:#f34a60;background:rgba(239,23,52,.12);box-shadow:0 0 22px rgba(239,23,52,.18)}
.hero-points-dark{color:#d8e5de}
.hero-points-dark span{background:#10382d;border-color:#31584a}
.hero-brand-visual img{box-shadow:0 22px 55px rgba(3,25,18,.40)}

.landing-feature-strip article{
  border-color:#31584a;
  background:linear-gradient(145deg,rgba(18,62,49,.97),rgba(8,39,30,.97));
}
.landing-feature-strip small{color:#bed0c7}
.landing-light-section{background:#f4f8f5;color:#17231d}
.landing-dark-section{background:#0b2e24;color:#f7fbf9;border-top-color:#31584a;border-bottom-color:#31584a}
.eyebrow.red{color:#11794c}
.sport-home-grid-v129 article{border-color:#d7e5dd;box-shadow:0 12px 28px rgba(15,73,50,.06)}
.sport-home-grid-v129 article.available{border-color:#7fc29f;background:#f1faf5;box-shadow:0 12px 30px rgba(15,122,77,.10)}
.sport-home-grid-v129 article.available small{color:#0d7247}
.landing-feature-grid-dark article{background:linear-gradient(145deg,#123c30,#0b2e24);border-color:#31584a;color:#f5faf7}
.landing-feature-grid-dark article p{color:#c2d3ca}
.landing-feature-grid-dark article:hover{border-color:#4e9f78;box-shadow:0 14px 36px rgba(3,30,21,.25)}
.steps-grid-v129 article>span{background:#0f7a4d;border-color:#2c9363}
.stream-split-v129 p{color:#cbdad2}.muted-light{color:#a8bbb1!important}
.stream-card-v129{background:linear-gradient(145deg,#164235,#08271f);border-color:#3b6554;box-shadow:0 25px 60px rgba(4,29,21,.30)}
.stream-card-v129 .stream-placeholder{background:radial-gradient(circle,rgba(239,23,52,.18),rgba(7,31,25,.96))}
/* LIVE-Punkt bleibt rot */
.stream-card-v129 .live-dot{background:#e91531;color:#fff}

.principles-layout{background:#0b2e24;box-shadow:0 24px 60px rgba(9,65,43,.12)}
.stadium-message{background:radial-gradient(circle at 40% 15%,rgba(255,255,255,.14),transparent 17%),linear-gradient(135deg,rgba(44,166,104,.20),transparent 48%),repeating-linear-gradient(165deg,#0a2d23 0 46px,#10382d 47px 48px)}
.principles-list p{border-bottom-color:#31584a}
.principles-list p::first-letter{color:#40bd7a}
.landing-cta-v129{background:linear-gradient(135deg,#0b2e24,#154638);border-top-color:#31584a}
.landing-footer-v129{background:#071f19;border-top-color:#294d3f;color:#d6e4dc}
.footer-brand-v129 span{color:#9fb8ab}
.landing-footer-v129 a:hover{color:#fff}

/* Öffentliche Unterseiten im gleichen Markenbild */
.public-subpage-v1291{background:#f3f7f5;color:#17231d}
.public-subpage-header{background:#071f19;border-bottom-color:#294d3f;box-shadow:0 8px 28px rgba(4,35,24,.22)}
.public-subpage-header .button.ghost{background:#123b30;color:#fff;border-color:#426b59}
.legal-page-v1291>.panel{border-color:#d6e4dc;border-top-color:#0f7a4d;box-shadow:0 16px 45px rgba(7,69,45,.08)}
.legal-page-v1291 h1,.legal-page-v1291 h2{color:#16362b}
.legal-page-v1291 .eyebrow{color:#0f7a4d}
.public-subpage-footer{background:#071f19;border-top-color:#294d3f;color:#d6e4dc}
.public-subpage-footer span{color:#9fb8ab}.public-subpage-footer a{color:#bfd2c8}

/* Superadmin: nur Markenleiste an das neue SPORTPULS-Grün angleichen */
.admin-brand-header{background:#071f19!important;border-bottom-color:#294d3f;box-shadow:0 7px 24px rgba(5,43,30,.18)}
.admin-brand-header .admin-platform-nav a{color:#d7e6de}.admin-brand-header .admin-platform-nav a:last-child{color:#78cfa1}
/* der echte LIVE-Indikator bleibt rot */
.admin-live-dot{background:#ef1734;box-shadow:0 0 0 4px rgba(239,23,52,.14),0 0 14px rgba(239,23,52,.45)}

/* Teamkalender passend zum Markenbild */
.calendar-event{border-color:#d8e5de}.calendar-date{background:#edf5f0}.calendar-event-meta{color:#586c62}.calendar-type.match{background:#e7f5ed;color:#0b6c43}.push-check{background:#edf5f0}

@media(max-width:900px){
  .landing-v129 .landing-header-v129{background:#071f19}
}

/* SPORTPULS V12.10.0 */
.privacy-options{display:grid;gap:12px}.privacy-card{display:flex;gap:12px;align-items:flex-start;padding:16px;border:1px solid #d8e7de;border-radius:14px;background:#fff}.privacy-card input{margin-top:5px}.privacy-card span{display:grid;gap:4px}.privacy-card small{color:#60736a}.access-gate{text-align:center;margin-top:10vh}.access-gate form{display:grid;gap:12px;text-align:left}.rollover-summary{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center;padding:16px;border-radius:14px;background:#eef7f1;margin-bottom:18px}.rollover-summary div{display:grid;gap:4px}.substitution-box{margin-top:16px}.substitution-history{display:grid;gap:6px;margin-top:12px;font-size:.92rem;color:#4f6258}.public-event-list{display:grid;gap:10px}.public-event-row{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #e6eee9}.public-event-row:last-child{border-bottom:0}
@media(max-width:700px){.rollover-summary{grid-template-columns:1fr;text-align:center}.rollover-summary>span{transform:rotate(90deg)}.public-event-row{display:grid;gap:3px}}
