﻿@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@600;700;800&family=Inter:wght@400;500;600&display=swap');:root{--primary:#1B2A4A;--primary-light:#263d66;--secondary:#E63946;--accent:#F4A261;--accent-dark:#d4873e;--success:#2A9D8F;--bg:#0D1B2A;--bg-light:#112240;--surface:#1B2A4A;--surface-light:#243556;--text:#EAEAEA;--text-muted:#8B9DC3;--gold:#FFD700;--silver:#C0C0C0;--bronze:#CD7F32;--border:rgba(255,255,255,0.08);--shadow:0 4px 24px rgba(0,0,0,0.4);--shadow-lg:0 8px 40px rgba(0,0,0,0.5);--radius:12px;--radius-sm:8px;--radius-lg:16px;--transition:0.25s cubic-bezier(0.4,0,0.2,1)}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;background-color:var(--bg);color:var(--text);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased}body::-webkit-scrollbar{width:8px}body::-webkit-scrollbar-track{background:var(--bg)}body::-webkit-scrollbar-thumb{background:var(--primary-light);border-radius:4px}body::-webkit-scrollbar-thumb:hover{background:var(--surface-light)}h1,h2,h3,h4,h5,h6{font-family:'Montserrat',sans-serif;font-weight:700;letter-spacing:-0.01em}a{color:var(--accent);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--accent-dark)}.navbar{background:linear-gradient(180deg,rgba(13,27,42,0.98),rgba(13,27,42,0.92));backdrop-filter:blur(12px);border:none;border-bottom:1px solid var(--border);padding:0.5rem 1rem;min-height:60px}.navbar .navbar-brand{font-family:'Montserrat',sans-serif;font-weight:800;font-size:1.25rem;color:var(--text) !important;display:flex;align-items:center;gap:0.5rem}.navbar .navbar-brand img{height:32px;width:auto}.navbar .nav-link,.navbar .navbar-nav .nav-link{color:var(--text-muted) !important;font-weight:500;font-size:0.95rem;padding:0.5rem 1rem !important;border-radius:var(--radius-sm);transition:all var(--transition)}.navbar .nav-link:hover,.navbar .nav-link.active,.navbar .navbar-nav .nav-link:hover{color:var(--text) !important;background:rgba(255,255,255,0.06)}.navbar-toggler{border:1px solid var(--border) !important;padding:0.4rem 0.6rem}.navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(234,234,234,0.7)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important}.dropdown-menu{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg)}.dropdown-item{color:var(--text-muted);padding:0.5rem 1rem;transition:all var(--transition)}.dropdown-item:hover{background:rgba(255,255,255,0.06);color:var(--text)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform var(--transition),box-shadow var(--transition)}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.card-glass{background:rgba(27,42,74,0.6);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,0.1)}.match-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem;margin-bottom:0.75rem;transition:all var(--transition);position:relative;overflow:hidden}.match-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent);border-radius:4px 0 0 4px}.match-card:hover{border-color:rgba(244,162,97,0.3);box-shadow:0 4px 20px rgba(244,162,97,0.1)}.match-card.locked{opacity:0.7}.match-card.locked::before{background:var(--text-muted)}.match-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0.75rem;font-size:0.8rem;color:var(--text-muted)}.match-venue{display:flex;align-items:center;gap:0.35rem}.match-body{display:flex;align-items:center;justify-content:center;gap:0.75rem}.match-team{display:flex;align-items:center;gap:0.5rem;flex:1;font-weight:600;font-size:0.95rem}.match-team.right{justify-content:flex-end;text-align:right}.match-team img.flag{width:32px;height:22px;object-fit:cover;border-radius:3px;box-shadow:0 1px 3px rgba(0,0,0,0.3)}.match-score{display:flex;align-items:center;gap:0.35rem;font-family:'Montserrat',sans-serif;font-weight:700}.match-score input,.match-score .score-display{width:48px;height:48px;text-align:center;font-size:1.25rem;font-weight:700;font-family:'Montserrat',sans-serif;background:var(--bg);color:var(--text);border:2px solid var(--border);border-radius:var(--radius-sm);outline:none;transition:border-color var(--transition)}.match-score input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(244,162,97,0.2)}.match-score input:disabled{background:rgba(230,57,70,0.15);border-color:rgba(230,57,70,0.3);cursor:not-allowed;color:var(--text-muted)}.match-score .separator{font-size:1.25rem;color:var(--text-muted);font-weight:700}.match-result{display:flex;align-items:center;gap:0.35rem;font-family:'Montserrat',sans-serif;font-weight:700;font-size:1rem;color:var(--text-muted);margin-top:0.5rem;justify-content:center}.match-result .result-badge{background:rgba(255,255,255,0.05);padding:0.2rem 0.6rem;border-radius:var(--radius-sm);font-size:0.85rem}.points-badge{display:inline-flex;align-items:center;gap:0.25rem;background:linear-gradient(135deg,#FFD700,#F4A261);color:#1B2A4A;font-family:'Montserrat',sans-serif;font-weight:700;font-size:0.85rem;padding:0.2rem 0.6rem;border-radius:20px}.btn{font-family:'Inter',sans-serif;font-weight:600;border-radius:var(--radius-sm);padding:0.6rem 1.5rem;transition:all var(--transition);border:none;cursor:pointer}.btn-primary{background:var(--secondary);color:white}.btn-primary:hover{background:#c8303b;transform:translateY(-1px);box-shadow:0 4px 16px rgba(230,57,70,0.3)}.btn-accent{background:var(--accent);color:var(--bg)}.btn-accent:hover{background:var(--accent-dark);transform:translateY(-1px);box-shadow:0 4px 16px rgba(244,162,97,0.3)}.btn-outline{background:transparent;border:1px solid var(--border);color:var(--text)}.btn-outline:hover{background:rgba(255,255,255,0.06);border-color:var(--text-muted)}.btn-lg{padding:0.8rem 2rem;font-size:1.05rem}.form-control{background:var(--bg);border:2px solid var(--border);border-radius:var(--radius-sm);color:var(--text);padding:0.7rem 1rem;font-size:0.95rem;height:auto;transition:border-color var(--transition),box-shadow var(--transition)}.form-control:focus{background:var(--bg);border-color:var(--accent);box-shadow:0 0 0 3px rgba(244,162,97,0.15);color:var(--text);outline:none}.form-control::placeholder{color:var(--text-muted);opacity:0.6}.form-label{font-weight:500;font-size:0.9rem;color:var(--text-muted);margin-bottom:0.35rem}select.form-select{background-color:var(--bg);border:2px solid var(--border);border-radius:var(--radius-sm);color:var(--text);padding:0.7rem 1rem}select.form-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(244,162,97,0.15)}.alert{border-radius:var(--radius-sm);border:none;font-weight:500}.alert-success{background:rgba(42,157,143,0.15);color:#5dd6c8;border-left:4px solid var(--success)}.alert-danger{background:rgba(230,57,70,0.15);color:#ff8a93;border-left:4px solid var(--secondary)}.alert-info{background:rgba(139,157,195,0.15);color:var(--text-muted);border-left:4px solid var(--text-muted)}.nav-pills{gap:0.35rem;flex-wrap:wrap}.nav-pills .nav-link{background:var(--surface);color:var(--text-muted);border:1px solid var(--border);border-radius:50px;padding:0.4rem 1.1rem;font-size:0.9rem;font-weight:500;transition:all var(--transition);white-space:nowrap}.nav-pills .nav-link:hover{color:var(--text);background:var(--surface-light)}.nav-pills .nav-link.active{background:var(--secondary);color:white;border-color:var(--secondary)}.group-pills{gap:0.25rem;margin-bottom:1rem}.group-pills .nav-link{padding:0.3rem 0.8rem;font-size:0.8rem;font-family:'Montserrat',sans-serif;font-weight:600}.group-pills .nav-link.active{background:var(--accent);color:var(--bg);border-color:var(--accent)}.ranking-table{width:100%;border-collapse:separate;border-spacing:0 0.35rem}.ranking-table th{font-family:'Montserrat',sans-serif;font-size:0.8rem;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;color:var(--text-muted);padding:0.5rem 1rem;border:none}.ranking-table td{padding:0.75rem 1rem;background:var(--surface);border:none;vertical-align:middle}.ranking-table tr td:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.ranking-table tr td:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.ranking-table tr:hover td{background:var(--surface-light)}.ranking-table tr.current-user td{border-top:2px solid var(--accent);border-bottom:2px solid var(--accent);font-weight:600}.ranking-table tr.current-user td:first-child{border-left:2px solid var(--accent)}.ranking-table tr.current-user td:last-child{border-right:2px solid var(--accent)}.rank-badge{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;font-family:'Montserrat',sans-serif;font-weight:700;font-size:0.85rem}.rank-1{background:linear-gradient(135deg,#FFD700,#FFA500);color:#1B2A4A}.rank-2{background:linear-gradient(135deg,#C0C0C0,#A0A0A0);color:#1B2A4A}.rank-3{background:linear-gradient(135deg,#CD7F32,#A0652A);color:white}.stats-bar{display:flex;height:6px;border-radius:3px;overflow:hidden;background:var(--bg);margin-top:0.5rem}.stats-bar .bar-segment{transition:width var(--transition)}.stats-bar .bar-home{background:var(--success)}.stats-bar .bar-draw{background:var(--text-muted)}.stats-bar .bar-away{background:var(--secondary)}.stats-labels{display:flex;justify-content:space-between;font-size:0.75rem;color:var(--text-muted);margin-top:0.25rem}@keyframes animStar{from{transform:translateY(0px)}to{transform:translateY(-2000px)}}.stars-layer{position:absolute;top:0;left:0;background:transparent;z-index:0;pointer-events:none}.stars-small{width:1px;height:1px;animation:animStar 80s linear infinite}.stars-small::after{content:'';position:absolute;top:2000px;width:1px;height:1px;background:transparent;box-shadow:inherit}.stars-medium{width:2px;height:2px;animation:animStar 120s linear infinite}.stars-medium::after{content:'';position:absolute;top:2000px;width:2px;height:2px;background:transparent;box-shadow:inherit}.stars-large{width:3px;height:3px;animation:animStar 180s linear infinite}.stars-large::after{content:'';position:absolute;top:2000px;width:3px;height:3px;background:transparent;box-shadow:inherit}.football{background:#000;border-radius:100%;width:200%;height:100%;margin-left:-100%;position:absolute;bottom:-50%;left:50%;z-index:2;pointer-events:none}.football-seams{position:absolute;top:0;left:0;width:100%;height:100%}.football-glow{filter:blur(30px);background:rgb(3,139,255);border-radius:100%;width:160%;height:70%;margin-left:-80%;position:absolute;bottom:-20%;left:50%;z-index:1;pointer-events:none}.football-glow::before{content:"";filter:blur(30px);opacity:0.6;background:rgb(81,175,255);border-radius:100%;width:81.25%;height:70%;margin-left:9.375%;position:absolute}.football-glow::after{content:"";filter:blur(30px);opacity:0.5;background:rgb(176,218,255);border-radius:650px / 350px;width:32%;height:20%;margin-left:34%;position:absolute}.football-glow-inner{filter:blur(200px);opacity:0.7;background:rgb(33,84,150);border-radius:100%;width:100%;height:100%;position:absolute;top:-10%}.hero-section{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(at center bottom,#0c1116,#090a0f);padding:2rem;position:relative;overflow:hidden}.login-card{background:rgba(27,42,74,0.7);backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,0.1);border-radius:var(--radius-lg);padding:2.5rem;width:100%;max-width:420px;box-shadow:var(--shadow-lg);position:relative;z-index:10}.login-card .logo{text-align:center;margin-bottom:2rem}.login-card .logo h1{font-family:'Montserrat',sans-serif;font-size:1.6rem;font-weight:800;text-transform:uppercase;background:linear-gradient(135deg,var(--accent),var(--secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-card .logo p{color:var(--text-muted);font-size:0.9rem;margin-top:0.25rem}.countdown{display:flex;gap:0.75rem;justify-content:center;margin:1.5rem 0}.countdown-item{text-align:center}.countdown-item .value{font-family:'Montserrat',sans-serif;font-weight:800;font-size:1.8rem;color:var(--accent);line-height:1}.countdown-item .label{font-size:0.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.05em;margin-top:0.15rem}.page-wrapper{padding-top:70px;padding-bottom:2rem;min-height:100vh}.page-header{text-align:center;padding:1.5rem 0 1rem}.page-header h2{font-size:1.5rem;font-weight:700;text-transform:uppercase;letter-spacing:0.02em}.page-header .subtitle{color:var(--text-muted);font-size:0.9rem}.content-container{max-width:900px;margin:0 auto;padding:0 1rem}.content-narrow{max-width:500px;margin:0 auto;padding:0 1rem}.footer{background:var(--bg);border-top:1px solid var(--border);padding:1rem 0;text-align:center;font-size:0.8rem;color:var(--text-muted)}.footer a{color:var(--accent)}.text-accent{color:var(--accent) !important}.text-muted-custom{color:var(--text-muted) !important}.text-success-custom{color:var(--success) !important}.bg-surface{background:var(--surface) !important}.center{text-align:center}.mt-1{margin-top:0.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mb-1{margin-bottom:0.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.pw-strength{height:4px;border-radius:2px;background:var(--bg);margin-top:0.5rem;overflow:hidden}.pw-strength .bar{height:100%;border-radius:2px;transition:width 0.3s,background 0.3s}.pw-weak{width:25%;background:var(--secondary)}.pw-ok{width:50%;background:var(--accent)}.pw-good{width:75%;background:#5dd6c8}.pw-strong{width:100%;background:var(--success)}@media (max-width:768px){.match-body{flex-direction:column;gap:0.5rem}.match-team{justify-content:center}.match-team.right{justify-content:center;flex-direction:row-reverse}.match-score input{width:44px;height:44px;font-size:1.1rem}.login-card{padding:1.5rem}.countdown .value{font-size:1.4rem}.page-header h2{font-size:1.2rem}.nav-pills .nav-link{padding:0.35rem 0.8rem;font-size:0.8rem}}@media (max-width:480px){.match-team span.team-name{font-size:0.85rem}.ranking-table td,.ranking-table th{padding:0.5rem 0.6rem;font-size:0.85rem}}