*{box-sizing:border-box;margin:0;padding:0}:root{--primary:#fa243c;--secondary:#fa243c;--text:#f5f5f7;--text-light:#a1a1a6;--bg:#000;--bg-secondary:#1d1d1f;--border:#424245;--shadow:0 20px 60px #000c;--sans:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:16px/1.6 var(--sans);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{background:var(--bg);width:100%;height:100%;margin:0;padding:0}body{background:var(--bg);color:var(--text)}#root{flex-direction:column;width:100%;min-height:100vh;margin:0;padding:0;display:flex}h1,h2,h3{font-family:var(--sans);color:var(--text);font-weight:600}h1{margin-bottom:1rem;font-size:2.5rem}h2{margin-bottom:.8rem;font-size:1.8rem}h3{margin-bottom:.6rem;font-size:1.3rem}p{margin:0;line-height:1.6}button{cursor:pointer;font-family:inherit}code,pre{font-family:var(--mono);background:#0000000d;border-radius:4px;padding:2px 6px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-light)}.search-bar{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;gap:10px;padding:20px;display:flex;box-shadow:0 2px 8px #0000001a}.search-input{border:2px solid #0000;border-radius:8px;width:100%;max-width:500px;padding:12px 16px;font-size:16px;transition:all .3s;box-shadow:0 2px 4px #0000001a}.search-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.search-input::placeholder{color:#999}.search-clear-btn{color:#fff;cursor:pointer;background-color:#ffffff4d;border:1px solid #ffffff80;border-radius:8px;padding:10px 16px;font-size:18px;transition:all .3s}.search-clear-btn:hover{background-color:#ffffff80;transform:scale(1.05)}.gallery{background:linear-gradient(135deg,#000 0%,#1a1a1a 100%);min-height:100vh;padding:40px 20px}.gallery-title{text-align:center;color:var(--text);text-shadow:none;letter-spacing:-.5px;margin-bottom:50px;font-size:3.5rem;font-weight:700;line-height:1.2}.albums-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:30px;max-width:1400px;margin:0 auto;display:grid}.album-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:20px;flex-direction:column;transition:all .3s;display:flex;overflow:hidden;box-shadow:0 8px 32px #0000004d}.album-card:hover{background:#ffffff14;border-color:#fa243c4d;transform:scale(1.02);box-shadow:0 16px 48px #fa243c33}.album-card-image{background:#f0f0f0;width:100%;height:385px;margin:0 auto;position:relative;overflow:hidden}.thumbnail{background:0 0;border:none;width:100%;max-width:100%;height:100%;max-height:100%;display:block;overflow:hidden}.album-card-info{flex-direction:column;flex-grow:1;justify-content:space-between;padding:20px;display:flex}.album-card-title{color:var(--text);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 6px;font-size:1.1rem;font-weight:600;display:-webkit-box;overflow:hidden}.album-card-artist{color:var(--text-light);margin:0 0 4px;font-size:.9rem}.album-card-year{color:var(--text-light);margin:0 0 12px;font-size:.85rem}.view-details-btn{background:var(--primary);color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;font-family:var(--sans);border:none;border-radius:12px;padding:10px 20px;transition:all .3s}.view-details-btn:hover{background:#ff3350;transform:scale(1.02);box-shadow:0 8px 20px #fa243c66}.view-details-btn:active{transform:scale(.98)}@media (width<=768px){.gallery{padding:20px 10px}.gallery-title{margin-bottom:30px;font-size:2rem}.albums-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}.album-card-image{height:385px}}@media (width<=480px){.albums-grid{grid-template-columns:1fr}.album-card-image{justify-content:center;width:100%;height:400px;display:flex;overflow:hidden}.gallery-title{font-size:1.5rem}.thumbnail{object-fit:contain;width:100%;height:380px;max-height:400px}}.no-results{text-align:center;color:var(--text-light);padding:60px 20px}.no-results p{color:var(--text-light);margin:0;font-size:1.2rem}.pagination{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.page-btn{border:1px solid var(--border);cursor:pointer;min-width:40px;height:40px;color:var(--text);background:#000;border-radius:12px;font-weight:600;transition:all .2s}.page-btn:hover{border-color:var(--primary);background:#000}.page-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.page-btn:disabled{opacity:.4;cursor:not-allowed}.ellipsis{color:#94a3b8;padding:0 8px}.mobile-indicator{color:var(--text);font-weight:600;display:none}@media (width<=640px){.desktop-pages{display:none}.mobile-indicator{display:block}.pagination{justify-content:space-between;width:100%}}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000d9;justify-content:center;align-items:center;animation:.3s ease-out fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#1d1d1f 0%,#2a2a2d 100%);border:1px solid #ffffff1a;border-radius:24px;width:90%;max-width:1000px;max-height:90vh;animation:.4s ease-out slideUp;position:relative;overflow-y:auto;box-shadow:0 30px 80px #000c}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.modal-close{cursor:pointer;color:var(--text-light);z-index:10;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:2rem;transition:all .3s;display:flex;position:absolute;top:15px;right:15px}.modal-close:hover{color:var(--text);background:#ffffff26;transform:rotate(90deg)}.modal-container{grid-template-columns:1fr 1fr;gap:30px;padding:30px;display:grid}.modal-image-section{flex-direction:column;align-items:center;gap:20px;display:flex}.album-image-container{background:#f5f5f5;border-radius:15px;width:100%;max-height:70vh;overflow:hidden;box-shadow:0 10px 30px #0000001a}.album-image{border:none;width:100%;height:100%;min-height:320px;display:block;overflow:hidden}.side-selector{gap:15px;width:100%;display:flex}.side-btn{cursor:pointer;color:#666;background:#fff;border:2px solid #ddd;border-radius:10px;flex:1;padding:12px 20px;font-size:1rem;font-weight:700;transition:all .3s}.side-btn:hover{color:#667eea;border-color:#667eea}.side-btn.active{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-color:#0000}.modal-info-section{padding:10px}.album-title{color:#333;margin:0 0 10px;font-size:1.8rem;font-weight:700}.album-artist{color:#667eea;margin:0 0 5px;font-size:1.1rem;font-weight:600}.album-year{color:#999;margin:0 0 25px;font-size:.9rem}.tracklist{background:#f9f9f9;border-radius:12px;padding:20px}.side-title{color:#333;align-items:center;gap:10px;margin:0 0 15px;font-size:1.2rem;font-weight:700;display:flex}.side-title:before{content:"";background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:2px;width:4px;height:20px;display:inline-block}.tracks{margin:0;padding:0;list-style:none}.track-item{border-bottom:1px solid #e0e0e0;grid-template-columns:30px 1fr auto;align-items:center;gap:15px;padding:12px 0;font-size:.95rem;transition:all .3s;display:grid}.track-item:last-child{border-bottom:none}.track-item:hover{background:#667eea0d;border-radius:5px;padding-left:10px;padding-right:10px}.track-number{color:#667eea;text-align:center;font-weight:700}.track-title{color:#333;font-weight:500}.track-duration{color:#999;text-align:right;font-size:.85rem}@media (width<=768px){.modal-container{grid-template-columns:1fr;gap:20px;padding:20px}.modal-content{border-radius:15px;width:95%}.album-image-container{aspect-ratio:auto;height:320px;max-height:50vh}.album-image{min-height:0}.album-title{font-size:1.4rem}.modal-close{font-size:1.5rem;top:10px;right:10px}}@media (width<=480px){.modal-container{padding:15px}.album-image-container{height:360px;max-height:45vh}.album-title{font-size:1.2rem}.side-selector{gap:10px}.side-btn{padding:10px 15px;font-size:.9rem}.tracklist{padding:15px}.side-title{font-size:1rem}.track-item{padding:10px 0;font-size:.85rem}}.app-container{width:100%;min-height:100vh;margin:0;padding:0}
