@font-face{font-family:Geist;src:url(/fonts/geist.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono.woff2) format("woff2");font-weight:100 800;font-style:normal;font-display:swap}@font-face{font-family:Unbounded;src:url(/fonts/unbounded.woff2) format("woff2");font-weight:200 900;font-style:normal;font-display:swap}:root{color-scheme:dark;--bg: #050806;--glass: rgba(16, 27, 21, .62);--bg-input: rgba(2, 6, 4, .42);--line: rgba(190, 255, 140, .1);--line-strong: rgba(190, 255, 140, .19);--rot: #b6f23e;--rot-bright: #cdff6a;--bio: #3ee0c4;--purge: #ff6b70;--on-rot: #08130a;--text: #eef5ea;--text-dim: #a2b6a6;--rot-rgb: 182,242,62;--font-title: "Unbounded", "Geist", -apple-system, "Segoe UI", sans-serif;--font-display: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--font-body: "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--ease-out: cubic-bezier(.23, 1, .32, 1);--r-control: 12px;--r-bloque: 14px;--r-tarjeta: 22px;--noise: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:15px;line-height:1.5;min-height:100vh;min-height:100dvh;overflow-x:hidden;display:flex;flex-direction:column;align-items:center;padding:max(48px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) calc(64px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(560px 480px at 15% -8%,rgba(79,143,26,.45),transparent 70%),radial-gradient(520px 480px at 100% 40%,rgba(15,110,93,.38),transparent 70%),radial-gradient(700px 380px at 50% 112%,rgba(110,158,28,.24),transparent 70%)}body:after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:var(--noise);opacity:.08}:focus-visible{outline:2px solid var(--rot);outline-offset:3px}::selection{background:rgba(var(--rot-rgb),.32);color:#fff}html{scrollbar-color:rgba(var(--rot-rgb),.3) transparent}input{caret-color:var(--rot)}.cabecera{width:100%;max-width:500px;display:flex;align-items:center;gap:16px;margin-bottom:26px}.brand-mark{width:60px;height:60px;border-radius:18px;overflow:hidden;flex-shrink:0;box-shadow:0 0 0 1px rgba(var(--rot-rgb),.35);animation:markIn .6s var(--ease-out) backwards}.brand-mark img{width:100%;height:100%;object-fit:cover;display:block}@keyframes markIn{0%{opacity:0;transform:scale(.9);filter:blur(10px)}to{opacity:1;transform:none;filter:none}}h1{font-family:var(--font-title);font-weight:800;font-size:21px;letter-spacing:-.005em;margin:0;line-height:1.2;position:relative}h1 .acc{color:var(--rot)}h1{animation:glitchTexto .8s steps(2) .5s 1 backwards}@keyframes glitchTexto{0%{text-shadow:-4px 0 var(--bio),4px 0 #ff3df0;transform:translate(2px)}25%{text-shadow:3px 0 var(--bio),-3px 0 #ff3df0;transform:translate(-2px)}50%{text-shadow:-2px 1px var(--bio),2px -1px #ff3df0;transform:none}75%{text-shadow:1px 0 var(--bio),-1px 0 #ff3df0}}.sub{color:var(--text-dim);font-size:14px;margin-top:4px}.card{position:relative;overflow:hidden;width:100%;max-width:500px;padding:24px;margin-bottom:16px;background:var(--glass);border:1px solid var(--line);border-radius:var(--r-tarjeta);box-shadow:inset 0 1px #ffffff0f,0 16px 40px -18px #000000e6;animation:cardIn .4s var(--ease-out) backwards}.card:nth-of-type(2){animation-delay:60ms}@keyframes cardIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.card h2{display:flex;align-items:center;gap:10px;margin:0 0 18px;font-family:var(--font-title);font-size:16px;font-weight:700;letter-spacing:-.005em}.card h2 svg{width:18px;height:18px;color:var(--rot)}.card h2 .cuantas{margin-left:auto;font-family:var(--font-display);font-size:12px;font-weight:700;color:var(--on-rot);background:var(--rot);padding:2px 9px;border-radius:99px}svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.form-row{display:flex;flex-direction:column;gap:6px}label{font-size:13px;font-weight:600;color:var(--text-dim);margin-top:8px}label:first-child{margin-top:0}input{width:100%;background:var(--bg-input);border:1px solid var(--line);color:var(--text);padding:12px 14px;min-height:48px;border-radius:var(--r-control);font-size:16px;font-family:var(--font-body);box-shadow:inset 0 1px 2px #00000059;transition:border-color .15s ease,box-shadow .15s ease}input::placeholder{color:#a2b6a6bf;opacity:1}input:hover{border-color:var(--line-strong)}input:focus{outline:none;border-color:var(--rot);box-shadow:inset 0 1px 2px #00000059,0 0 0 3px rgba(var(--rot-rgb),.22)}button{margin-top:14px;background:linear-gradient(135deg,var(--rot),#8fd630);color:var(--on-rot);border:none;border-radius:var(--r-control);padding:14px;min-height:50px;font-weight:700;font-size:15px;font-family:var(--font-body);cursor:pointer;box-shadow:inset 0 1px #ffffff59,0 8px 20px -10px #000000b3;transition:background .15s ease,transform .14s var(--ease-out),box-shadow .15s ease}button:active{transform:scale(.97)}@media(hover:hover)and (pointer:fine){button:hover{background:linear-gradient(135deg,var(--rot-bright),var(--rot))}}.queue-item{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.queue-item:last-child{border-bottom:none}.queue-item .pos{font-family:var(--font-title);font-weight:800;color:var(--text-dim);font-size:14px;width:26px;flex-shrink:0;text-align:right;font-variant-numeric:tabular-nums}.queue-item:first-child{margin:0 -12px;padding:12px;border-radius:var(--r-bloque);border-bottom:none;background:linear-gradient(90deg,rgba(var(--rot-rgb),.16),transparent 80%)}.queue-item:first-child+.queue-item{border-top:1px solid var(--line)}.queue-item:first-child .pos{color:var(--rot)}.queue-item .thumb,.queue-item .thumb-fallback{width:48px;height:48px;border-radius:var(--r-control);object-fit:cover;flex-shrink:0;background:var(--bg-input);border:1px solid var(--line)}.queue-item .thumb-fallback{display:grid;place-items:center;color:var(--rot)}.queue-item .thumb-fallback svg{width:18px;height:18px}.queue-item .info{flex:1;min-width:0}.queue-item .song{font-size:15px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.queue-item .artist{font-size:13px;color:var(--rot);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.queue-item .by{font-size:13px;color:var(--text-dim);overflow-wrap:anywhere}.queue-item.is-new{animation:newRowIn .38s var(--ease-out),newRowGlow 1.6s var(--ease-out)}@keyframes newRowIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes newRowGlow{0%{background:rgba(var(--rot-rgb),.18)}to{background:rgba(var(--rot-rgb),0)}}.empty{color:var(--text-dim);font-size:14px;padding:26px 8px;text-align:center;border:1px dashed var(--line-strong);border-radius:var(--r-bloque);background:#02060440}.msg{font-size:14px;margin-top:6px;min-height:20px}.msg.error{color:var(--purge)}.msg.ok{color:var(--rot)}.site-footer{color:var(--text-dim);font-size:13px;margin-top:14px;text-align:center}.legal[hidden]{display:none}.legal{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:6px}.legal a,.aviso a{color:var(--text-dim);text-decoration:underline;text-underline-offset:2px}.legal a:hover,.legal a:focus-visible,.aviso a:hover,.aviso a:focus-visible{color:var(--text)}.aviso{margin:10px 0 0;font-size:12.5px;color:var(--text-dim);line-height:1.5}@media(prefers-reduced-motion:reduce){.brand-mark,.card,.queue-item.is-new,h1{animation:none}}