@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;800&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}#root{flex-direction:column;width:100%;height:100%;display:flex}:root{--bg-color:#0b0f19;--card-bg:#141928a6;--card-border:#ffffff14;--text-primary:#fff;--text-secondary:#94a3b8;--discord-color:#5865f2;--discord-hover:#4752c4;--accent-1:#f36;--accent-2:#7c3aed;--accent-3:#0ea5e9;--space-sm:clamp(.5rem, 1.5vw, 1rem);--space-md:clamp(1rem, 2.5vw, 2rem);--space-lg:clamp(1.5rem, 4vw, 3rem);--space-xl:clamp(2rem, 5vw, 4rem)}html,body{background-color:var(--bg-color);color:var(--text-primary);font-family:Outfit,sans-serif}.background-shapes{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.shape{filter:blur(clamp(60px,8vw,120px));opacity:.5;border-radius:50%;animation:20s ease-in-out infinite alternate float;position:absolute}.shape-1{background:var(--accent-1);width:clamp(280px,45vw,700px);height:clamp(280px,45vw,700px);animation-delay:0s;top:-15%;left:-10%}.shape-2{background:var(--accent-2);width:clamp(320px,50vw,800px);height:clamp(320px,50vw,800px);animation-delay:-5s;bottom:-15%;right:-10%}.shape-3{background:var(--accent-3);opacity:.25;width:clamp(200px,35vw,600px);height:clamp(200px,35vw,600px);animation-delay:-10s;top:40%;left:30%}@keyframes float{0%{transform:translate(0)rotate(0)}50%{transform:translate(5vw,3vh)rotate(180deg)}to{transform:translate(-3vw,6vh)rotate(360deg)}}.glass-card{z-index:10;background:var(--card-bg);-webkit-backdrop-filter:blur(24px);border:1px solid var(--card-border);padding:var(--space-lg);gap:var(--space-md);border-radius:clamp(16px,2.5vw,28px);flex-direction:column;width:min(92vw,580px);animation:.7s cubic-bezier(.22,1,.36,1) forwards fadeIn;display:flex;position:relative;box-shadow:0 25px 50px -12px #0000008c,inset 0 1px 1px #ffffff1a}@media (hover:hover){.glass-card{transition:transform .3s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s}.glass-card:hover{transform:translateY(-4px);box-shadow:0 35px 60px -15px #000000a6,inset 0 1px 1px #ffffff2e}}@media (orientation:landscape) and (height<=540px){.glass-card{border-radius:14px;gap:clamp(.4rem,1vh,.75rem);width:min(80vw,620px);padding:clamp(.6rem,2vh,1rem) clamp(1rem,3vw,1.5rem)}}.card-header{text-align:center}.title{letter-spacing:clamp(-.5px,-.1vw,-1.5px);background:linear-gradient(135deg,#fff 0%,#a5b4fc 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.4em;font-size:clamp(1.6rem,5vw,3.5rem);font-weight:800;line-height:1.1}@media (orientation:landscape) and (height<=540px){.title{margin-bottom:.15em;font-size:clamp(1.1rem,4vh,1.6rem)}}.subtitle{color:var(--text-secondary);font-size:clamp(.8rem,1.8vw,1.1rem);font-weight:300;line-height:1.5}.app-container{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.card-body{align-items:center;gap:var(--space-md);flex-direction:column;display:flex}.icon-container{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:clamp(64px,10vw,96px);height:clamp(64px,10vw,96px);transition:transform .5s,box-shadow .5s;display:flex;box-shadow:0 0 30px #5865f233}.icon-container svg{width:clamp(36px,6vw,56px);height:auto}.glass-card:hover .icon-container{transform:scale(1.05)rotate(5deg);box-shadow:0 0 50px #5865f266}.discord-btn{background:var(--discord-color);color:#fff;cursor:pointer;z-index:1;border:none;border-radius:12px;justify-content:center;align-items:center;width:100%;padding:clamp(.75rem,2vw,1rem) clamp(1.25rem,3vw,2rem);font-family:inherit;font-size:clamp(.95rem,2vw,1.125rem);font-weight:600;transition:all .2s;display:flex;position:relative;overflow:hidden}.discord-btn span{z-index:2;position:relative}.discord-btn:before{content:"";z-index:1;background:linear-gradient(#ffffff1a,#fff0);position:absolute;inset:0}.discord-btn .btn-glow{z-index:0;background:radial-gradient(circle,#ffffff4d 0%,#0000 60%);border-radius:50%;width:150%;height:150%;transition:transform .5s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(0)}.discord-btn:hover{background:var(--discord-hover);transform:translateY(-2px);box-shadow:0 10px 20px #5865f266}.discord-btn:hover .btn-glow{transform:translate(-50%,-50%)scale(1)}.discord-btn:active{transform:translateY(1px)}.card-footer{text-align:center;margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid #ffffff0d}.card-footer p{color:var(--text-secondary);opacity:.7;font-size:clamp(.75rem,1.5vw,.875rem)}@keyframes fadeIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.view-as-banner{background:linear-gradient(90deg, var(--accent-1), var(--accent-2));z-index:9999;justify-content:center;align-items:center;gap:1rem;padding:.5rem 1rem;font-size:.9rem;animation:.3s ease-out slideDown;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 4px 12px #0000004d}.view-as-banner p{color:#fff;margin:0}.view-as-banner button{color:#fff;cursor:pointer;background:#fff3;border:1px solid #fff6;border-radius:4px;padding:.2rem .6rem;font-size:.8rem;transition:background .2s}.view-as-banner button:hover{background:#ffffff4d}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.admin-dashboard{background-color:var(--bg-color);width:100%;height:100%;color:var(--text-primary);z-index:10;scrollbar-width:thin;scrollbar-color:#ffffff26 transparent;padding:clamp(1rem,3vw,4rem);position:relative;overflow:hidden auto}.admin-dashboard::-webkit-scrollbar{width:6px}.admin-dashboard::-webkit-scrollbar-track{background:0 0}.admin-dashboard::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.admin-dashboard::-webkit-scrollbar-thumb:hover{background:#ffffff40}.admin-header{border-bottom:1px solid var(--card-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:clamp(1.25rem,3vh,2.5rem);padding-bottom:clamp(.75rem,2vh,1.25rem);display:flex}.admin-header h2{background:linear-gradient(135deg,#fff 0%,#a5b4fc 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:clamp(1.5rem,4vw,2.25rem)}.admin-actions{flex-wrap:wrap;gap:.75rem;display:flex}.admin-grid{grid-template-columns:1fr;gap:clamp(1.25rem,3vw,2.5rem);display:grid}@media (width>=1024px){.admin-grid{grid-template-columns:clamp(280px,30vw,420px) 1fr}}@media (width>=1920px){.admin-grid{grid-template-columns:500px 1fr;gap:3rem}}.admin-card{background:var(--card-bg);-webkit-backdrop-filter:blur(20px);border:1px solid var(--card-border);border-radius:clamp(12px,1.5vw,20px);padding:clamp(1rem,2.5vw,2rem)}.admin-card h3{color:var(--text-secondary);margin-bottom:clamp(.75rem,2vh,1.5rem);font-size:clamp(1rem,2vw,1.35rem)}.mapping-form{flex-direction:column;gap:clamp(.75rem,2vh,1.25rem);display:flex}.form-group{flex-direction:column;gap:.4rem;display:flex}.form-group label{color:var(--text-secondary);font-size:clamp(.75rem,1.5vw,.875rem)}.form-group input,.form-group select{border:1px solid var(--card-border);color:var(--text-primary);background:#00000040;border-radius:8px;padding:clamp(.5rem,1.5vh,.75rem) clamp(.65rem,1.5vw,.85rem);font-family:inherit;font-size:clamp(.875rem,1.8vw,1rem);transition:border-color .2s}:is(.form-group input,.form-group select):focus{border-color:var(--discord-color);outline:none}.manual-input{margin-top:.5rem}.table-responsive{-webkit-overflow-scrolling:touch;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--card-border);padding:clamp(.6rem,1.5vh,1rem) clamp(.5rem,1.5vw,1rem);font-size:clamp(.8rem,1.5vw,.95rem)}.admin-table th{color:var(--text-secondary);white-space:nowrap;font-size:clamp(.72rem,1.3vw,.875rem);font-weight:600}.delete-btn{color:#f36;cursor:pointer;background:#ff336626;border:1px solid #f366;border-radius:6px;padding:.4rem .85rem;font-family:inherit;font-size:.875rem;transition:background .2s,border-color .2s}.delete-btn:hover{background:#ff336659;border-color:#ff3366b3}.view-as-btn{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #fff3;border-radius:6px;margin-right:.5rem;padding:.4rem .85rem;font-family:inherit;font-size:.875rem;transition:all .2s}.view-as-btn:hover{background:#ffffff26;border-color:#fff6;transform:translateY(-1px)}.view-as-btn:active{transform:translateY(0)}.error-message{color:#f36;background:#ff33661a;border:1px solid #f366;border-radius:8px;margin-bottom:clamp(1rem,3vh,2rem);padding:clamp(.75rem,2vh,1rem) clamp(.75rem,2vw,1rem);font-size:clamp(.85rem,1.8vw,.95rem)}.homepage-container{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.homepage-container .glass-card{gap:var(--space-sm);width:min(92vw,640px)}@media (orientation:landscape) and (height<=540px){.homepage-container .glass-card{border-radius:14px;gap:clamp(.4rem,1vh,.75rem);width:min(80vw,640px);padding:clamp(.6rem,2vh,1rem) clamp(1rem,3vw,1.5rem)}}.homepage-container .card-body{flex-direction:column;align-items:center;gap:clamp(.6rem,2vh,1.5rem);width:100%;display:flex}@media (orientation:landscape) and (height<=540px){.homepage-container .card-body{gap:clamp(.35rem,1.2vh,.75rem)}.homepage-container .card-header{text-align:left;flex-direction:row;justify-content:center;align-items:center;gap:.75rem;display:flex}.homepage-container .card-header .title{margin-bottom:0;font-size:clamp(1.1rem,4vh,1.5rem)}.homepage-container .card-header .subtitle{font-size:clamp(.7rem,2vh,.85rem)}}.homepage-container .admin-btn{background:var(--accent-1);color:#fff;cursor:pointer;z-index:1;border:none;border-radius:9999px;justify-content:center;align-items:center;width:100%;padding:clamp(.75rem,2vh,1.25rem) clamp(1.25rem,3vw,2rem);font-family:inherit;font-size:clamp(.95rem,2.5vw,1.35rem);font-weight:800;transition:all .2s;display:flex;position:relative;overflow:hidden}.homepage-container .admin-btn span{z-index:2;position:relative}.homepage-container .admin-btn .btn-glow{z-index:0;background:radial-gradient(circle,#ffffff4d 0%,#0000 60%);border-radius:50%;width:150%;height:150%;transition:transform .5s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(0)}@media (hover:hover){.homepage-container .admin-btn:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 10px 20px #f366}.homepage-container .admin-btn:hover .btn-glow{transform:translate(-50%,-50%)scale(1)}}.homepage-container .admin-btn:active{transform:translateY(1px)}@media (orientation:landscape) and (height<=540px){.homepage-container .admin-btn{padding:clamp(.5rem,1.5vh,.75rem) clamp(1rem,3vw,1.5rem);font-size:clamp(.85rem,2.5vh,1.1rem)}}.homepage-container .logout-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:12px;padding:clamp(.45rem,1.2vh,.75rem) clamp(1rem,3vw,2rem);font-family:inherit;font-size:clamp(.8rem,1.8vw,1rem);transition:all .2s}@media (hover:hover){.homepage-container .logout-btn:hover{color:#fff;background:#ffffff0d}}@media (orientation:landscape) and (height<=540px){.homepage-container .logout-btn{padding:clamp(.3rem,1vh,.5rem) clamp(.75rem,2vw,1.25rem);font-size:clamp(.72rem,2vh,.85rem)}}:root{--btn-h:clamp(64px, 12vh, 120px);--btn-h-ls:clamp(44px, 10vh, 68px)}.play-button{color:#fff;width:100%;height:var(--btn-h);cursor:pointer;z-index:1;background:0 0;border:none;border-radius:0;padding:0;transition:transform .3s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:visible}@media (orientation:landscape) and (height<=540px){.play-button{height:var(--btn-h-ls)}}.play-button .button-shape-container{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:visible}.play-button .button-svg{width:100%;height:100%;display:block;overflow:visible}.play-button .button-bg-path{fill:var(--discord-color);transition:fill .3s}.play-button .button-border-path{stroke:#ffffff4d;stroke-width:3px;vector-effect:non-scaling-stroke;transition:stroke .3s}.play-button .portrait-container{z-index:3;width:calc(var(--btn-h) * 1.05);height:calc(var(--btn-h) * 1.05);background:#1e1e1e;border:3px solid #ffffff4d;border-radius:50%;justify-content:center;align-items:center;transition:border-color .3s;display:flex;position:absolute;top:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 4px 16px #00000080}@media (orientation:landscape) and (height<=540px){.play-button .portrait-container{width:calc(var(--btn-h-ls) * 1.05);height:calc(var(--btn-h-ls) * 1.05)}}.play-button .portrait{object-fit:cover;width:100%;height:100%}.play-button .btn-content{z-index:2;width:100%;height:100%;padding-left:max(var(--btn-h) * 1.2616, 72px);align-items:center;padding-right:0;display:flex;position:relative}@media (orientation:landscape) and (height<=540px){.play-button .btn-content{padding-left:max(var(--btn-h-ls) * 1.2616, 52px)}}.play-button .text-container{text-align:left;flex-direction:column;justify-content:center;align-items:flex-start;width:100%;min-width:0;padding-right:clamp(16px,3vw,32px);display:flex;overflow:hidden}.play-button .separator-line{width:100%;height:1px;margin-left:calc(var(--btn-h) * .115);width:calc(100% - var(--btn-h) * .115 - var(--btn-h) * .3516 + clamp(16px, 3vw, 32px));margin-top:calc(var(--btn-h) * .04);margin-bottom:calc(var(--btn-h) * .04);background-color:#ffffff4d;flex-shrink:0}@media (orientation:landscape) and (height<=540px){.play-button .separator-line{margin-left:calc(var(--btn-h-ls) * .115);width:calc(100% - var(--btn-h-ls) * .115 - var(--btn-h-ls) * .3516 + clamp(16px, 3vw, 32px));margin-top:calc(var(--btn-h-ls) * .04);margin-bottom:calc(var(--btn-h-ls) * .04)}}.play-button .main-text{letter-spacing:-.5px;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:clamp(.9rem,2.5vw,1.5rem);font-weight:800;line-height:1.2;overflow:hidden}@media (orientation:landscape) and (height<=540px){.play-button .main-text{font-size:clamp(.8rem,2.5vh,1.1rem)}}.play-button .sub-text{opacity:.8;white-space:nowrap;text-overflow:ellipsis;max-width:100%;margin-left:calc(var(--btn-h) * .1172);font-size:clamp(.78rem,2vw,1.125rem);font-weight:400;overflow:hidden}@media (orientation:landscape) and (height<=540px){.play-button .sub-text{margin-left:calc(var(--btn-h-ls) * .1172);font-size:clamp(.7rem,2vh,.9rem)}}.play-button .btn-glow{z-index:0;pointer-events:none;background:radial-gradient(circle,#ffffff4d 0%,#0000 60%);border-radius:50%;width:150%;height:150%;transition:transform .5s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(0)}.play-button.has-bg .button-bg-path{fill:#0000}@media (hover:hover){.play-button:hover:not(.disabled){transform:translateY(-3px)scale(1.02)}.play-button:hover:not(.disabled) .button-bg-path{fill:var(--discord-hover)}.play-button:hover:not(.disabled) .button-border-path{stroke:#fff9}.play-button:hover:not(.disabled) .btn-glow{transform:translate(-50%,-50%)scale(1)}.play-button:hover:not(.disabled) .portrait-container{border-color:#fff9}}.play-button:active:not(.disabled){transform:translateY(1px)}.play-button.disabled{color:#a1a1aa;cursor:not-allowed}.play-button.disabled .button-bg-path{fill:#3f3f46}.play-button.disabled .button-border-path{stroke:#ffffff1a}.play-button.disabled .portrait-container{opacity:.5;border-color:#ffffff1a}.play-button.disabled .portrait{filter:grayscale()}.play-button.disabled .sub-text{opacity:.5}.settings-button{color:var(--text-primary);width:100%;height:var(--btn-h);z-index:1;cursor:not-allowed;opacity:.6;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:9999px;align-items:center;padding:clamp(.5rem,1.5vh,1rem) clamp(1.25rem,3vw,2.5rem) clamp(.5rem,1.5vh,1rem) clamp(.3rem,1vw,.75rem);transition:all .3s cubic-bezier(.175,.885,.32,1.275);display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff14}@media (orientation:landscape) and (height<=540px){.settings-button{height:var(--btn-h-ls);padding:clamp(.3rem,1vh,.6rem) clamp(.75rem,2vw,1.5rem) clamp(.3rem,1vh,.6rem) clamp(.25rem,.8vw,.5rem)}}.settings-button .btn-content{align-items:center;gap:clamp(.75rem,2vw,1.5rem);width:100%;display:flex}.settings-button .icon-container{width:clamp(44px,9vw,96px);height:clamp(44px,9vw,96px);color:var(--text-secondary);background:#ffffff0d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .3s;display:flex}.settings-button .icon-container svg{width:clamp(18px,4vw,28px);height:clamp(18px,4vw,28px)}@media (orientation:landscape) and (height<=540px){.settings-button .icon-container{width:clamp(34px,7vh,56px);height:clamp(34px,7vh,56px)}}.settings-button .text-container{text-align:left;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;display:flex}.settings-button .main-text{color:var(--text-secondary);letter-spacing:-.5px;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:clamp(.9rem,2.5vw,1.5rem);font-weight:800;overflow:hidden}@media (orientation:landscape) and (height<=540px){.settings-button .main-text{font-size:clamp(.8rem,2.5vh,1.1rem)}}.settings-button .sub-text{opacity:.5;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:clamp(.78rem,2vw,1.125rem);font-weight:400;overflow:hidden}@media (orientation:landscape) and (height<=540px){.settings-button .sub-text{font-size:clamp(.7rem,2vh,.9rem)}}
