*{margin:0;padding:0;box-sizing:border-box}body,html{width:100%;height:100%;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0b2b1a}.app{width:100vw;height:100vh;display:flex;justify-content:center;background:#0b2b1a}.mobile-container{width:100%;max-width:430px;height:100vh;display:flex;flex-direction:column;background:#0b2b1a;position:relative}.screen{width:100%;height:100%;display:flex;flex-direction:column;background:#0b2b1a;overflow:hidden}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes load{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideDown{0%{transform:translateY(-30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes floatUp{0%{transform:translate(-50%,-50%);opacity:1}to{transform:translate(-50%,-150px);opacity:0}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.02)}}@keyframes celebrationPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes celebrationBounce{0%,to{transform:translateY(0) scale(1)}25%{transform:translateY(-15px) scale(1.1)}50%{transform:translateY(0) scale(1)}75%{transform:translateY(-8px) scale(1.05)}}.achievement-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .3s ease-in}.achievement-content{background:linear-gradient(135deg,#10b981,#059669);border-radius:20px;padding:40px;max-width:500px;width:90%;text-align:center;animation:scaleIn .5s cubic-bezier(.68,-.55,.265,1.55);box-shadow:0 20px 60px #00000080}.achievement-icon{font-size:80px;margin-bottom:20px;animation:bounce 1s infinite}.achievement-content h2{color:#fff;font-size:28px;margin-bottom:20px;font-weight:700}.achievement-details{background:#0003;padding:20px;border-radius:10px;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;text-align:left;margin:20px 0;white-space:pre-wrap;font-size:16px;line-height:1.6}.achievement-close{background:#fff;color:#10b981;border:none;padding:15px 40px;border-radius:10px;font-size:18px;font-weight:700;cursor:pointer;transition:transform .2s}.achievement-close:hover{transform:scale(1.05)}.achievement-close:active{transform:scale(.95)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.prediction-card.celebrating{animation:cardPulse .5s ease-in-out;box-shadow:0 0 30px #10b98180}@keyframes cardPulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:16px}@media (min-width: 640px){.stats-grid{grid-template-columns:repeat(4,1fr)}}.stat-card{background:#1a4d3299;border-radius:16px;padding:20px;text-align:center;transition:all .2s}.stat-card:hover{transform:translateY(-2px);background:#1a4d32cc}.stat-card.highlight{border:2px solid #10B981}.stat-card .icon{font-size:32px;margin-bottom:8px}.stat-card .value{font-size:32px;font-weight:700;color:#fff;margin-bottom:4px}.stat-card .label{font-size:14px;color:#9ca3af}.predictions-section{margin:24px 16px;padding:20px;background:#ffffff0d;border-radius:16px}.predictions-section h2{font-size:24px;font-weight:700;margin-bottom:8px;color:#fff}.predictions-section .subtitle{color:#9ca3af;font-size:14px;margin-bottom:16px}.prediction-item{background:#1a4d3299;border-radius:12px;padding:16px;margin-bottom:12px;cursor:pointer;transition:all .2s}.prediction-item:hover{background:#1a4d32cc;transform:translateY(-2px)}.prediction-item .competition{color:#10b981;font-size:12px;font-weight:600;text-transform:uppercase;margin-bottom:4px}.prediction-item h3{font-size:16px;font-weight:600;margin-bottom:4px;color:#fff}.prediction-item .date{color:#9ca3af;font-size:14px;margin-bottom:8px}.prediction-item .status{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.1);font-size:14px;color:#d1d5db}.this-week-section{margin:24px 16px}.this-week-section h2{font-size:24px;font-weight:700;margin-bottom:16px;color:#fff}.competitions-grid{margin:24px 16px}.competitions-grid h2{font-size:24px;font-weight:700;margin-bottom:16px;color:#fff}.competitions-grid .grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}@media (min-width: 640px){.competitions-grid .grid{grid-template-columns:repeat(3,1fr)}}.competition-card{background:#1a4d3299;border-radius:16px;padding:20px;text-align:center;cursor:pointer;transition:all .2s}.competition-card:hover{background:#1a4d32cc;transform:translateY(-4px);box-shadow:0 8px 16px #0000004d}.competition-card .emoji{font-size:48px;margin-bottom:12px}.competition-card h3{font-size:16px;font-weight:600;margin-bottom:8px;color:#fff}.competition-card .view-text{color:#10b981;font-size:14px}.back-button{background:transparent;border:none;color:#9ca3af;font-size:16px;padding:12px 16px;cursor:pointer;display:flex;align-items:center;gap:8px;position:absolute;top:16px;left:16px}.back-button:hover{color:#10b981}.view-all-btn{width:100%;background:transparent;border:2px solid #10B981;color:#10b981;padding:12px;border-radius:12px;font-weight:600;margin-top:16px;cursor:pointer}.view-all-btn:hover{background:#10b9811a}.prediction-button-green{box-shadow:0 4px 12px #10b9814d}.prediction-button-amber{box-shadow:0 4px 12px #f59e0b4d!important}.prediction-button-red{box-shadow:0 4px 12px #ef44444d!important}.prediction-button-gray{box-shadow:none!important}.prediction-button.pulse-strong{animation:strongPulse 1.5s ease-in-out infinite!important}@keyframes strongPulse{0%,to{transform:scale(1);box-shadow:0 4px 12px #10b98199}50%{transform:scale(1.05);box-shadow:0 10px 30px #10b981f2}}.prediction-button.pulse-medium{animation:mediumPulse 2s ease-in-out infinite!important}@keyframes mediumPulse{0%,to{transform:scale(1);box-shadow:0 4px 12px #10b98180}50%{transform:scale(1.035);box-shadow:0 8px 24px #10b981d9}}.prediction-button.pulse-gentle{animation:gentleGlow 3s ease-in-out infinite!important}@keyframes gentleGlow{0%,to{box-shadow:0 4px 12px #10b98180;transform:scale(1)}50%{box-shadow:0 8px 24px #10b981e6;transform:scale(1.03)}}.prediction-button.prediction-button-amber,.prediction-button.prediction-button-gray{animation:none!important}.prediction-button.prediction-button-red:not(.pulse-critical){animation:none!important}.prediction-button-green:hover:not(.pulse-strong):not(.pulse-medium):not(.pulse-gentle){box-shadow:0 6px 18px #10b98166}.prediction-button-amber:hover{box-shadow:0 6px 18px #f59e0b66!important}.prediction-button-red:hover{box-shadow:0 6px 18px #ef444466!important}.prediction-button-gray:hover{background:#4b5563!important}.prediction-button-small{width:100%;padding:10px 14px;border-radius:8px;border:none;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:12px}.prediction-button-small.green{background:#10b981;color:#fff;box-shadow:0 3px 10px #10b9814d}.prediction-button-small.green:hover{background:#059669;transform:translateY(-2px);box-shadow:0 5px 14px #10b98166}.prediction-button-small.green.gentle{animation:gentlePulseSmall 2.5s ease-in-out infinite}.prediction-button-small.green.medium{animation:mediumPulseSmall 2s ease-in-out infinite}.prediction-button-small.green.critical{animation:strongPulseSmall 1.5s ease-in-out infinite}@keyframes gentlePulseSmall{0%,to{box-shadow:0 4px 12px #10b98180;transform:scale(1)}50%{box-shadow:0 8px 20px #10b981e6;transform:scale(1.03)}}@keyframes mediumPulseSmall{0%,to{box-shadow:0 4px 12px #10b98180;transform:scale(1)}50%{box-shadow:0 8px 22px #10b981e6;transform:scale(1.035)}}@keyframes strongPulseSmall{0%,to{box-shadow:0 4px 12px #10b98199;transform:scale(1)}50%{box-shadow:0 8px 28px #10b981f2;transform:scale(1.05)}}.prediction-button-small.amber{background:#f59e0b;color:#fff;box-shadow:0 3px 10px #f59e0b4d;animation:none}.prediction-button-small.amber:hover{background:#d97706;transform:translateY(-2px);box-shadow:0 5px 14px #f59e0b66}.prediction-button-small.red{background:#ef4444;color:#fff;box-shadow:0 3px 10px #ef44444d;animation:none}.prediction-button-small.red.critical{animation:dramaticRedPulse 1s ease-in-out infinite}@keyframes dramaticRedPulse{0%,to{background:linear-gradient(135deg,#dc2626,#991b1b);box-shadow:0 4px 15px #dc262699;transform:scale(1)}50%{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 8px 30px #dc2626,0 0 40px #dc2626cc;transform:scale(1.06)}}.prediction-button-small.red:hover{background:#dc2626;transform:translateY(-2px);box-shadow:0 5px 14px #ef444466}.prediction-button-small.gray{background:#6b7280;color:#fff;box-shadow:none;animation:none}.prediction-button-small.gray:hover{background:#4b5563}.prediction-item.urgent-card{border:2px solid rgba(16,185,129,.5);animation:cardBorderPulse 2s ease-in-out infinite}@keyframes cardBorderPulse{0%,to{border-color:#10b98180;box-shadow:0 0 #10b98100}50%{border-color:#10b981cc;box-shadow:0 0 12px #10b98166}}.countdown-badge{display:inline-block;background:#ef444426;color:#ef4444;padding:4px 10px;border-radius:12px;font-size:.8rem;font-weight:600;margin-top:8px;margin-bottom:4px;animation:countdownPulse 1s ease-in-out infinite}@keyframes countdownPulse{0%,to{opacity:.85}50%{opacity:1}}.prediction-button.critical,.prediction-button.prediction-button-red.pulse-critical{animation:dramaticRedPulseLarge 1s ease-in-out infinite!important}@keyframes dramaticRedPulseLarge{0%,to{box-shadow:0 4px 20px #dc2626b3,0 0 30px #dc262666;transform:scale(1)}50%{box-shadow:0 8px 40px #dc2626,0 0 60px #dc2626cc;transform:scale(1.04)}}.urgency-banner{background:linear-gradient(135deg,#dc2626,#991b1b);border:2px solid rgba(255,255,255,.3);border-radius:12px;padding:16px;margin-bottom:20px;animation:urgencyBannerPulse 2s ease-in-out infinite}@keyframes urgencyBannerPulse{0%,to{box-shadow:0 4px 15px #dc262680;transform:scale(1)}50%{box-shadow:0 8px 30px #dc2626e6,0 0 40px #dc262699;transform:scale(1.02)}}.urgency-banner .icon{font-size:32px;margin-bottom:8px;animation:urgencyIconBounce 1.5s ease-in-out infinite}@keyframes urgencyIconBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.urgency-banner .title{font-size:18px;font-weight:900;color:#fff;margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.urgency-banner .message{font-size:14px;color:#ffffffe6;line-height:1.4}.urgent-prediction-wrapper{animation:urgentScreenGlow 2s ease-in-out infinite}@keyframes urgentScreenGlow{0%,to{box-shadow:inset 0 0 20px #dc26264d}50%{box-shadow:inset 0 0 40px #dc262699}}@keyframes slideInRight{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutRight{0%{transform:translate(0);opacity:1}to{transform:translate(400px);opacity:0}}@keyframes floatUpAndFade{0%{transform:translate(-50%,-50%) scale(1);opacity:1}50%{transform:translate(-50%,-80px) scale(1.2);opacity:1}to{transform:translate(-50%,-120px) scale(1);opacity:0}}.flip-card{perspective:1000px;cursor:pointer;position:relative}.flip-card-inner{position:relative;width:100%;transition:transform .6s;transform-style:preserve-3d}.flip-card.flipped .flip-card-inner{transform:rotateY(180deg)}.flip-card-front,.flip-card-back{position:relative;backface-visibility:hidden;border-radius:16px;padding:20px;width:100%}.flip-card-back{position:absolute;top:0;left:0;width:100%;height:100%;transform:rotateY(180deg)}.flip-prompt{position:absolute;bottom:12px;right:12px;background:#fff3;padding:4px 10px;border-radius:12px;font-size:11px;color:#fff;font-weight:600;animation:flipPromptPulse 2s ease-in-out infinite;pointer-events:none}@keyframes flipPromptPulse{0%,to{opacity:.7}50%{opacity:1}}@media (hover: hover){.flip-card:hover .flip-prompt{opacity:1}}.streak-flame{display:inline-block;position:relative;animation:flameFlicker 2s ease-in-out infinite}@keyframes flameFlicker{0%,to{transform:scale(1) translateY(0);filter:brightness(1)}25%{transform:scale(1.05) translateY(-2px);filter:brightness(1.2)}50%{transform:scale(.98) translateY(0);filter:brightness(.9)}75%{transform:scale(1.03) translateY(-1px);filter:brightness(1.1)}}.streak-flame.small{font-size:24px}.streak-flame.medium{font-size:36px;animation:flameMedium 1.8s ease-in-out infinite}@keyframes flameMedium{0%,to{transform:scale(1) translateY(0);filter:brightness(1) drop-shadow(0 0 8px rgba(245,158,11,.6))}50%{transform:scale(1.1) translateY(-4px);filter:brightness(1.3) drop-shadow(0 0 12px rgba(245,158,11,.9))}}.streak-flame.large{font-size:48px;animation:flameLarge 1.5s ease-in-out infinite}@keyframes flameLarge{0%,to{transform:scale(1) translateY(0);filter:brightness(1) drop-shadow(0 0 12px rgba(239,68,68,.8))}50%{transform:scale(1.15) translateY(-6px);filter:brightness(1.4) drop-shadow(0 0 20px rgba(239,68,68,1))}}.streak-particles{position:absolute;top:-10px;left:50%;transform:translate(-50%);width:40px;height:40px;pointer-events:none}.streak-particle{position:absolute;width:4px;height:4px;background:gold;border-radius:50%;animation:particleRise 2s ease-in-out infinite;opacity:0}.streak-particle:nth-child(1){animation-delay:0s;left:20%}.streak-particle:nth-child(2){animation-delay:.3s;left:50%}.streak-particle:nth-child(3){animation-delay:.6s;left:80%}@keyframes particleRise{0%{transform:translateY(0);opacity:0}20%{opacity:1}to{transform:translateY(-40px);opacity:0}}@keyframes arrowBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes crownFloat{0%,to{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-6px) rotate(5deg)}}.rank-arrow{display:inline-flex;align-items:center;gap:4px;margin-left:8px;font-weight:700;animation:arrowBounce 1s ease-in-out infinite}.rank-arrow.up{color:#10b981}.rank-arrow.down{color:#ef4444}.rank-arrow.neutral{color:#9ca3af;animation:none}.league-crown{display:inline-flex;align-items:center;margin-left:8px;animation:crownFloat 2s ease-in-out infinite;filter:drop-shadow(0 0 8px rgba(255,215,0,.8))}.skeleton{background:linear-gradient(90deg,#ffffff0d 25%,#ffffff1a,#ffffff0d 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:8px}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-line{height:16px;margin-bottom:8px}.skeleton-line.short{width:60%}.skeleton-line.medium{width:80%}.skeleton-line.long{width:90%}.skeleton-circle{border-radius:50%}.skeleton-card{background:#1a4d324d;border-radius:16px;padding:20px;margin-bottom:12px}.skeleton-table-row{display:flex;align-items:center;gap:12px;padding:12px;margin-bottom:8px;background:#1a4d3233;border-radius:8px}.card-back{transform:rotateY(180deg);background:#1f2937;border:2px solid #374151}.card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.4,0,.2,1)}.card-inner.is-flipped{transform:rotateY(180deg)!important}.card-scene{height:240px!important;margin-bottom:24px!important;perspective:1000px;z-index:1;position:relative}.card-face{position:absolute!important;top:0;left:0;width:100%;height:100%;-webkit-backface-visibility:hidden!important;backface-visibility:hidden!important;border-radius:16px;overflow:hidden;display:flex;flex-direction:column}.card-back{transform:rotateY(180deg);background:linear-gradient(to bottom right,#1f2937e6,#111827e6),repeating-linear-gradient(45deg,rgba(255,255,255,.03) 0px,rgba(255,255,255,.03) 2px,transparent 2px,transparent 8px);border:2px solid #374151;box-shadow:inset 0 0 20px #00000080}.card-back.glow-green{box-shadow:inset 0 0 20px #10b98133;border-color:#10b981}.card-back.glow-yellow{box-shadow:inset 0 0 20px #f59e0b33;border-color:#f59e0b}.card-back.glow-red{box-shadow:inset 0 0 20px #ef444433;border-color:#ef4444}.card-back.glow-joker{box-shadow:inset 0 0 20px #8b5cf633;border-color:#8b5cf6}.card-back.glow-blue{box-shadow:inset 0 0 20px #3b82f633;border-color:#3b82f6}.card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.175,.885,.32,1.275)}.card-scene:not(:has(.is-flipped)):hover .card-inner{transform:rotateY(10deg)}.card-inner.is-flipped{transform:rotateY(180deg)}.card-face h3{font-size:20px!important}
