*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%}#root{z-index:0;padding:0 20px;position:relative}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;z-index:0;background:0 0;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;position:relative}:root{--halftone-step-px:20;--halftone-r-min-px:2;--halftone-r-max-px:13;--halftone-opacity-top:1;--halftone-opacity-bottom:1;--halftone-invert:false;--halftone-angle-deg:45;--halftone-dot-color:black}#halftone-bg{z-index:-1;pointer-events:none;width:100vw;height:100dvh;position:fixed;inset:0}body:before{content:"";z-index:-2;pointer-events:none;background:radial-gradient(1200px 900px at 18% 12%,#ffd2202e,#0000 55%),radial-gradient(900px 700px at 88% 28%,#ffffff24,#0000 50%),#ff0080;position:fixed;inset:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.container{justify-content:center;width:100%;min-height:100vh;display:flex}.player-container{width:100%;max-width:600px}.app-title{color:#ffd200;text-shadow:2.5px 4px #000;text-align:center;margin:14px 0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:38px;font-style:normal;font-weight:300}.player-card{background:#fff;margin-bottom:30px;padding:0;animation:.3s ease-out slideIn;box-shadow:12px 12px #0ff}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.error-banner{color:#c33;text-align:center;background-color:#fee;border:1px solid #fcc;border-radius:8px;margin-bottom:20px;padding:12px 16px;font-size:14px}
