@font-face { font-family:'Barlow Condensed'; font-style:normal; font-weight:600; font-display:swap; src:url('/fonts/barlow-condensed-600-latin.woff2?v=20260908-1') format('woff2'); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family:'Barlow Condensed'; font-style:normal; font-weight:700; font-display:swap; src:url('/fonts/barlow-condensed-700-latin.woff2?v=20260908-1') format('woff2'); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family:'Barlow Condensed'; font-style:normal; font-weight:800; font-display:swap; src:url('/fonts/barlow-condensed-800-latin.woff2?v=20260908-1') format('woff2'); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family:Inter; font-style:normal; font-weight:400 700; font-display:swap; src:url('/fonts/inter-400-700-latin.woff2?v=20260908-1') format('woff2'); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
:root { --accent:#e31b23; --club-red:#b5121b; --ink:#1b1b1e; --muted:#6f6a6c; --line:#ddd8da; --paper:#f6f3f4; --white:#ffffff; --green:#12805c; --radius:18px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { position:relative; margin:0; min-width:320px; color:var(--ink); background:radial-gradient(circle at 94% 4%,rgba(199,25,32,.12),transparent 25rem),var(--paper); font-family:Inter,system-ui,sans-serif; }
body>:not(.jersey-watermark) { position:relative; z-index:1; }
.jersey-watermark { position:fixed; z-index:0; top:108px; left:50%; width:min(1120px,100vw); height:1210px; transform:translateX(-50%); opacity:.052; filter:saturate(.82); pointer-events:none; }
.jersey-watermark>span { position:absolute; display:block; width:min(64vw,700px); }
.jersey-watermark-home { top:0; right:0; aspect-ratio:1145/1374; background:url('/jersey-watermark.webp?v=20260906-1') center/contain no-repeat; }
.jersey-watermark-away { top:320px; left:0; aspect-ratio:1145/1373; background:url('/jersey-watermark-away.webp?v=20260909-1') center/contain no-repeat; }
button,select { font:inherit; }
button,a,select { -webkit-tap-highlight-color:transparent; }
.top-line { height:6px; background:linear-gradient(90deg,#151515 0 18%,var(--accent) 18% 82%,#151515 82%); }
.shell { width:min(1160px,calc(100% - 40px)); margin:0 auto; }
.site-header { min-height:112px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.brand { display:flex; align-items:center; gap:12px; color:inherit; text-decoration:none; }
.crest-wrap { width:58px; height:58px; flex:0 0 58px; padding:5px; display:grid; overflow:hidden; place-items:center; border-radius:12px; background:var(--white); box-shadow:0 8px 28px rgba(25,21,17,.08); }
.crest { width:100%; height:100%; display:block; object-fit:contain; }
.brand strong,.brand small { display:block; }
.brand strong { font:800 25px/.85 'Barlow Condensed',sans-serif; letter-spacing:.055em; }
.brand small { margin-top:7px; color:var(--club-red); font:700 10px/1 Inter,sans-serif; letter-spacing:.24em; }
.header-actions { display:flex; align-items:center; gap:18px; }
.header-meta { min-width:150px; padding:10px 0 9px; display:flex; align-items:flex-end; flex-direction:column; gap:10px; }
.other-clubs { display:flex; align-items:center; justify-content:flex-end; gap:10px; }
.other-clubs>span { color:var(--muted); font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; white-space:nowrap; }
.other-club-list { display:flex; align-items:center; gap:6px; }
.other-club-link { width:34px; height:34px; flex:0 0 34px; padding:0; display:grid; overflow:hidden; place-items:center; color:transparent; border:0; border-radius:8px; background:transparent; box-shadow:none; font-size:0; line-height:0; transition:box-shadow .2s,transform .2s; }
.other-club-link:hover,.other-club-link:focus-visible { box-shadow:0 0 0 2px rgba(181,18,27,.75); transform:translateY(-1px); outline:0; }
.other-club-link img { width:100%; height:100%; display:block; object-fit:contain; }
.team-switch { display:flex; align-items:center; gap:8px; color:var(--muted); font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.team-switch[hidden] { display:none; }
.team-switch select { width:128px; height:34px; padding:0 28px 0 10px; border:1px solid var(--line); border-radius:9px; color:var(--ink); background:rgba(255,253,249,.78); font-size:11px; font-weight:700; cursor:pointer; }
.live-status { display:flex; align-items:center; gap:8px; color:var(--muted); font-size:13px; font-weight:600; }
.live-status span { width:8px; height:8px; border-radius:50%; background:var(--green); box-shadow:0 0 0 4px rgba(18,128,92,.12); }
.live-block { display:flex; align-items:flex-end; flex-direction:column; gap:5px; }
.header-next-update { color:var(--muted); font-size:8px; font-weight:600; line-height:1.3; white-space:nowrap; }
.team-heading { padding:54px 0 30px; display:flex; align-items:end; justify-content:space-between; gap:30px; }
.team-copy { min-width:0; flex:1; }
.team-title-line { display:flex; align-items:center; gap:26px; }
.training-schedule { min-width:340px; margin:0; padding:8px 11px 9px; display:grid; gap:5px; border-left:3px solid var(--accent); background:rgba(255,253,249,.72); }
.training-schedule[hidden] { display:none; }
.training-schedule>span { color:var(--club-red); font-size:7px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.training-schedule>div { display:grid; grid-template-columns:61px 80px 1fr; align-items:baseline; gap:8px; color:var(--muted); font-size:9px; line-height:1.25; }
.training-schedule strong { color:var(--ink); font-size:9px; }
.training-schedule b { color:var(--ink); font-size:9px; font-weight:700; }
.training-schedule em { overflow:hidden; font-style:normal; text-overflow:ellipsis; white-space:nowrap; }
.eyebrow { margin:0 0 7px; color:var(--club-red); font-size:12px; font-weight:800; letter-spacing:.18em; }
h1 { margin:0; font:800 clamp(44px,7vw,76px)/.88 'Barlow Condensed',sans-serif; letter-spacing:-.025em; text-transform:uppercase; }
h1.compact { font-size:clamp(42px,4vw,60px); }
#category { margin:14px 0 0; color:var(--muted); font-size:15px; }
.previous-season-note { width:fit-content; margin:9px 0 0; padding:5px 8px; border-left:2px solid var(--accent); color:var(--muted); background:rgba(255,253,249,.55); font-size:10px; line-height:1.35; }
.previous-season-note[hidden] { display:none; }
.season-control { min-width:190px; }
.selector-stack { display:flex; align-items:end; gap:12px; }
.selector-stack[hidden] { display:none; }
.season-control[hidden] { display:none; }
.season-control span { display:block; margin-bottom:8px; color:var(--muted); font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.season-control select { width:100%; height:46px; padding:0 42px 0 15px; border:1px solid var(--line); border-radius:12px; color:var(--ink); background:var(--white); font-weight:700; cursor:pointer; }
.calendar-subscribe-trigger { min-height:46px; padding:0 15px; border:1px solid var(--ink); border-radius:12px; color:#fff; background:var(--ink); font-size:11px; font-weight:800; white-space:nowrap; cursor:pointer; }
.calendar-subscribe-trigger:hover,.calendar-subscribe-trigger:focus-visible { border-color:var(--club-red); background:var(--club-red); outline:none; }
.tabs { display:flex; gap:4px; overflow-x:auto; padding:5px; border:1px solid var(--line); border-radius:14px; background:rgba(255,253,249,.62); scrollbar-width:none; }
.tabs::-webkit-scrollbar { display:none; }
.tabs button { min-height:40px; padding:0 17px; border:0; border-radius:10px; color:var(--muted); background:transparent; font-size:13px; font-weight:700; white-space:nowrap; cursor:pointer; }
.tabs button.active { color:#fff; background:var(--ink); }
.tabs button:focus-visible { outline:3px solid rgba(199,25,32,.28); outline-offset:2px; }
.mobile-view-control { display:none; }
.mobile-view-control span { display:block; margin-bottom:8px; color:var(--muted); font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.mobile-view-control select { width:100%; height:48px; padding:0 42px 0 15px; border:1px solid var(--line); border-radius:12px; color:var(--ink); background:var(--white); font-weight:700; cursor:pointer; }
#app { min-height:450px; padding:24px 0 56px; }
.loading-card,.empty-state { padding:60px 24px; border:1px solid var(--line); border-radius:var(--radius); background:var(--white); text-align:center; color:var(--muted); }
.view-loading { min-height:330px; padding:34px; overflow:hidden; border:1px solid var(--line); border-radius:var(--radius); background:var(--white); }
.view-loading p { margin:24px 0 0; color:var(--muted); font-size:13px; }
.skeleton-line,.skeleton-panels span,.skeleton-directory-grid span { display:block; border-radius:12px; background:linear-gradient(100deg,#ece8e9 25%,#f8f6f6 42%,#ece8e9 60%); background-size:240% 100%; animation:skeleton-shift 1.25s ease-in-out infinite; }
.skeleton-line { width:55%; height:14px; }
.skeleton-line.short { width:120px; height:10px; }
.skeleton-line.title { width:min(360px,72%); height:38px; margin-top:12px; }
.skeleton-panels { margin-top:34px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.skeleton-panels span { min-height:135px; }
.directory-skeleton { margin-top:38px; }
.skeleton-directory-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.skeleton-directory-grid span { min-height:300px; border:1px solid rgba(221,216,218,.55); }
@keyframes skeleton-shift { from { background-position:100% 0; } to { background-position:-100% 0; } }
.notice { margin-bottom:18px; padding:17px 19px; display:flex; gap:12px; align-items:flex-start; border:1px solid rgba(199,25,32,.25); border-radius:14px; background:rgba(199,25,32,.08); color:#b5121b; font-size:14px; line-height:1.5; }
.notice-icon { flex:0 0 auto; width:23px; height:23px; display:grid; place-items:center; border-radius:50%; color:#fff; background:var(--accent); font-weight:800; }
.stats-grid { margin-top:14px; display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.stat-card { min-height:136px; padding:21px; border:1px solid var(--line); border-radius:var(--radius); background:var(--white); }
.stat-card.highlight { border-color:var(--ink); color:#fff; background:var(--ink); }
.stat-link,.position-panel { cursor:pointer; transition:border-color .18s,box-shadow .18s,transform .18s; }
.stat-link:hover,.position-panel:hover { border-color:rgba(199,25,32,.7); box-shadow:0 10px 30px rgba(70,18,22,.09); transform:translateY(-1px); }
.stat-link:focus-visible,.position-panel:focus-visible { outline:3px solid rgba(199,25,32,.28); outline-offset:3px; }
.stat-link .stat-foot { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.stat-link .stat-foot span { color:var(--club-red); font-size:16px; font-weight:800; }
.stat-label { color:var(--muted); font-size:11px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.highlight .stat-label { color:#aaa6a1; }
.stat-value { margin-top:13px; font:800 46px/.9 'Barlow Condensed',sans-serif; }
.stat-foot { margin-top:12px; color:var(--muted); font-size:12px; }
.highlight .stat-foot { color:#c8c5c1; }
.previous-card-value { display:block; margin-top:7px; padding-top:6px; border-top:1px solid #ece7e0; color:var(--muted); font-size:9px; font-weight:600; line-height:1.35; }
.highlight .previous-card-value { color:#d6d2cc; border-color:#3d3d3d; }
.dashboard-grid { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(215px,.4fr); gap:14px; }
.panel { padding:24px; border:1px solid var(--line); border-radius:var(--radius); background:var(--white); }
.dashboard-grid>.panel:last-child { padding:18px 20px; }
.balance-panel { padding:0; overflow:hidden; }
.balance-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(235px,.55fr); }
.balance-main { padding:0; display:grid; grid-template-columns:minmax(220px,.9fr) minmax(270px,1.1fr); grid-template-rows:auto 1fr; }
.balance-heading { display:contents; }
.balance-heading>div:first-child { min-width:0; min-height:82px; padding:20px 24px 14px; display:flex; flex-direction:column; justify-content:center; }
.panel-kicker { margin:0 0 7px; color:var(--club-red); font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.panel h2 { margin:0; font:800 27px/1 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.competition-line { width:auto; min-height:64px; max-width:none; margin:14px 20px 8px; padding:10px 12px; display:flex; flex-direction:column; justify-content:center; border-left:3px solid var(--accent); background:#f4f0ea; }
.competition-line span,.competition-line strong { display:block; }
.competition-line span { margin-bottom:4px; color:var(--muted); font-size:7px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.competition-line strong { font-size:9px; line-height:1.4; text-transform:uppercase; }
.competition-line .previous-card-value { margin-top:6px; padding-top:5px; border-color:#ded7cf; font-size:8px; text-transform:none; }
.record { grid-column:1; grid-row:2; margin:0; padding:14px 24px 18px; display:flex; gap:18px; align-items:center; border-top:1px solid #eeeae4; }
.record-item strong { display:block; font:800 31px/1 'Barlow Condensed',sans-serif; }
.record-item span { color:var(--muted); font-size:11px; }
.record-item .previous-card-value { margin-top:5px; padding:0; border:0; font-size:8px; }
.record-separator { height:34px; width:1px; background:var(--line); }
.position-ring { width:76px; height:76px; margin:10px auto 0; display:grid; place-items:center; border:6px solid #f1ede7; border-top-color:var(--accent); border-right-color:var(--accent); border-radius:50%; text-align:center; }
.position-ring strong { font:800 31px/.7 'Barlow Condensed',sans-serif; }
.position-ring span { color:var(--muted); font-size:10px; font-weight:700; text-transform:uppercase; }
.position-link-hint { margin-top:11px; display:flex; align-items:center; justify-content:center; gap:7px; color:var(--club-red); font-size:8px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.position-previous { margin:8px auto 0; padding:0; border:0; text-align:center; }
.panel-title-row,.section-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; }
.form-block { grid-column:2; grid-row:2; margin:0; padding:14px 20px 18px; display:flex; align-items:center; gap:12px; border-top:1px solid #eeeae4; border-left:1px solid #eeeae4; }
.form-block>span { color:var(--muted); font-size:8px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.form-pending { grid-column:2; grid-row:2; max-width:none; margin:0; padding:14px 20px 18px; color:var(--muted); border-top:1px solid #eeeae4; border-left:1px solid #eeeae4; font-size:11px; line-height:1.5; }
.form-strip { display:flex; gap:5px; }
.form-pill { width:27px; height:27px; display:grid; place-items:center; border-radius:50%; color:#fff; font-size:10px; font-weight:800; }
.form-pill.G,.result-label.G,.result-badge.G { background:#12805c; }
.form-pill.E,.result-label.E,.result-badge.E { background:#c58a18; }
.form-pill.P,.result-label.P,.result-badge.P { background:#b44137; }
.summary-staff { padding:16px 18px; display:flex; flex-direction:column; color:var(--ink); background:#f2eee8; border-left:4px solid var(--accent); }
.summary-staff-heading { padding-bottom:8px; border-bottom:1px solid #d9d2ca; }
.summary-staff-heading p { margin:0 0 5px; color:var(--club-red); font-size:8px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.summary-staff-heading h3 { margin:0; font:800 21px/1 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.summary-coach-list { padding:8px 0 5px; display:grid; gap:5px; }
.summary-coach { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:10px; }
.summary-coach-mark { width:30px; height:30px; display:grid; place-items:center; border:1px solid rgba(199,25,32,.35); border-radius:8px; color:var(--club-red); background:#fff5f5; font:800 11px/1 'Barlow Condensed',sans-serif; }
.summary-coach strong,.summary-coach span { display:block; }
.summary-coach strong { color:var(--ink); font-size:10px; line-height:1.35; }
.summary-coach div>span { margin-top:3px; color:var(--muted); font-size:8px; }
.summary-staff-empty { padding:13px 0 8px; }
.summary-staff-empty strong,.summary-staff-empty span { display:block; }
.summary-staff-empty strong { font:800 19px/1.05 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.summary-staff-empty span { margin-top:7px; color:var(--muted); font-size:9px; line-height:1.5; }
.summary-staff-note { margin:0 0 9px; color:var(--muted); font-size:8px; line-height:1.45; }
.summary-staff-link { width:100%; margin-top:auto; padding:8px 0 1px; display:flex; align-items:center; justify-content:space-between; border:0; border-top:1px solid #d9d2ca; color:var(--ink); background:transparent; font-size:8px; font-weight:800; letter-spacing:.08em; text-align:left; text-transform:uppercase; cursor:pointer; }
.summary-staff-link:hover { color:var(--accent); }
.match-highlights { margin-top:14px; display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.match-feature { display:flex; flex-direction:column; }
.match-feature h2 { margin-bottom:24px; }
.match-feature .scoreboard { min-height:54px; }
.match-feature>.venue-line { margin-top:auto; padding-top:22px; }
.scoreboard { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:14px; }
.score-team { min-width:0; display:flex; align-items:center; gap:9px; font-size:13px; font-weight:700; line-height:1.35; }
.score-team.home { justify-content:flex-end; text-align:right; }
.score-team.away { justify-content:flex-start; text-align:left; }
.score-team span { min-width:0; flex:1 1 auto; overflow-wrap:anywhere; }
.match-feature .score-team span { min-height:2.7em; display:flex; align-items:center; }
.match-feature .score-team.home span { justify-content:flex-end; }
.match-feature .score-team.away span { justify-content:flex-start; }
.score-value { min-width:84px; display:flex; align-items:center; justify-content:center; gap:9px; }
.score-value strong { font:800 34px/1 'Barlow Condensed',sans-serif; }
.score-value i { color:var(--muted); font-style:normal; }
.score-value span { color:var(--muted); font-size:12px; font-weight:700; }
.result-label { width:max-content; margin:22px auto 0; padding:6px 11px; display:block; border-radius:999px; color:#fff; font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.venue-line { margin:22px auto 0; display:block; color:var(--muted); font-size:11px; text-align:center; }
.section-heading { margin:7px 0 20px; align-items:end; }
.section-heading h2,.empty-state h2 { margin:0; font:800 clamp(32px,5vw,52px)/.95 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.section-heading>span { max-width:320px; color:var(--muted); font-size:12px; text-align:right; }
.section-note { max-width:720px; margin:-8px 0 22px; color:var(--muted); font-size:12px; line-height:1.55; }
.empty-state .empty-ball { margin:0 auto 15px; width:34px; height:34px; display:grid; place-items:center; border:2px solid var(--accent); border-radius:50%; color:var(--accent); font-size:9px; }
.empty-state p { max-width:520px; margin:12px auto 0; line-height:1.55; }
.match-list { display:grid; gap:9px; }
.match-card { overflow:hidden; border:1px solid var(--line); border-radius:15px; background:var(--white); }
.match-card summary { min-height:94px; padding:14px 18px; display:grid; grid-template-columns:72px 1fr auto 20px; align-items:center; gap:15px; list-style:none; cursor:pointer; }
.match-card summary::-webkit-details-marker { display:none; }
.match-meta { height:54px; display:grid; grid-template-columns:35px 1fr; grid-template-rows:1fr 1fr; align-items:center; border-right:1px solid var(--line); }
.match-meta strong { grid-row:1/3; color:var(--club-red); font:800 23px/1 'Barlow Condensed',sans-serif; }
.match-meta span { color:var(--ink); font-size:11px; font-weight:700; text-transform:capitalize; }
.match-meta small { color:var(--muted); font-size:10px; }
.match-main { min-width:0; }
.scoreboard.compact { grid-template-columns:minmax(90px,1fr) 72px minmax(90px,1fr); gap:9px; }
.scoreboard.compact .score-value strong { font-size:28px; }
.match-venue { margin-top:7px; display:block; overflow:hidden; color:var(--muted); font-size:10px; text-align:center; text-overflow:ellipsis; white-space:nowrap; }
.result-badge { min-width:51px; padding:6px 8px; border-radius:8px; color:#fff; font-size:10px; font-weight:800; text-align:center; }
.result-badge.pending { min-width:78px; color:var(--muted); background:#efebe5; }
.details-arrow { color:var(--muted); font-size:19px; transition:transform .2s; }
.match-card[open] .details-arrow { transform:rotate(180deg); }
.match-details { padding:22px; display:grid; grid-template-columns:.7fr 1.3fr; gap:28px; border-top:1px solid var(--line); background:#faf8f4; }
.match-facts { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.match-facts div { min-height:67px; padding:13px 15px; border:1px solid var(--line); border-radius:11px; background:var(--white); }
.match-facts span { display:block; margin-bottom:7px; color:var(--muted); font-size:8px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.match-facts strong,.match-facts a { color:var(--ink); font-size:11px; font-weight:700; line-height:1.4; text-decoration:none; }
.match-facts a:hover { color:var(--club-red); }
.detail-wide { grid-column:1/-1; }
.detail-section>h4,.lineup-columns h4 { margin:0 0 12px; color:var(--muted); font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
.goal-list,.lineup-columns ul { margin:0; padding:0; list-style:none; }
.goal-list li { padding:8px 0; display:flex; align-items:center; gap:10px; border-bottom:1px solid var(--line); font-size:12px; }
.goal-list li span { width:34px; color:var(--club-red); font-weight:800; }
.detail-note { margin:0; color:var(--muted); font-size:12px; line-height:1.55; }
.lineup-columns { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.lineup-columns.single { grid-template-columns:1fr; }
.lineup-columns li { padding:5px 0; display:flex; align-items:center; gap:8px; font-size:11px; }
.shirt-number { width:23px; height:23px; display:grid; place-items:center; border-radius:6px; color:var(--club-red); background:rgba(199,25,32,.1); font-size:10px; font-weight:800; }
.table-wrap { overflow-x:auto; border:1px solid var(--line); border-radius:var(--radius); background:var(--white); }
.data-table { width:100%; border-collapse:collapse; font-size:12px; }
.data-table th { padding:13px 16px; color:var(--muted); background:#f1ede7; font-size:9px; letter-spacing:.1em; text-align:left; text-transform:uppercase; }
.data-table td { padding:13px 16px; border-top:1px solid var(--line); }
.data-table th:not(:nth-child(2)),.data-table td:not(:nth-child(2)) { text-align:center; }
.data-table .rank { width:58px; color:var(--muted); font:800 18px/1 'Barlow Condensed',sans-serif; }
.player-name,.standing-team { display:flex; align-items:center; gap:12px; }
.avatar { width:34px; height:34px; flex:0 0 auto; display:grid; place-items:center; border-radius:50%; color:#fff; background:var(--ink); font-size:9px; font-weight:800; }
.avatar.large { width:46px; height:46px; background:var(--accent); }
.goals-total { color:var(--club-red); font:800 23px/1 'Barlow Condensed',sans-serif; }
.round-control span { display:block; margin-bottom:6px; color:var(--muted); font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.round-control select { min-width:160px; height:42px; padding:0 12px; border:1px solid var(--line); border-radius:10px; background:var(--white); font-weight:700; }
.standing-team { min-width:245px; text-align:left; }
.standing-team img { width:30px; height:30px; object-fit:contain; }
.standings-table tr.own-team td { color:#fff; background:var(--ink); border-color:#303030; }
.standings-table tr.own-team .rank { color:var(--accent); }
.player-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; }
.staff-section { margin-bottom:24px; padding:20px; border:1px solid var(--line); border-radius:var(--radius); background:rgba(255,253,249,.62); }
.subsection-heading { margin-bottom:14px; display:flex; align-items:end; justify-content:space-between; gap:18px; }
.subsection-heading .eyebrow { margin-bottom:4px; font-size:9px; }
.subsection-heading h3 { margin:0; font:800 25px/1 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.subsection-heading>span { color:var(--muted); font-size:10px; }
.player-heading { margin-top:28px; }
.staff-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.staff-card { padding:14px; display:flex; align-items:center; gap:12px; border:1px solid var(--line); border-radius:12px; background:var(--white); }
.staff-mark { width:38px; height:38px; flex:0 0 auto; display:grid; place-items:center; border-radius:10px; color:#fff; background:var(--ink); font:800 14px/1 'Barlow Condensed',sans-serif; }
.staff-card h4 { margin:0 0 5px; font-size:12px; }
.staff-card p { margin:0; color:var(--muted); font-size:9px; line-height:1.45; }
.player-card { min-height:104px; padding:17px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:14px; border:1px solid var(--line); border-radius:15px; background:var(--white); }
.squad-number { width:46px; height:52px; display:grid; place-items:center; border:2px solid rgba(199,25,32,.35); border-radius:9px 9px 13px 13px; color:var(--club-red); background:rgba(199,25,32,.08); font:800 26px/1 'Barlow Condensed',sans-serif; }
.player-card h3 { margin:0 0 6px; font-size:13px; line-height:1.3; }
.player-card p { margin:0; color:var(--muted); font-size:10px; }
.player-card dl { margin:0; display:flex; gap:13px; }
.player-card dl div { text-align:center; }
.player-card dt { color:var(--muted); font-size:8px; text-transform:uppercase; }
.player-card dd { margin:4px 0 0; font:800 21px/1 'Barlow Condensed',sans-serif; }
.history-list { display:grid; gap:10px; }
.history-card { min-height:112px; padding:18px 20px; display:grid; grid-template-columns:150px minmax(190px,1fr) 290px auto; align-items:center; gap:22px; border:1px solid var(--line); border-radius:15px; background:var(--white); }
.history-card.current { border-left:5px solid var(--accent); }
.history-season strong { display:block; font:800 27px/1 'Barlow Condensed',sans-serif; }
.history-season span { display:block; margin-top:7px; color:var(--muted); font-size:9px; text-transform:uppercase; }
.history-category h3 { margin:0; font-size:13px; }
.history-category p { margin:7px 0 0; color:var(--muted); font-size:9px; line-height:1.4; }
.history-category p span { display:block; margin-bottom:2px; color:var(--club-red); font-size:7px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.archive-label { margin-top:7px; display:inline-block; padding:4px 7px; border-radius:6px; color:#b5121b; background:rgba(199,25,32,.11); font-size:8px; font-weight:800; text-transform:uppercase; }
.history-numbers { display:grid; grid-template-columns:repeat(5,1fr); gap:10px; }
.history-numbers div { text-align:center; }
.history-numbers strong { display:block; font:800 21px/1 'Barlow Condensed',sans-serif; }
.history-numbers span { color:var(--muted); font-size:8px; text-transform:uppercase; }
.season-link { min-height:34px; padding:9px 12px; border:1px solid var(--line); border-radius:9px; color:var(--ink); background:#f7f4ef; font-size:10px; font-weight:800; white-space:nowrap; cursor:pointer; }
.season-link:hover { border-color:var(--accent); color:var(--club-red); }
.footer { min-height:112px; padding:24px 0; display:grid; grid-template-columns:1fr; border-top:1px solid var(--line); color:var(--muted); font-size:11px; }
.footer p { margin:0; }
.footer-primary { display:flex; align-items:center; justify-content:space-between; gap:24px; }
.footer-disclaimer-link { color:inherit; text-decoration-color:rgba(111,106,108,.45); text-decoration-thickness:1px; text-underline-offset:3px; }
.footer-disclaimer-link:hover { color:var(--club-red); text-decoration-color:currentColor; }
.footer-disclaimer-link:focus-visible { border-radius:3px; outline:2px solid var(--accent); outline-offset:3px; }
.footer-credit { text-align:right; }
.footer-credit a { color:var(--ink); font-weight:700; text-decoration:none; }
.footer-credit a:hover { color:var(--club-red); }
.footer-status-line { width:100%; margin-top:15px; padding-top:12px; display:flex; align-items:center; justify-content:center; flex-wrap:wrap; border-top:1px solid rgba(111,106,108,.18); line-height:1.45; text-align:center; }
.footer-status-line>strong { color:var(--ink); font-size:10px; letter-spacing:.08em; }
.footer-status-line>span { display:inline; }
.footer-status-line>span::before { margin:0 8px; color:rgba(111,106,108,.55); content:'·'; }
#footer-next-update-at { margin-top:0; }
.footer-sync-warning { margin-top:0; color:#9d3439; font-size:10px; font-weight:600; line-height:1.35; }
.footer-sync-warning[hidden] { display:none; }
.legal-main { padding:70px 0 82px; }
.legal-hero { max-width:960px; }
.legal-hero h1 { max-width:900px; font-size:clamp(50px,8vw,92px); }
.legal-hero>p:last-child { max-width:720px; margin:24px 0 0; color:var(--muted); font-size:17px; line-height:1.65; }
.legal-card { max-width:960px; margin:42px 0 0; padding:clamp(28px,5vw,58px); display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:38px 52px; border:1px solid var(--line); border-radius:var(--radius); background:rgba(255,255,255,.9); box-shadow:0 24px 70px rgba(27,27,30,.07); }
.legal-card section { min-width:0; }
.legal-card h2 { margin:0 0 12px; font:800 24px/1 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.legal-card p { margin:0; color:var(--muted); font-size:15px; line-height:1.72; }
.legal-card a { color:var(--club-red); font-weight:700; text-underline-offset:3px; }
.legal-privacy { grid-column:1/-1; padding-top:36px; border-top:1px solid var(--line); }
.legal-privacy>.legal-privacy-intro { max-width:720px; margin-bottom:28px; }
.privacy-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px 44px; }
.privacy-grid section { padding-top:16px; border-top:2px solid rgba(181,18,27,.55); }
.legal-card .privacy-grid h3 { margin:0 0 9px; color:var(--ink); font:800 18px/1.1 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.privacy-grid p+p { margin-top:11px; }
.legal-note { grid-column:1/-1; padding-top:25px; display:flex; justify-content:space-between; gap:20px; border-top:1px solid var(--line); }
.legal-note strong { color:var(--ink); }
.overview-page { color:#fff; background:radial-gradient(circle at 84% 2%,rgba(199,25,32,.38),transparent 34rem),#121214; }
.overview-page .jersey-watermark { top:80px; opacity:.075; filter:saturate(.75); }
.overview-page .site-header { border-color:rgba(255,255,255,.16); }
.overview-page .brand { color:#fff; }
.overview-page .brand small { color:var(--accent); }
.overview-page .other-clubs>span { color:#c9c1c3; }
.overview-page .other-clubs a { background:transparent; box-shadow:none; }
.overview-page .other-clubs a:hover,.overview-page .other-clubs a:focus-visible { box-shadow:0 0 0 2px var(--accent); }
.overview-page .live-status { color:#c9c1c3; }
.overview-page .header-next-update { color:#9e9497; }
.overview-main { padding-bottom:76px; }
.overview-hero { min-height:260px; padding:40px 0 38px; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(260px,.55fr); align-items:end; gap:56px; }
.overview-hero h1 { color:#fff; font-size:clamp(72px,12vw,138px); }
.overview-hero>p { max-width:440px; margin:0 0 12px; color:#c9c1c3; font-size:17px; line-height:1.65; }
.directory-categories { display:flex; flex-wrap:wrap; gap:10px; overflow:visible; padding-bottom:14px; scrollbar-width:none; }
.directory-categories::-webkit-scrollbar { display:none; }
.directory-categories a { min-height:42px; padding:0 15px; display:flex; align-items:center; gap:18px; border:1px solid rgba(255,255,255,.2); border-radius:999px; color:#e9f2fa; font-size:11px; font-weight:800; letter-spacing:.1em; text-decoration:none; text-transform:uppercase; white-space:nowrap; }
.directory-categories a:hover,.directory-categories a:focus-visible { border-color:var(--accent); color:#fff; background:var(--accent); outline:0; }
.directory-categories span { min-width:22px; color:var(--accent); text-align:center; }
.directory-categories a:hover span,.directory-categories a:focus-visible span { color:#fff; }
.directory-snapshot { margin-top:18px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.directory-data-status { min-height:86px; padding:14px 17px; display:flex; align-items:center; justify-content:space-between; gap:18px; border:1px solid rgba(255,255,255,.13); border-radius:14px; background:rgba(255,255,255,.045); }
.directory-status-title { color:var(--accent); font-size:8px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.directory-data-counts { display:flex; align-items:center; }
.directory-data-counts p { min-width:78px; margin:0; display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:7px; }
.directory-data-counts p+p { margin-left:12px; padding-left:12px; border-left:1px solid rgba(255,255,255,.11); }
.directory-data-counts strong { color:#fff; font:800 35px/1 'Barlow Condensed',sans-serif; }
.directory-data-counts span { max-width:60px; color:#9e9497; font-size:8px; font-weight:800; line-height:1.25; letter-spacing:.07em; text-transform:uppercase; }
.week-overview-card { width:100%; min-height:86px; padding:14px 15px; display:grid; grid-template-columns:minmax(0,1fr) minmax(70px,auto) 18px; align-items:center; gap:10px; border:1px solid rgba(227,27,35,.35); border-radius:14px; color:inherit; background:rgba(255,255,255,.045); text-align:left; cursor:pointer; transition:border-color .2s,background .2s; }
.week-overview-card:hover,.week-overview-card:focus-visible { border-color:var(--accent); background:rgba(227,27,35,.13); outline:none; }
.week-overview-copy { min-width:0; display:grid; gap:3px; }
.week-overview-copy small { color:var(--accent); font-size:8px; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.week-overview-copy>strong { color:#fff; font:800 23px/1 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.week-overview-copy>span { overflow:hidden; color:#9e9497; font-size:9px; text-overflow:ellipsis; white-space:nowrap; }
.week-overview-count { min-width:0; padding-left:11px; display:grid; grid-template-columns:1fr; align-items:center; gap:3px; border-left:1px solid rgba(255,255,255,.11); }
.week-overview-count>strong { color:#fff; font:800 35px/1 'Barlow Condensed',sans-serif; }
.week-overview-count>span { max-width:94px; color:#9e9497; font-size:7px; line-height:1.3; }
.week-overview-arrow { color:var(--accent); font-size:19px; font-weight:800; text-align:right; }
.directory-note { margin:16px 0 0; color:#9e9497; font-size:11px; }
.directory-group { scroll-margin-top:30px; margin-top:68px; padding-top:32px; border-top:1px solid rgba(255,255,255,.16); }
.directory-group>header { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; column-gap:28px; }
.directory-group>header>span { grid-column:1/-1; color:var(--accent); font-size:9px; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.directory-group h2 { min-width:0; margin:8px 0 0; color:#fff; font:800 clamp(40px,4.6vw,56px)/.92 'Barlow Condensed',sans-serif; overflow-wrap:anywhere; text-transform:uppercase; }
.directory-group>header>p { margin:0 0 5px; color:#9e9497; font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.directory-grid { margin-top:24px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.directory-card { position:relative; min-height:226px; padding:24px; display:grid; grid-template-rows:auto auto minmax(34px,auto) 1fr auto; gap:12px; overflow:hidden; border:1px solid rgba(255,255,255,.16); border-radius:18px; color:#fff; background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(37,20,22,.42)); text-decoration:none; transition:transform .2s,border-color .2s,background .2s; }
.directory-card::before { position:absolute; inset:0 0 auto; height:3px; background:var(--accent); content:''; }
.directory-card.ready::before { background:#24b47e; }
.directory-card:hover,.directory-card:focus-visible { border-color:rgba(227,27,35,.72); background:linear-gradient(145deg,rgba(199,25,32,.3),rgba(25,19,20,.82)); transform:translateY(-2px); outline:0; }
.directory-card-top { min-width:0; display:flex; align-items:center; justify-content:space-between; gap:10px; }
.directory-status { display:flex; align-items:center; gap:8px; color:#d6e2ed; font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.directory-status i { width:7px; height:7px; border-radius:50%; background:#24b47e; box-shadow:0 0 0 4px rgba(36,180,126,.12); }
.directory-status.pending i { background:var(--accent); box-shadow:0 0 0 4px rgba(227,27,35,.16); }
.directory-victory { flex:none; display:inline-flex; align-items:center; gap:5px; color:#e8c477; font-size:9px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.directory-victory i { width:18px; height:18px; display:grid; place-items:center; border:1px solid rgba(232,196,119,.42); border-radius:50%; background:rgba(232,196,119,.08); font-size:10px; font-style:normal; }
.directory-card h3 { margin:0; font:800 clamp(34px,3.2vw,42px)/.92 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.directory-card>p { margin:0; color:#a9bacb; font-size:11px; line-height:1.5; text-transform:uppercase; }
.directory-card dl { margin:2px 0 0; padding-top:14px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-content:end; border-top:1px solid rgba(255,255,255,.11); }
.directory-card dl div { min-width:0; padding-right:14px; }
.directory-card dl div+div { padding-left:14px; padding-right:0; border-left:1px solid rgba(255,255,255,.11); }
.directory-card dt { color:#7f92a5; font-size:8px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.directory-card dd { margin:6px 0 0; color:#eaf2f8; font-size:10px; font-weight:700; line-height:1.4; overflow-wrap:anywhere; }
.directory-card>strong { margin-top:4px; display:flex; justify-content:space-between; align-items:center; color:var(--accent); font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
.directory-card>strong i { font-size:22px; font-style:normal; transition:transform .2s; }
.directory-card:hover>strong i { transform:translateX(5px); }
.directory-loading { margin:42px 0 0; padding:28px; border:1px solid rgba(255,255,255,.14); border-radius:16px; color:#a9bacb; background:rgba(255,255,255,.04); }
.weekly-dialog-open { overflow:hidden; }
.weekly-overview-dialog { width:min(calc(100% - 28px),980px); max-height:calc(100dvh - 28px); margin:auto; padding:0; overflow:auto; border:0; border-radius:20px; color:var(--ink); background:var(--paper); box-shadow:0 30px 90px rgba(0,0,0,.42); }
.weekly-overview-dialog::backdrop { background:rgba(11,8,9,.82); backdrop-filter:blur(5px); }
.weekly-dialog-shell { position:relative; padding:28px; isolation:isolate; }
.weekly-print-report { display:none; }
.weekly-print-page-crest { display:none; }
.weekly-dialog-header { display:flex; align-items:flex-start; justify-content:space-between; gap:22px; }
.weekly-dialog-header p { margin:0 0 8px; color:var(--club-red); font-size:10px; font-weight:900; letter-spacing:.16em; text-transform:uppercase; }
.weekly-dialog-header h2 { margin:0; font:800 clamp(42px,6vw,66px)/.9 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.weekly-dialog-close { width:42px; height:42px; display:grid; place-items:center; flex:none; border:1px solid var(--line); border-radius:50%; color:var(--ink); background:#fff; font-size:25px; line-height:1; cursor:pointer; }
.weekly-dialog-close:hover,.weekly-dialog-close:focus-visible { border-color:var(--accent); color:var(--club-red); outline:none; }
.weekly-dialog-controls { margin-top:22px; padding:11px 0; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:14px; border-top:1px solid rgba(27,27,30,.16); border-bottom:1px solid rgba(27,27,30,.16); }
.weekly-dialog-controls>button,.weekly-dialog-controls div button { min-height:36px; padding:0 12px; border:1px solid var(--line); border-radius:8px; color:var(--ink); background:var(--paper); font-size:10px; font-weight:800; cursor:pointer; }
.weekly-dialog-controls>button:hover,.weekly-dialog-controls>button:focus-visible,.weekly-dialog-controls div button:hover,.weekly-dialog-controls div button:focus-visible { border-color:var(--accent); color:var(--club-red); outline:none; }
.weekly-dialog-controls>button:disabled,.weekly-dialog-controls>button:disabled:hover,.weekly-dialog-controls>button:disabled:focus-visible { border-color:#ded9dc; color:#aaa3a6; background:#efedef; opacity:.68; outline:none; cursor:not-allowed; }
.weekly-dialog-controls>div { display:flex; align-items:center; justify-content:center; gap:12px; text-align:center; }
.weekly-dialog-controls strong { font-size:14px; }
.weekly-dialog-controls div button { min-height:28px; color:var(--club-red); background:rgba(246,243,244,.78); }
.weekly-dialog-controls div button[hidden] { display:none; }
.weekly-dialog-summary { margin-top:12px; display:grid; grid-template-columns:repeat(3,1fr); border-bottom:1px solid rgba(27,27,30,.16); }
.weekly-dialog-summary div { min-height:72px; padding:12px; display:flex; align-items:center; justify-content:center; flex-direction:column; text-align:center; }
.weekly-dialog-summary div+div { border-left:1px solid rgba(27,27,30,.12); }
.weekly-dialog-summary strong { font:800 30px/1 'Barlow Condensed',sans-serif; }
.weekly-dialog-summary span { margin-top:6px; color:var(--muted); font-size:9px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.weekly-classification-legend { margin:8px 0 -10px; color:#817a7e; font-size:8px; line-height:1.4; text-align:right; }
.weekly-classification-legend[hidden] { display:none; }
.weekly-match-days { margin-top:26px; display:grid; gap:24px; }
.weekly-format-group { position:relative; display:grid; gap:18px; isolation:isolate; }
.weekly-format-group>:not(.weekly-report-watermark) { position:relative; z-index:1; }
.weekly-report-watermark { position:absolute; top:40px; left:12%; z-index:0; width:76%; height:auto; display:block; opacity:.055; object-fit:contain; pointer-events:none; }
.weekly-format-group+.weekly-format-group { padding-top:25px; border-top:1px solid rgba(27,27,30,.42); }
.weekly-format-group>header { padding-bottom:9px; display:flex; align-items:flex-end; justify-content:space-between; gap:15px; border-bottom:1px solid rgba(27,27,30,.42); }
.weekly-format-group>header h3 { margin:0; font:800 30px/1 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.weekly-format-group>header span { color:var(--muted); font-size:9px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.weekly-day h4 { margin:0 0 10px; font:800 22px/1 'Barlow Condensed',sans-serif; text-transform:capitalize; }
.weekly-day-matches { display:grid; }
.weekly-match { min-height:68px; padding:9px 2px 9px 12px; display:grid; grid-template-columns:76px minmax(0,1fr) 82px; align-items:center; gap:14px; border-bottom:1px solid rgba(27,27,30,.14); border-left:3px solid var(--club-red); border-radius:8px 0 0 8px; background:transparent; }
.weekly-match-meta { display:grid; justify-items:start; gap:8px; }
.weekly-type { min-width:62px; padding:5px 7px; border-radius:999px; color:#fff; background:var(--club-red); font-size:8px; font-weight:900; text-align:center; text-transform:uppercase; }
.weekly-match-fixture { min-width:0; display:flex; align-items:center; gap:9px; }
.weekly-match-category { width:84px; flex:0 0 84px; overflow:hidden; color:var(--club-red); font-size:10px; font-weight:800; letter-spacing:.08em; text-overflow:ellipsis; text-transform:uppercase; white-space:nowrap; }
.weekly-match-fixture a { min-width:0; max-width:100%; display:block; flex:1 1 auto; overflow:hidden; color:var(--ink); font-size:13px; font-weight:700; line-height:1.3; text-decoration:none; text-overflow:ellipsis; white-space:nowrap; }
.weekly-match-fixture a:hover,.weekly-match-fixture a:focus-visible { color:var(--club-red); text-decoration:underline; outline:none; }
.weekly-match-position { margin-left:5px; color:#817a7e; font-size:9px; font-weight:600; white-space:nowrap; }
.weekly-match-score { color:var(--muted); font-size:10px; font-weight:800; text-align:center; text-transform:uppercase; }
.weekly-match-score.played { color:var(--ink); font:800 25px/1 'Barlow Condensed',sans-serif; }
.weekly-match.weekly-match-schedule { grid-template-columns:76px minmax(0,1fr) 66px minmax(120px,180px); }
.weekly-match-time { color:var(--ink); font-size:11px; font-weight:900; text-align:center; }
.weekly-match-venue { min-width:0; overflow:hidden; color:var(--muted); font-size:9px; font-weight:700; line-height:1.3; text-align:right; text-decoration-color:rgba(181,18,27,.5); text-overflow:ellipsis; white-space:nowrap; }
a.weekly-match-venue:hover,a.weekly-match-venue:focus-visible { color:var(--club-red); outline:none; text-decoration-thickness:2px; }
.weekly-schedule-report .weekly-dialog-summary div { min-height:58px; padding:8px; }
.weekly-schedule-report .weekly-dialog-summary strong { font-size:26px; }
.weekly-schedule-report .weekly-dialog-summary span { margin-top:4px; font-size:8px; }
.weekly-loading,.weekly-empty { margin:0; padding:34px; border-top:1px solid rgba(27,27,30,.16); border-bottom:1px solid rgba(27,27,30,.16); color:var(--muted); text-align:center; }
.weekly-dialog-actions { margin-top:28px; padding-top:20px; display:flex; align-items:center; justify-content:space-between; gap:22px; border-top:1px solid var(--line); }
.weekly-dialog-actions p { max-width:470px; margin:0; color:var(--muted); font-size:10px; line-height:1.5; }
.weekly-dialog-actions>div { display:flex; gap:8px; }
.weekly-dialog-actions button { min-height:42px; padding:0 13px; border:1px solid var(--line); border-radius:9px; color:var(--ink); background:#fff; font-size:10px; font-weight:800; cursor:pointer; }
.weekly-dialog-actions button.primary { border-color:var(--ink); color:#fff; background:var(--ink); }
.weekly-dialog-actions button:hover,.weekly-dialog-actions button:focus-visible { border-color:var(--accent); color:var(--club-red); outline:none; }
.weekly-dialog-actions button.primary:hover,.weekly-dialog-actions button.primary:focus-visible { color:#fff; background:var(--club-red); }
.weekly-generated { width:max-content; max-width:100%; margin:8px 0 0 auto; color:#918a8d; font-size:8px; letter-spacing:.04em; text-align:right; }
.weekly-generated a { color:inherit; text-underline-offset:2px; }
.calendar-subscribe-open { overflow:hidden; }
body>.calendar-subscribe-dialog { position:fixed; inset:0; width:min(calc(100% - 28px),560px); max-height:calc(100dvh - 28px); margin:auto; padding:0; overflow:auto; overscroll-behavior:contain; border:1px solid #55373a; border-radius:20px; color:#f8f3f4; background:#1d191b; box-shadow:0 30px 90px rgba(0,0,0,.52); -webkit-overflow-scrolling:touch; }
.calendar-subscribe-dialog::backdrop { background:rgba(10,7,8,.82); backdrop-filter:blur(5px); }
.calendar-subscribe-shell { padding:23px; }
.calendar-subscribe-shell>header { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; }
.calendar-subscribe-shell>header p { margin:0 0 8px; color:#ff7379; font-size:11px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.calendar-subscribe-shell>header h2 { margin:0; font:800 29px/1.05 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.calendar-subscribe-shell>header span { margin-top:6px; display:block; color:#cdbfc2; font-size:14px; font-weight:600; }
.calendar-subscribe-close { width:42px; height:42px; display:grid; place-items:center; flex:none; border:1px solid #61484c; border-radius:50%; color:#f8f3f4; background:#1d191b; font-size:24px; line-height:1; cursor:pointer; }
.calendar-subscribe-close:hover,.calendar-subscribe-close:focus-visible { border-color:#ff7379; color:#ff7379; outline:none; }
.calendar-subscribe-explanation { margin:17px 0 0; color:#cdbfc2; font-size:13px; line-height:1.5; }
.calendar-subscribe-options { margin-top:17px; display:grid; grid-template-columns:1fr; gap:9px; }
.calendar-subscribe-options>label { min-height:62px; padding:10px 12px; display:flex; align-items:center; gap:10px; border:1px solid rgba(227,27,35,.62); border-radius:11px; background:rgba(181,18,27,.13); }
.calendar-subscribe-options input,.calendar-team-list input { width:17px; height:17px; flex:none; accent-color:var(--accent); }
.calendar-subscribe-options strong,.calendar-subscribe-options small { display:block; }
.calendar-subscribe-options strong { font-size:12px; }
.calendar-subscribe-options small { margin-top:3px; color:#ac9da0; font-size:9px; line-height:1.3; }
.calendar-team-picker { margin-top:12px; padding:13px; border:1px solid #594145; border-radius:11px; background:#151214; }
.calendar-team-picker[hidden] { display:none; }
.calendar-team-picker>header { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.calendar-team-picker>header>strong { font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
.calendar-team-picker>header>span { display:flex; gap:5px; }
.calendar-team-picker button { min-height:29px; padding:0 9px; border:1px solid #624b4f; border-radius:7px; color:#f8f3f4; background:#2d2427; font-size:9px; font-weight:800; cursor:pointer; }
.calendar-team-picker button:hover,.calendar-team-picker button:focus-visible { border-color:#ff7379; color:#ff7379; outline:none; }
.calendar-team-list { max-height:190px; margin-top:11px; padding-right:5px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:start; gap:11px; overflow:auto; overscroll-behavior:contain; }
.calendar-team-list fieldset { min-width:0; margin:0; padding:0; display:grid; gap:6px; border:0; }
.calendar-team-list legend { margin-bottom:5px; color:#ff7379; font-size:9px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.calendar-team-list label { min-width:0; display:flex; align-items:center; gap:7px; cursor:pointer; }
.calendar-team-list label span { overflow:hidden; font-size:10px; font-weight:700; text-overflow:ellipsis; white-space:nowrap; }
.calendar-team-picker>small { margin-top:10px; display:block; color:#a7979a; font-size:9px; text-align:right; }
.calendar-subscribe-platforms { margin-top:17px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.calendar-subscribe-platforms a { min-height:44px; padding:0 9px; display:flex; align-items:center; justify-content:center; border:1px solid #624b4f; border-radius:10px; color:#f8f3f4; background:#151214; font-size:11px; font-weight:700; text-align:center; text-decoration:none; }
.calendar-subscribe-platforms .calendar-platform-apple { border-color:var(--accent); color:#fff; background:var(--club-red); }
.calendar-subscribe-platforms .calendar-platform-android { border-color:#705a5e; background:#32272a; }
.calendar-subscribe-platforms a:hover,.calendar-subscribe-platforms a:focus-visible { border-color:#ff7379; outline:none; }
.calendar-subscribe-platforms a.disabled { opacity:.38; pointer-events:none; }
.calendar-subscribe-url-row { margin-top:10px; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; }
.calendar-subscribe-url { min-width:0; display:block; }
.calendar-subscribe-url span { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.calendar-subscribe-url input { width:100%; height:44px; padding:0 12px; border:1px solid #594145; border-radius:10px; color:#c4b5b8; background:#151214; font-size:10px; text-overflow:ellipsis; }
.calendar-subscribe-url-row>button { min-height:44px; padding:0 15px; border:0; border-radius:10px; color:#201719; background:#f7f2f3; font-size:10px; font-weight:800; cursor:pointer; }
.calendar-subscribe-url-row>button:hover,.calendar-subscribe-url-row>button:focus-visible { background:#fff; outline:2px solid #ff7379; outline-offset:2px; }
.calendar-subscribe-url-row>button:disabled { opacity:.4; cursor:not-allowed; }
.calendar-subscribe-paste { margin:8px 0 0; color:#9b8b8e; font-size:9px; line-height:1.45; }
.calendar-subscribe-next { margin-top:15px; padding-top:14px; display:grid; gap:7px; border-top:1px solid #594145; }
.calendar-subscribe-next[hidden] { display:none; }
.calendar-subscribe-next strong { color:#f8f3f4; font-size:12px; }
.calendar-subscribe-next span { color:#c4b5b8; font-size:11px; line-height:1.45; }
.calendar-subscribe-privacy { margin:12px 0 0; color:#948387; font-size:9px; line-height:1.45; }
.overview-page .footer { border-color:rgba(255,255,255,.15); color:#9e9497; }
.overview-page .footer-status-line { border-color:rgba(255,255,255,.1); }
.overview-page .footer-status-line>strong { color:#d9cfd1; }
.overview-page .footer-status-line>span::before { color:rgba(158,148,151,.6); }
.overview-page .footer-disclaimer-link { text-decoration-color:rgba(158,148,151,.5); }
.overview-page .footer-credit a { color:#dce8f2; }
.overview-page .footer-sync-warning { color:#dca3a6; }
@media(max-width:980px){.dashboard-grid{grid-template-columns:1fr}.dashboard-grid>.panel:last-child{display:none}.history-card{grid-template-columns:110px 1fr auto}.history-numbers{display:none}.player-grid{grid-template-columns:1fr}}
@media(max-width:900px) and (min-width:781px){.team-title-line{gap:16px}.team-title-line h1{flex:0 0 auto}.training-schedule{min-width:270px}.training-schedule>div{grid-template-columns:52px 76px 1fr;gap:6px}.selector-stack{width:230px;flex:0 0 230px;flex-direction:column;align-items:stretch}.season-control,.calendar-subscribe-trigger{width:100%;min-width:0}}
@media(max-width:780px){.jersey-watermark{top:112px;width:700px;height:900px;opacity:.04}.jersey-watermark>span{width:430px}.jersey-watermark-home{top:0;right:0}.jersey-watermark-away{top:280px;left:0}.shell{width:min(100% - 24px,1160px)}.site-header{min-height:98px}.header-actions{gap:10px}.header-meta{min-width:0;gap:7px}.other-clubs{gap:7px}.other-clubs>span{font-size:8px}.other-clubs a{width:30px;height:30px;flex-basis:30px;padding:0}.team-switch>span{display:none}.team-switch select{width:116px}.live-status{font-size:0}.header-next-update{display:none}.team-heading{padding:40px 0 24px;align-items:stretch;flex-direction:column;gap:24px}.team-title-line{align-items:flex-start;flex-direction:column;gap:15px}.training-schedule{width:100%;min-width:0;margin:0}.selector-stack{width:100%;flex-direction:column;align-items:stretch}.season-control{width:100%}.tabs{display:none}.mobile-view-control{display:block}.stats-grid{grid-template-columns:repeat(2,1fr)}.match-highlights{grid-template-columns:1fr}.footer{flex-direction:column;align-items:center;text-align:center}.footer-updates{text-align:center}.match-card summary{grid-template-columns:62px 1fr auto}.details-arrow{display:none}.match-details{grid-template-columns:1fr}.match-facts{grid-template-columns:1fr 1fr}.history-card{grid-template-columns:96px 1fr auto}.section-heading>span{display:none}.staff-grid{grid-template-columns:1fr}}
@media(max-width:980px) and (min-width:781px){.directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){.overview-page .jersey-watermark{top:100px}.overview-hero{min-height:0;padding:36px 0 30px;grid-template-columns:1fr;gap:22px}.overview-hero h1{font-size:clamp(68px,24vw,110px)}.overview-hero>p{font-size:14px}.directory-categories{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scroll-padding-inline:12px;scroll-snap-type:x proximity}.directory-categories a{scroll-snap-align:start}.directory-snapshot{grid-template-columns:1fr}.directory-group{margin-top:50px;padding-top:28px}.directory-group>header{column-gap:16px}.directory-group h2{font-size:44px}.directory-grid{margin-top:19px;grid-template-columns:1fr}.directory-card{min-height:218px}.overview-page .brand strong{font-size:19px}.overview-page .crest-wrap{width:48px;height:48px;flex-basis:48px}}
@media(max-width:650px){.balance-layout{grid-template-columns:1fr}.balance-main{min-height:238px;padding:26px;display:flex;flex-direction:column}.balance-heading{display:flex;align-items:stretch;flex-direction:column;gap:15px}.balance-heading>div:first-child{min-height:0;padding:0;display:block}.competition-line{width:100%;min-height:0;max-width:100%;margin:0}.form-block{margin-top:24px;padding:0;border:0}.form-pending{max-width:330px;margin:25px 0 0;padding:0;border:0}.record{margin-top:auto;padding:24px 0 0;border:0}.summary-staff{padding:21px;border-top:4px solid var(--accent);border-left:0}.summary-staff-heading{padding-bottom:12px}.summary-coach-list{padding:13px 0 8px;gap:9px}.summary-coach-mark{width:34px;height:34px}.summary-staff-empty{padding:20px 0 12px}.summary-staff-link{padding:10px 0 2px}}
@media(max-width:560px){.match-card summary{padding:12px;grid-template-columns:48px 1fr auto;gap:8px}.match-meta{grid-template-columns:1fr;border-right:0}.match-meta strong{grid-row:auto}.match-meta span,.match-meta small,.match-venue{display:none}.scoreboard.compact{grid-template-columns:minmax(70px,1fr) 58px minmax(70px,1fr)}.score-team{font-size:10px}.score-value{min-width:58px}.lineup-columns,.match-facts{grid-template-columns:1fr}.player-card{grid-template-columns:auto 1fr}.player-card dl{grid-column:1/3;justify-content:flex-end;border-top:1px solid var(--line);padding-top:10px}.subsection-heading{align-items:flex-start;flex-direction:column}.history-card{grid-template-columns:78px 1fr}.history-card .season-link{grid-column:1/3}.standings-heading{align-items:stretch;flex-direction:column}.round-control select{width:100%}}
@media(max-width:430px){.other-clubs>span{display:none}.live-status{display:none}.stats-grid{grid-template-columns:1fr 1fr;gap:9px}.stat-card{min-height:122px;padding:17px}.stat-value{font-size:39px}.panel-title-row{flex-direction:column}.record{gap:11px}.section-heading{align-items:flex-start}.data-table th,.data-table td{padding:11px 10px}}
@media(max-width:780px){.footer-primary,.footer-status-line{width:100%}.footer-primary{flex-direction:column;gap:10px}.footer-credit{text-align:center}.legal-main{padding:46px 0 60px}.legal-hero h1{font-size:clamp(46px,14vw,70px)}.legal-hero>p:last-child{font-size:16px}.legal-card{margin-top:30px;padding:26px;grid-template-columns:1fr;gap:30px}.legal-card h2{font-size:22px}.legal-card p{font-size:15px}.legal-note{grid-column:1;align-items:center;flex-direction:column;text-align:center}}
@media(max-width:780px){.privacy-grid{grid-template-columns:1fr}}
@media(max-width:560px){.footer-status-line{align-items:center;flex-direction:column;gap:3px}.footer-status-line>span::before{display:none}}
@media(max-width:520px){body>.calendar-subscribe-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px);margin:auto;border-radius:15px}.calendar-subscribe-shell{padding:18px}.calendar-subscribe-shell>header{gap:12px}.calendar-subscribe-shell>header h2{font-size:25px}.calendar-subscribe-close{width:38px;height:38px}.calendar-subscribe-explanation{font-size:12px}.calendar-team-list{max-height:180px;grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-subscribe-platforms{gap:6px}.calendar-subscribe-platforms a{min-height:42px;padding:0 5px;font-size:10px}.calendar-subscribe-url input{font-size:8px}.calendar-subscribe-url-row>button{padding:0 11px}}
@media(max-width:780px){
  .jersey-watermark{inset:112px 0 0;width:auto;height:auto;transform:none;overflow:hidden;contain:paint}
  .jersey-watermark-home{right:calc((100vw - 700px)/2)}
  .jersey-watermark-away{left:calc((100vw - 700px)/2)}
  .overview-page .jersey-watermark{inset:100px 0 0;width:auto;height:auto;transform:none}
}

/* Shared compact weekly report and recent-result treatment. */
.directory-card-result{flex:none;display:flex;align-items:flex-start;justify-content:flex-end;gap:5px;color:#b9aaa0;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.directory-card-result>i{width:17px;height:17px;flex:0 0 17px;display:grid;place-items:center;border:1px solid rgba(232,196,119,.42);border-radius:50%;color:#e8c477;background:rgba(232,196,119,.08);font-size:9px;font-style:normal}
.directory-card-result-copy{display:grid;grid-template-rows:17px 17px;justify-items:stretch;gap:3px}
.directory-card-result-copy b,.directory-card-score{height:17px;display:flex;align-items:center;justify-content:center;white-space:nowrap}
.directory-card-result-copy b{color:#b9aaa0}.directory-card-result.directory-victory .directory-card-result-copy b{color:#e8c477}
.directory-card-score{width:100%;padding:0 3px;border:1px solid rgba(255,255,255,.22);border-radius:5px;color:#f7eee8;background:rgba(8,11,18,.32);font-size:9px;letter-spacing:.02em}
.weekly-dialog-summary{margin-top:8px;grid-template-columns:repeat(4,1fr)}
.weekly-dialog-summary div{min-height:40px;padding:4px}.weekly-dialog-summary strong{font-size:21px}.weekly-dialog-summary span{margin-top:2px;font-size:7px}
.weekly-schedule-report .weekly-dialog-summary{grid-template-columns:repeat(3,1fr)}
.weekly-match{grid-template-columns:76px minmax(0,1fr) 82px;gap:14px;background:transparent}
.weekly-match-fixture{min-width:0;display:grid;grid-template-columns:110px minmax(0,1fr);align-items:baseline;column-gap:6px;overflow:hidden}
.weekly-match-category{min-width:0;margin:0;overflow:hidden;color:var(--club-red);font-size:8px;font-weight:900;letter-spacing:.04em;line-height:1.15;text-align:left;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}
.weekly-match-fixture .weekly-matchup{min-width:0;max-width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:baseline;column-gap:7px;overflow:hidden;color:var(--ink);font-size:13px;font-weight:700;line-height:1.3;text-align:left;text-decoration:none}
.weekly-match-team{min-width:0;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.weekly-match-separator{color:#817a7e}.weekly-match-position{margin-left:4px;color:#817a7e;font-size:9px;font-weight:600;white-space:nowrap}
.weekly-match.weekly-match-schedule{grid-template-columns:76px minmax(0,1fr) 160px}
.weekly-match-logistics{min-width:0;width:100%;max-width:100%;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:2px;overflow:hidden}
.weekly-match-time{color:var(--ink);font-size:11px;font-weight:900;line-height:1.15;text-align:right}.weekly-match-venue{min-width:0;width:100%;max-width:100%;display:-webkit-box;overflow:hidden;color:var(--muted);font-size:9px;font-weight:700;line-height:1.3;overflow-wrap:anywhere;text-align:right;text-decoration-color:var(--club-red);text-overflow:ellipsis;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.weekly-format-group:not(:first-child) .weekly-report-watermark{display:none}.weekly-day+.weekly-day{margin-top:14px}
@media(max-width:860px) and (min-width:621px){.weekly-match-schedule .weekly-match-fixture{grid-template-columns:96px minmax(0,1fr)}.weekly-match-schedule .weekly-match-team{display:-webkit-box;line-height:1.15;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}}
@media(max-width:780px){.weekly-dialog-summary{grid-template-columns:repeat(2,1fr)}.weekly-schedule-report .weekly-dialog-summary{grid-template-columns:repeat(3,1fr)}.weekly-match{grid-template-columns:64px minmax(0,1fr) 68px;gap:10px}.weekly-match.weekly-match-schedule{grid-template-columns:64px minmax(0,1fr) 135px}}
@media(max-width:620px){.weekly-match.weekly-match-schedule{grid-template-columns:54px minmax(0,1fr)}.weekly-match-schedule .weekly-match-logistics{grid-column:2;align-items:flex-start}.weekly-match-time,.weekly-match-venue{text-align:left}}
@media(max-width:520px){.weekly-match{grid-template-columns:48px minmax(0,1fr) 44px;align-items:start;gap:6px}.weekly-match.weekly-match-schedule{grid-template-columns:48px minmax(0,1fr)}.weekly-match-fixture{grid-template-columns:68px minmax(0,1fr);column-gap:6px}.weekly-match-fixture .weekly-matchup{grid-template-columns:minmax(0,1fr);row-gap:1px;overflow:visible;line-height:1.22}.weekly-match-team{display:-webkit-box;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.weekly-match-separator{display:none}.weekly-match-schedule .weekly-match-logistics{grid-column:2}.weekly-match-time,.weekly-match-score{padding-top:2px}.weekly-dialog-summary div{min-width:0}}
@media print{body.weekly-printing .weekly-dialog-summary{grid-template-columns:repeat(4,1fr)}body.weekly-printing .weekly-schedule-report .weekly-dialog-summary{grid-template-columns:repeat(3,1fr)}body.weekly-printing .weekly-format-group .weekly-report-watermark{top:30px;display:block;opacity:.045}body.weekly-printing .weekly-day+.weekly-day{margin-top:14px}body.weekly-printing .weekly-match{grid-template-columns:54px minmax(0,1fr) 58px}body.weekly-printing .weekly-match.weekly-match-schedule{grid-template-columns:54px minmax(0,1fr) 150px}body.weekly-printing .weekly-match-fixture{grid-template-columns:80px minmax(0,1fr)}body.weekly-printing .weekly-match-logistics{gap:5px}}

.header-status-row { display:flex; align-items:center; justify-content:flex-end; gap:12px; }
.site-help-link { min-height:24px; padding:0 0 0 12px; display:flex; align-items:center; gap:5px; border:0; border-left:1px solid var(--line); border-radius:0; color:var(--muted); background:transparent; font-size:9px; letter-spacing:.12em; text-decoration:none; text-transform:uppercase; }
.site-help-link span { color:var(--club-red); font-size:12px; font-weight:900; }
.site-help-link strong { font-weight:800; }
.site-help-link:hover,.site-help-link:focus-visible,.site-help-link[aria-current="page"] { color:var(--club-red); outline:none; text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:4px; }
.overview-page .site-help-link { border-color:rgba(255,255,255,.18); color:#c9c1c3; background:transparent; }
.overview-page .site-help-link span { color:var(--accent); }
.overview-page .site-help-link:hover,.overview-page .site-help-link:focus-visible,.overview-page .site-help-link[aria-current="page"] { color:#fff; background:transparent; }
.help-main { padding:64px 0 82px; }
.help-hero { max-width:1000px; }
.help-hero h1 { color:#fff; font-size:clamp(68px,10vw,118px); }
.help-hero>p:not(.eyebrow) { max-width:720px; margin:24px 0 0; color:#c9c1c3; font-size:18px; line-height:1.65; }
.help-jump-links { margin-top:30px; display:flex; flex-wrap:wrap; gap:9px; }
.help-jump-links a { min-height:42px; padding:0 15px; display:flex; align-items:center; border:1px solid rgba(255,255,255,.2); border-radius:999px; color:#f8f3f4; font-size:11px; font-weight:800; letter-spacing:.06em; text-decoration:none; text-transform:uppercase; }
.help-jump-links a:hover,.help-jump-links a:focus-visible { border-color:var(--accent); color:#fff; background:var(--club-red); outline:none; }
.help-section { margin-top:70px; scroll-margin-top:24px; }
.help-section-heading { max-width:760px; }
.help-section-heading h2,.help-contact h2 { margin:0; color:#fff; font:800 clamp(38px,5vw,58px)/.95 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.help-section-heading>p:last-child { margin:16px 0 0; color:#b7a9ac; font-size:16px; line-height:1.65; }
.help-steps { margin:28px 0 0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; list-style:none; }
.help-steps li { min-width:0; padding:22px; display:grid; grid-template-columns:38px minmax(0,1fr); align-items:start; gap:13px; border:1px solid rgba(255,255,255,.12); border-radius:15px; background:rgba(255,255,255,.04); }
.help-step-number { width:36px; height:36px; display:grid; place-items:center; border-radius:50%; color:#fff; background:var(--club-red); font:800 20px/1 'Barlow Condensed',sans-serif; }
.help-steps strong { color:#fff; font:800 21px/1 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.help-steps p { margin:9px 0 0; color:#b7a9ac; font-size:14px; line-height:1.6; }
.help-basic-note { margin-top:12px; padding:18px 21px; display:flex; align-items:baseline; gap:16px; border-left:3px solid var(--accent); background:rgba(227,27,35,.09); }
.help-basic-note strong { color:#fff; white-space:nowrap; }
.help-basic-note p { margin:0; color:#c9c1c3; font-size:14px; line-height:1.6; }
.help-feature-grid { margin-top:28px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.help-feature-card { position:relative; min-width:0; min-height:265px; padding:27px 30px; overflow:hidden; border:1px solid rgba(255,255,255,.12); border-radius:16px; background:rgba(255,255,255,.04); }
.help-feature-card::before { position:absolute; inset:0 auto 0 0; width:3px; background:var(--accent); content:''; }
.help-feature-mark { position:absolute; top:17px; right:20px; color:rgba(227,27,35,.28); font:800 46px/1 'Barlow Condensed',sans-serif; }
.help-feature-card h3 { max-width:80%; margin:0 0 20px; color:#fff; font:800 27px/1 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.help-feature-card ul { margin:0; padding-left:19px; display:grid; gap:9px; color:#b9abad; font-size:14px; line-height:1.55; }
.help-feature-card li::marker { color:var(--accent); }
.help-detail-grid { margin-top:28px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.help-detail-item { min-width:0; min-height:224px; padding:22px; display:flex; align-items:flex-start; flex-direction:column; border:1px solid rgba(255,255,255,.1); border-radius:14px; background:rgba(255,255,255,.028); }
.help-detail-item>span { height:34px; min-height:34px; display:flex; align-items:center; }
.help-detail-item>div { margin-top:22px; }
.help-detail-item strong { color:#fff; font:800 21px/1 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.help-detail-item p { margin:9px 0 0; color:#ad9ea1; font-size:13px; line-height:1.55; }
.help-demo-victory { gap:5px; color:#e8c477; font-size:9px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.help-demo-victory i { width:22px; height:22px; display:grid; place-items:center; border:1px solid rgba(232,196,119,.42); border-radius:50%; background:rgba(232,196,119,.08); font-size:10px; font-style:normal; }
.help-demo-victory>span { display:grid; grid-template-rows:22px 22px; justify-items:stretch; gap:4px; }
.help-demo-victory b,.help-demo-victory em { height:22px; display:flex; align-items:center; justify-content:center; white-space:nowrap; }
.help-demo-victory em { width:100%; padding:0 5px; border:1px solid rgba(255,255,255,.22); border-radius:6px; color:#f7eee8; background:rgba(17,10,7,.3); font-size:11px; font-style:normal; letter-spacing:.02em; }
.help-demo-status { gap:8px; color:#e6dadd; font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.help-demo-status i { width:8px; height:8px; border-radius:50%; background:#24b47e; box-shadow:0 0 0 4px rgba(36,180,126,.12); }
.help-demo-form { gap:5px; }
.help-demo-form i { width:27px; height:27px; display:grid; place-items:center; border-radius:50%; color:#fff; font-size:10px; font-style:normal; font-weight:800; }
.help-demo-form .win { background:#12805c; }
.help-demo-form .draw { background:#c58a18; }
.help-demo-form .loss { background:#b44137; }
.help-demo-arrow { color:var(--accent); font-size:27px; font-weight:900; }
.help-demo-history { padding:5px 8px; border-left:3px solid var(--accent); color:#c9c1c3; background:rgba(255,255,255,.04); font-size:10px; font-weight:700; }
.help-demo-person { width:32px; justify-content:center; border:1px solid rgba(227,27,35,.5); border-radius:9px; color:#ff7379; font-size:10px; font-weight:900; }
.help-demo-position { min-height:22px !important; padding:3px 7px; border-radius:999px; color:#fff; background:#267a5a; font-size:9px; font-weight:800; text-transform:uppercase; }
.help-demo-back { color:var(--accent); font-size:26px; font-weight:900; }
.help-calendar-guide { margin-top:28px; padding:clamp(24px,4vw,42px); display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; border:1px solid rgba(227,27,35,.42); border-radius:18px; background:linear-gradient(135deg,rgba(227,27,35,.13),rgba(255,255,255,.025)); }
.help-calendar-guide>div { min-width:0; }
.help-calendar-guide strong { display:block; margin-bottom:10px; color:#fff; font:800 22px/1 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.help-calendar-guide p { margin:0; color:#c9c1c3; font-size:14px; line-height:1.6; }
.help-calendar-note { grid-column:1/-1; padding-top:22px; border-top:1px solid rgba(255,255,255,.12); }
.help-faq-list { margin-top:28px; border-top:1px solid rgba(255,255,255,.16); }
.help-faq-list details { border-bottom:1px solid rgba(255,255,255,.16); }
.help-faq-list summary { min-height:70px; padding:18px 48px 18px 0; display:flex; align-items:center; position:relative; color:#fff; font:800 22px/1.15 'Barlow Condensed',sans-serif; text-transform:uppercase; cursor:pointer; list-style:none; }
.help-faq-list summary::-webkit-details-marker { display:none; }
.help-faq-list summary::after { position:absolute; right:4px; width:30px; height:30px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.2); border-radius:50%; color:var(--accent); content:'+'; font:700 20px/1 Inter,sans-serif; }
.help-faq-list details[open] summary::after { content:'−'; }
.help-faq-list details>p { max-width:860px; margin:0; padding:0 48px 18px 0; color:#b9abad; font-size:15px; line-height:1.72; }
.help-faq-list details>p+p { padding-top:0; }
.help-faq-list a { color:#ff7379; font-weight:700; text-underline-offset:3px; }
.help-faq-list code { padding:2px 5px; border-radius:5px; color:#f0e6e8; background:rgba(255,255,255,.08); font:600 .88em/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; }
.help-contact { margin-top:70px; padding:30px; display:flex; align-items:center; justify-content:space-between; gap:28px; border:1px solid rgba(255,255,255,.12); border-radius:18px; background:rgba(255,255,255,.04); }
.help-contact p:not(.eyebrow) { max-width:620px; margin:12px 0 0; color:#b7a9ac; font-size:14px; line-height:1.6; }
.help-contact>a { min-height:48px; padding:0 20px; display:flex; align-items:center; justify-content:center; flex:0 0 auto; border-radius:11px; color:#fff; background:var(--club-red); font-size:13px; font-weight:800; text-decoration:none; }
.help-contact>a:hover,.help-contact>a:focus-visible { background:var(--accent); outline:none; }
@media(max-width:980px) { .help-detail-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:780px) {
  .help-main { padding:46px 0 60px; }
  .help-hero h1 { font-size:clamp(60px,18vw,90px); }
  .help-hero>p:not(.eyebrow) { font-size:16px; }
  .help-section { margin-top:52px; }
  .help-steps,.help-feature-grid,.help-calendar-guide { grid-template-columns:1fr; }
  .help-feature-card { min-height:0; }
  .help-calendar-note { grid-column:1; }
  .help-contact { align-items:stretch; flex-direction:column; }
  .help-contact>a { align-self:flex-start; }
}
@media(max-width:520px) {
  body:not(.admin-page):not(.admin-login-page) .header-status-row { gap:7px; }
  .site-help-link { width:auto; padding:0 0 0 9px; justify-content:center; }
  .help-jump-links { display:grid; grid-template-columns:1fr 1fr; }
  .help-jump-links a { padding:0 12px; font-size:9px; }
  .help-basic-note { align-items:flex-start; flex-direction:column; gap:7px; }
  .help-steps li,.help-feature-card { padding:20px; }
  .help-detail-grid { grid-template-columns:1fr; }
  .help-detail-item { min-height:190px; }
  .help-faq-list summary { min-height:64px; padding-right:40px; font-size:19px; }
  .help-faq-list details>p { padding-right:0; font-size:14px; }
  .help-contact { padding:23px; }
  .help-contact>a { width:100%; }
}

/* Public feature parity with the Arroyofresno statistics site. */
.score-team img { flex:0 0 34px; width:34px; height:34px; object-fit:contain; }
.scoreboard.compact .score-team img { flex-basis:30px; width:30px; height:30px; }
.venue-map-link { color:inherit; font-weight:700; text-decoration-color:rgba(181,18,27,.42); text-underline-offset:3px; }
.venue-map-link:hover,.venue-map-link:focus-visible { color:var(--club-red); outline:none; text-decoration-color:currentColor; }
.lineup-player { min-width:0; display:flex; align-items:center; flex-wrap:wrap; gap:6px; }
.lineup-player-name { line-height:1.4; }
.player-position-chip,.player-role { width:max-content; display:inline-flex; align-items:center; padding:3px 7px; border-radius:999px; color:#fff; background:#267a5a; font-size:10px; font-weight:800; line-height:1.2; text-transform:uppercase; }
.player-history-trigger-inline,.player-history-trigger-table { padding:0; border:0; color:inherit; background:transparent; font:inherit; text-align:left; cursor:pointer; }
.player-history-trigger-inline { text-decoration:underline; text-decoration-color:transparent; text-underline-offset:3px; }
.player-history-trigger-inline:hover,.player-history-trigger-inline:focus-visible { color:var(--club-red); outline:none; text-decoration-color:currentColor; }
.match-team-reports { grid-column:1/-1; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.match-team-report { min-width:0; padding:18px; border:1px solid var(--line); border-radius:13px; background:var(--white); }
.match-team-report.own { border-top:3px solid var(--accent); }
.match-team-report>header { min-height:48px; margin-bottom:18px; padding-bottom:14px; display:flex; align-items:center; justify-content:space-between; gap:12px; border-bottom:1px solid var(--line); }
.match-team-report>header>.score-team { flex:1; justify-content:flex-start; text-align:left; }
.match-team-report>header>span { color:var(--club-red); font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.match-team-report .detail-section+.detail-section { margin-top:20px; }
.team-report-coach { margin:18px 0 0; padding-top:13px; border-top:1px solid var(--line); }
.team-report-coach span,.team-report-coach strong { display:block; }
.team-report-coach span { margin-bottom:5px; color:var(--muted); font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.team-report-coach strong { font-size:12px; }
.player-history-trigger-table { width:100%; }
.player-history-trigger-table:hover strong,.player-history-trigger-table:focus-visible strong { color:var(--club-red); }
.player-history-trigger-table:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
.coach-history-trigger { color:inherit; text-align:left; cursor:pointer; transition:border-color .18s,transform .18s,box-shadow .18s; }
.coach-history-trigger:hover,.coach-history-trigger:focus-visible { border-color:rgba(181,18,27,.55); outline:none; box-shadow:0 9px 24px rgba(61,38,24,.08); transform:translateY(-1px); }
.coach-history-trigger-inline { padding:0; border:0; color:inherit; background:transparent; font:inherit; font-weight:700; text-align:left; cursor:pointer; text-decoration:underline; text-decoration-color:transparent; text-underline-offset:3px; }
.coach-history-trigger-inline:hover,.coach-history-trigger-inline:focus-visible { color:var(--club-red); outline:none; text-decoration-color:currentColor; }
.player-card { color:inherit; text-align:left; cursor:pointer; transition:border-color .18s,transform .18s,box-shadow .18s; }
.player-card:hover,.player-card:focus-visible { border-color:rgba(181,18,27,.55); outline:none; box-shadow:0 9px 24px rgba(61,38,24,.08); transform:translateY(-1px); }
.player-card h3 .player-position-chip { margin-left:7px; vertical-align:2px; }
.match-card,.player-card,.history-card { content-visibility:auto; contain-intrinsic-size:auto 150px; }
body>.player-history-dialog { position:fixed; inset:0; width:min(760px,calc(100% - 28px)); max-height:min(84vh,820px); margin:auto; padding:28px; overflow:auto; overscroll-behavior:contain; border:1px solid var(--line); border-radius:20px; color:var(--ink); background:var(--paper); box-shadow:0 28px 90px rgba(20,12,8,.32); -webkit-overflow-scrolling:touch; }
.player-history-dialog::backdrop { background:rgba(17,12,9,.66); backdrop-filter:blur(4px); }
.player-history-close { position:sticky; top:0; z-index:2; height:0; display:flex; justify-content:flex-end; }
.player-history-close button { width:38px; height:38px; display:grid; place-items:center; border:1px solid var(--line); border-radius:50%; color:var(--ink); background:var(--white); font-size:25px; line-height:1; cursor:pointer; }
.player-history-close button:hover,.player-history-close button:focus-visible { border-color:var(--accent); outline:2px solid rgba(227,27,35,.24); }
.player-history-header,.player-history-loading { display:flex; align-items:center; gap:15px; }
.player-history-header { padding-right:46px; }
.player-history-header .eyebrow,.player-history-loading .eyebrow { margin:0 0 5px; }
.player-history-header h2,.player-history-loading h2 { margin:0; font:800 clamp(30px,6vw,48px)/.95 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.player-history-header .player-role { margin-top:9px; }
.player-history-loading { min-height:220px; }
.player-history-loading p:last-child { margin:10px 0 0; color:var(--muted); }
.player-history-totals { margin:24px 0; display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--line); border-radius:14px; background:var(--white); }
.player-history-totals div { padding:16px 12px; text-align:center; }
.player-history-totals div+div { border-left:1px solid var(--line); }
.player-history-totals.coach-history-totals { grid-template-columns:repeat(3,1fr); }
.player-history-totals strong,.player-history-totals span { display:block; }
.player-history-totals strong { font:800 28px/1 'Barlow Condensed',sans-serif; }
.player-history-totals span { margin-top:6px; color:var(--muted); font-size:10px; line-height:1.25; text-transform:uppercase; }
.player-history-list h3 { margin:0 0 11px; font:800 22px/1 'Barlow Condensed',sans-serif; text-transform:uppercase; }
.player-history-list ul { margin:0; padding:0; display:grid; gap:7px; list-style:none; }
.player-history-list li { padding:12px; display:grid; grid-template-columns:66px minmax(0,1fr) auto; align-items:center; gap:12px; border:1px solid var(--line); border-radius:11px; background:var(--white); }
.player-history-season { font-weight:800; }
.player-history-team { min-width:0; display:flex; align-items:center; gap:9px; }
.player-history-team img { width:30px; height:30px; flex:0 0 auto; object-fit:contain; }
.player-history-team strong,.player-history-team small,.player-history-numbers strong,.player-history-numbers small { display:block; }
.player-history-team strong { font-size:12px; line-height:1.35; }
.player-history-team small,.player-history-numbers small { margin-top:4px; color:var(--muted); font-size:10px; line-height:1.35; }
.player-history-team .player-history-callup { color:var(--club-red); font-weight:700; }
.player-history-numbers { text-align:right; }
.player-history-numbers strong { font-size:12px; }
.player-history-note { margin:15px 0 9px; color:var(--muted); font-size:11px; line-height:1.5; }
.player-history-source { color:var(--club-red); font-size:11px; font-weight:800; text-decoration:none; }
.player-history-source:hover { text-decoration:underline; }
.player-history-source.muted { color:var(--muted); font-weight:600; }
.player-history-subsection { margin-top:22px; padding-top:20px; border-top:1px solid var(--line); }
.player-history-subsection h3 { margin-bottom:10px; }
.player-history-player-summary { margin-bottom:10px; display:flex; flex-wrap:wrap; gap:8px; color:var(--muted); font-size:11px; }
.player-history-player-summary strong,.player-history-player-summary span { padding:5px 8px; border-radius:7px; background:rgba(227,27,35,.09); }
.directory-card { min-height:348px; grid-template-rows:22px 96px 62px 44px 116px 24px; }
.directory-card h3.compact { font-size:clamp(22px,2.1vw,30px); line-height:.95; overflow-wrap:normal; word-break:normal; }
.directory-next-match { min-width:0; padding-top:10px; display:flex; align-items:baseline; justify-content:space-between; gap:10px; border-top:1px solid rgba(255,255,255,.09); }
.directory-next-match span { color:#978b8d; font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.directory-next-match strong { color:#f1e7e8; font-size:12px; line-height:1.3; text-align:right; text-transform:capitalize; }
.directory-next-match.pending strong { color:#85797b; font-weight:600; }
.directory-history-count { display:block; margin-top:7px; color:var(--accent); font-size:9px; letter-spacing:.04em; }

@media(max-width:980px) and (min-width:781px){.directory-card{min-height:0;grid-template-rows:auto minmax(96px,auto) minmax(62px,auto) minmax(44px,auto) minmax(116px,auto) auto}}
@media(max-width:780px){
  body{min-height:100dvh;display:flex;flex-direction:column}
  body>main{flex:1 0 auto}
  body>.footer{flex:0 0 auto}
  .match-team-reports{grid-template-columns:1fr}
  .directory-card{min-height:320px;grid-template-rows:auto auto auto auto 1fr auto}
  .skeleton-panels,.skeleton-directory-grid{grid-template-columns:1fr}
  .skeleton-directory-grid span:nth-child(n+2){display:none}
  .footer{align-items:center}
}
@media(prefers-reduced-motion:reduce){.skeleton-line,.skeleton-panels span,.skeleton-directory-grid span{animation:none}}
@media(max-width:560px){
  .score-team{gap:5px}
  .score-team img,.scoreboard.compact .score-team img{flex-basis:25px;width:25px;height:25px}
  .player-history-dialog{padding:20px}
  .player-history-totals{grid-template-columns:repeat(2,1fr)}
  .player-history-totals div+div{border-left:0}
  .player-history-totals div:nth-child(even){border-left:1px solid var(--line)}
  .player-history-totals div:nth-child(n+3){border-top:1px solid var(--line)}
  .player-history-list li{grid-template-columns:58px minmax(0,1fr)}
  .player-history-numbers{grid-column:2;text-align:left}
  body>.player-history-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px)}
}
@media(max-width:780px){
  .week-overview-card{grid-template-columns:minmax(0,1fr) minmax(118px,auto) 22px;gap:13px}
  .weekly-dialog-shell{padding:20px}
  .weekly-dialog-controls>button span{display:none}
  .weekly-dialog-controls>div{flex-direction:column;gap:6px}
  .weekly-match{grid-template-columns:64px minmax(0,1fr) 68px;gap:10px}
  .weekly-dialog-actions{align-items:stretch;flex-direction:column}
  .weekly-dialog-actions>div{display:grid;grid-template-columns:1fr 1fr}
  .weekly-dialog-actions button{width:100%}
}
@media(max-width:520px){
  .directory-data-status{align-items:flex-start;flex-direction:column;gap:10px}
  .directory-data-counts{width:100%}
  .directory-data-counts p{min-width:0;flex:1}
  .directory-data-counts p+p{margin-left:8px;padding-left:8px}
  .week-overview-card{padding:13px 14px;grid-template-columns:minmax(0,1fr) auto 18px}
  .week-overview-copy>strong{font-size:20px}
  .week-overview-count{padding-left:11px;grid-template-columns:1fr}
  .week-overview-count>strong{font-size:31px}
  .week-overview-count>span{display:none}
  .weekly-overview-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px);border-radius:15px}
  .weekly-dialog-shell{padding:17px}
  .weekly-dialog-header h2{font-size:40px}
  .weekly-dialog-controls{padding:9px 0;grid-template-columns:38px 1fr 38px;gap:7px}
  .weekly-dialog-controls>button{padding:0}
  .weekly-dialog-controls strong{font-size:11px}
  .weekly-dialog-controls div button{font-size:8px}
  .weekly-dialog-summary span{font-size:7px}
  .weekly-match{padding:11px 0 11px 8px;grid-template-columns:54px minmax(0,1fr) 56px;gap:8px}
  .weekly-type{min-width:46px;font-size:6px}
  .weekly-match-fixture a{font-size:11px}
  .weekly-match-category{width:66px;flex-basis:66px;font-size:8px}
  .weekly-match-position{font-size:8px}
  .weekly-match-score.played{font-size:21px}
  .weekly-dialog-actions>div{grid-template-columns:1fr}
}
@media(max-width:1050px) and (min-width:781px){.directory-snapshot{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-data-status{grid-column:1/-1}}
@media(max-width:780px){.directory-snapshot>#week-schedule-open{order:1}.directory-snapshot>#week-overview-open{order:2}.directory-snapshot>.directory-data-status{order:3}.weekly-match.weekly-match-schedule{grid-template-columns:64px minmax(0,1fr) 56px minmax(100px,150px)}}
@media(max-width:620px){.weekly-match.weekly-match-schedule{grid-template-columns:54px minmax(0,1fr) 52px}.weekly-match-schedule .weekly-match-venue{grid-column:2/4;text-align:left}.weekly-match-time{font-size:9px}.weekly-match-venue{font-size:8px}}
@media print {
  @page {
    size:A4 portrait;
    margin:12mm 12mm 17mm;
    @bottom-right { color:#6f6a6c; font:7pt Inter,sans-serif; letter-spacing:.04em; content:'Generado en https://adarve.nidschelm.com'; }
  }
  body.weekly-printing { display:block; min-height:0; color:#1b1b1e; background:#fff !important; }
  body.weekly-printing>*:not(.weekly-print-report) { display:none !important; }
  body.weekly-printing>.weekly-print-report { position:static; width:100%; min-height:0; margin:0; display:block !important; background:transparent; isolation:isolate; }
  body.weekly-printing .weekly-print-page-crest { position:fixed; top:0; right:0; z-index:4; width:13mm; height:13mm; display:block; object-fit:contain; print-color-adjust:exact; }
  body.weekly-printing .weekly-print-content { position:relative; z-index:1; }
  body.weekly-printing .weekly-dialog-shell { padding:0; }
  body.weekly-printing .weekly-dialog-header { padding-right:17mm; }
  body.weekly-printing .weekly-report-watermark { top:30px; opacity:.045; }
  body.weekly-printing .weekly-dialog-close,
  body.weekly-printing .weekly-dialog-actions { display:none !important; }
  body.weekly-printing .weekly-dialog-header p { margin-bottom:4px; font-size:8px; }
  body.weekly-printing .weekly-dialog-header h2 { font-size:46px; }
  body.weekly-printing .weekly-dialog-controls { margin-top:6px; padding:0 0 6px; display:block; border-top:0; }
  body.weekly-printing .weekly-dialog-controls>button,
  body.weekly-printing .weekly-dialog-controls div button { display:none !important; }
  body.weekly-printing .weekly-dialog-controls>div { display:block; text-align:left; }
  body.weekly-printing .weekly-dialog-controls strong { font-size:8.5pt; }
  body.weekly-printing .weekly-dialog-summary { grid-template-columns:repeat(3,1fr); break-inside:avoid; }
  body.weekly-printing .weekly-dialog-summary div { min-height:42px; padding:5px; border-top:0 !important; }
  body.weekly-printing .weekly-dialog-summary div+div { border-left:1px solid rgba(27,27,30,.12) !important; }
  body.weekly-printing .weekly-dialog-summary strong { font-size:24px; }
  body.weekly-printing .weekly-dialog-summary span { margin-top:3px; font-size:7px; }
  body.weekly-printing .weekly-classification-legend { margin:3px 0 -3px; font-size:6.5px; }
  body.weekly-printing .weekly-match-days,
  body.weekly-printing .weekly-format-group,
  body.weekly-printing .weekly-day-matches { display:block; }
  body.weekly-printing .weekly-match-days { margin-top:10px; }
  body.weekly-printing .weekly-format-group { box-sizing:border-box; break-inside:avoid-page; page-break-inside:avoid; }
  body.weekly-printing .weekly-format-group+.weekly-format-group { min-height:0; padding-bottom:0; padding-top:0; border-top:0; break-before:page; page-break-before:always; }
  body.weekly-printing .weekly-format-group>header { margin-bottom:6px; padding-bottom:5px; break-after:avoid-page; page-break-after:avoid; }
  body.weekly-printing .weekly-format-group>header h3 { font-size:24px; }
  body.weekly-printing .weekly-format-group>header span { font-size:7px; }
  body.weekly-printing .weekly-day { margin-bottom:6px; break-inside:avoid-page; page-break-inside:avoid; }
  body.weekly-printing .weekly-day h4 { margin-bottom:4px; font-size:18px; break-after:avoid-page; page-break-after:avoid; }
  body.weekly-printing .weekly-match { min-height:36px; padding:2px 2px 2px 7px; grid-template-columns:54px minmax(0,1fr) 58px; gap:6px; break-inside:avoid-page; page-break-inside:avoid; }
  body.weekly-printing .weekly-type { min-width:48px; padding:3px 5px; font-size:6px; }
  body.weekly-printing .weekly-match-fixture a { font-size:7px; }
  body.weekly-printing .weekly-match-category { width:58px; flex-basis:58px; font-size:6px; }
  body.weekly-printing .weekly-match-position { font-size:6px; }
  body.weekly-printing .weekly-match-score { font-size:7px; }
  body.weekly-printing .weekly-match-score.played { font-size:19px; }
  body.weekly-printing .weekly-match.weekly-match-schedule { grid-template-columns:54px minmax(0,1fr) 38px 118px; }
  body.weekly-printing .weekly-match-time { font-size:6.5px; }
  body.weekly-printing .weekly-match-venue { font-size:6px; }
  body.weekly-printing .weekly-print-extra-dense .weekly-match { min-height:32px; padding-top:1px; padding-bottom:1px; }
  body.weekly-printing .weekly-print-extra-dense .weekly-match-fixture a { font-size:6.5px; }
  body.weekly-printing .weekly-print-extra-dense .weekly-match-position { font-size:5.5px; }
}

/* Descansos use the current club theme and remain distinct from scheduled matches. */
.match-card.rest{border-color:var(--club-blue,var(--club-red));background:color-mix(in srgb,var(--paper) 84%,var(--white))}
.result-badge.rest{min-width:78px;color:#fff;background:var(--club-blue,var(--club-red))}
.match-card.rest .match-venue{color:var(--club-blue,var(--club-red));font-weight:800}
.match-rest-details{grid-template-columns:1fr}
.weekly-match-rest{border-left-color:var(--club-blue,var(--club-red))}
.weekly-type-rest{color:#fff;background:var(--club-blue,var(--club-red))}

/* Final shared layout overrides. */
.directory-card-result{flex:none;display:flex;align-items:flex-start;justify-content:flex-end;gap:5px;color:#b9aaa0;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.directory-card-result>i{width:17px;height:17px;flex:0 0 17px;display:grid;place-items:center;border:1px solid rgba(232,196,119,.42);border-radius:50%;color:#e8c477;background:rgba(232,196,119,.08);font-size:9px;font-style:normal}.directory-card-result-copy{display:grid;grid-template-rows:17px 17px;justify-items:stretch;gap:3px}.directory-card-result-copy b,.directory-card-score{height:17px;display:flex;align-items:center;justify-content:center;white-space:nowrap}.directory-card-result-copy b{color:#b9aaa0}.directory-card-result.directory-victory .directory-card-result-copy b{color:#e8c477}.directory-card-score{width:100%;padding:0 3px;border:1px solid rgba(255,255,255,.22);border-radius:5px;color:#f7eee8;background:rgba(8,11,18,.32);font-size:9px;letter-spacing:.02em}
.weekly-dialog-summary{margin-top:8px;grid-template-columns:repeat(4,1fr)}.weekly-dialog-summary div{min-height:40px;padding:4px}.weekly-dialog-summary strong{font-size:21px}.weekly-dialog-summary span{margin-top:2px;font-size:7px}.weekly-schedule-report .weekly-dialog-summary{grid-template-columns:repeat(3,1fr)}
.weekly-match{grid-template-columns:76px minmax(0,1fr) 82px;gap:14px}.weekly-match-fixture{min-width:0;display:grid;grid-template-columns:110px minmax(0,1fr);align-items:baseline;column-gap:6px;overflow:hidden}.weekly-match-category{min-width:0;width:auto;flex-basis:auto;margin:0;overflow:hidden;color:var(--club-red);font-size:8px;font-weight:900;letter-spacing:.04em;line-height:1.15;text-align:left;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.weekly-match-fixture .weekly-matchup{min-width:0;max-width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:baseline;column-gap:7px;overflow:hidden;color:var(--ink);font-size:13px;font-weight:700;line-height:1.3;text-align:left;text-decoration:none}.weekly-match-team{min-width:0;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.weekly-match-separator{color:#817a7e}.weekly-match-position{margin-left:4px;color:#817a7e;font-size:9px;font-weight:600;white-space:nowrap}.weekly-match.weekly-match-schedule{grid-template-columns:76px minmax(0,1fr) 160px}.weekly-match-logistics{min-width:0;width:100%;max-width:100%;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:2px;overflow:hidden}.weekly-match-time{color:var(--ink);font-size:11px;font-weight:900;line-height:1.15;text-align:right}.weekly-match-venue{min-width:0;width:100%;max-width:100%;display:-webkit-box;overflow:hidden;color:var(--muted);font-size:9px;font-weight:700;line-height:1.3;overflow-wrap:anywhere;text-align:right;text-overflow:ellipsis;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.weekly-format-group:not(:first-child) .weekly-report-watermark{display:none}.weekly-day+.weekly-day{margin-top:14px}
@media(max-width:780px){.weekly-dialog-summary{grid-template-columns:repeat(2,1fr)}.weekly-schedule-report .weekly-dialog-summary{grid-template-columns:repeat(3,1fr)}.weekly-match{grid-template-columns:64px minmax(0,1fr) 68px}.weekly-match.weekly-match-schedule{grid-template-columns:64px minmax(0,1fr) 135px}}
@media(max-width:620px){.weekly-match.weekly-match-schedule{grid-template-columns:54px minmax(0,1fr)}.weekly-match-schedule .weekly-match-logistics{grid-column:2;align-items:flex-start}.weekly-match-time,.weekly-match-venue{text-align:left}}
@media(max-width:520px){.weekly-match{grid-template-columns:48px minmax(0,1fr) 44px;align-items:start;gap:6px}.weekly-match.weekly-match-schedule{grid-template-columns:48px minmax(0,1fr)}.weekly-match-fixture{grid-template-columns:68px minmax(0,1fr)}.weekly-match-fixture .weekly-matchup{grid-template-columns:minmax(0,1fr);row-gap:1px;overflow:visible}.weekly-match-team{display:-webkit-box;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.weekly-match-separator{display:none}.weekly-match-schedule .weekly-match-logistics{grid-column:2}}
@media print{body.weekly-printing .weekly-dialog-summary{grid-template-columns:repeat(4,1fr)}body.weekly-printing .weekly-schedule-report .weekly-dialog-summary{grid-template-columns:repeat(3,1fr)}body.weekly-printing .weekly-format-group .weekly-report-watermark{top:30px;display:block;opacity:.045}body.weekly-printing .weekly-day+.weekly-day{margin-top:14px}body.weekly-printing .weekly-match{grid-template-columns:54px minmax(0,1fr) 58px}body.weekly-printing .weekly-match.weekly-match-schedule{grid-template-columns:54px minmax(0,1fr) 150px}body.weekly-printing .weekly-match-fixture{grid-template-columns:80px minmax(0,1fr)}body.weekly-printing .weekly-match-logistics{gap:5px}.weekly-print-page+.weekly-print-page{break-before:page;page-break-before:always}}

/* Team-page descansos mirror the Arroyo static card structure. */
.match-rest-card{border-color:var(--club-blue,var(--club-red));background:color-mix(in srgb,var(--paper) 84%,var(--white))}
.match-rest-row{min-height:94px;padding:14px 18px;display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:15px}
.match-meta-date-only{grid-template-columns:minmax(0,1fr);justify-items:center;padding-right:8px;text-align:center}
.match-meta-date-only span,.match-meta-date-only small{grid-column:1;max-width:100%}
.match-rest-copy{min-width:0;display:flex;align-items:center;justify-content:center;gap:12px}
.match-rest-copy>span{width:38px;height:38px;display:grid;place-items:center;border:2px solid var(--club-blue,var(--club-red));border-radius:50%;color:var(--club-blue,var(--club-red));font-size:22px}
.match-rest-copy strong,.match-rest-copy small{display:block}
.match-rest-copy strong{font:800 24px/1 'Barlow Condensed',sans-serif;text-transform:uppercase}
.match-rest-copy small{margin-top:4px;color:var(--muted);font-size:11px}
@media(max-width:560px){.match-rest-row{padding:12px;grid-template-columns:56px minmax(0,1fr);gap:8px}.match-rest-copy{justify-content:flex-start}.match-rest-copy>span{display:none}.match-rest-copy strong{font-size:20px}.match-rest-copy small{font-size:10px}}
