@import url('fonts/fonts.css');
:root{--ink:#172a29;--muted:#4b5e50;--green:#22755a;--line:#e4e9e5;--bg:#f7f8f5}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px 'DM Sans',Arial,sans-serif}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer}button{border:0}a{color:inherit;text-decoration:none}.sidebar{position:fixed;inset:0 auto 0 0;width:245px;background:#fff;border-right:1px solid var(--line);padding:34px 22px 0;display:flex;flex-direction:column}.brand{font:800 32px 'Manrope',sans-serif;letter-spacing:-1.8px;display:flex;align-items:center;gap:9px}.brand-icon{display:grid;place-items:center;width:38px;height:38px;background:var(--green);color:white;border-radius:11px;font-size:29px;letter-spacing:-3px;padding-right:4px}.dot{color:var(--green);margin-left:-9px}.workspace{display:flex;gap:11px;align-items:center;margin:37px 0 33px;padding:13px 9px;background:#f5f7f3;border:1px solid var(--line);border-radius:9px}.club{background:#e5ebdd;display:grid;place-items:center;width:35px;height:39px;clip-path:polygon(0 0,100% 0,100% 76%,50% 100%,0 76%);font-weight:bold;color:#6b7951}small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.workspace b{font-size:12px}.nav-label{font-size:10px;letter-spacing:1.6px;color:#4b5e50;margin:0 10px 14px}nav button{display:flex;align-items:center;gap:13px;width:100%;padding:14px 12px;margin-bottom:7px;background:transparent;text-align:left;color:#4b5e50;border-radius:7px;font-size:13px}nav button.active{background:#e9f2ec;color:#246c50;font-weight:700}nav button>span{font-size:20px;width:20px;text-align:center}nav i{margin-left:auto;font-style:normal;font-size:11px}.side-bottom{margin-top:auto;padding:30px 12px 24px}.side-bottom h3{font-family:Manrope;font-size:20px;line-height:1.5;letter-spacing:-.6px}.side-bottom p{font-size:11px;line-height:1.8;color:#4b5e50}.region{font-size:10px;color:#4b5e50}.mini-pitch{width:64px;height:40px;border:1px solid #aab9a6;border-radius:3px;position:relative;transform:rotate(-9deg)}.mini-pitch:after{content:'';position:absolute;left:50%;height:100%;border-left:1px solid #aab9a6}.mini-pitch div{border:1px solid #aab9a6;border-radius:50%;width:19px;height:19px;position:absolute;left:22px;top:9px}.profile{padding:19px 2px;border-top:1px solid var(--line);display:flex;align-items:center;gap:10px;font-size:12px}.profile>span:first-child,.avatar{background:#f0e9dc;border-radius:50%;height:34px;width:34px;display:grid;place-items:center;font-size:11px;color:#7b715b}.settings{margin-left:auto;color:#4b5e50}.app{margin-left:245px}header{height:83px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 45px;background:#fff}.breadcrumb{font-size:12px;color:#4b5e50}.breadcrumb span{padding:0 15px;color:#637366}.breadcrumb b{font-weight:500;color:#43544a}.header-right{display:flex;align-items:center;gap:20px}.demo-pill{font-size:10px;border:1px solid #e0e5dc;padding:7px 10px;border-radius:5px;color:#4b5e50}main{max-width:1460px;margin:auto;padding:37px 45px 0}.heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:31px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#4b5e50}h1{font:800 29px Manrope,sans-serif;letter-spacing:-1.1px;margin:10px 0}p{color:var(--muted);line-height:1.7}.heading p{margin:0;font-size:13px}.primary{background:var(--green);color:white;border-radius:7px;padding:13px 19px;font-weight:600;font-size:12px;white-space:nowrap}.primary:hover{background:#18583f}.hero{min-height:256px;border-radius:12px;background:#e9eedf;display:flex;overflow:hidden;position:relative;border:1px solid #e2e7d7}.hero-copy{padding:29px 32px;z-index:1;min-width:49%}.hero-label{font-size:9px;letter-spacing:1.8px;color:#485b36;font-weight:700}.hero h2{font:800 34px/1.22 Manrope,sans-serif;letter-spacing:-1.4px;margin:15px 0 12px}.hero p{font-size:12px;color:#4b5e50;line-height:1.8;margin:0 0 17px}.hero a{font-size:11px;font-weight:700;color:#3d6142}.hero a span{margin-left:25px}.pitch-art{flex:1;position:relative;display:grid;place-items:center;background:radial-gradient(ellipse,#d5dfbc 0,transparent 68%)}.field{width:325px;height:182px;background:repeating-linear-gradient(90deg,#becd9f 0px,#becd9f 45px,#c8d4ac 45px,#c8d4ac 90px);border:2px solid #e8efdb;outline:12px solid #ccd7b5;transform:rotate(-12deg) skew(8deg);border-radius:4px;box-shadow:0 25px 35px #65774726;position:relative}.field:before{content:'';position:absolute;height:100%;left:50%;border-left:2px solid #e9efdb}.center{position:absolute;width:65px;height:65px;border:2px solid #e9efdb;border-radius:50%;top:56px;left:128px}.goal{position:absolute;width:43px;height:94px;top:42px;border:2px solid #e9efdb}.left{left:0;border-left:0}.right{right:0;border-right:0}.player{position:absolute;border-radius:50%;background:#235c43;border:4px solid #f3f7e7;box-shadow:0 7px 10px #283d3428;width:39px;height:39px;display:grid;place-items:center;font-weight:bold;font-size:10px;color:white;z-index:2}.p1{left:61px;top:40px}.p2{left:166px;top:119px}.p3{right:37px;top:28px;background:#f6f7e8;color:#60784f;border-color:#99ae78}.ball{position:absolute;left:145px;top:64px;font-size:24px;z-index:3}.pass{position:absolute;width:100px;height:65px;border:2px dashed #658655;border-left:0;border-bottom:0;left:88px;top:62px;transform:rotate(20deg);border-radius:50%}.art-chip{position:absolute;bottom:23px;right:26px;background:#fffffff0;padding:10px 13px;border-radius:7px;font-size:9px;color:#53704a;box-shadow:0 5px 20px #596f4012}.section-line{display:flex;justify-content:space-between;align-items:center;margin:32px 0 18px;gap:12px}.section-line h2{font:800 18px Manrope;letter-spacing:-.4px;margin:0}.section-line h2 span{font:500 11px 'DM Sans';padding:4px 7px;border-radius:5px;background:#e9eee7;margin-left:7px;color:#4b5e50}.section-line p{font-size:11px;margin:7px 0 0}.text-button{background:none;color:#2c7256;font-size:11px;font-weight:700}.filters{display:flex;gap:10px}.filters label{display:flex;flex-direction:column;border:1px solid #dfe5dd;background:white;border-radius:7px;padding:8px 12px;flex:1;min-width:0}.filters label>span{font-size:9px;color:#4b5e50;margin-bottom:3px}.filters select,.filters input{width:100%;background:none;border:0;color:#405347;font-size:12px;padding:1px 0}.filters label.search{flex:1.6;flex-direction:row;align-items:center;gap:9px}.search>span{font-size:23px!important}.search input::placeholder{color:#4b5e50;font-size:11px}.result-bar{display:flex;align-items:center;justify-content:space-between;margin:17px 0;font-size:10px;color:#4b5e50}.toggle-label{display:flex;align-items:center;gap:8px;cursor:pointer}.toggle-label input{position:absolute;opacity:0}.toggle{width:25px;height:14px;border-radius:20px;background:#d8dfd4;padding:2px}.toggle:after{content:'';display:block;width:10px;height:10px;background:white;border-radius:50%;transition:.2s}.toggle-label input:checked+.toggle{background:var(--green)}.toggle-label input:checked+.toggle:after{transform:translateX(11px)}.toggle-label input:focus-visible+.toggle{outline:2px solid var(--green)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.team-card{padding:20px;background:#fff;border:1px solid var(--line);border-radius:9px;transition:.2s}.team-card:hover{border-color:#a6baa7;transform:translateY(-2px);box-shadow:0 6px 17px #1c3a2310}.card-top{display:flex;justify-content:space-between;align-items:start}.crest{width:44px;height:50px;clip-path:polygon(0 0,100% 0,100% 73%,50% 100%,0 73%);display:grid;place-items:center;color:white;font-size:14px;font-weight:800;background:var(--team-color);border-top:4px solid #ffffff55}.status{font-size:9px;background:#eef5e9;color:#3b602c;padding:5px 7px;border-radius:4px}.status.quiet{background:#f3f4f2;color:#4b5e50}.team-card h3{font:800 15px Manrope;margin:17px 0 5px;letter-spacing:-.3px}.location{font-size:10px;color:#4b5e50}.tags{display:flex;gap:6px;margin:15px 0 17px}.tag{font-size:9px;background:#f5f6f2;border:1px solid #e9ece4;border-radius:4px;padding:5px 7px;color:#4b5e50}.card-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:13px;border-top:1px solid #edf0e9;gap:7px}.card-bottom>span{font-size:9px;color:#4b5e50}.invite-button{font-size:10px;border:1px solid #d5dfd2;border-radius:5px;background:#fff;padding:8px 10px;color:#356849;font-weight:700}.invite-button:hover{background:#edf4eb}.sponsor{margin-top:24px;background:#f1f0e8;border:1px solid #e7e6dc;border-radius:9px;padding:23px 27px;display:flex;align-items:center;position:relative;overflow:hidden;gap:15px}.ad-label{font-size:8px;letter-spacing:1.5px;color:#4b5e50}.sponsor h3{font:800 17px Manrope;margin:9px 0 3px}.sponsor p{font-size:11px;margin:0;color:#4b5e50}.sponsor button{margin-left:auto;margin-right:75px;z-index:1;border:1px solid #d8dacb;background:transparent;padding:10px 15px;border-radius:5px;font-size:10px;color:#4c604a;white-space:nowrap}.sponsor-art{position:absolute;right:15px;bottom:-40px;font-size:150px;line-height:1;color:#e3e5d5}footer{display:flex;align-items:center;gap:15px;padding:27px 0;color:#4b5e50;font-size:10px}footer b{font:800 19px Manrope;letter-spacing:-1px;color:#65745d}footer button{margin-left:auto;font-size:10px;color:#4b5e50;background:none}dialog{border:1px solid var(--line);border-radius:15px;padding:27px;width:490px;max-width:92vw;max-height:88vh;box-shadow:0 24px 100px #142e3433;color:var(--ink)}dialog::backdrop{background:#182c2866;backdrop-filter:blur(3px)}.modal-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}.modal-head h2{font:800 21px Manrope;margin:0}.close{font-size:25px;color:#4b5e50;background:transparent}.form{display:grid;gap:15px}.form label{font-size:12px;display:grid;gap:7px}.form input,.form select,.form textarea{padding:11px;border:1px solid #d8dfd4;background:#fafbf8;border-radius:6px;font:inherit;width:100%;color:var(--ink)}.form textarea{min-height:80px}.form .note,.note{font-size:11px;color:#4b5e50;line-height:1.7;background:#f0f4ec;padding:12px;border-radius:6px}.form .primary{padding:13px}.empty{grid-column:1/-1;padding:40px;text-align:center;background:white;border:1px dashed #cbd6c4;border-radius:9px}.empty p{font-size:12px}.list-card{background:white;border:1px solid var(--line);padding:23px;border-radius:9px;margin-bottom:14px;display:flex;justify-content:space-between;gap:20px;align-items:center}.list-card h3{font:800 17px Manrope;margin:0 0 8px}.list-card p{font-size:12px;margin:0}.list-card small{margin:7px 0}.list-card .actions{display:flex;gap:8px}.date-tile{min-width:61px;padding:12px;background:#ecf1e5;border-radius:7px;text-align:center;color:#456342;font-weight:700}.date-tile span{font-size:22px;display:block}.list-main{flex:1}#toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%) translateY(100px);padding:14px 22px;border-radius:8px;background:#214f3d;color:white;font-size:12px;opacity:0;transition:.3s;z-index:10;max-width:90vw}#toast.show{transform:translateX(-50%);opacity:1}.page-intro{margin-bottom:24px;font-size:12px;color:#4b5e50}.tabs{display:flex;gap:10px;margin-bottom:22px}.tabs button{padding:10px 16px;background:#e7efe1;color:#4a6840;border-radius:5px}.line-info{padding:12px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;font-size:12px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}[hidden]{display:none!important}@media(min-width:1500px){main{padding-top:45px}.hero{min-height:280px}.team-card{padding:25px}}@media(max-width:1150px){.sidebar{width:210px;padding:28px 16px 0}.app{margin-left:210px}main{padding:28px 26px 0}header{padding:0 26px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero h2{font-size:30px}.field{width:260px;height:165px}.center{left:99px;top:49px}.hero-copy{padding:26px}.heading h1{font-size:25px}.hero-label{font-size:8px}.sponsor button{margin-right:35px}}@media(max-width:760px){.sidebar{position:static;width:100%;padding:16px;display:block;border-bottom:1px solid var(--line)}.brand{font-size:25px}.brand-icon{width:32px;height:32px}.workspace,.nav-label,.side-bottom,.profile{display:none}nav{display:flex;gap:4px;margin-top:16px;overflow-x:auto}nav button{font-size:10px;padding:10px 8px;white-space:nowrap;width:auto;margin:0;gap:4px}nav button>span{font-size:15px}nav i{display:none}.app{margin:0}header{height:54px;padding:0 20px}.breadcrumb{font-size:10px}.demo-pill{font-size:9px}.avatar{display:none}main{padding:24px 18px 0}.heading{align-items:start;flex-wrap:wrap;margin-bottom:22px}.heading h1{font-size:25px}.heading p{font-size:12px}.hero{min-height:240px}.hero-copy{padding:25px;width:100%}.hero h2{font-size:31px}.pitch-art{position:absolute;right:-130px;bottom:38px;opacity:.27;width:300px}.art-chip{display:none}.hero-copy p{font-size:11px}.section-line{align-items:start}.section-line h2{font-size:16px}.section-line p{max-width:230px;font-size:10px}.text-button{font-size:10px;max-width:105px;text-align:right;line-height:1.8}.filters{display:grid;grid-template-columns:1fr 1fr}.filters label.search{grid-column:1/-1;padding:13px}.filters label:last-child{grid-column:1/-1}.result-bar>span{display:none}.grid{gap:10px}.team-card{padding:14px}.team-card h3{font-size:13px}.card-bottom{flex-wrap:wrap;gap:10px}.card-bottom button{width:100%}.status{font-size:8px;padding:4px}.crest{width:34px;height:40px;font-size:11px}.tags{flex-wrap:wrap;gap:4px}.tag{font-size:8px;padding:4px}.location{font-size:9px}.sponsor{padding:20px;flex-wrap:wrap}.sponsor button{margin:0}.sponsor h3{font-size:16px}.sponsor p{max-width:230px}footer{flex-wrap:wrap;font-size:9px;gap:10px}.list-card{padding:17px;flex-wrap:wrap}.list-card h3{font-size:15px}.list-card .actions{width:100%}.list-card .actions button{flex:1}.date-tile{display:none}}

/* Readability: consistent dark secondary text across desktop and mobile. */
body{--muted:#4b5e50;--ink:#132a22}
.heading p,.hero p{font-size:14px}
.section-line p,.location,.card-bottom>span,.tag,.status,.result-bar,.text-button,.invite-button,.filters select,.filters input,.sponsor p,.sponsor button,.list-card small{font-size:12px}
.filters label>span,.search input::placeholder,.demo-pill,.nav-label,.region,.ad-label,footer,footer button,small,.side-bottom p,.hero-label,.hero a,.art-chip{font-size:11px}
.filters select,.filters input{font-weight:500}.filters label{padding:10px 12px}.filters{gap:10px}
.team-card h3{font-size:16px}.tag{color:#40553c}.status.quiet{color:#4b5e50}.team-card .status{font-weight:600;font-size:11px}
.invite-button{color:#20553a;border-color:#a9bba7;font-weight:700}.primary{background:#1e654c;font-size:13px}.text-button{color:#20553a}
.brand{gap:10px;letter-spacing:-1.6px}.brand-icon{padding:0;background:transparent;border-radius:0;width:45px;height:48px;flex:none}.brand-icon svg{width:100%;height:100%;display:block}
.brand .dot{color:#22755a}.brand:focus-visible{outline:2px solid #22755a;border-radius:4px}.footer-mark{display:flex;align-items:center;gap:7px}.footer-mark img{width:24px;height:27px}
@media(max-width:760px){.brand-icon{width:36px;height:39px}.heading p,.hero p{font-size:13px}.section-line p{font-size:11px}.team-card h3{font-size:14px}.team-card .status{font-size:10px}.card-top{flex-wrap:wrap;gap:8px}.location,.tag,.card-bottom>span{font-size:11px}.sponsor p{font-size:12px}.text-button{font-size:11px}.side-bottom p{font-size:11px}}

/* High-contrast reading mode: text is black, green is reserved for surfaces. */
:root{--ink:#111111;--muted:#111111}
body{color:#111111;--ink:#111111;--muted:#111111}
body :is(p,small,label,h1,h2,h3,h4,a,button,input,select,textarea,b,i,span,div){color:#111111}
body :is(p,small,label,input,select,textarea){font-weight:500}
body :is(.breadcrumb,.breadcrumb b,.breadcrumb span,.nav-label,.demo-pill,.eyebrow,.hero-label,.hero p,.hero a,.art-chip,.section-line p,.text-button,.filters label>span,.filters select,.filters input,.result-bar,.location,.tag,.status,.status.quiet,.card-bottom>span,.invite-button,.ad-label,.sponsor p,.sponsor button,.region,.side-bottom p,.settings,.note,.form .note,.page-intro,footer,footer button){color:#111111;font-size:13px;line-height:1.6}
body .filters input::placeholder{color:#222222;opacity:1;font-size:13px}
body nav button,body nav button.active{color:#111111;font-size:14px;font-weight:600}
body small{font-size:13px;color:#111111}
body .heading p,body .hero p,body .list-card p{font-size:15px}
body .team-card .status{font-size:12px;color:#111111}
body .card-bottom{flex-wrap:wrap;gap:10px}
body .card-bottom>span{font-size:12px}
body .invite-button{font-size:13px;font-weight:700}
body .filters label>span{font-size:12px}
body .team-card h3{font-size:17px}
body .tag{font-size:12px}
body .primary,body .primary span{color:#ffffff;background:#174d3b;font-weight:700}
body .crest,body .player,body #toast{color:#ffffff}
body .player.p3{color:#111111}
body .brand,body .brand .dot,body .footer-mark{color:#111111}
body .sponsor-art{color:#dfe3d4}
body .brand-icon{color:inherit}
body .card-top{flex-wrap:wrap;gap:8px}
@media(max-width:760px){body nav button{font-size:12px}body .team-card h3{font-size:15px}body .heading p,body .hero p{font-size:14px}body .section-line{flex-wrap:wrap}body .text-button{max-width:none;text-align:left}body .card-bottom .invite-button{font-size:12px}body .team-card .status{font-size:11px}}
/* Vereinsverwaltung und rollenbezogene Mannschaftsübersicht. */
.role-switch{display:flex;align-items:center;gap:10px;font-size:12px!important}.role-switch select{border:1px solid #b8c6ba;background:#fff;border-radius:6px;padding:9px;font-size:13px!important;max-width:220px}.club-banner{background:#e9eedf;border:1px solid #d1dbc7;border-radius:12px;padding:26px 28px;display:flex;align-items:center;justify-content:space-between;gap:18px}.club-banner h2{font:800 28px Manrope;margin:10px 0}.club-banner p{margin:0}.club-actions{display:flex;flex-wrap:wrap;gap:10px}.club-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0}.club-stats>div{background:white;border:1px solid var(--line);border-radius:8px;padding:20px;display:flex;align-items:center;gap:15px}.club-stats b{font:800 28px Manrope}.club-stats span{font-size:13px}.club-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.coach-list{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0;min-height:28px;font-size:13px}.coach-chip{padding:6px 10px;background:#edf1e7;border-radius:5px;border:1px solid #d2dccb}.check-row{display:flex!important;align-items:center;gap:10px!important;padding:12px;border:1px solid var(--line);border-radius:5px}.check-row input{width:18px!important;height:18px}.subheading{font:800 20px Manrope;margin:27px 0 17px}.club-grid .team-card p{font-size:13px}.list-main h3{margin-top:9px}.club-banner+.note{font-size:13px}.sidebar .workspace b{font-size:12px}
@media(max-width:760px){header{height:auto;min-height:65px;gap:10px;padding:12px 18px}.role-switch{flex-direction:column;align-items:flex-start;gap:3px}.role-switch select{max-width:175px;font-size:12px!important}.club-banner{padding:20px;flex-wrap:wrap}.club-banner h2{font-size:24px}.club-grid{grid-template-columns:1fr}.club-stats{gap:7px}.club-stats>div{padding:12px;display:block}.club-stats span{display:block;font-size:11px;margin-top:5px}.club-actions{width:100%}.club-actions button{flex:1}.breadcrumb{font-size:11px}.breadcrumb span{padding:0 5px}.heading h1{font-size:24px}}
.access-trainer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 0;border-top:1px solid #dce4d6}.access-trainer small{margin-top:5px}.access-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.remove-coach{background:#fff3ed;color:#111!important;border:1px solid #c19a89;padding:9px 12px;border-radius:5px;font-size:12px}.access-trainers{margin:15px 0}.access-card .card-top strong{font-size:19px}.access-card button:disabled{opacity:1;background:#eef0eb;color:#4d554c!important;cursor:not-allowed;border:1px solid #bdc6b7}.price-preview{background:#edf2e5;border:1px solid #c1cfb4;padding:18px;border-radius:8px;display:grid;gap:8px}.price-preview b{font-size:29px}.price-preview span{font-size:13px}

/* Keep tablet cards and long names within the available content width. */
.club-grid>*{min-width:0}.access-trainer{flex-wrap:wrap}.access-trainer>div,.list-main{min-width:0;overflow-wrap:anywhere}.access-actions{max-width:100%}.club-stats>div{min-width:0;flex-wrap:wrap}.club-banner>div{min-width:0;overflow-wrap:anywhere}.invitation-message{white-space:pre-wrap;overflow-wrap:anywhere}

/* Vereinskonto-Link, eigene Teams in der Suche, Footer-Links, Handy-Navigation. */
.konto-link{font-weight:700;font-size:13px;border:1px solid #a9bba7;border-radius:6px;padding:9px 12px;background:#fff;white-space:nowrap}.konto-link:hover{background:#edf4eb}
.settings{text-decoration:none;font-size:16px}
.team-card.own-team{background:#f6f8f2}
.footer-links{display:flex;gap:16px;margin-left:auto}.footer-links a{text-decoration:underline}.footer-links+button{margin-left:0}
@media(max-width:1150px){.konto-link span{display:none}.header-right{gap:12px}.role-switch select{max-width:180px}}
@media(max-width:760px){nav{flex-wrap:wrap;overflow:visible}.konto-link{padding:8px 10px}.header-right{gap:10px}.footer-links{margin-left:0}}
/* Versionsnummer (dist/version.js). */
.version-badge{position:fixed;top:4px;right:6px;z-index:50;font:700 10px/1 'DM Sans',Arial,sans-serif;color:#fff!important;background:#174d3b;padding:3px 6px;border-radius:4px;opacity:.85;pointer-events:none}

/* ===== App-Navigation (navigation.js): Start-Kacheln, Leiste unten, Rollenchip ===== */
.who-chip,.app-tabbar,.app-fab,.mobile-only{display:none}
.app-hello{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:18px}
.app-hello h1{font:800 29px Manrope,sans-serif;letter-spacing:-1px;margin:0}
.app-hello p{margin:0}
.app-pill{display:inline-flex;align-items:center;gap:8px;background:#e9eedf;border:1px solid #d1dbc7;border-radius:999px;padding:5px 14px 5px 6px;font-size:14px;font-weight:600}
.app-pill .crest{width:24px;height:28px;font-size:9px;border-top:0}
.app-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:22px}
.app-tile{position:relative;text-align:left;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;min-height:112px;display:flex;flex-direction:column;justify-content:space-between;gap:12px;transition:.15s}
.app-tile:hover{border-color:#a6baa7;box-shadow:0 6px 17px #1c3a2310}
.app-tile:active{transform:scale(.98)}
.app-tile b{font:700 15px/1.25 'DM Sans',sans-serif;display:block}
.app-tile b small{display:block;font-weight:500;margin-top:3px;font-size:13px}
.app-ic{width:38px;height:38px;border-radius:10px;background:#e9f2ec;display:grid;place-items:center;color:#174d3b}
.app-ic svg{width:21px;height:21px}
body .app-tile.is-main{background:#174d3b;border-color:#174d3b}
body .app-tile.is-main b,body .app-tile.is-main .app-ic{color:#fff}
.app-tile.is-main .app-ic{background:#ffffff26}
body .app-badge,body .app-tabbar i{position:absolute;min-width:22px;height:22px;border-radius:11px;background:#c2410c;color:#fff;font:700 12px/22px 'DM Sans',sans-serif;text-align:center;padding:0 6px;font-style:normal}
.app-badge{top:10px;right:10px}
.app-section{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:22px 0 10px}
.app-section h2{font:800 18px Manrope,sans-serif;letter-spacing:-.3px;margin:0}
body .app-section button{background:none;font-weight:700;font-size:14px;color:#20553a}
.app-card{display:flex;flex-direction:column;gap:8px;width:100%;text-align:left;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:12px}
.app-card h3{font:800 17px Manrope,sans-serif;margin:0}
.app-card p{margin:0}
.app-card .status{align-self:flex-start}
.status.warn{background:#fff4dc}
.app-cup{flex-direction:row;align-items:center;gap:14px}
.app-summary{flex-direction:row;justify-content:space-between;gap:10px}
.app-summary>span{flex:1;min-width:0}
.app-summary b{display:block;font:800 22px Manrope,sans-serif}
.app-cup>span:nth-child(2){flex:1;min-width:0}
.app-cup b{display:block;font:800 16px Manrope,sans-serif}
.app-date{width:50px;flex:none;text-align:center;background:#e9eedf;border-radius:10px;padding:7px 0;font-size:11px;font-weight:700}
.app-date span{display:block;font:800 19px Manrope,sans-serif}
.app-go{font-size:22px;color:#4b5e50}
.app-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}
.app-btn{flex:1;padding:11px 14px;border-radius:9px;font-weight:700;font-size:14px;border:1px solid #a9bba7;background:#fff;white-space:nowrap}
body .app-btn.main{background:#174d3b;border-color:#174d3b;color:#fff}
.app-btn.no{background:#fff3ed;border-color:#c19a89}
.app-btn:disabled{opacity:.5;cursor:not-allowed}
.app-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--line)}
.app-row>span{min-width:0}
.app-row b{display:block}
.app-row .app-btn{flex:none}
.app-lead{margin:0 0 14px}
.app-list{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-bottom:14px}
.app-list>button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:left;padding:14px 16px;background:#fff;border-top:1px solid var(--line)}
.app-list>button:first-child{border-top:0}
.app-list b{display:block;font-size:15px}
.app-list small{margin-top:2px}
.app-seg{grid-auto-flow:column;grid-auto-columns:1fr;background:#e8ede6;border-radius:10px;padding:3px;margin-bottom:14px}
.app-seg button{padding:9px 6px;border-radius:8px;font-weight:700;font-size:14px;background:none}
.app-seg button.active{background:#fff;box-shadow:0 1px 3px #0001}
.who-av{width:30px;height:30px;border-radius:50%;background:#f0e9dc;display:grid;place-items:center;font-size:11px;font-weight:700;flex:none}
.app-options{display:grid;gap:8px}
.app-option{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff}
.app-option.active{border-color:#174d3b;background:#e9f2ec}
.app-option b{display:block}
.app-option-link{display:block;width:100%;background:#fff;text-align:center;margin-top:12px;padding:12px;border:1px solid #a9bba7;border-radius:10px;font-weight:700}
.sheet-hint{margin-top:0}
nav i#request-count:empty{display:none}
nav i#request-count{margin-left:auto;font-style:normal;font-size:11px;background:#c2410c;color:#fff!important;border-radius:9px;padding:1px 7px}
body[data-page="home"] .heading{display:none}
@media(max-width:1150px){.app-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Handy: App-Aufbau mit Kopfzeile, Leiste unten und Fenstern von unten. */
@media(max-width:760px){
  .sidebar{position:sticky;top:0;z-index:20;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:10px;padding:10px max(16px,env(safe-area-inset-right,0px)) 10px max(16px,env(safe-area-inset-left,0px))}
  .sidebar nav{display:none}
  .who-chip{display:flex;align-items:center;gap:8px;min-width:0;max-width:62%;padding:5px 12px 5px 5px;border:1px solid var(--line);border-radius:999px;background:#fff;margin-top:6px}
  .who-text{min-width:0;text-align:left}
  .who-text b{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  body .who-text small{margin:0;font-size:11px;line-height:1.2}
  .app>header{display:none}
  main{padding:18px max(16px,env(safe-area-inset-right,0px)) calc(96px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}
  .heading{margin-bottom:14px}
  .heading .eyebrow,.heading #subtitle,.heading>.primary{display:none}
  .heading h1{font-size:24px;margin:0}
  #team-content .hero,#team-content .section-line .text-button,#team-content .section-line p,.card-bottom>span{display:none}
  #team-content .section-line{margin-top:4px}
  #other-content>.note{display:none}
  footer{display:none}
  .grid{grid-template-columns:1fr}
  .app-hello h1{font-size:26px}
  .app-tiles{gap:10px;margin-bottom:16px}
  .app-tile{min-height:100px;padding:14px}
  .mobile-only.app-seg{display:grid}
  .app-tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fff;border-top:1px solid var(--line);padding:6px max(4px,env(safe-area-inset-right,0px)) calc(6px + env(safe-area-inset-bottom,0px)) max(4px,env(safe-area-inset-left,0px))}
  .app-tabbar button{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 0;background:none;border-radius:10px}
  body .app-tabbar button span{font-size:11px;font-weight:600;color:#4b5e50}
  .app-tabbar svg{width:24px;height:24px;color:#4b5e50}
  .app-tabbar button.active svg,body .app-tabbar button.active span{color:#174d3b}
  .app-tabbar button.active svg{stroke-width:2.4}
  .app-tabbar button{width:auto;margin:0;white-space:normal;min-width:0}
  body .app-tabbar i{display:block;top:1px;left:calc(50% + 5px);min-width:18px;height:18px;line-height:18px;font-size:10px;padding:0 5px}
  .app-tabbar button.is-create{gap:2px}
  .app-plus{width:46px;height:46px;margin-top:-20px;border-radius:50%;background:#174d3b;display:grid;place-items:center;box-shadow:0 6px 16px #174d3b55;border:3px solid #fff}
  body .app-tabbar .app-plus svg{color:#fff;width:24px;height:24px;stroke-width:2.6}
  .app-fab{display:block;position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:25;background:#174d3b;color:#fff!important;border-radius:999px;padding:14px 18px;font-weight:700;font-size:14px;box-shadow:0 8px 20px #174d3b55}
  .app-fab[hidden]{display:none}
  #toast{bottom:calc(92px + env(safe-area-inset-bottom,0px))}
  dialog{margin:auto 0 0;width:100%;max-width:100%;border-radius:18px 18px 0 0;max-height:88vh;padding:20px max(16px,env(safe-area-inset-right,0px)) calc(20px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}
  .version-badge{top:2px;right:2px}
}

/* ===== CupPfiff Turnierplaner (planner.js, eltern/) – alles unter .cp, damit die übrige Seite unberührt bleibt ===== */
.cp{--cp-green:#174d3b;--cp-green-2:#22755a;--cp-mint:#e9f2ec;--cp-pitch:#e9eedf;--cp-line:#e4e9e5;--cp-warn:#fff4dc;--cp-warn-line:#e7d8a8;--cp-bad:#fde8e4;--cp-bad-line:#c19a89;--cp-sel:#fff1c9;--cp-live:#c2410c;display:flex;flex-direction:column;gap:14px;max-width:760px}
.cp *{box-sizing:border-box}
body .cp :is(h1,h2,h3,b,p,small,span,label,button,div,i,em,a,input,select,textarea){color:#111}
.cp h1{font:800 26px/1.2 Manrope,sans-serif;letter-spacing:-.6px;margin:0;overflow-wrap:anywhere}
.cp h2{font:800 17px Manrope,sans-serif;margin:0}
.cp p{margin:0;line-height:1.5}
body .cp small,body .cp .cp-meta,body .cp .cp-hint{font-size:13px;color:#4b5e50;font-weight:500;margin:0;display:block}
.cp .cp-title{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
body .cp .cp-title p{font-size:14px;color:#4b5e50}
.cp .cp-section{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:6px}
.cp .cp-grow{flex:1;min-width:0;overflow-wrap:anywhere}
.cp .cp-card{background:#fff;border:1px solid var(--cp-line);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:8px;text-align:left;width:100%;overflow-wrap:anywhere}
.cp .cp-cupcard{flex-direction:row;align-items:center;gap:12px;cursor:pointer}
.cp .cp-cupcard:hover{border-color:#a6baa7}
.cp .cp-h3{display:block;font:800 16px Manrope,sans-serif}
.cp .cp-flexrow{flex-direction:row;justify-content:space-between;align-items:center;flex-wrap:wrap}
.cp .cp-date{width:50px;flex:none;text-align:center;background:var(--cp-pitch);border-radius:10px;padding:7px 0;font-size:11px;font-weight:700}
.cp .cp-date span{display:block;font:800 19px Manrope,sans-serif}
.cp .cp-empty{padding:18px;text-align:center;background:#fff;border:1px dashed #cbd6c4;border-radius:12px;color:#4b5e50;font-size:14px}
body .cp .cp-status{display:inline-block;font-size:11px;font-weight:700;padding:3px 8px;border-radius:5px;background:var(--cp-mint);white-space:nowrap;flex:none}
body .cp .cp-status.host{background:var(--cp-green);color:#fff}
body .cp .cp-status.live{background:var(--cp-live);color:#fff}
body .cp .cp-status.bad{background:var(--cp-bad)}
.cp .cp-btn{padding:11px 14px;border-radius:10px;font-weight:700;font-size:14px;border:1px solid #a9bba7;background:#fff;text-align:center;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;flex-direction:column}
body .cp .cp-btn.main{background:var(--cp-green);border-color:var(--cp-green);color:#fff}
body .cp .cp-btn.main small{color:#e6f0ea}
.cp .cp-btn.no{background:#fff3ed;border-color:var(--cp-bad-line)}
.cp .cp-btn.block{width:100%}
.cp .cp-btn:disabled{opacity:.45;cursor:not-allowed}
.cp .cp-start{font-size:16px;padding:14px}
.cp .cp-actions{display:flex;gap:8px;flex-wrap:wrap}.cp .cp-actions>.cp-btn{flex:1}
.cp .cp-back{align-self:flex-start;background:none;border:0;font-weight:700;font-size:14px;padding:4px 0;cursor:pointer}
.cp .cp-wizhead{display:flex;align-items:center;justify-content:space-between;gap:10px}
.cp .cp-dots{display:flex;gap:5px}.cp .cp-dots i{width:22px;height:5px;border-radius:3px;background:#d5ddd2}.cp .cp-dots i.on{background:var(--cp-green)}
.cp .cp-foot{display:flex;gap:8px;padding:10px 0 4px;background:var(--bg,#f7f8f5)}
.cp .cp-foot>.cp-btn{flex:1}
.cp .cp-field{display:grid;gap:6px;font-size:13px;font-weight:700}
.cp .cp-field input,.cp .cp-field select,.cp .cp-field textarea,.cp .cp-input{font:inherit;font-weight:500;font-size:15px;padding:11px;border:1px solid #d8dfd4;border-radius:10px;background:#fff;width:100%;min-width:0}
.cp .cp-field textarea{resize:vertical}
.cp .cp-counter{text-align:right}
.cp .cp-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cp .cp-three{display:grid;grid-template-columns:1fr 2fr;gap:10px}
.cp .cp-row{display:flex;align-items:center;gap:8px}
.cp .cp-chips{display:flex;flex-wrap:wrap;gap:6px}
.cp .cp-chip{font-size:13px;font-weight:600;padding:8px 11px;border-radius:999px;border:1px solid #c9d4c5;background:#fff;cursor:pointer}
body .cp .cp-chip.on{background:var(--cp-green);border-color:var(--cp-green);color:#fff}
.cp .cp-chip.rec{border-style:dashed;border-color:var(--cp-green-2)}
.cp .cp-stepper{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#fff;border:1px solid #d8dfd4;border-radius:10px;padding:4px}
.cp .cp-stepper button{width:42px;height:42px;border-radius:8px;background:var(--cp-mint);font:800 20px Manrope,sans-serif;border:0;cursor:pointer}
body .cp .cp-stepper button{color:var(--cp-green)}
.cp .cp-stepper button:disabled{opacity:.35}
.cp .cp-stepper output{font:800 18px Manrope,sans-serif;text-align:center;flex:1}
.cp .cp-mode-pick{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;text-align:left;padding:12px;border:1px solid var(--cp-green);border-radius:12px;background:var(--cp-mint);cursor:pointer}
.cp .cp-mode-pick b{display:block}
.cp .cp-mode-sec{font:800 12px Manrope,sans-serif;letter-spacing:.6px;text-transform:uppercase;margin-top:8px}
body .cp .cp-mode-sec{color:#4b5e50}
.cp .cp-modes{display:grid;gap:8px}
.cp .cp-mode{display:flex;gap:12px;align-items:flex-start;text-align:left;width:100%;padding:12px;border:1px solid var(--cp-line);border-radius:12px;background:#fff;cursor:pointer}
.cp .cp-mode.on{border-color:var(--cp-green);background:var(--cp-mint)}
.cp .cp-mode:disabled{opacity:.5;cursor:not-allowed}
.cp .cp-mode b{display:block}
.cp .cp-radio{width:20px;height:20px;border-radius:50%;border:2px solid #9fb09c;flex:none;margin-top:2px}
.cp .cp-mode.on .cp-radio{border:6px solid var(--cp-green)}
.cp .cp-switch{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;background:#fff;border:1px solid var(--cp-line);border-radius:12px;font-weight:600;font-size:14px}
.cp .cp-switch input{width:44px;height:26px;appearance:none;-webkit-appearance:none;background:#cfd8cc;border-radius:13px;position:relative;flex:none;cursor:pointer;border:0;padding:0}
.cp .cp-switch input::after{content:"";position:absolute;width:20px;height:20px;border-radius:50%;background:#fff;top:3px;left:3px;transition:.15s}
.cp .cp-switch input:checked{background:var(--cp-green)}
.cp .cp-switch input:checked::after{left:21px}
.cp .cp-seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;background:#e8ede6;border-radius:10px;padding:3px}
.cp .cp-seg button{padding:9px 6px;border-radius:8px;font-weight:700;font-size:14px;background:none;border:0;cursor:pointer}
.cp .cp-seg button.on{background:#fff;box-shadow:0 1px 3px #0001}
.cp .cp-list{background:#fff;border:1px solid var(--cp-line);border-radius:14px;overflow:hidden}
.cp .cp-list>div{display:flex;align-items:center;gap:10px;padding:11px 14px;border-top:1px solid var(--cp-line);flex-wrap:wrap}
.cp .cp-list>div:first-child{border-top:0}
.cp .cp-list .crest{width:30px;height:34px;font-size:10px;flex:none}
body .cp .cp-tag{font-size:11px;font-weight:700;padding:3px 7px;border-radius:5px;background:#f0f2ee;white-space:nowrap}
body .cp .cp-tag.inv{background:var(--cp-warn)}
body .cp .cp-tag.bad{background:var(--cp-bad)}
body .cp .cp-tag.livetag{background:#fde8dc;color:#9a3412}
.cp .cp-x{width:32px;height:32px;border-radius:8px;background:#fff3ed;border:1px solid var(--cp-bad-line);font-weight:700;cursor:pointer;flex:none}
.cp .cp-search{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #d8dfd4;border-radius:10px;padding:0 12px}
.cp .cp-search input{border:0;outline:0;font:inherit;font-size:15px;padding:11px 0;flex:1;min-width:0;background:transparent}
.cp .cp-warn{background:var(--cp-warn);border:1px solid var(--cp-warn-line);border-radius:12px;padding:10px 12px;font-size:14px}
.cp .cp-ok{background:var(--cp-mint);border:1px solid #b9d3c0;border-radius:12px;padding:10px 12px;font-size:14px;font-weight:600}
.cp .cp-pill{font-size:13px;font-weight:700;padding:7px 11px;border-radius:999px;border:1px solid #a9bba7;background:#fff;white-space:nowrap;cursor:pointer}
.cp .cp-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.cp .cp-summary div{background:#fff;border:1px solid var(--cp-line);border-radius:12px;padding:10px;text-align:center}
.cp .cp-summary b{display:block;font:800 18px Manrope,sans-serif;font-variant-numeric:tabular-nums}
.cp .cp-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.cp .cp-groups.one{grid-template-columns:1fr}
.cp .cp-group{background:#fff;border:1px solid var(--cp-line);border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:6px;min-width:0}
.cp .cp-gteam{display:flex;align-items:center;gap:6px;padding:8px;border-radius:9px;border:1px solid var(--cp-line);font-size:13px;font-weight:600;text-align:left;background:#fff;min-width:0;cursor:pointer}
.cp .cp-gteam span{flex:1;min-width:0;overflow-wrap:anywhere}
.cp .cp-gteam.sel{background:var(--cp-sel);border-color:#d9b44a}
.cp .cp-gteam.free{border-style:dashed;padding:4px 4px 4px 8px}
body .cp .cp-gteam.free span{color:#4b5e50;font-weight:500}
.cp .cp-gteam:disabled{cursor:default;opacity:1}
.cp .cp-mini{width:32px;height:32px;flex:none;border-radius:8px;background:var(--cp-mint);font-weight:800;font-size:15px;border:0;cursor:pointer}
.cp .cp-plan{display:flex;flex-direction:column;gap:6px}
.cp .cp-slot{background:#fff;border:1px solid var(--cp-line);border-radius:12px;overflow:hidden}
.cp .cp-slot.now{border-color:var(--cp-live);box-shadow:0 0 0 2px #c2410c33}
.cp .cp-slot-h{display:flex;align-items:center;justify-content:space-between;padding:7px 12px;background:#f0f4ec;font:800 14px Manrope,sans-serif;font-variant-numeric:tabular-nums}
body .cp .cp-live-dot{font-style:normal;color:var(--cp-live);font-size:12px}
.cp .cp-game{display:grid;grid-template-columns:52px 1fr auto;gap:8px;align-items:center;padding:9px 12px;border:0;border-top:1px solid var(--cp-line);font-size:14px;width:100%;text-align:left;background:#fff;font-family:inherit}
.cp button.cp-game{cursor:pointer}
.cp .cp-slot-h+.cp-game,.cp .cp-conflict+.cp-game{border-top:0}
.cp .cp-game.gsel{background:var(--cp-sel)}
.cp .cp-game.followed,.cp .cp-tr.followed,.cp .cp-prow.followed{background:#fff6d6}
body .cp .cp-fld{font-size:11px;font-weight:700;color:#4b5e50}
.cp .cp-vs{min-width:0;overflow-wrap:anywhere}
.cp .cp-vs b{font-weight:600}
body .cp .cp-vs b.won{color:var(--cp-green);font-weight:800}
body .cp .cp-lbl{display:block;font-size:11px;font-weight:700;color:var(--cp-green-2)}
body .cp .cp-ph{color:#4b5e50;font-style:normal}
.cp .cp-score{font:800 15px Manrope,sans-serif;font-variant-numeric:tabular-nums;white-space:nowrap}
.cp .cp-game.live{display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:10px 12px}
.cp .cp-game.live.done{background:#f6f8f3}
.cp .cp-live-h{display:flex;align-items:center;gap:8px}
.cp .cp-move{margin-left:auto;width:36px;height:32px;border-radius:8px;border:1px solid #c9d4c5;background:#fff;font-weight:800;cursor:pointer}
.cp .cp-score-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.cp .cp-tn{font-weight:700;font-size:14px;min-width:0;overflow-wrap:anywhere;flex:1}
.cp .cp-ctl{display:flex;align-items:center;gap:6px;flex:none}
.cp .cp-ctl button{width:46px;height:42px;border-radius:10px;background:var(--cp-mint);font:800 20px Manrope,sans-serif;border:0;cursor:pointer}
body .cp .cp-ctl button{color:var(--cp-green)}
.cp .cp-ctl button:disabled{opacity:.35}
.cp .cp-goals{font:800 22px Manrope,sans-serif;min-width:30px;text-align:center;font-variant-numeric:tabular-nums}
.cp .cp-pens{background:var(--cp-warn);border-radius:10px;padding:8px;font-size:13px;display:flex;flex-direction:column;gap:6px}
.cp .cp-pause{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--cp-warn);border:1px solid var(--cp-warn-line);border-radius:10px;font-size:13px;font-weight:700}
.cp .cp-pause button{background:none;border:0;font-weight:800;cursor:pointer}
.cp .cp-pause-add{align-self:center;font-size:13px;font-weight:700;padding:5px 12px;border:1px dashed #a9bba7;border-radius:999px;background:#fff;cursor:pointer}
body .cp .cp-pause-add{color:var(--cp-green-2)}
.cp .cp-conflict{padding:8px 12px;background:var(--cp-bad);font-size:13px;font-weight:700}
.cp .cp-tbl{background:#fff;border:1px solid var(--cp-line);border-radius:12px;overflow:hidden}
.cp .cp-tbl>b{display:block;font-size:14px;padding:8px 12px;background:#f0f4ec}
.cp .cp-tr{display:grid;grid-template-columns:24px 1fr 30px 50px 34px;gap:6px;padding:8px 12px;border-top:1px solid var(--cp-line);font-size:13px;font-variant-numeric:tabular-nums;align-items:center}
.cp .cp-tr.th{font-weight:700;font-size:11px;border-top:0}
body .cp .cp-tr.th span{color:#4b5e50}
.cp .cp-podium{gap:2px}
.cp .cp-podium.live{border-color:var(--cp-live);box-shadow:0 0 0 2px #c2410c22}
.cp .cp-prow{display:flex;gap:8px;align-items:center;font-size:14px;padding:6px 0;border-top:1px solid var(--cp-line);flex-wrap:wrap}
.cp .cp-prow .cp-tn{font-weight:600}
.cp .cp-prow.active .cp-tn{font-weight:800}
.cp .cp-pn{min-width:46px;font-weight:800;font-variant-numeric:tabular-nums}
.cp .cp-notes span{white-space:pre-wrap;overflow-wrap:anywhere}
.cp .cp-done{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:8px 0}
.cp .cp-done-ic{width:56px;height:56px;border-radius:50%;background:var(--cp-green);display:grid;place-items:center;font-size:28px;font-weight:800}
body .cp .cp-done-ic{color:#fff}
.cp .cp-qr{align-self:center;width:200px;height:200px;margin:4px auto}.cp .cp-qr svg{width:100%;height:100%}
.cp .cp-next{display:flex;flex-direction:column;gap:2px;background:var(--cp-green);border-radius:12px;padding:12px 14px}
body .cp .cp-next span,body .cp .cp-next b{color:#fff}
.cp .cp-next b{font:800 18px Manrope,sans-serif}
.cp.cp-fillrow{flex-direction:row;align-items:center;gap:8px;padding:10px 12px;background:#fff;border:1px dashed #b9c8b5;border-radius:12px;font-size:14px;margin:-4px 0 12px;max-width:none}
.cp.cp-fillrow>span{flex:1;min-width:0}.cp.cp-fillrow .cp-btn{padding:8px 10px;font-size:13px}
#modal .cp{gap:12px}
@media(max-width:760px){
  .cp .cp-foot{position:sticky;bottom:calc(72px + env(safe-area-inset-bottom,0px));z-index:5;margin:0 -2px}
  .cp h1{font-size:24px}
}
/* Elternansicht */
body.eltern{background:#f7f8f5}
.eltern-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px max(16px,env(safe-area-inset-right,0px)) 10px max(16px,env(safe-area-inset-left,0px));background:#fff;border-bottom:1px solid #e4e9e5}
.eltern-head .brand{font-size:24px}.eltern-head .brand-icon{width:32px;height:35px;padding:0;background:none}.eltern-head .brand-icon img{width:100%;height:100%;display:block}
.eltern-tag{font-size:12px;font-weight:700;background:#e9f2ec;padding:4px 8px;border-radius:6px}
.eltern-main{max-width:760px;margin:auto;padding:18px max(16px,env(safe-area-inset-right,0px)) 40px max(16px,env(safe-area-inset-left,0px))}
.eltern-foot{text-align:center}
/* CupPfiff Wortmarke */
.brand .word{letter-spacing:-1.2px}.brand .pf,body .brand .pf,.footer-mark .pf{color:#22755a}
.footer-mark .word{letter-spacing:-.8px}
/* #9 Baukasten „Eigener Modus“ */
.cp .cp-bgames{display:flex;flex-direction:column;gap:10px}
.cp .cp-bgame{background:#fff;border:1px solid var(--cp-line);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}
.cp .cp-bhead{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,140px) auto auto;align-items:center;gap:8px}
.cp .cp-bhead>b{font-size:15px;min-width:0;overflow-wrap:anywhere}
.cp .cp-bhead select{min-width:0;width:100%;padding:8px 6px;font-size:14px}
.cp .cp-bhead .cp-place{width:64px}
.cp .cp-bhead:not(:has(.cp-place)){grid-template-columns:minmax(0,1fr) minmax(0,140px) auto}
.cp .cp-bgroups{display:flex;flex-direction:column;gap:8px}
.cp .cp-bpair{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center}
.cp .cp-bpair select{min-width:0;width:100%;padding:9px 8px;font-size:14px}
.cp .cp-bpair>span{font-size:13px;color:#4b5e50}
.cp .cp-warn ul{margin:6px 0 0;padding-left:18px}
.cp .cp-tplrow{display:flex;gap:8px;align-items:center}.cp .cp-tplrow .cp-mode{flex:1;min-width:0}
@media(max-width:420px){.cp .cp-bpair{grid-template-columns:1fr}.cp .cp-bpair>span{text-align:center}}
/* #9 Werbung und Sponsoren */
.cp-ad{display:flex;flex-direction:column;gap:4px;margin:4px 0}
.cp-ad-l{font-size:11px;letter-spacing:.6px;text-transform:uppercase;font-weight:700}
body .cp-ad-l{color:#4b5e50}
.cp-ad-b{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#f6f4ea;border:1px solid #e3dfcb;border-radius:12px;color:#172a29;text-decoration:none}
a.cp-ad-b:hover{border-color:#c8c1a0}
.cp-ad-logo{flex:none;width:40px;height:40px;border-radius:10px;background:var(--ad-color,#3c6a52);display:grid;place-items:center;font-weight:800;font-size:14px}
body .cp-ad-logo{color:#fff}
.cp-ad-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.cp-ad-text b{font-size:15px}
body .cp-ad-text small{color:#33453a;font-size:13px;margin:0;line-height:1.4;overflow-wrap:anywhere}
.cp-ad-go{font-size:18px;font-weight:700}
.cp-ad-strip{display:flex;flex-direction:column;gap:4px;margin:4px 0}
.cp-ad-strip>div{display:flex;flex-wrap:wrap;gap:6px}
.cp-ad-strip>div>*{font-size:13px;font-weight:700;padding:6px 10px;border-radius:8px;background:#f6f4ea;border:1px solid #e3dfcb;color:#172a29}
.cp.cp-adzone{margin-top:14px;gap:10px}
.cp .cp-adrow{display:flex;flex-direction:column;gap:6px;padding-bottom:12px;border-bottom:1px solid var(--cp-line)}
.cp .cp-adrow.off .cp-ad{opacity:.55}
.cp .cp-adrow-meta{display:flex;flex-direction:column;gap:6px}
.cp .cp-adrow-meta .cp-actions .cp-btn{padding:8px 10px;font-size:13px}
.cp .cp-rules{gap:4px}.cp .cp-rules small{margin:0;font-size:13px}
.cp .cp-swatch{width:34px;height:34px;border-radius:50%;background:var(--ad-color);border:3px solid #fff;box-shadow:0 0 0 1px #c9d3c6;cursor:pointer}
.cp .cp-swatch.on{box-shadow:0 0 0 3px #172a29}
/* #9 Spielbetrieb */
.cp.sb{gap:10px;margin-top:6px}
.cp .sb-card{flex-direction:row;align-items:flex-start;gap:12px}
.cp .sb-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.cp .sb-card small{margin:2px 0 0}
.cp .sb-place{display:block;font-size:14px;margin-top:4px}
.cp .sb-more{background:none;border:0;padding:6px 0 0;font-weight:700;font-size:13px;color:#22755a;cursor:pointer}
.cp .sb-games{display:flex;flex-direction:column;gap:4px;margin-top:6px}
.cp .sb-game{display:flex;justify-content:space-between;gap:8px;font-size:13px;padding:6px 8px;border-radius:8px;background:#f3f5f1}
.cp .sb-game.win{background:#e4f1e7}.cp .sb-game.loss{background:#fbeae6}
.cp .sb-filter{margin:0}
.cp .cp-linkalt{text-align:center;text-decoration:underline}
/* #10 Meine Kabine */
.cp.kb-home{gap:10px;margin-bottom:6px}
.cp .kb-matchday{display:flex;flex-direction:column;gap:2px;text-align:left;width:100%;background:var(--cp-green);border:0;cursor:pointer}
body .cp .kb-matchday,body .cp .kb-matchday *{color:#fff}
.cp .kb-matchday b{font:800 20px Manrope,sans-serif}
.cp .kb-md-l{font-size:12px;font-weight:700;letter-spacing:.4px;text-transform:uppercase}
.cp .kb-md-go{margin-top:4px;font-weight:700;font-size:14px}
.cp .kb-entry{flex-direction:row;align-items:center;gap:12px;text-align:left;width:100%;cursor:pointer}
.cp .kb-entry-ic{width:40px;height:40px;border-radius:10px;background:var(--cp-mint);display:grid;place-items:center;flex:none}
.cp .kb-entry-ic svg{width:22px;height:22px}
.cp .kb-menu button{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:#fff;border:0;padding:14px 12px;cursor:pointer}
.cp .kb-menu small{margin:2px 0 0}
.cp .kb-rules{gap:6px}.cp .kb-rules small{margin:0;font-size:13px;line-height:1.5}
.cp .kb-item{flex-direction:row;align-items:flex-start;gap:12px}
.cp .kb-row{flex-direction:row;align-items:center;gap:10px}
.cp .kb-row .cp-btn{padding:8px 10px;font-size:13px}
.kb-star{width:36px;height:36px;border-radius:50%;border:1px solid #d8dfd4;background:#fff;font-size:19px;line-height:1;cursor:pointer;flex:none;color:#4b5e50}
.kb-star.on{background:#fff4d6;border-color:#e2c46b;color:#9a6b00}
.team-card .card-top .kb-star{margin-left:auto}.team-card .card-top{gap:8px}
.list-card .list-main>.kb-star{float:right;margin-left:8px}
.cp .kb-sugg{gap:8px;background:#fff8e6;border-color:#ecd9a0}
.cp .kb-report{display:flex;flex-direction:column;gap:12px;background:#fff;border:1px solid var(--cp-line);border-radius:14px;padding:16px}
.cp .kb-r-brand{font:800 14px Manrope,sans-serif}
.cp .kb-r-head h1{margin:4px 0}.cp .kb-r-head p{margin:0}
.cp .kb-r-game{display:flex;justify-content:space-between;gap:8px;padding:8px 12px;border-top:1px solid var(--cp-line);font-size:14px}
.cp .kb-r-game.win{background:#eef7f0}.cp .kb-r-game.loss{background:#fdf1ee}
.cp .kb-r-foot{text-align:center;margin:0}
.app-option-link.kb-link{font-weight:700}
@media print{
  body *{visibility:hidden!important}
  .kb-report,.kb-report *{visibility:visible!important}
  .kb-report{position:absolute;left:0;top:0;width:100%;border:0!important}
  .version-badge,.app-tabbar,.no-print{display:none!important}
}
/* #11 Kalender, Freundschaftsspiele, Liga */
.cp .cal-nav{display:flex;align-items:center;justify-content:space-between;gap:8px}
.cp .cal-nav b{font:800 17px Manrope,sans-serif;text-align:center;flex:1}
.cp .cal-nav .cp-btn{width:44px;padding:8px 0}
.cp .cal-todaybtn{align-self:center}
.cp .cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.cp .cal-wd{font-size:11px;font-weight:700;text-align:center;color:#4b5e50}
.cp .cal-cell{aspect-ratio:1/1;min-height:40px;border:1px solid var(--cp-line);border-radius:10px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:2px;cursor:pointer;font:inherit;font-size:14px}
.cp .cal-cell.cal-blank{border:0;background:none;cursor:default}
.cp .cal-cell.today{border-color:var(--cp-green-2);font-weight:800}
.cp .cal-cell.sel{background:var(--cp-green);border-color:var(--cp-green)}
body .cp .cal-cell.sel span{color:#fff}
.cp .cal-cell i{display:flex;gap:2px;height:7px}
.cp .cal-cell em,.cp .cal-key{display:inline-block;width:7px;height:7px;border-radius:50%;background:#22755a}
.cp .cal-cell em.friendly,.cp .cal-key.friendly{background:#4b7097}.cp .cal-cell em.league,.cp .cal-key.league{background:#b17451}
.cp .cal-cell em.warn{box-shadow:0 0 0 2px #e0a800}
.cp .cal-cell.sel em{outline:1px solid #fff}
.cp .cal-key{margin:0 3px 0 8px;vertical-align:middle}
.cp .cal-ev{display:flex;align-items:flex-start;gap:12px;width:100%;text-align:left;background:#fff;border:1px solid var(--cp-line);border-left:5px solid #22755a;border-radius:12px;padding:10px 12px;cursor:pointer;font:inherit}
.cp .cal-ev.friendly{border-left-color:#4b7097}.cp .cal-ev.league{border-left-color:#b17451}
.cp .cal-ev.tent{border-style:dashed;border-left-style:solid}
.cp .cal-ev small{margin:2px 0 0}
.cp .cal-time{min-width:58px;font-weight:800;font-size:14px;font-variant-numeric:tabular-nums}
body .cp .cal-warn{color:#8a5a00;font-weight:700}
.cp .cal-daylabel{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;background:none;border:0;padding:4px 0;text-align:left;color:#4b5e50;cursor:pointer}
.cp .cal-weekday{display:flex;flex-direction:column;gap:6px;padding:6px 0;border-bottom:1px solid var(--cp-line)}
.cp .cal-weekday.today .cal-daylabel{color:#22755a}
.cp .cal-none{color:#4b5e50;margin:0}
.cp .cal-add{flex-wrap:wrap}
.cp .fr-score{display:grid;grid-template-columns:1fr 64px auto 64px 1fr;gap:8px;align-items:center;font-weight:700;font-size:14px}
.cp .fr-score span:last-child{text-align:right}
.cp .fr-score input{font:inherit;font-size:20px;font-weight:800;text-align:center;padding:8px 4px;border:1px solid #d8dfd4;border-radius:10px;width:100%}
.cp.fr-inbox{margin-bottom:16px;gap:8px}
.cp .fr-card{align-items:flex-start;text-align:left;width:100%;cursor:pointer;gap:4px}
.cp .cp-link,.cp-link{background:none;border:0;padding:0;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer;color:#22755a}
.fr-btn{margin-left:6px}
.cp .lg-move{margin-left:auto}
.cp .lg-free{padding:6px 12px;margin:0}
.cp .cp-slot-h{display:flex;align-items:center;gap:8px}
.cp .cp-game.followed,.cp .cp-tr.followed{background:#eef7f0}
@media(max-width:420px){.cp .fr-score{grid-template-columns:1fr 56px auto 56px 1fr;font-size:12px}}
.cp .cal-add .cp-btn{flex:1 1 0;white-space:nowrap}.cp .cal-add .cp-btn.main{flex:1 1 100%}
/* #12 Tagebuch, Karriere, Turnieralarm */
.cp .pn-who small{margin:0;font-size:13px;line-height:1.5}
.cp .pn-privacy{font-size:13px}
.cp .pn-note{gap:6px}
.cp .pn-text{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:#172a29;line-height:1.55}
.cp .pn-tools{display:flex;gap:12px;font-size:13px}
.cp .pn-stations{display:flex;flex-direction:column;border-left:3px solid var(--cp-green-2);margin-left:6px;padding-left:14px;gap:8px}
.cp .pn-stations div{display:flex;flex-direction:column}
.cp .pn-stations b{font-size:12px;color:#4b5e50}
.cp .pn-off{opacity:.6}
.cp .pn-mini input{width:22px;height:22px;accent-color:#22755a}
.cp .pn-alarmform{gap:10px}
/* Erstellen-Auswahl */
.cp .cc-list .cp-mode{align-items:center}
.cp .cc-ic{font-size:28px;line-height:1;width:40px;text-align:center;flex:none}
.cp .cal-add .cp-btn.main{white-space:normal}
.cp .cp-manualhint{background:#f3f6fb;border-color:#cfd9e8}.cp .cp-manualhint small{margin:0;font-size:13px;line-height:1.5}
.beta,body .cp .beta{display:inline-block;vertical-align:middle;font:800 10px/1 "DM Sans",Arial,sans-serif;letter-spacing:.6px;padding:3px 6px;border-radius:5px;background:#fff1c9;color:#7a5200;border:1px solid #e7cf86;margin-left:4px}
/* Eltern-Konto */
.cp.pa{gap:10px;margin-top:4px}
body .cp .pa-info{color:#174d3b;font-weight:700;background:#eef7f0;border-radius:6px;padding:4px 6px;margin-top:4px}
.cp .pa-infocard{gap:4px;background:#eef7f0}
.cp .pa-cta{display:flex;flex-direction:column;gap:4px;text-decoration:none;color:#172a29;border:1px dashed #22755a;background:#f3faf5}
.cp .pa-cta small{margin:0;font-size:13px}
.cp .cal-info{align-self:flex-start;background:none;border:0;padding:2px 4px 6px;font:inherit;font-size:13px;font-weight:700;color:#22755a;cursor:pointer;text-align:left}
.cp .pa-chips{display:flex;flex-wrap:wrap;gap:6px}
.cp .pa-open{display:flex;align-items:center;gap:10px;flex:1;min-width:0;background:none;border:0;padding:0;text-align:left;font:inherit;cursor:pointer;color:inherit}
.cp .pa-teamhead{display:flex;align-items:center;gap:12px}
.cp .pa-teamhead h1{margin:0;font-size:24px}
.cp .pa-teamhead small{margin:2px 0 0}
/* Trainerplätze je Mannschaft */
.tp-team{border:1px solid #e4e9e5;border-radius:10px;padding:10px 12px;margin:8px 0;display:flex;flex-direction:column;gap:6px;background:#fbfcfa}
.tp-team-h{display:flex;justify-content:space-between;align-items:center;gap:8px}
.tp-team .access-trainers{margin:0}
.tp-full{display:block;color:#4b5e50;font-size:12px}
.cp .pwa-steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;line-height:1.5}
/* Startseite für Besucher */
#landing{position:fixed;inset:0;z-index:50;overflow-y:auto;background:#f7f8f5;-webkit-overflow-scrolling:touch}
body.ld-open{overflow:hidden}
body.ld-open .app-tabbar,body.ld-open .version-badge{display:none}
.ld{max-width:1040px;margin:0 auto;padding:0 max(16px,env(safe-area-inset-left,0px)) 40px;color:#172a29;font-family:'DM Sans',Arial,sans-serif}
.ld-head{display:flex;justify-content:space-between;align-items:center;padding:16px 0}
.ld-brand{display:flex;align-items:center;gap:10px;font:800 26px Manrope,sans-serif;letter-spacing:-1px}
.ld-brand .pf{color:#22755a}
.ld-login{font-weight:700;color:#174d3b;text-decoration:none;border:1px solid #cfdccf;border-radius:10px;padding:8px 14px;background:#fff}
.ld-hero{padding:28px 0 24px;display:flex;flex-direction:column;gap:14px;max-width:720px}
.ld-eyebrow{font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#22755a}
.ld-hero h1{font:800 clamp(32px,7vw,54px)/1.08 Manrope,sans-serif;letter-spacing:-1.6px;margin:0}
.ld-hero p{font-size:clamp(16px,2.6vw,19px);line-height:1.55;margin:0;color:#33453a}
.ld-hero small{color:#4b5e50;font-size:13px}
.ld-cta{display:flex;flex-wrap:wrap;gap:10px}
.ld-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border-radius:12px;font:700 16px 'DM Sans',Arial,sans-serif;text-decoration:none;cursor:pointer;border:1px solid #cfdccf;background:#fff;color:#174d3b}
.ld-btn.main{background:#174d3b;border-color:#174d3b;color:#fff}
.ld-features,.ld-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ld-features article,.ld-grid article,.ld-pricecard,.ld-app{background:#fff;border:1px solid #e4e9e5;border-radius:16px;padding:18px}
.ld-features h2,.ld-grid h3{font:800 18px Manrope,sans-serif;margin:8px 0 6px}
.ld-features p,.ld-grid p,.ld-app p{margin:0;line-height:1.55;color:#33453a;font-size:15px}
.ld-ic{font-size:30px}
.ld-roles,.ld-price,.ld-app{margin-top:28px}
.ld-roles>h2,.ld-price>h2,.ld-app h2{font:800 24px Manrope,sans-serif;letter-spacing:-.6px;margin:0 0 12px}
.ld-link{background:none;border:0;padding:8px 0 0;font:700 15px 'DM Sans',Arial,sans-serif;color:#22755a;cursor:pointer}
.ld-pricecard{display:flex;flex-direction:column;gap:6px;max-width:460px}
.ld-pricecard>b{font:800 40px Manrope,sans-serif;color:#174d3b}
.ld-pricecard ul{margin:6px 0;padding-left:20px;line-height:1.7}
.ld-pricecard small{color:#4b5e50}
.ld-app{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.ld-app h2{margin:0}
.ld-foot{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:32px;padding-top:16px;border-top:1px solid #e4e9e5;font-size:14px}
.ld-foot a{color:#172a29}
@media(max-width:760px){.ld-features,.ld-grid{grid-template-columns:1fr}.ld-cta .ld-btn{flex:1 1 100%}}
#landing .ld-head{height:auto;background:none;border-bottom:0;padding:16px 0}#landing .ld-foot{font-size:14px;padding:16px 0 0;color:#172a29}#landing .ld-foot>span{color:#4b5e50}
/* #15 Einheitlicher Look: Gegner, Turniere suchen, Anfragen */
body:is([data-page=teams],[data-page=tournaments],[data-page=invitations]) .heading h1{font:800 26px Manrope,sans-serif;letter-spacing:-.8px;margin:6px 0 4px}
body[data-page=teams] .team-card,body:is([data-page=tournaments],[data-page=invitations]) .list-card{border-radius:16px;border:1px solid #e4e9e5;box-shadow:none}
body[data-page=teams] .team-card:hover{transform:none;box-shadow:0 4px 14px #1c3a2310}
/* Gegner: eigene Mannschaften sind keine Gegner (Trainer) */
body[data-page=teams]:not(.is-admin) #teams-grid .team-card.own-team{display:none}
body[data-page=teams] .team-card h3{font:800 17px Manrope,sans-serif;margin:12px 0 4px}
body[data-page=teams] .card-bottom{gap:8px;flex-wrap:wrap}
body[data-page=teams] .card-bottom>span{display:none}
body[data-page=teams] .card-bottom .invite-button{flex:1 1 140px;min-height:42px;border-radius:10px;font-size:14px;font-weight:700;margin:0}
body[data-page=teams] .card-bottom .fr-btn{background:#fff;color:#174d3b}
body[data-page=teams] .card-bottom .invite-button:not(.fr-btn){background:#174d3b;border-color:#174d3b;color:#fff}
/* Turniere suchen und Anfragen: kompakte Karten mit Datum */
body:is([data-page=tournaments],[data-page=invitations]) .list-card{padding:14px 16px;gap:12px;align-items:flex-start}
body:is([data-page=tournaments],[data-page=invitations]) .list-card h3{font:800 17px Manrope,sans-serif;margin:0 0 4px}
body:is([data-page=tournaments],[data-page=invitations]) .list-card p{font-size:14px;margin:0;line-height:1.5}
body:is([data-page=tournaments],[data-page=invitations]) .list-card .actions{flex-wrap:wrap}
body:is([data-page=tournaments],[data-page=invitations]) .list-card .invite-button{min-height:42px;border-radius:10px;font-size:14px;font-weight:700;padding:8px 14px}
body:is([data-page=tournaments],[data-page=invitations]) .subheading{font:800 19px Manrope,sans-serif;margin:22px 0 10px}
body:is([data-page=tournaments],[data-page=invitations]) #other-content>.note:first-child{font-size:12px}
@media(max-width:760px){
  body[data-page=tournaments] .list-card{display:grid;grid-template-columns:auto 1fr;}
  body[data-page=tournaments] .date-tile{display:block;min-width:52px;padding:8px;font-size:12px;border-radius:10px}
  body[data-page=tournaments] .date-tile span{font-size:20px}
  body[data-page=tournaments] .list-card>.invite-button{grid-column:1/-1;width:100%}
  body:is([data-page=tournaments],[data-page=invitations]) .list-card .actions button{flex:1}
}
/* Konto: Mannschaften mit eigenen Trainerplätzen */
.team-block{border:1px solid #e4e9e5;border-radius:12px;padding:10px 12px;margin:8px 0;display:flex;flex-direction:column;gap:8px;background:#fbfcfa}
.team-block .team-row{border:0;padding:0}
.team-block .access-trainers{margin:0}
.note-inline{color:#4b5e50;font-size:12px}
