:root{--color-primary:#0a2540;--color-primary-light:#24b47e;--color-primary-dark:#0f8b5f;--color-accent:#635bff;--color-accent-hover:#544bd0;--color-secondary:#00d4ff;--color-bg-base:#f6f9fc;--color-bg-card:#fff;--color-bg-card-hover:#f8fafc;--color-bg-input:#fff;--color-text-main:#0a2540;--color-text-muted:#425466;--color-text-inverted:#fff;--color-border:#e6ebf1;--color-border-card:#e6ebf1;--color-border-focus:#635bff;--radius-xl:16px;--radius-lg:12px;--radius-md:8px;--radius-sm:6px;--radius-pill:999px;--shadow-sm:0 2px 5px -1px #32325d0d, 0 1px 3px -1px #00000008;--shadow-md:0 4px 6px #32325d1c, 0 1px 3px #00000014;--shadow-lg:0 15px 35px #32325d1a, 0 5px 15px #00000012;--shadow-hover:0 7px 14px #32325d1a, 0 3px 6px #00000014;--focus-ring:0 0 0 3px #24b47e33;--ease-out:cubic-bezier(.25, 1, .5, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--font-heading:"Plus Jakarta Sans", sans-serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;background:var(--color-bg-base)}body{font-family:var(--font-body);background:var(--color-bg-base);color:var(--color-text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior-y:none;background-image:radial-gradient(at 0 0,#24b47e0a 0,#0000 50%),radial-gradient(at 100% 0,#635bff08 0,#0000 50%);background-attachment:fixed;min-height:100dvh;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em;color:var(--color-primary);margin-bottom:.5rem;font-weight:700}h1{letter-spacing:-.03em;font-size:2.2rem;font-weight:800}h2{font-size:1.5rem}a{color:var(--color-primary-light);transition:opacity .2s var(--ease-out), color .2s var(--ease-out);font-weight:600;text-decoration:none}@media (hover:hover) and (pointer:fine){a:hover{color:var(--color-primary-dark);opacity:.9}}.glass-panel{background:var(--color-bg-card);border:1px solid var(--color-border-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);transition:transform .2s var(--ease-out), box-shadow .2s var(--ease-out);padding:1.5rem;position:relative;overflow:hidden}@media (hover:hover) and (pointer:fine){.glass-panel:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}}.form-group{margin-bottom:1.5rem}.form-label{font-family:var(--font-body);color:var(--color-text-main);margin-bottom:.5rem;font-size:.85rem;font-weight:600;display:block}.form-input{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-input);width:100%;font-family:var(--font-body);color:var(--color-text-main);transition:all .2s var(--ease-out);appearance:none;box-shadow:var(--shadow-sm);padding:.85rem 1.1rem;font-size:1rem}.form-input:focus{border-color:var(--color-primary-light);box-shadow:var(--focus-ring);outline:none}.form-input::placeholder{color:#a3acb9}.btn{border-radius:var(--radius-md);font-size:.95rem;font-weight:600;font-family:var(--font-body);cursor:pointer;transition:all .2s var(--ease-out);-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;min-height:44px;padding:.75rem 1.4rem;display:inline-flex}.btn:active{transform:scale(.98)}.btn-primary{background:var(--color-primary-light);color:#fff;box-shadow:0 2px 5px #24b47e4d}@media (hover:hover) and (pointer:fine){.btn-primary:hover{background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:0 4px 10px #24b47e66}}.btn-secondary{color:var(--color-text-main);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff}@media (hover:hover) and (pointer:fine){.btn-secondary:hover{background:var(--color-bg-card-hover);border-color:#d1d9e2}}.btn-accent{background:var(--color-primary);color:#fff;box-shadow:0 2px 5px #0a25404d}@media (hover:hover) and (pointer:fine){.btn-accent:hover{background:#06182c;transform:translateY(-1px);box-shadow:0 4px 10px #0a254066}}.btn-massive{width:100%;padding:.9rem 2rem;font-size:1.05rem}.app-container{max-width:1080px;padding:1rem;padding-top:calc(1rem + var(--safe-top));padding-bottom:calc(1rem + var(--safe-bottom));flex-direction:column;min-height:100dvh;margin:0 auto;display:flex}.navbar{-webkit-backdrop-filter:blur(10px);border-radius:var(--radius-xl);border:1px solid var(--color-border-card);box-shadow:var(--shadow-sm);z-index:100;background:#fffffff2;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.8rem 1rem;display:flex;position:sticky;top:1rem}.brand{font-family:var(--font-heading);letter-spacing:-.02em;color:var(--color-primary);white-space:nowrap;flex-shrink:0;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:800;display:flex}.brand-icon{color:var(--color-primary-light)}.nav-actions{-webkit-overflow-scrolling:touch;scrollbar-width:none;align-items:center;gap:.5rem;display:flex;overflow-x:auto}.nav-actions::-webkit-scrollbar{display:none}.nav-actions .btn{min-height:38px;padding:.5rem .8rem;font-size:.85rem}.nav-user-name{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:90px;font-size:.85rem;font-weight:600;display:none;overflow:hidden}.status-box{border-radius:var(--radius-lg);align-items:center;gap:.8rem;margin-bottom:1.5rem;padding:1rem 1.25rem;font-size:.9rem;font-weight:500;display:flex}.status-error{color:#e25c5c;background:#fff4f4;border:1px solid #ffdcd5}.status-success{color:#166534;background:#f0fdf4;border:1px solid #dcfce7}.quinielas-grid{grid-template-columns:1fr;gap:1.25rem;margin-top:1rem;display:grid}.quiniela-card{background:var(--color-bg-card);border:1px solid var(--color-border-card);min-height:170px;box-shadow:var(--shadow-md);border-radius:var(--radius-xl);transition:transform .2s var(--ease-out), box-shadow .2s var(--ease-out);flex-direction:column;justify-content:space-between;padding:1.5rem;display:flex;position:relative;overflow:hidden}.quiniela-card:before{content:"";background:var(--color-primary-light);width:100%;height:3px;position:absolute;top:0;left:0}.quiniela-card:active{transform:scale(.98)}.empty-state-premium{text-align:center;background:var(--color-bg-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px dashed #d1d9e2;flex-direction:column;justify-content:center;align-items:center;margin-top:1rem;padding:4rem 1.5rem;display:flex}.tabs-container{border-radius:var(--radius-md);-webkit-overflow-scrolling:touch;scrollbar-width:none;background:#eef2f6;margin-bottom:1.5rem;padding:4px;display:flex;overflow-x:auto}.tabs-container::-webkit-scrollbar{display:none}.tab-btn{font-family:var(--font-body);cursor:pointer;border-radius:var(--radius-sm);color:var(--color-text-muted);transition:all .2s var(--ease-out);white-space:nowrap;background:0 0;border:none;flex-shrink:0;align-items:center;gap:.5rem;min-height:40px;padding:.6rem 1.2rem;font-size:.9rem;font-weight:600;display:flex}.tab-btn.active{color:var(--color-text-main);background:#fff;box-shadow:0 1px 3px #0000001a}.tab-btn:active{transform:scale(.97)}.phase-filter{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:.5rem;margin-bottom:1.5rem;padding-bottom:4px;display:flex;overflow-x:auto}.phase-filter::-webkit-scrollbar{display:none}.phase-filter .btn{border-radius:var(--radius-pill);flex-shrink:0}.match-card{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:var(--radius-xl);transition:transform .2s var(--ease-out), box-shadow .2s var(--ease-out);background:#fff;margin-bottom:1.25rem;padding:1.5rem}@media (hover:hover) and (pointer:fine){.match-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}}.match-meta{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem;padding-bottom:.8rem;display:flex}.badge{font-family:var(--font-body);border-radius:var(--radius-pill);letter-spacing:.02em;color:var(--color-text-muted);background:#f0f4f8;align-items:center;gap:.3rem;padding:.3rem .6rem;font-size:.7rem;font-weight:700;display:inline-flex}.match-prediction-row{justify-content:center;align-items:center;gap:.75rem;margin:1.25rem 0;display:flex}.match-team{flex:1;align-items:center;gap:.6rem;display:flex}.match-team.local{justify-content:flex-end}.match-team.visitor{justify-content:flex-start}.match-team-name{font-family:var(--font-body);color:var(--color-text-main);white-space:nowrap;text-overflow:ellipsis;max-width:90px;font-size:1rem;font-weight:600;overflow:hidden}.match-team-flag{border:1px solid #0000000d;border-radius:4px;height:24px;box-shadow:0 1px 3px #0000001a}.match-score-input{height:52px;font-family:var(--font-heading);text-align:center;border-radius:var(--radius-md);font-weight:800;box-shadow:inset 0 1px 2px #00000008;border:1px solid var(--color-border)!important;width:52px!important;color:var(--color-primary)!important;background:#fff!important;padding:0!important;font-size:1.4rem!important}.match-score-input:focus{border-color:var(--color-primary-light)!important;box-shadow:var(--focus-ring)!important}.match-vs{color:#a3acb9;flex-direction:column;align-items:center;font-size:.8rem;font-weight:700;display:flex}.bonus-section{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#f8fafc;margin:1.25rem 0;padding:1.25rem}.bonus-grid select{border:1px solid var(--color-border);min-height:46px;color:var(--color-text-main);box-shadow:var(--shadow-sm);background:#fff;font-weight:500}.match-footer{border-top:1px dashed var(--color-border);margin-top:1.25rem;padding-top:1.25rem}.modal-overlay{-webkit-backdrop-filter:blur(4px);z-index:1100;background:#0a25404d;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.modal-overlay .glass-panel{width:100%;max-width:100%;max-height:92dvh;padding:1.5rem;padding-bottom:calc(1.5rem + var(--safe-bottom));animation:slideUp .35s var(--ease-out);background:#fff;border:none;border-radius:24px 24px 0 0;box-shadow:0 -10px 40px #0000001a}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.stats-strip{border-top:1px solid var(--color-border);grid-template-columns:1fr 1fr 1fr;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;display:grid}.stat-item{text-align:center;flex-direction:column;align-items:center;gap:.4rem;display:flex}.stat-icon{width:42px;height:42px;color:var(--color-primary-light);background:#eef2f6;border-radius:12px;justify-content:center;align-items:center;display:flex}.stat-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}.stat-value{font-family:var(--font-heading);color:var(--color-primary);font-size:1.25rem;font-weight:800}.progress-bar{background:#e6ebf1;border-radius:99px;width:100%;height:6px;overflow:hidden}.progress-fill{background:var(--color-primary-light);height:100%;transition:width .6s var(--ease-out);border-radius:99px}.ranking-table{border-collapse:collapse;text-align:left;width:100%}.ranking-table th{color:var(--color-text-muted);font-family:var(--font-body);border-bottom:1px solid var(--color-border);text-transform:uppercase;letter-spacing:.05em;padding:.8rem .5rem;font-size:.75rem;font-weight:600}.ranking-table td{border-bottom:1px solid #f0f4f8;padding:1rem .5rem;font-size:.9rem;font-weight:500}.ranking-table tr.is-me{background:#f0fdf4}.ranking-table tr.is-me td{color:var(--color-primary-light);font-weight:700}.offline-banner{color:#fff;text-align:center;font-size:.85rem;font-weight:600;font-family:var(--font-body);z-index:1200;background:#e25c5c;justify-content:center;align-items:center;gap:.5rem;padding:.5rem;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 4px 12px #e25c5c4d}.invite-panel{border:1px solid var(--color-border);border-radius:var(--radius-xl);text-align:center;box-shadow:var(--shadow-sm);background:#fff;padding:1.5rem}.invite-code-box{border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:1.4rem;font-weight:800;font-family:var(--font-heading);letter-spacing:.15em;color:var(--color-primary);background:#f6f9fc;margin:1rem 0;padding:.8rem 1.2rem;display:inline-block;box-shadow:inset 0 2px 4px #00000005}.participant-row{border-bottom:1px solid var(--color-border);align-items:center;gap:.8rem;padding:1rem;display:flex}.participant-row:last-child{border-bottom:none}.participant-avatar{border:1px solid var(--color-border);width:36px;height:36px;color:var(--color-primary);font-family:var(--font-heading);background:#eef2f6;border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;font-weight:800;display:flex}.badge-pending{color:#b27a00;border-radius:var(--radius-pill);font-size:.7rem;font-weight:700;font-family:var(--font-body);background:#fff8e1;padding:.2rem .6rem}.badge-active{color:#166534;border-radius:var(--radius-pill);font-size:.7rem;font-weight:700;font-family:var(--font-body);background:#f0fdf4;padding:.2rem .6rem}.badge-admin{color:var(--color-primary);border-radius:var(--radius-pill);font-size:.7rem;font-weight:700;font-family:var(--font-body);text-transform:uppercase;background:#f0f4f8;padding:.2rem .6rem}.animate-fade-in{animation:fadeIn .3s var(--ease-out)}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.animate-pulse{animation:2s ease-in-out infinite pulse}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.share-panel{border-radius:var(--radius-lg);border:1px solid var(--color-border);background:#f8fafc;margin-top:1.25rem;padding:1.25rem;box-shadow:inset 0 2px 4px #00000005}.share-panel-row{gap:.5rem;margin-bottom:.5rem;display:flex}.share-panel-row input{flex:1;min-width:0}.admin-stats{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem;display:grid}.admin-stat-card{text-align:center;padding:1.25rem}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media screen and (width>=640px){.app-container{padding:2rem}.navbar{border-radius:999px;margin-bottom:2rem;padding:1rem 1.5rem}.nav-actions .btn{padding:.6rem 1rem;font-size:.9rem}.nav-user-name{max-width:150px;display:block}h1{font-size:2.5rem}.quinielas-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.modal-overlay{align-items:center;padding:2rem}.modal-overlay .glass-panel{border-radius:var(--radius-xl);max-width:500px;max-height:85vh;box-shadow:var(--shadow-lg)}.match-prediction-row{gap:1.5rem}.match-team-name{max-width:120px;font-size:1.1rem}.match-score-input{height:60px;width:60px!important;font-size:1.6rem!important}}
