*{box-sizing:border-box;margin:0;padding:0}:root{--black: #000;--white: #fff;--border-width: 3px}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--white);color:var(--black);line-height:1.6;min-height:100vh}h1,h2,h3{font-family:Ubuntu,sans-serif;font-weight:700}#app{max-width:1200px;margin:0 auto;padding:2rem;min-height:100vh;display:flex;flex-direction:column}header{text-align:center;margin-bottom:3rem}header h1{font-size:3rem;margin-bottom:.5rem}.tagline{font-size:1.25rem}main{flex:1}#auth-section{max-width:600px;margin:0 auto;text-align:center;padding:2rem;border:var(--border-width) solid var(--black)}#auth-section p{margin-bottom:1.5rem}#auth-section p:last-child{margin-bottom:0}.browser-note{font-size:.875rem;color:#666;font-style:italic;margin-top:1rem}#connect-btn{font-family:Ubuntu,sans-serif;font-weight:700;font-size:1.25rem;padding:1rem 2rem;background-color:var(--black);color:var(--white);border:none;cursor:pointer;transition:opacity .2s}#connect-btn:hover{opacity:.8}#connect-btn:disabled{opacity:.5;cursor:not-allowed}#loading-section{max-width:600px;margin:0 auto;text-align:center;padding:2rem;border:var(--border-width) solid var(--black)}#loading-section h2{margin-bottom:1rem}.loading-status{font-size:1.125rem}.track-count{font-family:Ubuntu,sans-serif;font-weight:700;font-size:2rem;margin:1rem 0}#results-section{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.list-box{border:var(--border-width) solid var(--black);padding:1.5rem}.list-box h2{font-size:1.5rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--black)}.list-box h3{font-size:1.125rem;margin-bottom:.75rem}.artist-list{list-style:none}.artist-item{padding:.5rem 0;border-bottom:1px solid #eee}.artist-item:last-child{border-bottom:none}.artist-row{display:flex;align-items:center}.artist-toggle{background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center}.artist-toggle:hover{opacity:.7}.artist-marker{font-family:Ubuntu,sans-serif;font-weight:700;margin-right:.75rem;color:var(--black)}.artist-name-link{color:var(--black);text-decoration:none}.artist-name-link:hover{text-decoration:underline}.artist-name{color:var(--black)}.artist-related{margin-left:2rem;margin-top:.5rem}.related-list{list-style:none;padding-left:.5rem;border-left:2px solid #ddd}.related-list li{padding:.25rem 0 .25rem .5rem}.related-artist-link{color:var(--black);text-decoration:none;font-size:.9rem}.related-artist-link:hover{text-decoration:underline}.related-loading,.related-empty,.related-error{font-size:.875rem;color:#666;font-style:italic;padding:.25rem 0}.shared-genres{font-size:.8rem;color:#666}.related-error{color:#c00}.artist-link{display:flex;align-items:center;text-decoration:none;color:var(--black)}.artist-link:hover{opacity:.7}.empty-state{color:#666;font-style:italic}.list-placeholder{border:var(--border-width) dashed #ccc;padding:1.5rem;display:flex;align-items:center;justify-content:center;color:#999;min-height:200px}.lineup-info{margin-top:2rem;text-align:center;font-size:.875rem;color:#666}footer{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--black);text-align:center;font-size:.875rem}.disclaimer{margin-bottom:.5rem;color:#666}.footer-links{margin-top:1rem}.footer-links a{color:var(--black);margin:0 .5rem}.footer-links a:hover{opacity:.7}#lineup-info{max-width:800px;margin:0 auto 2rem;text-align:center}.back-link{margin-bottom:1rem}.back-link a{color:var(--black);text-decoration:none;font-weight:700}.back-link a:hover{opacity:.7}.lineup-meta{font-size:.875rem;color:#666;margin-bottom:1rem}.lineup-note{font-size:.875rem;color:#666;max-width:600px;margin:0 auto;line-height:1.5}.lineup-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.lineup-loading{text-align:center;padding:2rem;color:#666}@media (max-width: 768px){#results-section,.lineup-grid{grid-template-columns:1fr}header h1{font-size:2rem}.list-box{padding:1rem}.list-placeholder{min-height:100px}}#setup-section{max-width:600px;margin:0 auto;padding:2rem;border:var(--border-width) solid var(--black)}#setup-section h2{font-size:1.5rem;margin-bottom:1rem}.setup-intro{margin-bottom:1.5rem;line-height:1.6}.setup-steps{margin-bottom:1.5rem;padding:1rem;background:#f9f9f9;border:1px solid #ddd}.setup-steps h3{font-size:1.125rem;margin-bottom:.75rem}.setup-steps ol{margin-left:1.5rem;line-height:1.8}.setup-steps ol ul{margin-top:.5rem;margin-left:1rem;list-style-type:disc}.setup-steps code{background:#fff;border:1px solid #ccc;padding:.125rem .375rem;font-family:monospace;font-size:.9em}.setup-link{margin-top:1rem;font-size:.9rem}.setup-input{margin-bottom:1rem}.setup-input label{display:block;margin-bottom:.5rem;font-weight:700}.setup-input input{width:100%;padding:.75rem;border:2px solid var(--black);font-size:1rem;font-family:monospace;margin-bottom:.75rem}.setup-input input:focus{outline:none;border-color:#333;box-shadow:0 0 0 2px #0000001a}.setup-input button{font-family:Ubuntu,sans-serif;font-weight:700;font-size:1rem;padding:.75rem 1.5rem;background-color:var(--black);color:var(--white);border:none;cursor:pointer;transition:opacity .2s}.setup-input button:hover{opacity:.8}.setup-error{color:#c00;font-size:.9rem;margin-top:.5rem}.setup-note{font-size:.875rem;color:#666;font-style:italic}#setup-guide{max-width:800px;margin:0 auto}.guide-intro,.guide-steps,.guide-troubleshooting{margin-bottom:2rem;padding:1.5rem;border:var(--border-width) solid var(--black)}.guide-intro h2,.guide-steps h2,.guide-troubleshooting h2{font-size:1.5rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--black)}.guide-intro p{margin-bottom:1rem;line-height:1.6}.guide-step{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #ddd}.guide-step:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.guide-step h3{font-size:1.125rem;margin-bottom:.75rem}.guide-step p{margin-bottom:.75rem;line-height:1.6}.guide-step ul{margin-left:1.5rem;margin-bottom:.75rem;line-height:1.6}.guide-step code{background:#f5f5f5;border:1px solid #ddd;padding:.125rem .375rem;font-family:monospace;font-size:.9em}.guide-step code.important{background:#fffde7;border-color:#ffc107}.guide-step .warning{background:#fff3e0;border-left:4px solid #ff9800;padding:.75rem 1rem;margin:1rem 0}.screenshot-placeholder{background:#f0f0f0;border:2px dashed #ccc;padding:3rem 1rem;text-align:center;color:#999;font-style:italic;margin:1rem 0}.guide-troubleshooting h3{font-size:1rem;margin-top:1.5rem;margin-bottom:.5rem}.guide-troubleshooting h3:first-of-type{margin-top:0}.guide-troubleshooting p,.guide-troubleshooting ul{margin-bottom:.75rem;line-height:1.6}.guide-troubleshooting ul{margin-left:1.5rem}.guide-troubleshooting code{background:#f5f5f5;border:1px solid #ddd;padding:.125rem .375rem;font-family:monospace;font-size:.9em}.guide-cta{text-align:center;margin:2rem 0}.btn-primary{display:inline-block;font-family:Ubuntu,sans-serif;font-weight:700;font-size:1.125rem;padding:1rem 2rem;background-color:var(--black);color:var(--white);text-decoration:none;transition:opacity .2s}.btn-primary:hover{opacity:.8}.hidden{display:none!important}
