.wrap{max-width:1100px;margin:auto;padding:2rem 1rem}.card{background:var(--pan);border:1px solid #00f0d022;border-radius:14px;padding:1.2rem;margin:1rem 0}
input,textarea,select{width:100%;background:#000a;border:1px solid #00f0d044;color:var(--tx);border-radius:8px;padding:.6rem;margin:.25rem 0 .7rem;font:inherit}
label{display:block;font-size:.85rem;color:var(--mu)}.hp{position:absolute;left:-9999px}
.btn{display:inline-block;border:0;border-radius:999px;padding:.7rem 1.3rem;font-weight:800;cursor:pointer;text-decoration:none;color:#000;background:var(--teal)}.btn.red{background:var(--red);color:#fff}.btn.ghost{background:none;color:var(--teal);border:1px solid var(--teal)}
.muted{color:var(--mu);font-size:.9rem}.err{color:var(--red)}.ok{color:var(--teal)}
.screen{position:relative;aspect-ratio:16/9;background:#000;border-radius:12px;overflow:hidden;display:grid;place-items:center;text-align:center}
.screen iframe,.screen video{position:absolute;inset:0;width:100%;height:100%;border:0}
.fx{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:5}.fx span{position:absolute;bottom:0;font-size:2rem;animation:up 2.6s ease-out forwards}
@keyframes up{to{transform:translateY(-110%) scale(1.4);opacity:0}}
.rx button{font-size:1.6rem;background:#ffffff10;border:1px solid #ffffff22;border-radius:12px;padding:.4rem .8rem;cursor:pointer;margin:.2rem;color:var(--tx)}
.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal div{padding:.4rem;border-radius:8px;background:#ffffff08;font-size:.8rem;min-height:3.2rem;cursor:pointer}
.cal div.on{background:var(--teal);color:#000}.cal div.x{opacity:.25;cursor:default}.cal b{display:block}.cal .h{background:none;min-height:0;cursor:default;color:var(--mu)}
.chat{height:320px;overflow:auto;background:#0006;border-radius:10px;padding:.6rem}.chat p{margin:.25rem 0}.chat b{color:var(--teal)}
.post{white-space:pre-wrap}.tabs2 button{margin:.2rem}
table{width:100%;border-collapse:collapse;font-size:.85rem}td,th{border-bottom:1px solid #ffffff15;padding:.35rem;text-align:left}
.songlist button{margin:.15rem;background:#ffffff10;color:var(--tx);border:1px solid #ffffff22;border-radius:999px;padding:.25rem .6rem;cursor:pointer}.picked span{display:inline-block;margin:.15rem;background:var(--red);border-radius:999px;padding:.2rem .6rem;cursor:pointer}
