*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--color-bg-primary: #0a0f1e;--color-bg-secondary: #111827;--color-bg-glass: rgba(17, 24, 39, .75);--color-bg-card: rgba(30, 41, 59, .85);--color-accent-primary: #3b82f6;--color-accent-secondary: #6366f1;--color-accent-success: #10b981;--color-accent-warning: #f59e0b;--color-accent-danger: #ef4444;--color-text-primary: #f1f5f9;--color-text-secondary: #94a3b8;--color-text-muted: #64748b;--color-border: rgba(148, 163, 184, .15);--color-border-focus: #3b82f6;--color-turf-green: #1a8c3f;--color-trophy-gold: #d4a853;--color-pitch-green: #0d6b2e;--color-ball-white: #f8fafc;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--shadow-glass: 0 8px 32px rgba(0, 0, 0, .3);--shadow-glass-light: 0 8px 32px rgba(0, 0, 0, .08);--font-mono: "SF Mono", "Fira Code", "Fira Mono", "Roboto Mono", monospace;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}[data-theme=light]{--color-bg-primary: #f0f4f0;--color-bg-secondary: #ffffff;--color-bg-glass: rgba(255, 255, 255, .8);--color-bg-card: rgba(255, 255, 255, .9);--color-accent-primary: #1a8c3f;--color-accent-secondary: #0d6b2e;--color-accent-success: #10b981;--color-accent-warning: #d4a853;--color-accent-danger: #ef4444;--color-text-primary: #1a2e1a;--color-text-secondary: #5a6e5a;--color-text-muted: #7a8e7a;--color-border: rgba(0, 0, 0, .08);--color-border-focus: #1a8c3f;--color-turf-green: #1a8c3f;--color-trophy-gold: #b08830;--color-pitch-green: #0d6b2e;--color-ball-white: #ffffff;--shadow-glass: 0 8px 32px rgba(0, 0, 0, .08);--shadow-glass-light: 0 8px 32px rgba(0, 0, 0, .06)}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--color-bg-primary);color:var(--color-text-primary);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background .3s ease,color .3s ease}body:before{content:"";position:fixed;inset:0;background:radial-gradient(ellipse at 20% 50%,rgba(26,140,63,.06) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(59,130,246,.06) 0%,transparent 50%),radial-gradient(ellipse at 50% 80%,rgba(212,168,83,.04) 0%,transparent 50%);pointer-events:none;z-index:0}[data-theme=light] body:before{background:radial-gradient(ellipse at 20% 50%,rgba(26,140,63,.08) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(13,107,46,.05) 0%,transparent 50%),radial-gradient(ellipse at 50% 80%,rgba(176,136,48,.06) 0%,transparent 50%)}body:after{content:"";position:fixed;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 40px,rgba(26,140,63,.012) 40px,rgba(26,140,63,.012) 80px),repeating-linear-gradient(90deg,transparent,transparent 40px,rgba(26,140,63,.008) 40px,rgba(26,140,63,.008) 80px);pointer-events:none;z-index:0}[data-theme=light] body:after{background:repeating-linear-gradient(0deg,transparent,transparent 40px,rgba(13,107,46,.015) 40px,rgba(13,107,46,.015) 80px),repeating-linear-gradient(90deg,transparent,transparent 40px,rgba(13,107,46,.01) 40px,rgba(13,107,46,.01) 80px)}#root{position:relative;z-index:1;min-height:100vh}.skip-link{position:absolute;top:-100%;left:.5rem;padding:.5rem 1rem;background:var(--color-accent-primary);color:#fff;border-radius:var(--radius-md);font-weight:600;font-size:.875rem;text-decoration:none;z-index:9999;transition:top .2s ease}.skip-link:focus{top:.5rem;outline:3px solid #fff;outline-offset:2px}a{color:var(--color-accent-primary);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit}:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.nations-scroll::-webkit-scrollbar{display:none}@keyframes football-spin{0%{transform:rotate(0) scale(1)}25%{transform:rotate(90deg) scale(1.15)}50%{transform:rotate(180deg) scale(1)}75%{transform:rotate(270deg) scale(1.15)}to{transform:rotate(360deg) scale(1)}}@media(max-width:640px){html{font-size:14px}}@media(min-width:641px)and (max-width:1024px){html{font-size:15px}}@media(min-width:1025px){html{font-size:16px}}
