:root{--color-bg: #f7f7f8;--color-surface: #ffffff;--color-text: #1a1a1f;--color-muted: #6b6b76;--color-primary: #4f46e5;--color-primary-hover: #4338ca;--color-border: #e4e4e7;--color-danger: #dc2626;--radius: 10px;--shadow: 0 1px 3px rgba(0, 0, 0, .08);--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font);background:var(--color-bg);color:var(--color-text);line-height:1.5;-webkit-font-smoothing:antialiased}.app{min-height:100vh;display:flex;flex-direction:column}.app-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:.75rem 1.25rem}.app-title{font-size:1.25rem;font-weight:700;color:var(--color-primary);text-decoration:none}.app-main{flex:1;width:100%;max-width:720px;margin:0 auto;padding:1.5rem 1.25rem 3rem}.app-footer{text-align:center;padding:1rem;color:var(--color-muted);font-size:.85rem}.app-footer a{color:var(--color-primary)}.page-title{font-size:1.5rem;margin:0 0 .25rem}.page-subtitle{color:var(--color-muted);margin:0 0 1.25rem}.search-bar input{width:100%;padding:.75rem 1rem;font-size:1rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);outline:none;transition:border-color .15s,box-shadow .15s}.search-bar input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #4f46e526}.result-count,.hint{color:var(--color-muted);font-size:.9rem;margin:1rem 0 .5rem}.hint{margin:.5rem 0 0}.result-list{list-style:none;margin:0;padding:0}.result-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:.85rem 1rem;margin-bottom:.6rem;text-decoration:none;color:inherit;transition:border-color .15s,transform .15s}.result-item:hover{border-color:var(--color-primary);transform:translateY(-1px)}.result-title{font-size:1rem;margin:0}.result-artist,.result-album{margin:.15rem 0 0;color:var(--color-muted);font-size:.9rem}.result-duration{flex-shrink:0;color:var(--color-muted);font-size:.85rem}.state{text-align:center;padding:3rem 1rem;color:var(--color-muted)}.state-error{color:var(--color-danger)}.spinner{width:28px;height:28px;margin:0 auto .75rem;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.button{margin-top:.75rem;padding:.5rem 1rem;font-size:.9rem;border:none;border-radius:var(--radius);background:var(--color-primary);color:#fff;cursor:pointer}.button:hover{background:var(--color-primary-hover)}.back-link{display:inline-block;margin-bottom:1rem;color:var(--color-primary);text-decoration:none;font-size:.9rem}.back-link:hover{text-decoration:underline}.track-header{margin-bottom:1.25rem}.track-name{font-size:1.5rem;margin:0}.track-artist{margin:.25rem 0 0;font-weight:600}.track-album{margin:.15rem 0 0;color:var(--color-muted);font-size:.9rem}.lyrics{white-space:pre-wrap;word-wrap:break-word;font-family:inherit;font-size:1.02rem;line-height:1.8;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem 1.5rem;margin:0}
