body { min-height: 100dvh; }
[x-cloak] { display: none !important; }
.glass { background: rgba(29, 32, 34, .52); border: 1px solid rgba(255,255,255,.09); backdrop-filter: blur(22px); }
.glass-dark { background: rgba(11, 15, 16, .74); border: 1px solid rgba(255,255,255,.08); backdrop-filter: blur(20px); }
.glass-input { background: rgba(11, 15, 16, .7); border: 1px solid rgba(255,255,255,.08); backdrop-filter: blur(20px); transition: border-color .2s ease, box-shadow .2s ease, background .2s ease; }
.glass-input:focus { border-color: #00e476; box-shadow: 0 0 15px rgba(0, 228, 118, .2); outline: none; }
.glow-text { text-shadow: 0 0 18px rgba(0,255,133,.55); }
.green-glow { box-shadow: 0 0 32px rgba(0,255,133,.34); }
.blue-glow { box-shadow: 0 0 28px rgba(0,224,255,.28); }
.gold-text { background: linear-gradient(180deg, #fffaf5 0%, #ffdc49 52%, #e9c400 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.multiplier-text { background: linear-gradient(180deg, #fff 0%, #00ff85 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.play-vignette { background: radial-gradient(circle, transparent 20%, rgba(10, 15, 28, .9) 100%); }
.pitch-grid {
    background-image:
        radial-gradient(circle at center, rgba(0, 255, 133, .08) 0%, transparent 70%),
        repeating-linear-gradient(90deg, transparent 0, transparent 49px, rgba(255,255,255,.02) 50px),
        repeating-linear-gradient(0deg, transparent 0, transparent 49px, rgba(255,255,255,.02) 50px);
}
@keyframes rush-breathing {
    0%, 100% { transform: scale(1); filter: drop-shadow(0 0 30px rgba(0, 255, 133, .4)); }
    50% { transform: scale(1.03); filter: drop-shadow(0 0 60px rgba(0, 255, 133, .8)); }
}
.animate-rush-breathing { animation: rush-breathing 4s ease-in-out infinite; }
@keyframes cashout-ring {
    0% { box-shadow: 0 0 0 0 rgba(0, 255, 133, .7), 0 0 40px rgba(0,255,133,.4); }
    70% { box-shadow: 0 0 0 18px rgba(0, 255, 133, 0), 0 0 40px rgba(0,255,133,.4); }
    100% { box-shadow: 0 0 0 0 rgba(0, 255, 133, 0), 0 0 40px rgba(0,255,133,.4); }
}
.animate-cashout-ring { animation: cashout-ring 2s cubic-bezier(.4, 0, .6, 1) infinite; }
.stadium-bg {
    background:
        radial-gradient(circle at 50% 0%, rgba(0,224,255,.18), transparent 28rem),
        radial-gradient(circle at 50% 42%, rgba(0,255,133,.18), transparent 24rem),
        linear-gradient(180deg, #0a0f1c 0%, #101415 54%, #070909 100%);
}
.pitch-gradient {
    background: radial-gradient(circle at center, rgba(0, 228, 118, .15) 0%, rgba(16, 20, 21, 1) 70%);
}
.register-stadium-image {
    background-image: url("/stadium.png");
}
.grass-texture {
    background-image: url("/stadium.png");
    opacity: .05;
}
.glass-panel { background: rgba(255,255,255,.03); border: 1px solid rgba(255,255,255,.1); backdrop-filter: blur(20px); }
.input-recessed {
    background-color: rgba(0,0,0,.4) !important;
    border: 1px solid rgba(255,255,255,.1) !important;
    color: #e0e3e5 !important;
    color-scheme: dark;
}
.input-recessed:focus { border-color: #00e476; box-shadow: 0 0 0 1px #00e476; outline: none; }
.input-recessed::placeholder { color: rgba(185,203,185,.3) !important; }
.input-recessed:-webkit-autofill,
.input-recessed:-webkit-autofill:hover,
.input-recessed:-webkit-autofill:focus {
    -webkit-text-fill-color: #e0e3e5;
    box-shadow: 0 0 0 1000px rgba(0,0,0,.72) inset;
    caret-color: #00e476;
}
.pitch-lines {
    background-image:
        radial-gradient(circle at center, rgba(0,255,133,.09) 0%, transparent 68%),
        repeating-linear-gradient(90deg, transparent 0, transparent 48px, rgba(255,255,255,.035) 50px),
        repeating-linear-gradient(0deg, transparent 0, transparent 48px, rgba(255,255,255,.025) 50px);
}
.led { background: repeating-linear-gradient(90deg, #00ff85 0, #00ff85 8px, transparent 8px, transparent 12px); }
.hide-scrollbar::-webkit-scrollbar { display: none; }
.hide-scrollbar { scrollbar-width: none; -ms-overflow-style: none; }
.field-card { position: relative; overflow: hidden; }
.field-card::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: radial-gradient(circle at 50% 0%, rgba(0,255,133,.08), transparent 40%), repeating-linear-gradient(90deg, rgba(255,255,255,.03) 0 1px, transparent 1px 56px);
}
.stadium-photo {
    background:
        radial-gradient(circle at center, transparent 0%, rgba(16,20,21,.96) 78%),
        linear-gradient(135deg, rgba(0,255,133,.18), transparent 42%),
        url("/stadium.png") center / cover;
}
.hexagon { clip-path: polygon(25% 4%, 75% 4%, 100% 50%, 75% 96%, 25% 96%, 0 50%); }
.fixed-action { padding-bottom: max(1rem, env(safe-area-inset-bottom)); }
