@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=Manrope:wght@400;600;700&display=swap');
:root{--green:#169447;--green-dark:#075c2b;--lime:#8fd12f;--ink:#050806;--muted:#5e6962;--paper:#f1f4ef;--white:#fff;--line:#d6ddd8}
html{font-size:16px;-webkit-text-size-adjust:100%}*,*::before,*::after{box-sizing:border-box}body{min-width:0;margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,sans-serif;background-image:radial-gradient(circle at 8% 18%,#dce9d9 0,transparent 22%),linear-gradient(135deg,transparent 75%,#e8ece4 75%)}img{max-width:100%}button,input,select,textarea{font:inherit}input,select,textarea{max-width:100%}
h1,h2,h3,.brand,.metric strong,.score{font-family:"Barlow Condensed",sans-serif;font-weight:800}h1{font-size:clamp(3rem,8vw,6.5rem);line-height:.87;letter-spacing:-.03em}h2{font-size:2rem}
.site-header{background:linear-gradient(110deg,#030504 0%,#0b1710 62%,#07351d 100%);border-bottom:4px solid var(--green)}.navbar{min-height:78px}.brand{color:#fff;text-decoration:none;display:flex;align-items:center;gap:.75rem;font-size:1.25rem}.brand:hover{color:var(--lime)}.brand-logo{width:52px;height:52px;object-fit:contain;filter:drop-shadow(0 2px 4px #0009);transition:transform .18s ease}.brand:hover .brand-logo{transform:scale(1.05)}.nav-link{color:#e1ebe5!important;font-size:.9rem;font-weight:700}.nav-link:hover{color:var(--lime)!important}.admin-link{border:1px solid #36794f;border-radius:100px;padding:.45rem .8rem!important;margin:.1rem}
.page-shell{min-width:0;min-height:calc(100vh - 150px);padding-top:3rem;padding-bottom:5rem}footer{padding:1.5rem 0;background:#030504;color:#9aaba0;border-top:3px solid var(--green);font-size:.8rem}
.eyebrow{display:block;color:var(--green);font-weight:800;letter-spacing:.16em;text-transform:uppercase;font-size:.75rem;margin-bottom:1rem}.hero{display:flex;justify-content:space-between;align-items:center;min-height:340px}.hero p,.page-heading p,.split-hero p{color:var(--muted);font-size:1.1rem}.rank-orb{width:210px;height:210px;background:var(--green);color:#fff;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:15px 15px 0 var(--lime)}.rank-orb span,.rank-orb small{text-transform:uppercase;letter-spacing:.12em}.rank-orb strong{font:800 5rem/1 "Barlow Condensed"}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:2rem 0}.metric{background:#fff;padding:1.6rem;border-top:5px solid var(--ink);display:flex;flex-direction:column}.metric>span{text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;color:var(--muted)}.metric strong{font-size:3.5rem;line-height:1}.metric small{color:var(--muted)}.metric.accent{background:var(--lime)}
.panel{min-width:0;background:#fff;border:1px solid var(--line);padding:clamp(1.25rem,3vw,2.3rem);margin:1.25rem 0;box-shadow:0 12px 35px #1e38230d;overflow-wrap:anywhere}.panel:not(.mvp-panel){overflow-x:auto}.match-panel{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;border-left:7px solid var(--green)}.match-panel>div{min-width:0}.score{font-size:4rem;white-space:nowrap}.score span{color:var(--lime)}.page-heading{min-width:0;margin:2rem 0 3rem}.page-heading h1{overflow-wrap:anywhere;font-size:clamp(3rem,7vw,5.5rem)}.event-row,.prediction-row{display:flex;min-width:0;align-items:center;gap:1.5rem;justify-content:space-between;padding:1.15rem 0;border-bottom:1px solid var(--line)}.event-row>*{min-width:0}.prediction-match{display:flex;min-width:0;flex:1;flex-direction:column;gap:.5rem}.prediction-match>small{color:var(--muted);font-weight:700}.prediction-teams{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.8rem;max-width:560px}.prediction-team{display:flex;min-width:0;align-items:center;gap:.7rem}.prediction-team strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1.05rem}.prediction-team--away{flex-direction:row-reverse;justify-content:flex-end;text-align:right}.prediction-versus{color:#8a948e;font:800 .72rem/1 Manrope,sans-serif;letter-spacing:.08em;text-transform:uppercase}.team-logo{position:relative;display:grid;flex:0 0 48px;width:48px;height:48px;place-items:center;overflow:hidden;border:1px solid var(--line);border-radius:50%;background:linear-gradient(145deg,#fff,#edf1eb);box-shadow:0 4px 12px #1e38231a}.team-logo img{position:absolute;inset:5px;width:calc(100% - 10px);height:calc(100% - 10px);object-fit:contain}.team-logo__fallback{color:var(--green);font:800 1.25rem/1 "Barlow Condensed",sans-serif}.score-input{display:flex;min-width:0;align-items:center;gap:.5rem}.score-input input{width:60px;height:54px;text-align:center;font-size:1.4rem;font-weight:700;border:1px solid var(--line)}
.dashboard-matchup{display:flex;min-width:0;align-items:center;gap:.85rem}.dashboard-team{display:flex;min-width:0;align-items:center;gap:.65rem}.dashboard-team h2{margin:0}.dashboard-team-score{display:none}.dashboard-versus{color:var(--green);font-weight:800}.dashboard-match>p{margin:.75rem 0 0}
.live-score-control{display:flex;align-items:center;gap:1.25rem}.live-score{display:grid;grid-template-columns:minmax(76px,1fr) auto minmax(76px,1fr);align-items:end;gap:.65rem;padding:.75rem 1rem;border:1px solid var(--line);background:#f7f9f6}.live-score>span{display:grid;justify-items:center;gap:.2rem}.live-score small{max-width:100px;overflow:hidden;color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.live-score output,.live-score>strong{font:800 2.75rem/1 "Barlow Condensed",sans-serif}.live-score>strong{color:var(--lime)}.opponent-goal-actions{display:grid;gap:.5rem}.opponent-goal-actions form,.opponent-goal-actions .btn{width:100%}
.event-assist,.event-points small{display:block;margin-top:.2rem;color:inherit;font-size:.68rem;font-weight:700}.event-points{min-width:76px;padding:.45rem .65rem;border-radius:999px;text-align:center;font-weight:800;white-space:nowrap}.event-points--positive{background:#e6f6e8;color:#17612b}.event-points--negative{background:#fdeaea;color:#9d2424}.event-points--neutral{background:#edf0ed;color:#657069}.live-event-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--line)}.live-event-heading .eyebrow{margin-bottom:.25rem}.live-event-heading h2{margin:0;white-space:nowrap}.live-event-heading>small{color:var(--muted);font-weight:700}.dashboard-event-row{justify-content:flex-start}.dashboard-event-row>span:first-child{width:46px;color:var(--muted);font-weight:800}.event-description{display:flex;min-width:0;flex:1;flex-direction:column}.event-description small{color:var(--muted)}
.event-player{display:flex;align-items:center;gap:.55rem}.match-event--positive .event-player{color:var(--green);font:800 1.2rem/1.15 "Barlow Condensed",sans-serif;letter-spacing:.01em}.match-event--own-goal .event-player,.match-event--own-goal .event-description small,.match-event--own-goal .event-detail{color:#b82920}.match-event-icon{display:inline-grid;flex:0 0 22px;width:22px;height:22px;place-items:center;line-height:1}.match-event-icon--goal{font-size:1.15rem}.match-event-icon--own-goal{filter:grayscale(1) sepia(1) saturate(8) hue-rotate(315deg) brightness(.72)}.match-event-icon--card{width:13px;height:19px;margin-inline:4px 5px;border:1px solid #0002;border-radius:1px;box-shadow:1px 2px 0 #0002;transform:rotate(4deg)}.match-event-icon--yellow{background:#f4cf16}.match-event-icon--red{background:#d82727}
.match-history-heading{margin-bottom:2rem}.match-history-list{display:grid;gap:.85rem}.match-history-card{overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:0 10px 28px #1e38230a}.match-history-card summary{display:grid;grid-template-columns:72px minmax(0,1fr) auto 24px;align-items:center;gap:1rem;padding:1.25rem 1.5rem;cursor:pointer;list-style:none}.match-history-card summary::-webkit-details-marker{display:none}.match-history-card summary:hover{background:#f8faf6}.match-history-card[open] summary{border-bottom:1px solid var(--line);background:#f8faf6}.match-history-date{color:var(--green);font-size:.75rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.match-history-result{display:flex;min-width:0;flex-direction:column}.match-history-result strong{overflow:hidden;font:800 1.45rem/1.2 "Barlow Condensed",sans-serif;text-overflow:ellipsis;white-space:nowrap}.match-history-result strong span{margin:0 .45rem;color:var(--green)}.match-history-result small{color:var(--muted)}.match-history-total{min-width:72px;padding:.55rem .75rem;border-radius:999px;background:#edf0ed;text-align:center;font-weight:800}.match-history-total.is-positive{background:#e6f6e8;color:#17612b}.match-history-total.is-negative{background:#fdeaea;color:#9d2424}.match-history-chevron{font-size:1.5rem;transition:transform .18s ease}.match-history-card[open] .match-history-chevron{transform:rotate(180deg)}.match-history-details{padding:1.5rem}.match-point-breakdown{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1.75rem}.match-point-breakdown article{display:flex;min-width:0;flex-direction:column;padding:1rem;border-top:4px solid var(--ink);background:var(--paper)}.match-point-breakdown article.accent{border-color:var(--green);background:var(--lime)}.match-point-breakdown span{color:var(--muted);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.match-point-breakdown strong{font:800 2rem/1.1 "Barlow Condensed",sans-serif}.match-point-breakdown small{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.match-event-history h3{margin-bottom:.5rem;font:800 1.4rem "Barlow Condensed",sans-serif}.history-event-row{justify-content:flex-start}.history-event-row>span:first-child{width:46px;color:var(--muted);font-weight:800}.clean-sheet-row{margin-top:.35rem;background:#f4faef}.empty-match-history{max-width:760px}
.player-grid,.player-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr));gap:1rem}.player-choice{position:relative;border:1px solid var(--line);padding:1rem;display:flex;flex-direction:column;align-items:center;cursor:pointer}.player-choice:has(input:checked){border:3px solid var(--green);background:#edf7ee}.player-choice input{position:absolute;right:1rem}.avatar{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:var(--lime);font-family:"Barlow Condensed";font-size:1.4rem}.avatar.large{width:82px;height:82px;margin:auto;font-size:2rem}.player-photo{width:82px;height:82px;border-radius:50%;object-fit:cover;margin-bottom:-82px;z-index:1}.player-photo.large{width:110px;height:110px;margin:0 auto 1rem}.player-photo.large+.avatar{display:none}.field{display:grid;min-width:0;grid-template-columns:1fr minmax(120px,220px);gap:1rem;align-items:center;padding:1rem 0;border-bottom:1px solid var(--line)}.field>*{min-width:0;width:100%}input,select{border:1px solid #bdc7bf;border-radius:3px;padding:.7rem;background:#fff}.submit-bar{position:sticky;bottom:0;background:#111714;color:#fff;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;z-index:5}.btn-primary{background:var(--green);border-color:var(--green);font-weight:800}.btn-primary:hover{background:#08562f;border-color:#08562f}.ticket-card{background:#111714;color:#fff;padding:2.5rem;width:min(100%,360px);border-bottom:10px solid var(--lime)}.ticket-card>strong{font:800 5rem "Barlow Condensed";display:block}.split-hero{display:flex;justify-content:space-between;align-items:center;gap:3rem;min-height:60vh}.rules-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.rules-grid .panel{margin:0}.stat-card{min-width:0;background:#fff;padding:1.5rem;text-align:center;overflow-wrap:anywhere}.stat-card>div:last-child{display:grid;grid-template-columns:repeat(4,1fr);margin-top:1rem}.stat-card span{font-weight:800}.stat-card span small{display:block;font-size:.65rem;color:var(--muted)}.table-wrap{overflow:auto;-webkit-overflow-scrolling:touch}.panel>.table{min-width:580px;margin-bottom:0}.standings th{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}.standings a{color:var(--green);font-weight:800}.empty-state{max-width:700px;padding:8vh 0}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:1rem}.admin-card{min-width:0;background:#fff;padding:1.5rem;text-decoration:none;color:var(--ink);border-top:5px solid var(--green);overflow-wrap:anywhere}.admin-card strong{font:800 2rem "Barlow Condensed";display:block}.action-row{display:flex;gap:.5rem;align-items:center;white-space:nowrap}.live-buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem}.live-buttons button{min-height:64px}.btn,.nav-link{touch-action:manipulation}
.admin-matchup{display:flex;min-width:0;align-items:center;gap:.6rem}.admin-match-team{display:flex;min-width:0;align-items:center;gap:.45rem}.admin-match-team .team-logo{flex-basis:40px;width:40px;height:40px}.admin-match-team strong{white-space:nowrap}.admin-match-versus{color:var(--green);font-weight:800}.admin-card-matchup{margin:.65rem 0}.admin-card-matchup .admin-match-team strong{font-size:1.7rem}.live-input-matchup{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem}.live-input-matchup .team-logo{flex-basis:64px;width:64px;height:64px}.live-score-logo{margin-bottom:.15rem}
@media(max-width:991.98px){.navbar{padding-block:.65rem}.navbar-collapse{padding:.85rem 0 .35rem}.navbar-nav{min-width:0;align-items:stretch!important}.navbar .nav-link{display:block;min-height:44px;padding:.7rem .25rem!important;overflow-wrap:anywhere}.navbar .admin-link{margin:.2rem 0;padding-inline:.75rem!important}.navbar-toggler{min-width:44px;min-height:44px}.navbar-collapse form,.navbar-collapse form .nav-link{width:100%;text-align:left}}
@media(max-width:768px){h1{font-size:clamp(2.55rem,13vw,4.5rem);line-height:.92}.page-shell{padding-top:1.25rem;padding-bottom:3.5rem}.page-heading{margin:1.25rem 0 2rem}.page-heading h1{font-size:clamp(2.55rem,13vw,4.5rem)}.hero{min-height:0;align-items:flex-start;flex-direction:column;gap:1.75rem;padding:1.25rem 0 2rem}.rank-orb{align-self:flex-end;width:120px;height:120px;box-shadow:8px 8px 0 var(--lime)}.rank-orb strong{font-size:3rem}.metric-grid{grid-template-columns:1fr 1fr}.metric:last-child{grid-column:1/-1}.match-panel,.split-hero,.postponed-match{align-items:flex-start;flex-direction:column}.live-score-control{width:100%;align-items:stretch;flex-direction:column}.live-score{width:100%}.match-history-card summary{grid-template-columns:52px minmax(0,1fr) auto;padding:1rem}.match-history-chevron{display:none}.match-point-breakdown{grid-template-columns:1fr}.match-history-details{padding:1rem}.split-hero{min-height:0;padding:1.5rem 0;gap:2rem}.ticket-card{padding:1.5rem}.ticket-card>strong{font-size:clamp(3.5rem,18vw,5rem)}.score{font-size:3rem}.rules-grid{grid-template-columns:1fr}.field{grid-template-columns:1fr;gap:.5rem}.field input,.field select{min-height:46px}.submit-bar{margin-inline:calc(var(--bs-gutter-x)*-.5);padding:1rem max(calc(var(--bs-gutter-x)*.5),env(safe-area-inset-right)) calc(1rem + env(safe-area-inset-bottom)) max(calc(var(--bs-gutter-x)*.5),env(safe-area-inset-left));align-items:stretch;flex-direction:column;gap:.8rem}.submit-bar .btn{width:100%;min-height:48px}.prediction-row{align-items:stretch;flex-direction:column;gap:.85rem}.prediction-teams{max-width:none}.prediction-team strong{font-size:.9rem}.prediction-team--away{justify-content:flex-start}.team-logo{flex-basis:42px;width:42px;height:42px}.prediction-row .score-input{align-self:flex-end}.score-input{flex-wrap:wrap}.event-row{flex-wrap:wrap;gap:.55rem 1rem}.postponed-match>strong{font-size:clamp(2rem,13vw,4rem)}.live-buttons{grid-template-columns:1fr}.panel>.table{min-width:540px}}
@media(max-width:768px){.dashboard-match{width:100%}.dashboard-matchup{width:100%;align-items:stretch;flex-direction:column;gap:.65rem}.dashboard-team{width:100%}.dashboard-team h2{min-width:0}.dashboard-team-score{display:block;margin-left:auto;font:800 2.25rem/1 "Barlow Condensed",sans-serif}.dashboard-score-desktop{display:none}.dashboard-versus{display:none}.admin-card-matchup{align-items:flex-start;flex-direction:column}.admin-card-matchup>.admin-match-versus{display:none}.live-input-matchup .team-logo{flex-basis:48px;width:48px;height:48px}}
@media(max-width:768px){.prediction-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem 1rem;scroll-margin-top:1rem}.prediction-match{display:contents}.prediction-match>small{grid-column:1/-1}.prediction-teams{display:flex;grid-column:1;grid-row:2;align-items:stretch;flex-direction:column;gap:.65rem}.prediction-team,.prediction-team--away{min-height:54px;justify-content:flex-start;flex-direction:row;text-align:left}.prediction-versus,.score-input>span{display:none}.prediction-row .score-input{display:flex;grid-column:2;grid-row:2;align-self:stretch;align-items:center;flex-direction:column;justify-content:space-between;gap:.65rem}.score-input input{min-height:54px}}
@media(max-width:480px){.brand{gap:.55rem;font-size:1.05rem}.brand-mark{width:38px;height:38px}.metric-grid{grid-template-columns:1fr}.metric:last-child{grid-column:auto}.metric{padding:1.25rem}.metric strong{font-size:3rem}.panel{padding:1rem}.prediction-teams{gap:.35rem}.prediction-team{gap:.35rem}.prediction-team strong{font-size:.78rem}.team-logo{flex-basis:36px;width:36px;height:36px}.score-input input{width:56px;height:50px}.stat-card>div:last-child{gap:.25rem}.action-row{align-items:flex-start;flex-direction:column}.postponed-toggle{padding:1rem}.mvp-panel__heading{margin-bottom:1.25rem}}
.postponed-toggle{display:flex;gap:1rem;align-items:flex-start;margin:1.5rem 0;padding:1.25rem;background:#fff1ef;border:1px solid #efb2aa}.postponed-toggle input{width:22px;height:22px}.postponed-toggle span{display:flex;flex-direction:column}.postponed-toggle small{color:var(--muted)}.status-badge{display:inline-block;padding:.3rem .65rem;border-radius:100px;background:#e7ebe8;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.status-badge.postponed{background:#b82920;color:#fff}.status-badge.scheduled{background:#dff0df;color:#075a31}.postponed-row{background:#fff4f2}.postponed-match{display:flex;justify-content:space-between;align-items:center;border-left:7px solid #b82920;background:#fff7f5}.postponed-match>strong{font:800 clamp(2rem,5vw,4rem) "Barlow Condensed";color:#b82920}
.match-panel--scheduled{border-left-color:#c8ceca}.match-panel--scheduled .eyebrow,.match-panel--scheduled .dashboard-versus{color:#8a948e}.match-panel--live{border-color:#b9ddb9;border-left-color:var(--green);background:#f3faef;box-shadow:0 14px 38px #16944724}.match-panel--live .score,.match-panel--live .dashboard-team-score{color:var(--green)}.match-panel--live .score span{color:var(--green-dark)}.match-panel--live .dashboard-match>p{color:var(--green-dark);font-weight:700}.match-status-label--live{display:inline-flex;align-items:center;gap:.45rem;width:max-content;padding:.38rem .65rem;border-radius:999px;background:var(--lime);color:var(--green-dark);letter-spacing:.12em}.live-status-dot{width:.55rem;height:.55rem;border-radius:50%;background:var(--green-dark);box-shadow:0 0 0 0 #075c2b66;animation:live-pulse 1.6s ease-out infinite}@keyframes live-pulse{0%{box-shadow:0 0 0 0 #075c2b66;transform:scale(1)}70%{box-shadow:0 0 0 .45rem #075c2b00;transform:scale(1.08)}100%{box-shadow:0 0 0 0 #075c2b00;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.live-status-dot{animation:none}}.dashboard-metrics{gap:.75rem;margin:1.25rem 0}.dashboard-metrics .metric{padding:1rem 1.15rem;border-top-width:3px}.dashboard-metrics .metric strong{font-size:2.4rem}.dashboard-metrics .metric.accent{background:#e4edda}
.match-panel--with-events{position:relative;margin-bottom:0;border-bottom-color:#d9ead8;box-shadow:0 8px 24px #1694471c}.match-panel--with-events::after{content:"";position:absolute;bottom:-1px;left:clamp(1.25rem,3vw,2.3rem);right:clamp(1.25rem,3vw,2.3rem);height:1px;background:#c8dfc7}.live-event-panel{position:relative;margin-top:0;border-color:#b9ddb9;border-top:0;border-left:7px solid var(--green);background:linear-gradient(180deg,#f8fcf5 0,#fff 110px);box-shadow:0 18px 38px #1694471c}.live-event-panel::before{content:"";position:absolute;top:0;left:-7px;width:7px;height:2.2rem;background:var(--lime)}.live-event-kicker{display:flex;align-items:center;gap:.45rem;margin-bottom:.3rem;color:var(--green-dark)}.live-event-kicker .live-status-dot{flex:0 0 auto}.live-event-panel .dashboard-event-row{position:relative;margin-left:.2rem;padding-left:.35rem}.live-event-panel .dashboard-event-row::before{content:"";position:absolute;left:22px;top:0;bottom:0;width:2px;background:#dce9d9}.live-event-panel .dashboard-event-row:last-child::before{bottom:50%}.live-event-panel .dashboard-event-row>span:first-child{position:relative;z-index:1;display:grid;flex:0 0 46px;width:46px;height:34px;place-items:center;border:1px solid #c7ddc7;border-radius:999px;background:#f3faef;color:var(--green-dark);font-size:.76rem}
@media(max-width:768px){.live-event-heading{align-items:flex-start;flex-direction:column;gap:.35rem}.live-event-heading>small{padding-bottom:.35rem}.live-event-panel .dashboard-event-row{display:grid;grid-template-columns:46px minmax(0,1fr);align-items:start}.live-event-panel .event-points{grid-column:2;width:max-content}.live-event-panel .dashboard-event-row::before{bottom:-1px}}
.dashboard-hero{min-height:270px}.dashboard-summary{display:grid;min-width:min(100%,420px);gap:.65rem}.dashboard-summary-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}.dashboard-summary-stats article{display:flex;min-width:0;flex-direction:column;padding:.8rem .9rem;border-top:3px solid var(--green);background:#fff;box-shadow:0 8px 22px #1e38230b}.dashboard-summary-stats span{color:var(--muted);font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.dashboard-summary-stats strong{font:800 2.25rem/1 "Barlow Condensed",sans-serif}.dashboard-summary-stats small{overflow:hidden;color:var(--muted);font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.ticket-status{display:flex;align-items:center;justify-content:flex-end;gap:.4rem;color:#7a847e;font-size:.7rem}.ticket-status>span{width:.42rem;height:.42rem;border-radius:50%;background:#8f9b93}
@media(max-width:480px){.dashboard-metrics{grid-template-columns:1fr 1fr}.dashboard-metrics .metric{padding:.8rem}.dashboard-metrics .metric strong{font-size:2rem}.dashboard-metrics .metric:last-child{grid-column:1/-1}}
@media(max-width:768px){.dashboard-hero{gap:1.25rem;padding-bottom:1rem}.dashboard-summary{width:100%;min-width:0}.dashboard-summary-stats{gap:.4rem}.dashboard-summary-stats article{padding:.65rem}.dashboard-summary-stats strong{font-size:1.8rem}.ticket-status{justify-content:flex-start}}

/* Selecteerbare MVP-badges. De spelerdata en fotobestandsnaam komen rechtstreeks uit de database. */
.mvp-panel{overflow:hidden;background:linear-gradient(155deg,#111714 0%,#07100b 100%);color:#fff;border:0}
.mvp-panel__heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:1.75rem}
.mvp-panel__heading .eyebrow{color:var(--lime);margin-bottom:.35rem}
.mvp-panel__heading h2{margin:0}
.mvp-panel__heading p{max-width:31rem;margin:0;color:#b8c4bc}
.mvp-badge-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:clamp(.75rem,2vw,1.25rem)}
.mvp-player-card{position:relative;display:block;min-width:0;cursor:pointer;-webkit-tap-highlight-color:transparent}
.mvp-player-card__radio{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.mvp-player-card:focus-within{outline:3px solid var(--lime);outline-offset:4px;border-radius:14px}
.mvp-badge{position:relative;display:block;aspect-ratio:5/7;isolation:isolate;filter:drop-shadow(0 16px 18px #0008);transition:transform .18s ease,filter .18s ease}
.mvp-player-card:hover .mvp-badge{transform:translateY(-4px);filter:drop-shadow(0 20px 22px #000a)}
.mvp-badge__background,.mvp-badge__overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;user-select:none}
.mvp-badge__background{z-index:1}
.mvp-badge__overlay{z-index:5}
.mvp-badge__photo-window{position:absolute;z-index:2;left:14%;right:14%;top:14%;bottom:20%;display:grid;place-items:center;overflow:hidden;clip-path:polygon(8% 7%,50% 0,92% 7%,100% 26%,94% 87%,50% 100%,6% 87%,0 26%);background:linear-gradient(160deg,#24352a,#0c140f)}
.mvp-badge__fallback{color:var(--lime);font:800 clamp(2rem,7vw,4.5rem)/1 "Barlow Condensed";letter-spacing:.04em}
.mvp-badge__photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;transform:scale(1.04)}
.mvp-badge__club-logo{position:absolute;z-index:8;left:41%;top:5%;width:18%;height:14%;object-fit:contain;pointer-events:none;user-select:none}
.mvp-badge__number,.mvp-badge__name,.mvp-badge__position,.mvp-badge__selected-label{position:absolute;z-index:8;display:grid;place-items:center;text-transform:uppercase;pointer-events:none}
.mvp-badge__number{left:11.8%;bottom:13.5%;width:23%;height:18%;color:#fff;font:950 clamp(1.85rem,4vw,3.2rem)/1 "Barlow Condensed";letter-spacing:-.06em;text-shadow:0 2px 0 #0008}
.mvp-badge__name{left:36%;right:9%;bottom:18.2%;height:9.5%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;overflow:hidden;color:#fff;font:800 clamp(.6rem,1.2vw,.92rem)/.88 "Barlow Condensed";letter-spacing:.025em;text-align:left}
.mvp-badge__first-name,.mvp-badge__last-name{display:block;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.mvp-badge__last-name{font-size:1.08em;font-weight:800}
.mvp-badge__position,.mvp-badge__selected-label{left:36%;right:12%;bottom:10.2%;height:7.2%;overflow:hidden;color:#dfffd8;font-size:clamp(.42rem,.85vw,.65rem);font-weight:800;letter-spacing:.07em;white-space:nowrap;transition:opacity .18s ease,transform .18s ease}
.mvp-badge__selected-label{color:#fff;font-size:clamp(.4rem,.82vw,.62rem);opacity:0;transform:translateY(4px)}
.mvp-badge::after{content:"";position:absolute;inset:2.7%;z-index:10;border:clamp(3px,.55vw,6px) solid var(--lime);border-radius:34% 34% 42% 42%/18% 18% 24% 24%;opacity:0;filter:drop-shadow(0 0 9px #b8e532);pointer-events:none;transition:opacity .18s ease}
.mvp-player-card:has(.mvp-player-card__radio:checked) .mvp-badge::after,.mvp-player-card:has(.mvp-player-card__radio:checked) .mvp-badge__selected-label{opacity:1}
.mvp-player-card:has(.mvp-player-card__radio:checked) .mvp-badge__selected-label{transform:translateY(0)}
.mvp-player-card:has(.mvp-player-card__radio:checked) .mvp-badge__position{opacity:0}
.mvp-player-card:has(.mvp-player-card__radio:checked) .mvp-badge{animation:mvp-selected-pulse .35s ease}
@keyframes mvp-selected-pulse{50%{transform:scale(1.025)}}
@media(max-width:768px){.mvp-panel__heading{display:block}.mvp-panel__heading p{margin-top:.5rem}.mvp-badge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:390px){.mvp-badge-grid{grid-template-columns:1fr}.mvp-player-card{width:min(100%,230px);margin-inline:auto}}
@media(prefers-reduced-motion:reduce){.mvp-badge{animation:none!important;transition:none!important}}

/* Ranglijst */
.standings-heading{max-width:760px;margin-bottom:1.75rem}.standings-heading p{max-width:650px;margin-bottom:0}.standings-panel{padding:0;overflow:hidden!important}.standings-panel .table-wrap{overflow-x:auto}.standings-panel .standings{min-width:0;margin:0}.standings th{padding:1rem 1.25rem;border-bottom:1px solid var(--line);background:#f7f9f6;color:var(--muted)}.standings td{padding:1rem 1.25rem;vertical-align:middle;border-color:#e5eae6}.standings th:not(:nth-child(2)),.standings td:not(:nth-child(2)){text-align:center}.standings-row{position:relative;cursor:pointer;transition:background-color .16s ease,transform .16s ease}.standings-row:hover,.standings-row:focus{background:#f3f8ef;outline:0}.standings-row:focus-visible{box-shadow:inset 4px 0 0 var(--green)}.standings-row--top-1{background:linear-gradient(90deg,#f2f9dc 0,#fff 42%)}.standings-row--top-2,.standings-row--top-3{background:linear-gradient(90deg,#f7f9f6 0,#fff 36%)}.standing-rank{display:inline-grid;width:2.15rem;height:2.15rem;place-items:center;border-radius:50%;background:#edf0ed;font:800 1.1rem/1 "Barlow Condensed",sans-serif}.standings-row--top-1 .standing-rank{background:var(--lime);color:var(--green-dark)}.standings-row--top-2 .standing-rank,.standings-row--top-3 .standing-rank{background:var(--ink);color:#fff}.standing-player a{display:block;width:max-content;max-width:100%;font-size:1rem;text-decoration:none}.standing-player small{display:block;margin-top:.2rem;color:var(--muted);font-size:.68rem;font-weight:700}.standing-player small span{color:var(--green)}.standing-total{white-space:nowrap}.standing-total strong{font:800 1.75rem/1 "Barlow Condensed",sans-serif;color:var(--green-dark)}.standing-total small{margin-left:.2rem;color:var(--muted);font-size:.65rem;font-weight:800;text-transform:uppercase}

/* Openbare voorspelling */
.public-prediction-heading{margin-bottom:1.5rem}.public-prediction-heading p{margin-bottom:0}.public-points-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin-bottom:2rem}.public-points-summary article{display:flex;min-width:0;flex-direction:column;padding:.85rem 1rem;border-top:3px solid var(--green);background:#fff;box-shadow:0 8px 22px #1e38230b}.public-points-summary article.public-points-summary__total{background:var(--green);color:#fff;border-color:var(--lime)}.public-points-summary span{color:var(--muted);font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.public-points-summary__total span,.public-points-summary__total small{color:#dcebe1}.public-points-summary strong{font:800 2.25rem/1 "Barlow Condensed",sans-serif}.public-points-summary small{overflow:hidden;color:var(--muted);font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.public-prediction-panel{overflow:hidden!important}.public-section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--line)}.public-section-heading .eyebrow{margin-bottom:.25rem}.public-section-heading h2{margin:0}.public-section-heading>small{color:var(--muted);font-weight:700;white-space:nowrap}.public-prediction-row{display:grid;grid-template-columns:minmax(0,1fr) auto 86px}.public-prediction-match{display:flex;min-width:0;flex-direction:column}.public-prediction-match>small{color:var(--green);font-size:.67rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.public-prediction-match>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.public-prediction-match>strong span{color:var(--green)}.public-prediction-score{font:800 1.4rem/1 "Barlow Condensed",sans-serif;white-space:nowrap}.public-bonus-row>span:first-child{display:flex;min-width:0;flex-direction:column}.public-bonus-row>span:first-child small{margin-top:.25rem;color:var(--green);font-weight:800}

@media(max-width:768px){.standings-panel .table-wrap{overflow:visible}.standings-panel .standings{width:100%;table-layout:fixed}.standings th,.standings td{padding:.85rem .75rem}.standings th:first-child,.standings td:first-child{width:58px}.standings th:last-child,.standings td:last-child{width:82px}.standings-detail{display:none}.standing-player a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.standing-player small{font-size:.63rem}.standing-total strong{font-size:1.65rem}.public-points-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.public-prediction-row{grid-template-columns:minmax(0,1fr) auto}.public-prediction-row .event-points{grid-column:1/-1;justify-self:end}.public-prediction-match>strong{white-space:normal}}
@media(max-width:390px){.public-points-summary{gap:.4rem}.public-points-summary article{padding:.7rem}.public-points-summary strong{font-size:1.9rem}.public-section-heading>small{display:none}}

/* Stripe ticketverkoop en betaalresultaat */
.ticket-sale{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:center;gap:clamp(2rem,7vw,7rem);min-height:68vh;padding:2rem 0}.ticket-sale__intro{max-width:720px}.ticket-sale__intro h1{margin:.25rem 0 1.5rem}.ticket-sale__intro>p{max-width:610px;color:var(--muted);font-size:1.1rem;line-height:1.8}.ticket-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin:2.5rem 0 0;padding:0;list-style:none}.ticket-benefits li{display:flex;align-items:center;gap:.65rem;padding-top:1rem;border-top:1px solid #bac4bc;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.ticket-benefits span{color:var(--green);font-family:"Barlow Condensed",sans-serif;font-size:1.35rem}.sale-ticket{position:relative;isolation:isolate;overflow:hidden;min-height:590px;padding:2rem;background:var(--ink);color:#fff;border-radius:4px;box-shadow:24px 24px 0 var(--lime);display:flex;flex-direction:column;justify-content:space-between}.sale-ticket::before{content:"";position:absolute;z-index:-1;right:-95px;top:88px;width:320px;height:320px;border:55px solid #ffffff0c;border-radius:50%}.sale-ticket::after{content:"";position:absolute;z-index:-1;right:-15px;bottom:105px;width:180px;height:180px;background:linear-gradient(135deg,transparent 50%,#b8e53212 50%)}.sale-ticket__topline{display:flex;justify-content:space-between;color:#aeb9b2;font-size:.65rem;font-weight:800;letter-spacing:.17em}.sale-ticket__mark{display:grid;place-items:center;align-self:flex-end;width:80px;height:80px;border:2px solid var(--lime);border-radius:50%;color:var(--lime);font:800 2rem/1 "Barlow Condensed",sans-serif}.sale-ticket__label{color:var(--lime);font-size:.7rem;font-weight:800;letter-spacing:.18em}.sale-ticket__price{display:block;margin:.15rem 0;font:800 clamp(5.5rem,11vw,8.5rem)/.85 "Barlow Condensed",sans-serif;letter-spacing:-.055em}.sale-ticket__price small{font-size:.38em;vertical-align:top;line-height:1.4}.sale-ticket__price sup{font-size:.3em;vertical-align:top;line-height:1.8;letter-spacing:-.02em}.sale-ticket p{max-width:310px;color:#b8c4bc;font-size:.85rem;line-height:1.65}.ticket-buy-button{display:flex;width:100%;min-height:58px;align-items:center;justify-content:space-between;padding:.9rem 1.2rem;border:0;border-radius:2px;background:var(--lime);color:#111714;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.ticket-buy-button:hover,.ticket-buy-button:focus{background:#d2f660;color:#111714}.ticket-buy-button:disabled{background:#68716b;color:#c5cbc7;cursor:not-allowed}.sale-ticket__secure,.sale-ticket__unavailable{display:block;margin-top:.75rem;text-align:center;color:#8f9a93;font-size:.68rem}.sale-ticket__unavailable{color:#ffd7d2}.validation-summary-valid{display:none}.sale-ticket .alert{font-size:.8rem;margin:.8rem 0}.sale-ticket .alert ul{margin:0;padding-left:1rem}
.payment-result{max-width:850px;margin:4vh auto;padding:clamp(2rem,7vw,5.5rem);background:#fff;text-align:center;border:1px solid var(--line);box-shadow:20px 20px 0 #dfe5dc}.payment-result__icon{display:grid;width:110px;height:110px;margin:0 auto 2rem;place-items:center;border-radius:50%;background:var(--green);color:#fff;box-shadow:9px 9px 0 var(--lime);font:800 4.5rem/1 "Barlow Condensed",sans-serif}.payment-result .eyebrow{margin-bottom:.75rem}.payment-result h1{margin:0 auto 1.25rem;font-size:clamp(3.2rem,8vw,6rem)}.payment-result>p{max-width:610px;margin:0 auto;color:var(--muted);font-size:1.08rem;line-height:1.75}.payment-result__actions{max-width:380px;margin:2.5rem auto 1rem}.payment-result__actions a{text-decoration:none}.payment-result__actions .ticket-buy-button{min-height:72px;padding:1rem 1.4rem;font-size:1rem}.payment-result__login-note{display:block;margin-top:.85rem;color:#66706a;line-height:1.5}.payment-result>small{color:#87918b}.payment-result--pending .payment-result__icon{background:#d99114}.payment-result--cancelled .payment-result__icon,.payment-result--failed .payment-result__icon{background:#9f2d25;box-shadow:9px 9px 0 #efb2aa}
@media(max-width:900px){.ticket-sale{grid-template-columns:1fr;align-items:start}.ticket-sale__intro{max-width:none}.sale-ticket{width:min(100%,540px);margin-inline:auto}.ticket-benefits{margin-bottom:1rem}}
@media(max-width:600px){.ticket-sale{padding-top:.5rem}.ticket-benefits{grid-template-columns:1fr}.sale-ticket{min-height:540px;padding:1.35rem;box-shadow:10px 10px 0 var(--lime)}.sale-ticket__mark{width:64px;height:64px}.payment-result{margin:1rem 0;padding:2rem 1.2rem;box-shadow:8px 8px 0 #dfe5dc}.payment-result__icon{width:86px;height:86px;font-size:3.5rem}}

/* Accountpagina's */
.auth-shell{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);align-items:center;gap:clamp(3rem,8vw,8rem);width:min(100%,1120px);min-height:calc(100vh - 260px);margin-inline:auto;padding:2rem 0}.auth-intro{min-width:0}.auth-intro h1{max-width:680px;margin:.2rem 0 1.5rem;font-size:clamp(4.5rem,8vw,7.2rem)}.auth-intro>p{max-width:590px;margin:0;color:var(--muted);font-size:1.08rem;line-height:1.75}.auth-club-mark{display:flex;align-items:center;gap:1rem;width:max-content;margin-top:2.5rem;padding:1rem 1.25rem 1rem 1rem;border:1px solid #cad3cb;background:#fff;box-shadow:8px 8px 0 #dfe6dc;color:var(--muted);font-size:.68rem;letter-spacing:.09em;text-transform:uppercase}.auth-club-mark img{width:52px;height:52px;object-fit:contain}.auth-club-mark strong{color:var(--green-dark);font-size:.85rem}.auth-benefits{display:grid;gap:.75rem;margin:2.25rem 0 0;padding:0;list-style:none;color:#354139;font-size:.86rem;font-weight:700}.auth-benefits li{display:flex;align-items:center;gap:.7rem}.auth-benefits span{display:grid;width:24px;height:24px;place-items:center;border-radius:50%;background:var(--green);color:#fff;font-size:.72rem}
.auth-card-wrap{position:relative;isolation:isolate}.auth-card-wrap::after{content:"";position:absolute;z-index:-1;inset:18px -18px -18px 18px;background:var(--lime)}.auth-card{width:100%;margin:0;padding:clamp(2rem,4vw,3rem);border:1px solid #cfd7d1;border-top:7px solid var(--ink);background:#fff;box-shadow:0 25px 70px #152c1d1a}.auth-card__heading{margin-bottom:2rem}.auth-step{display:block;margin-bottom:.55rem;color:var(--green);font-size:.68rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.auth-card h1,.auth-card h2{margin:0 0 .4rem;font-size:clamp(2.4rem,4.5vw,3.4rem);line-height:1}.auth-card__heading p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.6}.auth-field{display:grid;gap:.45rem;margin-bottom:1.15rem}.auth-field label{margin:0;color:#243029;font-size:.76rem;font-weight:800;letter-spacing:.035em}.auth-field input{width:100%;min-height:52px;padding:.8rem 1rem;border:1px solid #b9c4bc;border-radius:2px;background:#fbfcfa;color:var(--ink);outline:0;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.auth-field input::placeholder{color:#929c95}.auth-field input:hover{border-color:#849087}.auth-field input:focus{border-color:var(--green);background:#fff;box-shadow:0 0 0 4px #1694471f}.auth-field input.input-validation-error{border-color:#b82920;box-shadow:0 0 0 3px #b8292014}.auth-field>span{min-height:.9rem;color:#a12720;font-size:.7rem;font-weight:700}.auth-field--password{position:relative}.auth-forgot{position:absolute;top:0;right:0}.auth-forgot,.auth-switch a,.auth-back{color:var(--green-dark);font-size:.75rem;font-weight:800;text-decoration-thickness:1px;text-underline-offset:3px}.auth-validation{margin-bottom:1rem;padding:.85rem 1rem;border-left:4px solid #b82920;background:#fff0ee;color:#8b211b;font-size:.76rem;font-weight:700}.auth-validation.validation-summary-valid{display:none}.auth-validation ul{margin:0;padding-left:1rem}.auth-submit{display:flex;width:100%;min-height:54px;align-items:center;justify-content:space-between;margin-top:.5rem;padding:.8rem 1.1rem;border-radius:2px;text-align:left}.auth-submit span{font-size:1.35rem;line-height:1}.auth-switch{margin:1.4rem 0 0;color:var(--muted);font-size:.78rem;text-align:center}
.auth-centered,.auth-status-page{display:grid;min-height:calc(100vh - 260px);place-items:center;padding:2rem 0}.auth-centered .auth-card{width:min(100%,520px)}.auth-back{display:inline-flex;align-items:center;gap:.45rem;margin-bottom:2rem;text-decoration:none}.auth-back:hover{text-decoration:underline}.auth-status-card{width:min(100%,720px);padding:clamp(2rem,6vw,5rem);border:1px solid var(--line);border-top:7px solid var(--ink);background:#fff;box-shadow:18px 18px 0 #dfe6dc;text-align:center}.auth-status-icon{display:grid;width:88px;height:88px;margin:0 auto 2rem;place-items:center;border-radius:50%;background:var(--green);color:#fff;box-shadow:7px 7px 0 var(--lime);font:800 3.2rem/1 "Barlow Condensed",sans-serif}.auth-status-icon--mail{font-family:Manrope,sans-serif;font-size:2rem}.auth-status-icon--error{background:#a82c24;box-shadow:7px 7px 0 #efb2aa}.auth-status-card .eyebrow{margin-bottom:.7rem}.auth-status-card h1{margin:0 auto 1.2rem;font-size:clamp(3rem,7vw,5.4rem);line-height:.92}.auth-status-card>p{max-width:560px;margin:0 auto;color:var(--muted);font-size:1rem;line-height:1.75}.auth-status-card .auth-status-note{margin-top:1.35rem;padding-top:1.35rem;border-top:1px solid var(--line);font-size:.78rem}.auth-status-celebration{display:block;width:min(100%,360px);height:auto;margin:2rem auto 0}.auth-status-action{display:inline-flex;align-items:center;gap:2rem;justify-content:space-between;min-width:220px;min-height:50px;margin-top:2rem;border-radius:2px;font-weight:800}
@media(max-width:900px){.auth-shell{grid-template-columns:1fr;gap:2.5rem;min-height:0;padding:1rem 0 3rem}.auth-intro h1{font-size:clamp(3.6rem,12vw,6rem)}.auth-intro>p{max-width:680px}.auth-card-wrap{width:min(100%,620px);margin-inline:auto}.auth-club-mark{margin-top:1.5rem}.auth-shell--register .auth-intro{display:none}.auth-centered,.auth-status-page{min-height:0;padding:1rem 0 3rem}}
@media(max-width:576px){.auth-shell{gap:1.75rem;padding-top:0}.auth-intro h1{margin-bottom:1rem;font-size:clamp(3.2rem,16vw,4.7rem)}.auth-intro>p{font-size:.95rem}.auth-club-mark{display:none}.auth-card-wrap::after{inset:9px -9px -9px 9px}.auth-card{padding:1.5rem 1.2rem}.auth-card__heading{margin-bottom:1.5rem}.auth-card h1,.auth-card h2{font-size:2.55rem}.auth-status-card{padding:2.25rem 1.2rem;box-shadow:8px 8px 0 #dfe6dc}.auth-status-icon{width:72px;height:72px;margin-bottom:1.5rem;font-size:2.7rem}.auth-status-icon--mail{font-size:1.7rem}.auth-status-card h1{font-size:3rem}.auth-status-action{width:100%}}

/* Spelregels */
.rules-heading{max-width:800px;margin-bottom:2rem}.rules-heading h1{margin-bottom:1rem}.rules-heading p{max-width:720px;line-height:1.7}.rules-intro{display:flex;align-items:center;gap:1.1rem;margin-bottom:1.25rem;padding:1.15rem 1.35rem;border:1px solid #b8d8bd;border-left:6px solid var(--green);background:linear-gradient(105deg,#eaf7e9,#f8fbf6);box-shadow:0 8px 22px #1e38230a}.rules-intro__icon{display:grid;flex:0 0 46px;width:46px;height:46px;place-items:center;border-radius:50%;background:var(--green);color:#fff}.rules-intro svg,.rule-card__icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.rules-intro strong{display:block;margin-bottom:.15rem;color:var(--green-dark);font:800 1.2rem "Barlow Condensed",sans-serif}.rules-intro p{margin:0;color:#455149;font-size:.88rem;line-height:1.55}
.rules-grid--enhanced{align-items:start;gap:1.15rem}.rule-card{position:relative;min-width:0;overflow:hidden;border:1px solid var(--line);border-top:6px solid var(--green);background:#fff;box-shadow:0 14px 35px #1e38230d}.rule-card::after{content:"";position:absolute;right:-45px;top:-45px;width:120px;height:120px;border-radius:50%;background:#1694470b}.rule-card--player{border-top-color:#d69f13}.rule-card--events{border-top-color:#b54d34}.rule-card--bonus{border-top-color:#507bba}.rule-card__header{display:flex;align-items:center;gap:1rem;padding:1.4rem 1.5rem 1rem}.rule-card__header>div>span{display:block;margin-bottom:.15rem;color:var(--muted);font-size:.65rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.rule-card__header h2{margin:0;font-size:clamp(1.8rem,4vw,2.3rem)}.rule-card__icon{display:grid;flex:0 0 54px;width:54px;height:54px;place-items:center;border-radius:15px;background:#e9f7e8;color:var(--green-dark);transform:rotate(-2deg)}.rule-card--player .rule-card__icon{background:#fff4cf;color:#8b6200}.rule-card--events .rule-card__icon{background:#fff0eb;color:#963c28}.rule-card--bonus .rule-card__icon{background:#ebf3ff;color:#315f9d}.rule-card__lead{min-height:3.9rem;margin:0;padding:0 1.5rem 1.25rem;color:var(--muted);font-size:.9rem;line-height:1.6}
.points-list{margin:0;padding:0 1.5rem 1.5rem;list-style:none}.points-list li{display:flex;align-items:center;gap:.85rem;padding:.8rem 0;border-top:1px solid #e8ece8}.points-list li>span{display:flex;min-width:0;flex-direction:column}.points-list b{font-size:.86rem}.points-list small{margin-top:.12rem;color:var(--muted);font-size:.7rem;line-height:1.45}.points-pill{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border-radius:50%;background:var(--green);color:#fff;font:800 1.4rem "Barlow Condensed",sans-serif;box-shadow:3px 3px 0 var(--lime)}.points-pill::after{content:"pt";margin-left:-2px;font:700 .48rem Manrope,sans-serif}.points-pill--muted{background:#77827a;box-shadow:3px 3px 0 #ccd3ce}
.rule-subsection{margin:0 1.5rem 1rem;padding:1rem;border-radius:5px;background:#f6f8f4}.rule-subsection h3{display:flex;align-items:center;gap:.45rem;margin:0 0 .7rem;color:var(--green-dark);font:800 1.18rem "Barlow Condensed",sans-serif}.position-points{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem}.position-points span{display:flex;min-width:0;flex-direction:column;padding:.55rem;border:1px solid #dfe6dc;background:#fff;color:var(--muted);font-size:.62rem;text-align:center}.position-points b{margin-top:.2rem;color:var(--green-dark);font:800 1.25rem "Barlow Condensed",sans-serif}.rule-note{margin:1.25rem 1.5rem 1.5rem;padding:1rem;border-left:4px solid #c4d0c4;background:#f6f8f4;color:#4d5951;font-size:.72rem;line-height:1.6}.rule-note strong{color:#253229}
.rule-subsection--events{margin-top:1.25rem;margin-bottom:.55rem;background:#fff7f5}.rule-subsection--events h3{margin-bottom:.35rem;color:#963c28}.rule-subsection--events p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.55}
.event-points-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;padding:0 1.5rem}.event-points-grid>div{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:.45rem;padding:.8rem;border:1px solid #f0d2ca;background:#fff7f5;color:#6e3024;font-size:.72rem;font-weight:700}.event-points-grid b{color:#a33425;font:800 1.25rem "Barlow Condensed",sans-serif}.event-points-grid .is-positive{border-color:#c5dfc5;background:#f0f9ed;color:#286039}.event-points-grid .is-positive b{color:var(--green)}.event-symbol{display:grid;width:24px;height:24px;place-items:center}.event-symbol--yellow,.event-symbol--red{width:12px;height:19px;margin-left:5px;border-radius:1px;background:#f0c91e;box-shadow:1px 2px 0 #0002;transform:rotate(4deg)}.event-symbol--red{background:#cf2d29}
.bonus-list{display:grid;gap:.55rem;margin:0;padding:0 1.5rem;list-style:none}.bonus-list li{display:flex;align-items:center;gap:.75rem;min-height:48px;padding:.7rem .85rem;border:1px solid #d9e2ef;background:#f5f8fc;color:#314862;font-size:.78rem;font-weight:700}.bonus-list li>span:first-child{font-size:1.15rem}.rule-card--bonus .rule-note{border-left-color:#7ca1d2;background:#f3f7fc}
@media(max-width:768px){.rules-intro{align-items:flex-start}.rules-grid--enhanced{gap:1rem}.rule-card__lead{min-height:0}.position-points{grid-template-columns:1fr}.position-points span{align-items:center;justify-content:space-between;flex-direction:row;text-align:left}.position-points b{margin:0}.event-points-grid{grid-template-columns:1fr}}
@media(max-width:420px){.rules-intro{padding:1rem}.rules-intro__icon{flex-basis:40px;width:40px;height:40px}.rule-card__header{padding:1.15rem 1rem .85rem}.rule-card__icon{flex-basis:46px;width:46px;height:46px}.rule-card__lead,.points-list,.event-points-grid,.bonus-list{padding-left:1rem;padding-right:1rem}.rule-subsection,.rule-note{margin-left:1rem;margin-right:1rem}}

/* Puntenlabels per wedstrijd in de openbare voorspelling */
.public-prediction-row{grid-template-columns:minmax(0,1fr) auto auto;align-items:end}
.public-match-points{display:flex;gap:.45rem}
.public-match-points .event-points{min-width:86px}
.public-prediction-score{display:flex;align-items:center;gap:.4rem}.public-prediction-score__prediction,.public-prediction-legend{color:var(--green)}.public-prediction-score__result{color:var(--ink)}
@media(max-width:768px){.public-section-heading{align-items:flex-start;flex-direction:column;gap:.35rem}.public-section-heading h2{white-space:nowrap}.public-match-points{grid-column:1/-1;justify-self:end}}

/* Spelersranglijst */
.player-ranking-card{position:relative;border-top:5px solid transparent}
.player-ranking-card--top-1{border-top-color:var(--lime);background:linear-gradient(180deg,#f7fbe9 0,#fff 38%)}
.player-ranking-card--top-2,.player-ranking-card--top-3{border-top-color:var(--ink)}
.player-ranking-position{position:absolute;top:1rem;left:1rem}
.player-ranking-card--top-1 .player-ranking-position{background:var(--lime);color:var(--green-dark)}
.player-ranking-card--top-2 .player-ranking-position,.player-ranking-card--top-3 .player-ranking-position{background:var(--ink);color:#fff}
.stat-card>.player-top-score{display:flex;align-items:center;justify-content:center;flex-direction:column;margin-top:1.25rem;padding:.85rem .35rem;border-block:1px solid var(--line)}
.player-top-score__value{font:800 2.4rem/1 "Barlow Condensed",sans-serif}
.player-top-score__value--positive{color:var(--green)}
.player-top-score__value--neutral{color:var(--ink)}
.player-top-score__value--negative{color:#b82920}
.player-top-score small{margin-top:.25rem;color:var(--muted);font-size:.65rem;font-weight:800;text-transform:uppercase}
.stat-card>.player-stat-details:last-child{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:1rem}

/* Ticketverkoop: gezamenlijke clubpresentatie */
.sale-ticket{min-height:640px;padding:1.6rem 1.8rem 1.8rem;background:linear-gradient(155deg,#17231c 0%,#0d1510 72%);border:1px solid #ffffff1c;box-shadow:24px 24px 0 var(--lime),0 24px 65px #101b1438}
.sale-ticket::before{right:-105px;top:50px;width:350px;height:350px;border-color:#b8e5320c}
.sale-ticket__clubs{display:flex;align-items:center;justify-content:center;gap:1.6rem;margin:1rem 0 .7rem}
.sale-ticket__logo{display:grid;height:116px;place-items:center}
.sale-ticket__logo img{display:block;max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 8px 12px #00000045)}
.sale-ticket__logo--club{width:116px;flex:0 0 116px}
.sale-ticket__logo--supporters{width:165px}
.sale-ticket__product{padding-top:1.25rem;border-top:1px dashed #ffffff38}
.sale-ticket__price{margin:.2rem 0 .45rem;text-shadow:0 10px 35px #00000052}
.sale-ticket__product p{margin-bottom:.65rem}
.ticket-buy-button{position:relative;overflow:hidden;min-height:64px;padding:1rem 1.25rem;box-shadow:0 10px 28px #00000032;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.ticket-buy-button:not(:disabled):hover,.ticket-buy-button:not(:disabled):focus{transform:translateY(-2px);box-shadow:0 14px 32px #00000042}
.ticket-buy-button span:last-child{display:grid;width:32px;height:32px;place-items:center;border-radius:50%;background:#111714;color:var(--lime);font-size:1.15rem}
@media(max-width:600px){.sale-ticket{min-height:600px;padding:1.2rem;box-shadow:10px 10px 0 var(--lime)}.sale-ticket__clubs{gap:1rem;margin:.7rem 0}.sale-ticket__logo{height:88px}.sale-ticket__logo--club{width:88px;flex-basis:88px}.sale-ticket__logo--supporters{width:132px}.sale-ticket__price{font-size:5.6rem}.sale-ticket__product{padding-top:1rem}}
@media(max-width:380px){.sale-ticket__logo{height:76px}.sale-ticket__logo--club{width:76px;flex-basis:76px}.sale-ticket__logo--supporters{width:112px}.sale-ticket__clubs{gap:.75rem}}

/* Keep MVP counts visible while player and season names wrap on small screens. */
.mvp-ranking-table{width:100%;table-layout:fixed;margin-bottom:0}
.mvp-ranking-table th,.mvp-ranking-table td{vertical-align:middle;overflow-wrap:anywhere}
.mvp-ranking-table th:first-child,.mvp-ranking-table td:first-child{width:3.5rem;color:var(--muted)}
.mvp-ranking-table .mvp-ranking-count{width:9rem;text-align:right;font-variant-numeric:tabular-nums}
.mvp-ranking-name{display:block;font-weight:700}
.mvp-ranking-detail{display:block;margin-top:.25rem;font-size:.8rem;font-weight:400;color:var(--muted)}
.mvp-ranking-count strong{font-size:1.4rem;color:var(--green-dark)}
.mvp-ranking-table caption{font-size:.8rem;color:var(--muted);padding-top:1rem}
@media(max-width:575.98px){
    .panel.mvp-ranking{padding:1rem .75rem}
    .mvp-ranking-table th,.mvp-ranking-table td{padding:.75rem .35rem}
    .mvp-ranking-table th:first-child,.mvp-ranking-table td:first-child{width:2.5rem}
    .mvp-ranking-table .mvp-ranking-count{width:5rem}
    .mvp-ranking-table thead th{font-size:.75rem}
}

/* Admin: silent corrections of completed matches. */
.correction-event { border: 1px solid #d7dde2; border-radius: 12px; padding: 1rem; margin-bottom: 1rem; min-width: 0; }
.correction-event legend { float: none; width: auto; font-size: 1rem; font-weight: 700; padding: 0 .4rem; }
.correction-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem 1rem; }
.correction-event-deleted { opacity: .6; border-style: dashed; }
@media (max-width: 600px) { .correction-fields { grid-template-columns: 1fr; } }
