.player-card { color: inherit; text-decoration: none; transition: transform .2s, box-shadow .2s; }
.player-card:hover { transform: translateY(-3px); box-shadow: 0 10px 28px #1020151a; }
.card-link { display: block; margin-top: 16px; color: var(--green); font-size: .75rem; font-weight: 700; }
.player-hero { display: flex; gap: 24px; align-items: center; margin-bottom: 30px; }
.player-hero h1 { margin: 0 0 8px; color: var(--green); }
.avatar.large { width: 86px; height: 86px; font-size: 2.4rem; flex: 0 0 auto; }
.profile-life { display: inline-block; margin-right: 3px; }
.profile-life.lost { filter: grayscale(1); opacity: .22; }
.section-head.compact { margin: 0 0 18px; }
.form-guide { display: flex; gap: 10px; flex-wrap: wrap; }
.form-result { width: 48px; height: 55px; display: grid; place-items: center; border-radius: 9px; background: #e7e9e6; font: 700 1.15rem Oswald; }
.form-result small { display: block; margin-top: -12px; font: 500 .58rem 'DM Sans'; opacity: .75; }
.form-result.won { background: #d9f2df; color: var(--green); }
.form-result.lost { background: #f6ddda; color: #9d2d28; }
.form-result.pending { background: #fff1bf; color: #795d00; }
.profile-stats { grid-template-columns: repeat(3, 1fr); margin-top: 20px; }
.profile-stats small { color: var(--muted); font-size: .7rem; }
.profit-card strong { color: var(--green); }
.profit-card.negative strong { color: var(--red); }
.profile-history { margin-top: 20px; }
.profile-form-guide { margin-top: 20px; }
@media(max-width:800px){.profile-stats{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.profile-stats{grid-template-columns:1fr}.player-hero{align-items:flex-start}}
.historic-fines { margin-top: 20px; }
.historic-fines h3 { margin-top: 24px; color: var(--green); }
.historic-fine-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.historic-fine-grid div { padding: 16px; border-radius: 9px; background: #f0f1eb; }
.historic-fine-grid span,.historic-fine-grid strong { display: block; }
.historic-fine-grid span { color: var(--muted); font-size: .72rem; }
.historic-fine-grid strong { margin-top: 4px; font: 600 1.5rem Oswald; }
@media(max-width:700px){.historic-fine-grid{grid-template-columns:1fr 1fr}}
.historic-fine-grid small { display: inline-block; margin-top: 10px; }
.historic-fine-form { display: grid; grid-template-columns: 1fr 140px 140px 120px auto; gap: 12px; align-items: end; padding: 12px 0; border-bottom: 1px solid var(--line); }
.historic-fine-form strong { align-self: center; }
.admin-list > h3 { margin-top: 28px; }
.admin-list > h3::before { content: ""; display: block; height: 12px; }
.paid-check { display: flex; align-items: center; gap: 7px; padding-bottom: 11px; }
.paid-check input { width: auto; }
@media(max-width:700px){.historic-fine-form{grid-template-columns:1fr 1fr}.historic-fine-form strong{grid-column:1/-1}}
.homepage-form-guide { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 20px; }
.form-highlight { position: relative; overflow: hidden; padding: 22px 25px; border-radius: 14px; background: var(--paper); border: 1px solid var(--line); }
.form-highlight span,.form-highlight strong,.form-highlight p { display: block; }
.form-highlight span { font-size: .7rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.form-highlight strong { margin-top: 8px; font: 600 2rem Oswald; text-transform: uppercase; }
.form-highlight p { margin: 2px 0 0; color: var(--muted); }
.form-highlight.positive { border-left: 5px solid var(--green); }
.form-highlight.negative { border-left: 5px solid var(--red); }
@media(max-width:520px){.homepage-form-guide{grid-template-columns:1fr}}
.all-player-form { margin-top: 20px; }
.all-player-form h2 { margin-bottom: 18px; }
.player-form-rows { display: grid; gap: 2px; }
.player-form-row { display: grid; grid-template-columns: 100px 1fr; align-items: center; min-height: 46px; border-top: 1px solid var(--line); }
.player-form-row>strong { font-family: Oswald; text-transform: uppercase; }
.form-circles { display: flex; gap: 7px; align-items: center; }
.form-circles small { color: var(--muted); }
.form-circle { width: 27px; height: 27px; border-radius: 50%; display: grid; place-items: center; color: white; font-size: .66rem; font-weight: 700; }
.form-circle.won { background: var(--green); }
.form-circle.lost { background: var(--red); }
@media(max-width:520px){.player-form-row{grid-template-columns:72px 1fr}.form-circles{gap:4px}.form-circle{width:23px;height:23px}}
.homepage-active-bet { margin-top: 0; }
.standings-head { margin-top: 14px; }
.fine-pot-line { display: grid; grid-template-columns: 1fr auto auto; gap: 18px; align-items: center; margin-top: 20px; padding: 16px 20px; border: 1px solid var(--line); border-radius: 12px; background: var(--paper); color: var(--ink); text-decoration: none; }
.fine-pot-line span { font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.fine-pot-line strong { font: 600 1.65rem Oswald; color: var(--green); }
.fine-pot-line small { color: var(--green); font-weight: 700; }
@media(max-width:520px){.fine-pot-line{grid-template-columns:1fr auto}.fine-pot-line small{grid-column:1/-1}}
.stats-summary { grid-template-columns: repeat(4, 1fr); }
.stats-summary small { color: var(--muted); }
.profit-positive { color: var(--green); font-weight: 700; }
.profit-negative { color: var(--red); font-weight: 700; }
.stats-team-picks { margin-bottom: 20px; }
.let-down-card { margin-bottom: 20px; }
@media(max-width:800px){.stats-summary{grid-template-columns:1fr 1fr}}
.stats-choice-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.stats-choice { padding: 32px; border: 1px solid var(--line); border-radius: 14px; background: var(--paper); color: var(--ink); text-decoration: none; transition: transform .2s, box-shadow .2s; }
.stats-choice:hover { transform: translateY(-3px); box-shadow: 0 10px 28px #1020151a; }
.stats-choice>span { font-size: 2rem; }
.stats-choice h2 { margin: 18px 0 8px; font-size: 2rem; }
.stats-choice p { color: var(--muted); }
.stats-choice strong { color: var(--green); }
@media(max-width:650px){.stats-choice-grid{grid-template-columns:1fr}}
.season-soon { display: flex; gap: 18px; align-items: center; margin-top: 20px; }
.season-soon>span { font-size: 2rem; }
.season-soon h2,.season-soon p { margin-bottom: 4px; }
.fourfold-slip { display: grid; gap: 14px; }
.fourfold-legs { display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; }
.fourfold-legs>div { background: #1e2c22; padding: 16px; border-radius: 9px; }
.fourfold-legs span,.fourfold-legs strong,.fourfold-legs small,.fourfold-summary span,.fourfold-summary strong { display: block; }
.fourfold-legs span,.fourfold-legs small,.fourfold-summary span { color: #aab5ad; font-size: .72rem; }
.fourfold-legs strong { margin: 7px 0; }
.fourfold-summary { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; padding-top: 14px; border-top: 1px solid #334238; }
.fourfold-summary>div { padding: 8px 16px; }
.fourfold-summary strong { margin-top: 5px; font: 600 1.4rem Oswald; color: var(--lime); }
.season-selector { display: flex; justify-content: flex-end; margin-bottom: 20px; }
.season-selector label { width: min(100%,260px); }
footer { display: flex; justify-content: center; gap: 18px; align-items: center; flex-wrap: wrap; }
footer a { color: #c5cec7; }
.footer-admin { display: flex; gap: 12px; align-items: center; }
.footer-admin form { margin: 0; }
@media(max-width:800px){.fourfold-legs{grid-template-columns:1fr 1fr}}
@media(max-width:600px){
  .table-wrap{overflow:visible}.table-wrap table,.table-wrap thead,.table-wrap tbody,.table-wrap tr,.table-wrap th,.table-wrap td{display:block}.table-wrap thead{display:none}.table-wrap tr{padding:12px 0;border-bottom:1px solid var(--line)}.table-wrap td{display:grid;grid-template-columns:minmax(105px,38%) 1fr;gap:10px;padding:7px 4px;border:0;white-space:normal}.table-wrap td::before{content:attr(data-label);font-size:.65rem;font-weight:700;text-transform:uppercase;color:var(--muted)}.table-wrap td[colspan]::before{display:none}
}
@media(max-width:520px){.fourfold-legs,.fourfold-summary{grid-template-columns:1fr}}
.bet-running-totals { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 14px; }
.bet-running-totals>div { display: flex; justify-content: space-between; align-items: center; padding: 14px 18px; border: 1px solid var(--line); border-radius: 10px; background: var(--paper); }
.bet-running-totals span { color: var(--muted); font-size: .72rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.bet-running-totals strong { font: 600 1.7rem Oswald; color: var(--green); }
.bet-running-totals + .player-grid { margin-top: 14px; }
@media(max-width:520px){.bet-running-totals{grid-template-columns:1fr}}
.achievement-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 16px; }
.achievement-card { position: relative; display: grid; grid-template-columns: 70px 1fr; gap: 18px; align-items: center; min-height: 150px; padding: 24px; border-radius: 14px; border: 1px solid #425777; background: linear-gradient(135deg,#14243c,#1e3556); color: white; outline: none; }
.achievement-card.locked { filter: grayscale(1); opacity: .55; background: linear-gradient(135deg,#30343a,#454a52); }
.achievement-card.unlocked { box-shadow: 0 10px 28px #10294a26; }
.achievement-card.gold { border-color: #d9ad40; }.achievement-card.platinum { border-color: #b9e2ed; }.achievement-card.silver { border-color: #aeb9c7; }.achievement-card.bronze { border-color: #b87945; }
.trophy-icon { width: 66px; height: 66px; display: grid; place-items: center; border-radius: 50%; background: #ffffff14; font-size: 2rem; }
.trophy-state { color: #a8c4e9; font-size: .65rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.achievement-card h2 { margin: 5px 0; }.achievement-card strong,.achievement-card small { display: block; }.achievement-card small,.achievement-card p { color: #b7c6d9; margin: 3px 0 0; }
.achievement-card::after { content: attr(data-tooltip); position: absolute; z-index: 4; left: 20px; right: 20px; bottom: calc(100% + 8px); padding: 12px 14px; border-radius: 8px; background: var(--ink); color: white; font-size: .78rem; line-height: 1.4; opacity: 0; pointer-events: none; transform: translateY(5px); transition: .15s; }
.achievement-card:nth-child(-n+2)::after { top: calc(100% + 8px); bottom: auto; }
.achievement-card:hover,.achievement-card:focus { z-index: 20; }
.achievement-card:hover::after,.achievement-card:focus::after { opacity: 1; transform: translateY(0); }
@media(max-width:700px){.achievement-grid{grid-template-columns:1fr}.achievement-card{grid-template-columns:55px 1fr}.achievement-card:nth-child(2)::after{top:auto;bottom:calc(100% + 8px)}.trophy-icon{width:52px;height:52px}}
.player-trophy-cabinet { margin-top: 20px; }
.player-trophy-season + .player-trophy-season { margin-top: 28px; padding-top: 22px; border-top: 1px solid var(--line); }
.player-trophy-season h3 { margin: 0 0 14px; color: var(--green); }
.player-trophy-grid { display: grid; grid-template-columns: repeat(auto-fill,minmax(125px,1fr)); gap: 12px; }
.player-trophy { position: relative; min-height: 130px; padding: 15px 10px; border: 2px solid #425777; border-radius: 12px; background: linear-gradient(135deg,#14243c,#1e3556); color: white; text-align: center; cursor: help; outline: none; }
.player-trophy.platinum { border-color: #b9e2ed; }.player-trophy.gold { border-color: #d9ad40; }.player-trophy.silver { border-color: #aeb9c7; }.player-trophy.bronze { border-color: #b87945; }
.player-trophy>span,.player-trophy>strong,.player-trophy>small { display: block; }
.player-trophy>span { font-size: 2rem; margin-bottom: 8px; }.player-trophy>strong { font: 600 1rem Oswald; text-transform: uppercase; }.player-trophy>small { margin-top: 5px; color: #b7c6d9; }
.player-trophy::after { content: attr(data-tooltip); position: absolute; z-index: 5; left: 4px; right: 4px; bottom: calc(100% + 8px); padding: 10px; border-radius: 8px; background: var(--ink); color: white; font: 500 .75rem/1.4 'DM Sans'; opacity: 0; pointer-events: none; transform: translateY(5px); transition: .15s; }
.player-trophy:hover::after,.player-trophy:focus::after,.player-trophy.show-description::after { opacity: 1; transform: translateY(0); }
.empty-trophy-message { margin-bottom: 0; color: var(--muted); }
.achievement-section + .achievement-section { margin-top: 42px; padding-top: 34px; border-top: 2px solid var(--line); }
.player-trophy-season.all-time h3 { color: #526d91; }
.admin-actions { display: flex; gap: 8px; align-items: center; }
.admin-actions form { margin: 0; }
.activity-row { display: flex; justify-content: space-between; gap: 20px; padding: 13px 0; border-bottom: 1px solid var(--line); }
.activity-row small { display: block; color: var(--muted); margin-top: 3px; }.activity-row time { color: var(--muted); font-size: .72rem; white-space: nowrap; }
@media(max-width:600px){.admin-actions{width:100%;flex-wrap:wrap}.activity-row{display:block}.activity-row time{display:block;margin-top:7px}}
.admin-tools { display: flex; justify-content: space-between; align-items: center; gap: 24px; margin-top: 20px; }
.admin-tools p { margin-bottom: 0; }.admin-tool-buttons { display: flex; gap: 10px; flex-wrap: wrap; justify-content: flex-end; }.admin-tool-buttons a { text-decoration: none; }
.rules-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 18px; }.rules-grid .panel { position: relative; }.rule-number { display: block; color: var(--green); font: 600 1.8rem Oswald; opacity: .35; }.rules-grid h2 { margin: 6px 0 10px; }.rules-grid p { margin: 0; color: var(--muted); }
.season-champion { display: flex; align-items: center; gap: 22px; padding: 26px; margin-bottom: 20px; border-radius: 14px; background: var(--green); color: white; }.season-champion>span { font-size: 3.4rem; }.season-champion h2 { margin: 2px 0 4px; font-size: 2rem; }.season-champion p { margin: 0; }.season-summary-grid { grid-template-columns: repeat(5,1fr); }.season-summary-grid small { color: var(--muted); }
.fourfold-progress { height: 7px; margin-top: 14px; overflow: hidden; border-radius: 20px; background: #34423a; }.fourfold-progress span { display: block; height: 100%; border-radius: inherit; background: var(--lime); transition: width .3s; }.progress-label { display: block; margin: 6px 0 14px; color: #aab5ad; }.team-pick { display: flex; align-items: center; gap: 9px; }.team-pick i { width: 34px; height: 34px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 50%; background: var(--lime); color: var(--ink); font: 700 .7rem 'DM Sans'; font-style: normal; }.fourfold-legs>div.won { box-shadow: inset 0 -3px var(--lime); }.fourfold-legs>div.lost { box-shadow: inset 0 -3px var(--red); }.fourfold-celebration { display: flex; justify-content: center; align-items: center; gap: 24px; margin-top: 14px; padding: 18px 24px; border-radius: 14px; background: linear-gradient(90deg,#d7ff57,#fff6bd,#d7ff57); text-align: center; animation: celebration-pop .45s ease-out; }.fourfold-celebration>span { font-size: 2rem; }.fourfold-celebration h2,.fourfold-celebration p { margin: 0; }.fourfold-celebration .eyebrow { color: var(--green); }@keyframes celebration-pop{from{transform:scale(.97);opacity:0}to{transform:scale(1);opacity:1}}
@media(max-width:900px){.season-summary-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.admin-tools{align-items:flex-start;flex-direction:column}.admin-tool-buttons{justify-content:flex-start}.rules-grid{grid-template-columns:1fr}}
