.login-card{background:var(--bucket-bg);border:var(--bucket-border);border-radius:12px;padding:2rem;width:100%;max-width:400px;text-align:center}.login-card form{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem}.logout-btn{background:transparent;border:1px solid rgba(255,255,255,.3);font-size:.8rem;padding:.4rem .8rem}.logout-btn:hover{background:#ffffff1a;transform:none}.empty-msg{grid-column:1 / -1;color:#fff9;margin-top:2rem}.delete-playlist-btn{background:transparent;padding:.2rem;font-size:1.2rem;margin-left:1rem;opacity:.6;border:none}.delete-playlist-btn:hover{background:transparent;transform:scale(1.1);opacity:1;box-shadow:none}.editable-title{cursor:pointer;border-bottom:1px dashed rgba(255,255,255,.3);display:inline-block}.editable-title:hover{border-bottom-color:#fffc}.rename-container{display:flex;gap:.5rem;align-items:center}.rename-input{font-size:2rem;font-weight:800;padding:.2rem .5rem;background:#0006;color:#fff;border:1px solid rgba(255,255,255,.3);width:300px;text-align:center}.save-btn{padding:.5rem 1rem;font-size:1rem}.genre{color:#ffffff80;font-size:.85em;font-style:italic;margin-left:4px}:root{--bg-color: #0f0c29;--bg-gradient: linear-gradient(to right, #24243e, #302b63, #0f0c29);--text-color: #ffffff;--primary-color: #ff007a;--secondary-color: #6a00f4;--bucket-bg: rgba(255, 255, 255, .1);--bucket-border: 1px solid rgba(255, 255, 255, .2);--input-bg: rgba(0, 0, 0, .3);--font-family: "Inter", system-ui, Avenir, Helvetica, Arial, sans-serif}body{margin:0;padding:0;font-family:var(--font-family);background:var(--bg-gradient);color:var(--text-color);min-height:100vh;display:flex;justify-content:center;align-items:flex-start}#root{width:100%;max-width:1280px;padding:2rem;text-align:center}h1{font-size:3.2rem;margin-bottom:2rem;background:-webkit-linear-gradient(45deg,#ff007a,#6a00f4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-weight:800;letter-spacing:-.05rem}button{cursor:pointer;border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:var(--primary-color);color:#fff;transition:all .25s}button:hover{background-color:var(--secondary-color);transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}button:disabled{background-color:#555;cursor:not-allowed;transform:none}.app-container{display:flex;flex-direction:column;align-items:center;width:100%}.create-playlist{display:flex;gap:1rem;margin-bottom:3rem;width:100%;max-width:500px}.create-playlist input{flex:1}.playlist-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;width:100%}.playlist-card{background:var(--bucket-bg);border:var(--bucket-border);border-radius:12px;padding:1.5rem;cursor:pointer;transition:transform .2s,background .2s;text-align:left}.playlist-card:hover{transform:translateY(-5px);background:#ffffff26}.playlist-card h3{margin:0 0 .5rem;color:var(--text-color);font-size:1.4rem}.playlist-card .date{font-size:.85rem;color:#fff9}.header-actions{display:flex;align-items:center;gap:2rem;margin-bottom:2rem;width:100%;justify-content:center;position:relative}.back-btn{background:transparent;border:1px solid rgba(255,255,255,.3);padding:.5rem 1rem;font-size:.9rem;position:absolute;left:0}.back-btn:hover{background:#ffffff1a;transform:translate(-3px);box-shadow:none}.buckets-container{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;width:100%}.bucket{background:var(--bucket-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:var(--bucket-border);border-radius:16px;padding:1.5rem;width:350px;min-height:400px;display:flex;flex-direction:column;transition:transform .2s}.bucket:hover{transform:translateY(-5px);border-color:#fff6}.bucket h2{margin-top:0;font-size:1.8rem;color:var(--primary-color);border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:.5rem;margin-bottom:1rem}.bucket ul{list-style:none;padding:0;margin:0;flex:1;overflow-y:auto;max-height:300px}.song-item{display:flex;justify-content:space-between;align-items:center;background:#0003;margin-bottom:.5rem;padding:.8rem;border-radius:8px;font-size:.95rem;text-align:left}.remove-btn{background:transparent;color:#ff4d4d;padding:.2rem .5rem;font-size:1.2rem;line-height:1;opacity:.7}.remove-btn:hover{background:#ff00001a;color:red;opacity:1;transform:none;box-shadow:none}.add-form{margin-top:1rem;display:flex;flex-direction:column;gap:.5rem}input{padding:.8rem;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:var(--input-bg);color:#fff;font-family:inherit}input:focus{outline:none;border-color:var(--primary-color)}.add-btn{width:100%;margin-top:.5rem}.error-msg{color:#ff4d4d;font-size:.8rem;margin-top:.5rem}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#24243e;padding:2rem;border-radius:12px;border:1px solid rgba(255,255,255,.2);text-align:center;width:90%;max-width:400px}.modal-content h3{margin-top:0;margin-bottom:1rem;color:var(--primary-color)}.modal-actions{display:flex;justify-content:center;gap:1rem;margin-top:1.5rem}.cancel-btn{background:transparent;border:1px solid rgba(255,255,255,.3)}.cancel-btn:hover{background:#ffffff1a}.confirm-delete-btn{background:#ff4d4d}.confirm-delete-btn:hover{background:red}.link-btn{background:transparent;border:none;color:#ffffff80;font-size:.9rem;padding:.5rem;text-decoration:underline;width:auto}.link-btn:hover{color:var(--primary-color);background:transparent;transform:none;box-shadow:none}select{padding:.8rem;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:var(--input-bg);color:#fff;font-family:inherit;font-size:1rem;cursor:pointer}select:focus{outline:none;border-color:var(--primary-color)}select option{background:#24243e;color:#fff}
