@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=Inter:wght@400;500;600;700&display=swap');
:root { --orange:#f47b20; --orange-dark:#d85c0a; --ink:#171717; --muted:#69645e; --line:#ded9d2; --paper:#f6f3ee; --white:#fffdf9; --green:#12805c; --radius:18px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; min-width:320px; color:var(--ink); background:radial-gradient(circle at 94% 4%,rgba(244,123,32,.12),transparent 25rem),var(--paper); font-family:Inter,system-ui,sans-serif; }
button,select { font:inherit; }
button,a,select { -webkit-tap-highlight-color:transparent; }
.top-line { height:6px; background:var(--orange); }
.shell { width:min(1160px,calc(100% - 40px)); margin:0 auto; }
.site-header { min-height:96px; 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:64px; padding:4px; display:grid; place-items:center; border-radius:12px; background:var(--white); box-shadow:0 8px 28px rgba(25,21,17,.08); }
.crest { max-width:100%; max-height:100%; 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(--orange-dark); font:700 10px/1 Inter,sans-serif; letter-spacing:.24em; }
.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); }
.team-heading { padding:54px 0 30px; display:flex; align-items:end; justify-content:space-between; gap:30px; }
.eyebrow { margin:0 0 7px; color:var(--orange-dark); 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; }
.team-heading>div>p:last-child { margin:14px 0 0; color:var(--muted); font-size:15px; }
.season-control { min-width:190px; }
.selector-stack { display:flex; align-items:end; gap:12px; }
.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; }
.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); }
#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); }
.notice { margin-bottom:18px; padding:17px 19px; display:flex; gap:12px; align-items:flex-start; border:1px solid rgba(244,123,32,.28); border-radius:14px; background:rgba(244,123,32,.08); color:#754119; 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(--orange); font-weight:800; }
.stats-grid { 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-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; }
.dashboard-grid { margin-top:14px; display:grid; grid-template-columns:1.25fr .75fr; gap:14px; }
.panel { padding:24px; border:1px solid var(--line); border-radius:var(--radius); background:var(--white); }
.panel-kicker { margin:0 0 7px; color:var(--orange-dark); 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; }
.record { margin-top:27px; display:flex; gap:18px; align-items:center; }
.record-item strong { display:block; font:800 31px/1 'Barlow Condensed',sans-serif; }
.record-item span { color:var(--muted); font-size:11px; }
.record-separator { height:34px; width:1px; background:var(--line); }
.position-ring { width:112px; height:112px; margin:20px auto 5px; display:grid; place-items:center; border:9px solid #f1ede7; border-top-color:var(--orange); border-right-color:var(--orange); border-radius:50%; text-align:center; }
.position-ring strong { font:800 42px/.7 'Barlow Condensed',sans-serif; }
.position-ring span { color:var(--muted); font-size:10px; font-weight:700; text-transform:uppercase; }
.panel-title-row,.section-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; }
.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; }
.match-highlights { margin-top:14px; display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.match-feature h2 { margin-bottom:24px; }
.scoreboard { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:14px; }
.score-team { min-width:0; font-size:13px; font-weight:700; line-height:1.35; }
.score-team.home { text-align:right; }
.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(--orange); border-radius:50%; color:var(--orange); 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(--orange-dark); 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; }
.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(--orange-dark); 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 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(--orange-dark); background:rgba(244,123,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(--orange); }
.goals-total { color:var(--orange-dark); 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(--orange); }
.player-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; }
.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); }
.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(--orange); }
.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; }
.archive-label { margin-top:7px; display:inline-block; padding:4px 7px; border-radius:6px; color:#754119; background:rgba(244,123,32,.11); font-size:8px; font-weight:800; text-transform:uppercase; }
.history-numbers { display:grid; grid-template-columns:repeat(4,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 { padding:9px 12px; border:1px solid var(--line); border-radius:9px; color:var(--ink); background:#f7f4ef; font-size:10px; font-weight:800; cursor:pointer; }
.season-link:hover { border-color:var(--orange); color:var(--orange-dark); }
.footer { min-height:96px; padding:27px 0; display:flex; justify-content:space-between; gap:20px; border-top:1px solid var(--line); color:var(--muted); font-size:11px; }
.footer p { margin:0; }
@media(max-width:900px){.history-card{grid-template-columns:110px 1fr auto}.history-numbers{display:none}.player-grid{grid-template-columns:1fr}}
@media(max-width:780px){.shell{width:min(100% - 24px,1160px)}.site-header{min-height:82px}.live-status{font-size:0}.team-heading{padding:40px 0 24px;align-items:stretch;flex-direction:column;gap:24px}.selector-stack{width:100%;flex-direction:column;align-items:stretch}.season-control{width:100%}.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.match-highlights{grid-template-columns:1fr}.footer{flex-direction:column}.match-card summary{grid-template-columns:62px 1fr auto}.details-arrow{display:none}.match-details{grid-template-columns:1fr}.history-card{grid-template-columns:96px 1fr auto}.section-heading>span{display:none}}
@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{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}.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){.stats-grid{grid-template-columns:1fr 1fr;gap:9px}.stat-card{min-height:122px;padding:17px}.stat-value{font-size:39px}.tabs{margin-left:-12px;margin-right:-12px;border-left:0;border-right:0;border-radius:0}.panel-title-row{flex-direction:column}.record{gap:11px}.section-heading{align-items:flex-start}.data-table th,.data-table td{padding:11px 10px}}
