:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%;margin:0}body{color:#f2f2f2;background:#111;font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}img{max-width:100%}.app{background:#111;width:100%;min-height:100vh;display:flex}.sidebar{background:#111;border-right:1px solid #2a2a2a;flex-direction:column;flex-shrink:0;width:190px;height:100vh;padding:28px 16px 18px;display:flex;position:sticky;top:0}.logo{flex-direction:column;align-items:center;width:100%;margin-bottom:32px;display:flex}.logo-image{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:130px;height:auto;margin:0 auto;display:block}.logo span{color:#777;letter-spacing:2px;text-align:center;margin-top:6px;font-size:8px;display:block}.sidebar nav{flex-direction:column;display:flex}.nav-item{color:#888;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:5px;width:100%;padding:6px 10px;font-size:13px;transition:all .2s}.nav-item:hover{color:#fff;background:#1b1b1b}.nav-item.active{color:#fff;background:#222}.nav-divider{background:#2a2a2a;height:1px;margin:8px 0}.add-record{color:#fff;cursor:pointer;background:0 0;border:1px solid #444;border-radius:5px;margin-top:auto;padding:9px 10px;font-size:12px;transition:all .2s}.add-record:hover{color:#111;background:#fff}.collection{flex:1;min-width:0;padding:34px 40px 50px}.collection header h2{margin:0;font-size:26px;font-weight:400}.collection header p{color:#777;margin:5px 0 20px;font-size:11px}.loading-message,.empty-message{color:#666;margin-top:30px;font-size:12px}.search-bar{max-width:600px}.search-bar input{color:#fff;background:#161616;border:1px solid #303030;border-radius:5px;outline:none;width:100%;padding:10px 13px;font-size:12px}.search-bar input:focus{border-color:#777}.filters{flex-wrap:wrap;gap:6px;margin:15px 0 18px;display:flex}.filter{color:#999;cursor:pointer;background:0 0;border:1px solid #333;border-radius:20px;padding:5px 10px;font-size:10px}.filter:hover{color:#fff;border-color:#777}.active-filter{color:#111;background:#f2f2f2;border-color:#f2f2f2}.collection-view-toggle{gap:4px;margin-bottom:28px;display:flex}.collection-view-toggle button{color:#777;letter-spacing:.8px;cursor:pointer;background:0 0;border:1px solid #303030;padding:7px 11px;font-size:9px}.collection-view-toggle button:first-child{border-radius:4px 0 0 4px}.collection-view-toggle button:last-child{border-radius:0 4px 4px 0}.collection-view-toggle button:hover{color:#fff}.collection-view-toggle button.active{color:#fff;background:#222;border-color:#555}.record-grid{grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:26px 18px;display:grid}.record-card{color:#fff;background:0 0;min-width:0}.record-cover{aspect-ratio:1;background:#1a1a1a;border-radius:3px;width:100%;margin-bottom:8px;position:relative;overflow:hidden}.record-cover img{object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;margin:0;transition:transform .25s;display:block}.record-card:hover .record-cover img{transform:scale(1.03)}.record-overlay{opacity:0;background:#000000b8;flex-direction:column;justify-content:center;align-items:center;gap:9px;transition:opacity .2s;display:flex;position:absolute;inset:0}.record-card:hover .record-overlay{opacity:1}.record-overlay button{color:#fff;letter-spacing:1.2px;cursor:pointer;background:0 0;border:1px solid #777;min-width:88px;padding:8px 14px;font-size:10px}.record-overlay .overlay-view:hover{color:#111;background:#fff;border-color:#fff}.record-overlay .overlay-delete{color:#d88989;border-color:#704545}.record-overlay .overlay-delete:hover{color:#111;background:#d88989;border-color:#d88989}.record-card strong{white-space:nowrap;text-overflow:ellipsis;margin-bottom:3px;font-size:12px;font-weight:500;display:block;overflow:hidden}.record-card>span{color:#999;white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;font-size:11px;display:block;overflow:hidden}.record-card small{color:#666;font-size:10px}.coverflow-container{width:100%;min-height:500px;padding:10px 0 30px;overflow:hidden}.coverflow-stage{justify-content:center;align-items:center;width:100%;min-height:360px;display:flex;position:relative}.coverflow-track{perspective:1000px;width:min(900px,100%);height:340px;position:relative}.coverflow-record{aspect-ratio:1;cursor:pointer;width:250px;transform:translate(-50%, -50%) translateX(calc(var(--offset) * 145px)) rotateY(calc(var(--offset) * -38deg));opacity:.65;background:0 0;border:none;padding:0;transition:transform .4s,opacity .3s;position:absolute;top:50%;left:50%}.coverflow-record.selected{opacity:1}.coverflow-record img{object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block;box-shadow:0 16px 35px #00000080}.coverflow-arrow{z-index:30;color:#ddd;cursor:pointer;background:#141414e6;border:1px solid #333;border-radius:50%;width:42px;height:42px;font-size:30px;position:absolute;top:50%;transform:translateY(-50%)}.coverflow-arrow:hover{color:#fff;background:#222;border-color:#777}.coverflow-arrow-left{left:15px}.coverflow-arrow-right{right:15px}.coverflow-info{text-align:center;margin-top:15px}.coverflow-artist{color:#fff;margin:0 0 4px;font-size:14px}.coverflow-info h3{color:#999;margin:0 0 7px;font-size:12px;font-weight:400}.coverflow-info>span{color:#666;font-size:10px}.coverflow-view-button{color:#ccc;letter-spacing:.8px;cursor:pointer;background:0 0;border:1px solid #444;margin:18px auto 0;padding:9px 15px;font-size:10px;display:block}.all-tags{flex-wrap:wrap;gap:8px;max-width:700px;display:flex}.tag-card{color:#ccc;cursor:pointer;background:#161616;border:1px solid #333;border-radius:4px;padding:10px 14px;font-size:12px}.tag-card:hover{color:#fff;background:#202020;border-color:#777}.record-view{width:100%}.back-button{color:#888;cursor:pointer;background:0 0;border:none;margin-bottom:30px;padding:0;font-size:11px}.back-button:hover{color:#fff}.record-view-content{grid-template-columns:minmax(260px,380px) minmax(0,1fr);align-items:start;gap:50px;max-width:900px;display:grid}.record-view-cover{aspect-ratio:1;background:#1a1a1a;border-radius:3px;width:100%;overflow:hidden}.record-view-cover img{object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.detail-label{color:#666;letter-spacing:1px;text-transform:uppercase;margin:0 0 10px;font-size:10px}.record-view-info h2{margin:0;font-size:24px;font-weight:500}.record-view-title{color:#999;margin:5px 0 25px;font-size:15px}.record-view-section{margin-top:24px}.record-view-section h3{color:#aaa;letter-spacing:1.2px;text-transform:uppercase;margin:0 0 10px;font-size:9px;font-weight:500}.record-details{border-top:1px solid #292929}.record-details p{color:#bbb;border-bottom:1px solid #252525;justify-content:space-between;gap:20px;margin:0;padding:8px 3px;font-size:11px;display:flex}.record-details span{color:#666}.tags{flex-wrap:wrap;gap:5px;display:flex}.tags span{color:#bbb;border:1px solid #3a3a3a;border-radius:20px;padding:5px 9px;font-size:10px}.tracklist{border-top:1px solid #292929}.tracklist p{color:#bbb;border-bottom:1px solid #252525;gap:12px;margin:0;padding:8px 3px;font-size:11px;display:flex}.tracklist p span{color:#666;min-width:28px}.notes{color:#888;margin:0;font-size:11px;line-height:1.6}.record-images-gallery{flex-wrap:wrap;gap:8px;width:100%;margin-top:12px;display:flex}.record-image-thumb{cursor:pointer;background:#111;border:1px solid #2a2a2a;border-radius:2px;flex:0 0 80px;width:80px;height:80px;padding:0;display:block;overflow:hidden}.record-image-thumb:hover{border-color:#777}.record-image-thumb img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;object-fit:cover!important;width:80px!important;min-width:80px!important;max-width:80px!important;height:80px!important;max-height:80px!important;margin:0!important;display:block!important}.detail-actions{gap:8px;margin-top:30px;display:flex}.detail-actions button{color:#ccc;cursor:pointer;background:0 0;border:1px solid #3d3d3d;border-radius:4px;padding:9px 15px;font-size:11px}.detail-actions button:hover{background:#222}.detail-actions .delete{color:#d88989}.modal-overlay{z-index:100;background:#000000b3;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.record-form-modal{background:#161616;border:1px solid #303030;border-radius:6px;width:min(760px,100%);max-height:90vh;padding:28px;overflow-y:auto}.form-header{border-bottom:1px solid #2a2a2a;justify-content:space-between;align-items:flex-start;padding-bottom:22px;display:flex}.form-header h2{margin:0;font-size:22px;font-weight:500}.form-close{color:#888;cursor:pointer;background:0 0;border:none;font-size:26px}.form-section{border-bottom:1px solid #292929;padding:22px 0}.form-section h3{color:#aaa;letter-spacing:1px;text-transform:uppercase;margin:0 0 14px;font-size:11px;font-weight:500}.form-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.form-section label{color:#aaa;flex-direction:column;gap:7px;font-size:11px;display:flex}.form-section input,.form-section select,.form-section textarea{color:#eee;background:#111;border:1px solid #333;border-radius:4px;outline:none;width:100%;padding:10px 11px;font-size:12px}.form-section textarea{resize:vertical}.form-section input:focus,.form-section select:focus,.form-section textarea:focus{border-color:#777}.form-help{color:#666;margin:7px 0 0;font-size:10px}.discogs-section-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px;display:flex}.discogs-section-header h3{margin-bottom:6px}.discogs-search-button{color:#111;cursor:pointer;background:#f2f2f2;border:1px solid #f2f2f2;border-radius:4px;flex-shrink:0;padding:8px 12px;font-size:11px}.discogs-search-button:hover:not(:disabled){background:#fff}.discogs-search-button:disabled{opacity:.5;cursor:wait}.discogs-error{color:#d88989;margin:14px 0 0;font-size:11px}.discogs-results{background:#111;border:1px solid #303030;border-radius:5px;max-height:410px;margin-top:18px;overflow:hidden auto}.discogs-results-title{z-index:2;background:#191919;border-bottom:1px solid #303030;justify-content:space-between;align-items:center;padding:12px 14px;display:flex;position:sticky;top:0}.discogs-results-title h3{margin:0}.discogs-results-title button{color:#777;cursor:pointer;background:0 0;border:none;font-size:10px}.discogs-result{color:#eee;text-align:left;cursor:pointer;background:#111;border:none;border-bottom:1px solid #242424;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-height:68px;padding:9px 14px;display:grid}.discogs-result:hover:not(:disabled){background:#1b1b1b}.discogs-result-image{border-radius:3px;width:48px;height:48px;overflow:hidden}.discogs-result-image img{object-fit:cover;width:100%;height:100%;display:block}.discogs-result-info{flex-direction:column;gap:3px;min-width:0;display:flex}.discogs-result-info strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.discogs-result-info span{color:#777;font-size:10px}.discogs-result-info small{color:#555;font-size:9px}.discogs-use{color:#999;white-space:nowrap;font-size:9px}.file-upload input[type=file]{cursor:pointer;padding:8px}.photo-selector{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:10px;margin-top:16px;display:grid}.photo-option{aspect-ratio:1;cursor:pointer;background:#111;border:1px solid #333;width:100%;padding:0;position:relative;overflow:hidden}.photo-option.selected-cover{border:2px solid #fff}.photo-option img{object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.section-title-row{justify-content:space-between;align-items:center;display:flex}.add-track{color:#ccc;cursor:pointer;background:0 0;border:1px solid #444;border-radius:4px;padding:5px 9px;font-size:10px}.add-track:hover{background:#222}.track-editor{flex-direction:column;gap:7px;display:flex}.track-row{grid-template-columns:70px 1fr 30px;gap:8px;display:grid}.remove-track{color:#888;cursor:pointer;background:0 0;border:none;font-size:20px}.remove-track:hover{color:#d88989}.form-actions{justify-content:flex-end;gap:10px;padding-top:24px;display:flex}.form-actions button{cursor:pointer;border-radius:4px;padding:10px 18px;font-size:12px}.cancel-button{color:#bbb;background:0 0;border:1px solid #444}.cancel-button:hover{background:#222}.save-button{color:#111;background:#f2f2f2;border:1px solid #f2f2f2}.save-button:hover{background:#fff}@media (width<=750px){.app{flex-direction:column}.sidebar{border-bottom:1px solid #2a2a2a;border-right:none;width:100%;height:auto;min-height:auto;position:static}.sidebar nav{flex-flow:wrap}.nav-divider{display:none}.nav-item{width:auto}.add-record{margin-top:20px}.collection{padding:25px 16px}.record-grid{grid-template-columns:repeat(2,1fr);gap:20px 12px}.record-view-content{grid-template-columns:1fr;gap:30px}.form-grid{grid-template-columns:1fr}.discogs-section-header{flex-direction:column;gap:12px}.discogs-search-button{width:100%}.discogs-result{grid-template-columns:42px minmax(0,1fr);gap:10px;padding:8px 10px}.discogs-use{display:none}.modal-overlay{padding:10px}.record-form-modal{max-height:95vh;padding:20px}.coverflow-record{width:190px;transform:translate(-50%, -50%) translateX(calc(var(--offset) * 95px)) rotateY(calc(var(--offset) * -32deg))}.coverflow-arrow-left{left:0}.coverflow-arrow-right{right:0}}.cover-images-preview{width:100%;margin-top:15px}.cover-help{color:#777;margin:0 0 10px;font-size:11px}.cover-images-grid{flex-wrap:wrap!important;align-items:flex-start!important;gap:10px!important;width:100%!important;display:flex!important}.cover-image-option{cursor:pointer;background:#111!important;border:1px solid #333!important;border-radius:3px!important;flex:0 0 90px!important;width:90px!important;min-width:90px!important;max-width:90px!important;height:90px!important;min-height:90px!important;max-height:90px!important;margin:0!important;padding:0!important;display:block!important;position:relative!important;overflow:hidden!important}.cover-image-option img{pointer-events:none;object-fit:cover!important;-webkit-user-select:none!important;user-select:none!important;-webkit-user-drag:none!important;width:90px!important;min-width:90px!important;max-width:90px!important;height:90px!important;min-height:90px!important;max-height:90px!important;margin:0!important;padding:0!important;display:block!important}.cover-image-option.selected{border:2px solid #fff!important}.main-cover-badge{z-index:2!important;color:#111!important;letter-spacing:.4px!important;background:#fff!important;padding:3px 5px!important;font-size:7px!important;font-weight:700!important;line-height:1!important;position:absolute!important;bottom:4px!important;right:4px!important}
