:root{--bg:#fcfcfc;--bg-card:#ececec;--bg-hover:#dfdfdf;--border:#d4d4d4;--text:#1e1e1e;--text-muted:#5a5a5a;--text-hi:#000;--border-hover:#888;--accent:#2172ce;--accent-hi:#1a5fb5;--green:#1a8040;--mapping:#1a8040;--yellow:#f1c40f;--red:#c0392b;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#141414;--bg-card:#1c1c1c;--bg-hover:#242424;--border:#2e2e2e;--text:#d0d0d0;--text-muted:#606060;--text-hi:#f0f0f0;--border-hover:#444;--accent:#2172ce;--accent-hi:#4495f3;--green:#2ecc71;--mapping:#2ecc71;--yellow:#f1c40f;--red:#e74c3c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}[data-theme=dark]{--bg:#141414;--bg-card:#1c1c1c;--bg-hover:#242424;--border:#2e2e2e;--text:#d0d0d0;--text-muted:#606060;--text-hi:#f0f0f0;--border-hover:#444;--accent:#2172ce;--accent-hi:#4495f3;--green:#2ecc71;--mapping:#2ecc71;--yellow:#f1c40f;--red:#e74c3c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{background-color:var(--bg);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:Google Sans Code,monospace;font-size:11px;line-height:1.3}a{color:var(--text);text-decoration:none}a:hover{color:var(--text-hi)}#site-header{z-index:200;background:var(--bg);padding:calc(28px + env(safe-area-inset-top)) 28px 14px;align-items:center;gap:8px;display:flex;position:sticky;top:0}.header-link{display:flex}.breadcrumb .header-link{margin-right:5px}nav{flex-shrink:0;align-items:center;display:flex}.nav-brand{letter-spacing:.1em;font-size:14px}.user-chip{white-space:nowrap;text-overflow:ellipsis;max-width:200px;overflow:hidden}.profile-avatar{object-fit:cover;border-radius:50%;width:32px;height:32px}.btn{border:1px solid var(--border);background:var(--bg-card);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:3px;align-items:center;gap:6px;padding:3px 6px;font-family:inherit;font-size:11px;transition:border-color .12s,background .12s,color .12s;display:inline-flex}.btn:hover{background:var(--bg-hover);color:var(--text-hi)}.btn-primary{border-color:var(--accent);background:var(--accent);color:#fff}.btn-primary:hover{border-color:var(--accent-hi);background:var(--accent-hi);color:#fff}.btn-danger{border-color:var(--red)}.btn-danger:hover{border-color:var(--red);background:var(--red);color:#fff}.btn-active{border-color:var(--yellow);color:var(--yellow)}.btn-active:hover{border-color:var(--yellow);color:var(--yellow);background:#d4af371f}[data-tip]{position:relative}[data-tip]:after{content:attr(data-tip);background:var(--bg-card);border:1px solid var(--border);white-space:nowrap;color:var(--text);pointer-events:none;opacity:0;visibility:hidden;z-index:200;border-radius:3px;padding:3px 8px;font-size:11px;transition:opacity .1s,visibility 0s .1s;position:absolute;top:calc(100% + 5px);left:50%;transform:translate(-50%)}[data-tip]:hover:after{opacity:1;visibility:visible;transition:opacity .1s,visibility}@media (width<=640px){button[data-tip]:after{display:none}}.icon-btn{justify-content:center;padding:3px 6px}.nav-split-btn{align-items:stretch;gap:0;padding:0;display:inline-flex}.nav-split-btn:hover{background:var(--bg-card);color:var(--text)}.nav-split-btn-half{background:var(--bg-card);cursor:pointer;color:var(--text);border:none;justify-content:center;align-items:center;padding:3px 6px;font-family:inherit;transition:background .12s,color .12s;display:flex}.nav-split-btn-half:hover{background:var(--bg-hover);color:var(--text-hi)}.nav-split-btn-half:first-child{border-top-left-radius:3px;border-bottom-left-radius:3px}.nav-split-btn-half:last-child{border-top-right-radius:3px;border-bottom-right-radius:3px}.nav-split-btn-half+.nav-split-btn-half{border-left:1px solid var(--border)}.nav-user-menu{position:relative}.nav-user-btn{background:var(--text);width:24px;height:24px;color:var(--bg-card);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:11px;font-weight:600;line-height:1;display:flex;position:relative}.nav-user-btn:hover{background:var(--text-hi)}.nav-user-dropdown-actions{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;display:grid}.nav-user-action-btn{cursor:pointer;color:var(--text-muted);background:0 0;border:none;justify-content:center;align-items:center;padding:12px;font-family:inherit;display:flex}.nav-user-action-btn:first-child{border-right:1px solid var(--border)}.nav-user-action-btn:hover{background:var(--bg-hover);color:var(--text)}.nav-hamburger-menu{background:var(--bg-card);border:1px solid var(--border);z-index:200;border-radius:3px;min-width:160px;position:absolute;top:calc(100% + 4px);right:0}.nav-hamburger-header{border-bottom:1px solid var(--border);color:var(--text-muted);align-items:center;gap:8px;padding:10px 14px;font-size:11px;display:flex}.nav-hamburger-item{text-align:left;width:100%;color:var(--text);cursor:pointer;background:0 0;border:none;padding:10px 14px;font-family:inherit;font-size:11px;display:block}.nav-hamburger-item:hover{background:var(--bg-hover);color:var(--text-hi)}.nav-combined-menu{flex-direction:row;display:flex}.nav-combined-menu[hidden]{display:none}.nav-combined-notif{border-right:1px solid var(--border);flex-direction:column;width:260px;display:flex}.nav-combined-notif[hidden]{display:none}.nav-combined-notif .nav-notif-list{max-height:360px;overflow-y:auto}.nav-combined-user{flex-direction:column;min-width:160px;display:flex}.nav-combined-user .nav-user-dropdown-actions{margin-top:auto}.nav-notif-header{justify-content:space-between}.nav-notif-clear-btn{cursor:pointer;color:var(--text-muted);letter-spacing:.04em;background:0 0;border:none;padding:0;font-family:inherit;font-size:9px}.nav-notif-clear-btn:hover{color:var(--text)}@media (width<=600px){.nav-combined-notif{width:180px}.nav-combined-notif .nav-notif-list{max-height:260px}}.nav-notif-badge{background:var(--red);color:#fff;text-align:center;border-radius:7px;min-width:13px;height:13px;padding:0 3px;font-size:8px;font-weight:600;line-height:13px;position:absolute;top:-3px;right:-3px}.nav-notif-list{max-height:360px;overflow-y:auto}.nav-notif-empty{color:var(--text-muted);padding:14px;font-size:11px}.nav-notif-item{border-bottom:1px solid var(--border);align-items:flex-start;gap:8px;padding:10px 14px;text-decoration:none;display:flex}.nav-notif-item:last-child{border-bottom:none}.nav-notif-item:hover,.nav-notif-item.nav-notif-unread{background:var(--bg-hover)}.nav-notif-avatar{object-fit:cover;background:var(--border);border-radius:50%;flex-shrink:0;width:22px;height:22px}.nav-notif-placeholder{background:var(--border)}.nav-notif-body{flex-direction:column;gap:2px;min-width:0;display:flex}.nav-notif-text{color:var(--text);font-size:11px}.nav-notif-text strong{font-weight:600}.nav-notif-text em{color:var(--text-muted);font-style:normal}.nav-notif-comment{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.nav-notif-time{color:var(--text-muted);font-size:9px}.theme-toggle{z-index:200;border:1px solid var(--border);background:var(--bg-card);width:36px;height:36px;color:var(--text-muted);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:16px;transition:border-color .12s,color .12s;display:flex;position:fixed;bottom:20px;right:20px}.theme-toggle:hover{border-color:var(--border-hover);color:var(--text)}main{margin:0 auto;padding:0 28px 28px}#add-wrapper{width:100%}.form-group{flex-direction:column;gap:6px;margin-bottom:18px;display:flex}.form-group-horz{flex-direction:row;gap:28px;margin-bottom:18px;display:flex}label{color:var(--text-muted);font-size:11px}input[type=text],input[type=number],select,textarea{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:3px;width:100%;padding:8px 10px;font-family:inherit;font-size:11px;transition:border-color .12s}input:focus,select:focus,textarea:focus{border-color:var(--border-hover);outline:none}textarea{resize:vertical;min-height:80px}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath fill='%23888' d='M0 0l5 6 5-6z'/%3E%3C/svg%3E");background-position:right 7px center;background-repeat:no-repeat;background-size:10px 6px;padding-right:24px}.form-grid{grid-template-columns:1fr 1fr;gap:0 28px;display:grid}.page-header{flex:1;justify-content:space-between;align-items:center;gap:16px;min-width:0;min-height:36px;display:flex}.page-header h1{font-size:16px;font-weight:600}.count{color:var(--text-muted);margin-left:8px;font-size:11px;font-weight:400}.filters{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px;display:flex}.filters input[type=text],.filters select{width:auto}.search-input{min-width:240px}.table-wrap{width:100%}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:9px 12px}th{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);white-space:nowrap;-webkit-user-select:none;user-select:none;font-size:11px;font-weight:600}th a{color:var(--text-muted)}th a:hover,th a.active{color:var(--text)}tr:hover td{background:var(--bg-hover)}@media (width<=640px){tr:hover td{background:0 0}}.cover-thumb{object-fit:cover;background:var(--bg-card);border:1px solid var(--border);border-radius:2px;width:36px;height:36px;display:block}.rec-star{color:var(--yellow);font-size:11px}.hidden-eye{color:var(--text-muted);vertical-align:middle;align-items:center;display:inline-flex}.col-cover{width:0}.col-artist{max-width:100px}.col-album{max-width:200px}.col-album a{align-items:center;gap:3px;display:flex;overflow:hidden}.col-album-text{white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;font-size:11px;overflow:hidden}.col-album a .col-album-year,.artist-tbl td a .col-album-year,.more-by-tbl td a .col-album-year,.similar-tbl td .col-album-year{display:none}.table-wrap.similar-tbl{overflow:clip visible}.rec-star{flex-shrink:0}.col-year{font-size:11px}.col-genre{max-width:150px;font-size:11px}.col-subgenres{max-width:150px}.col-rating{width:0}.added-cell{color:var(--text-muted);white-space:nowrap;width:0;font-size:10px}.tip-link .added-cell{width:0}.rel-title .added-cell{font-size:10px}.tag{background:var(--bg-hover);border:1px solid var(--border);color:var(--text-muted);border-radius:3px;height:20px;margin:1px 2px 1px 0;padding:2px 6px;font-size:11px;display:inline-block}.tag-others{opacity:.4}.rating{font-variant-numeric:tabular-nums;font-weight:600}.year-chip{color:var(--text-muted);vertical-align:middle;flex-shrink:0;margin-bottom:-1px;padding:0 5px 0 0;font-size:10px;font-weight:400;line-height:1.5;display:inline-block}.dash-artist-wrap{align-items:center;gap:6px;min-width:0;display:flex}.dash-artist-wrap .dash-artist{flex:0 auto;min-width:0}.dash-cc{color:var(--text-muted);white-space:nowrap;flex-shrink:0;font-size:9px}.dash-rating-row{align-items:center;gap:4px;display:flex}.dash-genre{color:var(--text-muted);white-space:nowrap;background:var(--bg-card);border:1px solid var(--border);border-radius:3px;flex-shrink:0;padding:2px 5px 0;font-size:9px}.dash-title{text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);padding:3px 0;font-size:10px;font-weight:600;display:inline-block}.rating-hi{color:var(--green)}.rating-mid{color:var(--yellow)}.rating-lo{color:var(--red)}.notes-cell{max-width:220px;color:var(--text-muted);position:relative}.notes-cell .notes-text{white-space:nowrap;text-overflow:ellipsis;font-size:11px;display:block;overflow:hidden}.notes-tip-body{background:var(--bg-card);border:1px solid var(--border);word-break:break-word;z-index:300;min-width:220px;max-width:360px;max-height:min(320px,60vh);color:var(--text);border-radius:3px;padding:10px 12px;font-size:11px;line-height:1.55;display:none;position:fixed;overflow-y:auto;box-shadow:0 4px 16px #0000008c}.notes-tip-body p{margin:0 0 .6em}.notes-tip-body p:last-child{margin-bottom:0}.notes-tip-body strong{font-weight:600}.notes-tip-body em{font-style:italic}.notes-tip-body ul,.notes-tip-body ol{margin:0 0 .6em 1.25em}.notes-tip-body li{margin-bottom:.2em}.notes-tip-body code{background:var(--bg-hover);border-radius:3px;padding:1px 4px;font-family:monospace;font-size:.9em}.notes-tip-body blockquote{border-left:3px solid var(--border);color:var(--text-muted);margin:0 0 .6em;padding-left:.75em}.cover-file-input{display:none}.cover-file-label{background:var(--bg-hover);border:1px dashed var(--border);cursor:pointer;color:var(--text-muted);justify-content:center;align-items:center;gap:8px;width:200px;height:200px;margin-top:4px;padding:7px 14px;font-size:13px;transition:border-color .15s,color .15s;display:inline-flex}.cover-file-label:hover{border-color:var(--accent);color:var(--text)}.cover-upload-status{color:var(--text-muted);margin-top:5px;font-size:12px;display:block}.cover-upload-status.error{color:#c06060}.cover-replace-btn{margin-top:8px;font-size:12px}.empty-state{text-align:center;color:var(--text-muted);padding:64px 24px}.empty-state a{color:var(--text);text-decoration:underline}.combo{position:relative}.combo-input{width:100%}.combo-dropdown{background:var(--bg);border:1px solid var(--border);scrollbar-width:none;z-index:200;border-radius:3px;max-height:220px;position:absolute;top:calc(100% + 2px);left:0;right:0;overflow-y:auto;box-shadow:0 4px 16px #00000080}.combo-dropdown::-webkit-scrollbar{display:none}.combo-opt{cursor:pointer;color:var(--text);padding:7px 12px;font-size:11px}.combo-opt.focused,.combo-opt:hover{background:var(--bg-hover)}.combo-clear{color:var(--text-muted);font-style:italic}.combo-group-header{text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);border-top:1px solid var(--border);pointer-events:none;margin-top:2px;padding:6px 12px 3px;font-size:10px;font-weight:700}.combo-group-header:first-child{border-top:none;margin-top:0}#fp-country,#fp-genre,#fp-rated,#fp-desc-input,#fp-type,.search-input,#fp-rating{background:var(--bg);padding-top:5px!important;padding-bottom:5px!important}#fp-toggle,.filter-bar a{height:26px}.mb-wrap{max-width:480px;margin-bottom:32px;position:relative}.mb-input-row{align-items:center;gap:8px;display:flex}.mb-results{background:var(--bg-card);border:1px solid var(--border);z-index:200;scrollbar-width:none;border-radius:3px;max-height:300px;display:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.mb-results::-webkit-scrollbar{display:none}.mb-results.open{display:block}.mb-item{cursor:pointer;border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:10px 12px;display:flex}.mb-item:last-child{border-bottom:none}.mb-item:hover{background:var(--bg-hover)}.mb-thumb{object-fit:cover;background:var(--border);border-radius:2px;flex-shrink:0;width:36px;height:36px}.mb-info strong{font-size:13px;display:block}.mb-info span{color:var(--text-muted);font-size:12px}.mb-db-badge{background:color-mix(in srgb, var(--accent) 20%, transparent);color:var(--accent-hi);vertical-align:middle;border-radius:3px;margin-left:6px;padding:1px 5px;font-size:10px;display:inline-block}.mb-in-library-badge{background:color-mix(in srgb, var(--green) 15%, transparent);color:var(--green);vertical-align:middle;border-radius:3px;margin-left:6px;padding:1px 5px;font-size:10px;display:inline-block}.mb-item-in-library{opacity:.7}.mb-item-in-library:hover{opacity:1}.mb-empty{color:var(--text-muted);padding:14px 12px;font-size:12px}.spinner{border:2px solid var(--border);border-top-color:var(--text-muted);border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:.6s linear infinite spin;display:none}.spinner.active{display:inline-block}@keyframes spin{0%{transform:translateY(-50%)rotate(0)}to{transform:translateY(-50%)rotate(360deg)}}.cover-preview{margin-bottom:18px;display:none}.cover-box{border:1px solid var(--border);background:#000;border-radius:3px;width:120px;height:120px;margin-top:6px;overflow:hidden}.cover-box img{object-fit:cover;width:100%;height:100%;display:block}#cover-upload-wrap{flex-direction:column;display:flex}.subgenre-chips{flex-wrap:wrap;gap:4px;margin-bottom:6px;display:flex}.subgenre-chip{border:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);cursor:pointer;border-radius:3px;padding:3px 6px;font-family:inherit;font-size:11px;transition:border-color .12s,background .12s,color .12s}.subgenre-chip:hover{border-color:var(--border-hover);color:var(--text)}.subgenre-chip.active{border-color:var(--accent);background:var(--accent);color:#fff}.subgenre-custom-tags{flex-wrap:wrap;gap:4px;margin-bottom:6px;display:flex}.tag-removable{background:var(--bg-hover);border:1px solid var(--border);color:var(--text);border-radius:3px;align-items:center;gap:4px;padding:2px 6px 2px 8px;font-size:11px;display:inline-flex}.tag-removable button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 1px;font-family:inherit;font-size:15px;line-height:1}.tag-removable button:hover{color:var(--text)}a.tag,.tag a{text-decoration:none}a.tag:hover{border-color:var(--border-hover);color:var(--text);background:var(--bg-hover)}.genre-link{color:var(--text-muted);text-decoration:none}.genre-link:hover{color:var(--text)}.album-hero{grid-template-columns:200px 1fr;align-items:start;column-gap:28px;width:100%;padding-top:26px;display:grid}.album-hero>.hero-left{grid-area:1/1/span 12}.hero-left{flex-direction:column;gap:12px;display:flex}.album-hero>.album-meta,.album-hero>#log-main-notes,.album-hero>#log-hist-wrap,.album-hero>.like-row,.album-hero>.tracks-wrap,.album-hero>.log-date-row,.album-hero>.also-logged,.album-hero>.related-section{grid-column:2}.album-hero>#log-main-notes{margin-top:20px}@media (width<=640px){.album-hero>#log-main-notes{margin-top:0}}.cover-box-lg{border:1px solid var(--border);background:#000;border-radius:3px;flex-shrink:0;width:200px;height:200px;overflow:hidden}.cover-box-lg img{object-fit:contain;width:100%;height:100%;display:block}.album-actions{flex-flow:column wrap;gap:0;display:flex}.album-actions .btn{text-align:center;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;max-width:100%;height:auto;padding:3px 6px;font-size:10px;display:block;overflow:hidden}.album-actions .btn:hover{border-color:var(--border)}.queue-log-wrapper{flex-direction:row;gap:0;display:flex}.queue-btn{border-top:0;border-radius:0 0 0 3px}.log-btn{border-top:0;border-left:0;border-radius:0 0 3px}.album-actions>.queue-log-wrapper:first-child .queue-btn{border-top:1px solid var(--border);border-radius:3px 0 0 3px}.album-actions>.queue-log-wrapper:first-child .log-btn{border-top:1px solid var(--border);border-radius:0 3px 3px 0}@media (width<=640px){.queue-log-wrapper{flex-direction:column}.queue-btn{border-radius:0}.log-btn{border-left:1px solid var(--border);border-radius:0 0 3px 3px}.album-actions>.queue-log-wrapper:first-child .queue-btn{border-radius:3px 3px 0 0}.album-actions>.queue-log-wrapper:first-child .log-btn{border-top:0;border-left:1px solid var(--border);border-radius:0 0 3px 3px}}.canonical-note{color:var(--text-muted);margin-bottom:14px;font-size:10px}.edit-fields input[readonly],.edit-fields select:disabled,.edit-fields .combo-input:disabled{opacity:.5;background-color:var(--bg-card);cursor:default}.album-meta{flex-direction:column;flex:1;gap:20px;min-width:0;display:flex}.album-mobile-header{display:none}.album-mobile-header .album-meta-title{margin-bottom:4px;font-size:15px}.album-mobile-header .album-meta-artist{font-size:11px}@media (width<=640px){.album-mobile-header{display:block}.album-meta{gap:5px}#log-main-notes{margin-top:0}.album-actions{flex-direction:column;gap:5px}}.album-meta-artist{color:var(--text-muted);margin-bottom:4px;font-size:11px}.album-meta-artist a{color:var(--text-muted)}.album-meta-artist a:hover{color:var(--text-hi)}.album-meta-title{margin-bottom:12px;font-size:22px;font-weight:600;line-height:1.2}.album-upper-wrapper{flex-direction:row;gap:26px;display:flex}.album-header{flex-direction:column;gap:5px;display:flex}.album-attrs{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;font-size:11px;display:flex}.album-genre-label{color:var(--text);font-weight:500}.album-tags{flex-wrap:wrap;gap:4px;display:flex}.album-notes{color:var(--text);font-size:11px;line-height:1.65}.album-notes p{margin:0 0 .75em}.album-notes p:last-child{margin-bottom:0}.album-notes a{color:var(--accent);text-decoration:underline}.album-notes a:hover{opacity:.8}.album-notes strong{font-weight:600}.album-notes em{font-style:italic}.album-notes ul,.album-notes ol{margin:0 0 .75em 1.25em}.album-notes li{margin-bottom:.25em}.album-notes code{background:var(--bg-hover);border-radius:3px;padding:1px 4px;font-family:monospace;font-size:.9em}.album-notes blockquote{border-left:3px solid var(--border);color:var(--text-muted);margin:0 0 .75em;padding-left:.75em}.added-at{color:var(--text-muted);font-size:9px}.global-entry-link{color:var(--text-muted);text-decoration:none}.global-entry-link:hover{text-decoration:underline}.release{color:var(--text-muted);margin-bottom:16px;font-size:11px}.cover-col{flex-direction:column;flex-shrink:0;gap:12px;display:flex}#mobile-cover-slot{margin-bottom:20px}.release-detail{width:200px}.release-select{text-overflow:ellipsis;width:100%;margin-bottom:8px;padding:3px 25px 3px 6px;font-size:10px}.release-name{color:var(--text-muted);font-size:11px}.release-dl{grid-template-columns:max-content 1fr;gap:3px 10px;font-size:10px;display:grid}.release-field{display:contents}.release-dl dt{color:var(--text-muted);white-space:nowrap}.release-dl dd{color:var(--text);word-break:break-word;min-width:0;margin:0}.attr-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:6px;font-size:10px;font-weight:600}.rec-badge{border:1px solid var(--green);color:var(--green);text-transform:uppercase;letter-spacing:.06em;background:#2ecc711f;border-radius:12px;align-items:center;gap:6px;margin-bottom:16px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.view-panel.hidden,.edit-panel{display:none}.edit-panel.visible{display:block}.breadcrumb{color:var(--text-muted);align-items:center;gap:6px;font-size:11px;display:flex}.breadcrumb a{color:var(--text-muted)}.breadcrumb a:hover{color:var(--text)}.breadcrumb-sep{color:var(--text-muted);-webkit-user-select:none;user-select:none}.breadcrumb-tag{color:var(--text-muted);padding:0 5px;font-size:10px}.breadcrumb-current{color:var(--text)}.breadcrumb-chip{background:var(--bg-card);border:1px solid var(--border);border-radius:4px;padding:2px 8px}.breadcrumb a.breadcrumb-chip{color:var(--text-muted)}.breadcrumb a.breadcrumb-chip:hover{color:var(--text);border-color:var(--border-hover)}.breadcrumb-current.breadcrumb-chip{color:var(--text)}.breadcrumb h1,.breadcrumb h1 *{flex-direction:row;align-items:center;gap:5px;display:flex}.artist-view-toggle{flex-shrink:0;margin-left:8px;display:inline-flex}.artist-view-toggle a,.artist-view-toggle .avc-active{border:1px solid var(--border);color:var(--text-muted);padding:1px 6px;font-size:10px;line-height:1.5}.artist-view-toggle a:first-child,.artist-view-toggle .avc-active:first-child{border-radius:3px 0 0 3px}.artist-view-toggle a:last-child,.artist-view-toggle .avc-active:last-child{border-radius:0 3px 3px 0}.artist-view-toggle a+a,.artist-view-toggle a+.avc-active,.artist-view-toggle .avc-active+a{border-left:0}.artist-view-toggle a:hover{color:var(--text-hi);background:var(--bg-hover)}.artist-view-toggle .avc-active{color:var(--text);cursor:default;text-decoration:underline}.chip-remove{color:var(--text-muted);padding:0 2px;font-size:14px;line-height:1;text-decoration:none}.chip-remove:hover{color:var(--text)}a.tag.tag-filtered{border-color:var(--accent);color:var(--text)}tr[data-href]{cursor:pointer}.related-section{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start;gap:36px;margin-top:24px;display:grid}.related-section>*{min-width:0}.related-title{text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin-bottom:10px;font-size:10px;font-weight:600}.rel-list{overflow:hidden}.rel-row{border-bottom:1px solid var(--border);align-items:center;gap:10px;min-width:0;padding:8px;text-decoration:none;transition:background .1s;display:flex}.rel-row:last-child{border-bottom:none}.rel-row:hover{background:var(--bg-hover)}.rel-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.rel-title{color:var(--text);white-space:nowrap;text-overflow:ellipsis;flex-direction:row;gap:6px;font-size:11px;font-weight:600;display:flex;overflow:hidden}.rel-artist{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.rel-sub{color:var(--text-muted);align-items:baseline;gap:6px;min-width:0;font-size:11px;display:flex;overflow:hidden}.rel-sub-text{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.rel-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:3px;width:220px;display:flex}.rel-tags{flex-wrap:wrap;justify-content:flex-end;gap:3px;display:flex}.rel-tags .tag{margin:0;font-size:10px}@media (width<=640px){.rel-row{padding:8px 0}.rel-row:hover{background:0 0}}.community-stat{color:var(--text-muted);font-size:11px}.also-logged{min-width:0;margin:12px 0 0}.also-logged-list{flex-direction:column;gap:4px;margin-top:6px;padding:0 5px;display:flex}.also-logged-item{color:var(--text);align-items:center;gap:8px;padding:3px 0;font-size:11px;text-decoration:none;display:flex}.also-logged-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:22px;height:22px}.also-logged-placeholder{background:var(--bg-hover);border:1px solid var(--border);display:inline-block}.also-logged-name{color:var(--text-muted);flex:none;margin-right:4px}.also-logged-item .rating{margin:0 15px}.also-logged-date{color:var(--text-muted);font-size:10px;font-weight:400}.also-logged-note{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--text-muted);padding-right:50px;font-size:10px;overflow:hidden}@media (width<=640px){.also-logged-note{padding-right:0}.also-logged-item{font-size:10px}}.other-editions{margin-top:36px}.other-editions-list{flex-direction:column;gap:4px;margin-top:6px;padding:0 5px;display:flex}.other-editions .rating{margin:0}.other-editions-item{color:var(--text);justify-content:space-between;align-items:center;gap:8px;padding:3px 0;font-size:11px;text-decoration:none;display:flex}.other-editions-name{flex:none}.rating-slider-wrap{flex-direction:column;gap:0;display:flex}.rating-slider-top{align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.rating-current{font-variant-numeric:tabular-nums;color:var(--text);min-width:40px;font-size:22px;font-weight:600}.clear-rating-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:16px;line-height:1;display:none}.clear-rating-btn:hover{color:var(--text)}.clear-rating-btn.visible{display:inline}.rating-desc{color:var(--text-muted);align-self:baseline;font-size:13px;font-weight:400}input[type=range]{width:100%;accent-color:var(--accent);cursor:pointer}.rating-labels{color:var(--text-muted);-webkit-user-select:none;user-select:none;justify-content:space-between;margin-top:4px;font-size:10px;display:flex}.rating-tip{border:1px solid var(--border);width:13px;height:13px;color:var(--text-muted);cursor:help;vertical-align:middle;text-transform:none;letter-spacing:0;border-radius:50%;justify-content:center;align-items:center;margin-left:4px;font-size:9px;font-weight:400;line-height:1;display:inline-flex;position:relative}.rating-tip-body{background:var(--bg-card);border:1px solid var(--border);z-index:300;pointer-events:none;border-radius:3px;padding:8px 12px;display:none;position:absolute;top:calc(100% + 6px);right:0}.rating-tip:hover .rating-tip-body{display:block}.rating-tip-row{text-transform:none;letter-spacing:0;color:var(--text-muted);white-space:nowrap;grid-template-columns:28px 1fr;gap:8px;font-size:11px;font-weight:400;line-height:1.8;display:grid}.rating-tip-row strong{color:var(--text);font-variant-numeric:tabular-nums}.tracks-wrap{margin-top:10px;overflow-x:hidden}.tracks-table{border-collapse:collapse;width:100%}.tracks-table-detailed{table-layout:fixed}.tracks-table th,.tracks-table td{border-bottom:1px solid var(--border);padding:5px 8px;font-size:10px}.tracks-table th{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:10px;font-weight:600}.track-num{color:var(--text-muted);text-align:right;width:28px;padding-right:12px}.track-len{font-variant-numeric:tabular-nums;color:var(--text-muted);text-align:left;width:75px}.track-rating-cell{width:75px}.track-notable-cell{text-align:center;width:30px}.track-notable-btn{cursor:pointer;color:var(--bg-card);background:0 0;border:none;border-radius:3px;padding:2px 4px;font-size:16px;line-height:1}.track-notable-btn:hover{color:var(--bg-card)}.track-notable-btn.btn-active{color:var(--yellow)}.tracks-total-row td{border-bottom:none;padding-top:8px}.tracks-total{font-variant-numeric:tabular-nums;color:var(--text);text-align:left;font-weight:600}.track-title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tracks-table-detailed .track-title{width:300px}.track-note-cell{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.track-note-tip{background:var(--bg-card);border:1px solid var(--border);min-width:150px;max-width:400px;color:var(--text-muted);white-space:pre-wrap;word-break:break-word;z-index:300;border-radius:3px;padding:10px 12px;font-size:11px;display:none;position:fixed}@media (width<=640px){.track-note-cell{cursor:pointer;padding-right:0!important}.track-title{cursor:pointer}.track-num{text-align:left;padding-left:0!important}.track-note-tip{min-width:0;max-width:none;left:16px!important;right:16px!important}.tracks-table{margin-top:12px}.tracks-table-detailed{overflow-x:hidden}.tracks-table-detailed thead tr,.tracks-table-detailed tbody tr,.tracks-table-detailed tfoot tr{grid-template-columns:28px 1fr 45px 55px;width:100%;display:grid}.tracks-table-detailed .track-title{width:auto;min-width:0}.tracks-table-detailed thead .track-note-cell{display:none}.tracks-table-detailed thead th,.tracks-table-detailed tbody td,.tracks-table-detailed tfoot td{border-bottom:none}.tracks-table-detailed thead tr,.tracks-table-detailed tbody tr{border-bottom:1px solid var(--border)}.tracks-table-detailed tbody td:first-child{grid-area:1/1;align-self:center}.tracks-table-detailed tbody td:nth-child(2){grid-area:1/2;align-self:center}.tracks-table-detailed tbody td:nth-child(3){grid-area:1/3;align-self:center}.tracks-table-detailed tbody td:nth-child(4){text-align:center;grid-area:1/4;align-self:center}.tracks-table-detailed tbody td.track-note-cell{white-space:nowrap;text-overflow:ellipsis;grid-area:2/1/auto/-1;padding:6px 0;overflow:hidden}.tracks-table-detailed tbody td.track-note-cell:empty{padding:0}.tracks-table-detailed tfoot td:nth-child(4){display:none}}.track-rating-input{background-color:var(--bg);border:1px solid var(--border);width:68px;color:var(--text);border-radius:3px;height:33px;padding:3px 20px 3px 4px;font-family:inherit;font-size:12px}.track-note-input,.track-title-input{background:var(--bg-card);border:1px solid var(--border);width:100%;color:var(--text);border-radius:3px;padding:3px 6px;font-family:inherit;font-size:12px}.track-len-input{background:var(--bg-card);border:1px solid var(--border);width:52px;color:var(--text);font-variant-numeric:tabular-nums;border-radius:3px;padding:3px 6px;font-family:inherit;font-size:12px}.track-remove-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:14px;line-height:1}.track-remove-btn:hover{color:var(--red)}.track-title-text{font-size:12px}.tracks-loading{color:var(--text-muted);padding:8px 0;font-size:12px}.preview-meta .album-mobile-header{margin-bottom:8px;display:block}.preview-meta .album-mobile-header .album-meta-title{margin-bottom:4px;font-size:15px}.preview-meta .album-mobile-header .album-meta-artist{flex-wrap:wrap;align-items:center;gap:5px;margin-bottom:0;font-size:12px;display:flex}@media (width<=640px){#tracks-section .tracks-table{display:block}#tracks-section .tracks-table thead{display:none}#tracks-section .tracks-table tbody,#tracks-section .tracks-table tfoot{display:block}#tracks-section .tracks-table tbody tr{border-bottom:1px solid var(--border);grid-template-rows:auto auto;grid-template-columns:22px 1fr 75px 30px;gap:4px 8px;padding:8px 0;display:grid}#tracks-section .tracks-table tbody td{border:none;width:auto;padding:0}#tracks-section .tracks-table tbody td:first-child{grid-area:1/1;align-self:center;padding-right:2px}#tracks-section .tracks-table tbody td:nth-child(2){grid-area:1/2;align-self:center}#tracks-section .tracks-table tbody td:nth-child(3){display:none}#tracks-section .tracks-table tbody td:nth-child(4){grid-area:1/3;align-self:center}#tracks-section .tracks-table tbody td:nth-child(5){text-align:center;grid-area:1/4;align-self:center}#tracks-section .tracks-table tbody td:nth-child(6){grid-area:2/1/auto/-1}#tracks-section .track-rating-input,#tracks-section .track-note-input{width:100%;height:100%}#tracks-section .tracks-total-row{display:flex}#tracks-section .tracks-total-row td{border:none;padding:4px 0}#tracks-section .tracks-total-row td:not(.tracks-total){display:none}}.artist-list{flex-direction:column;gap:6px;display:flex}.artist-row{align-items:center;gap:6px;display:flex}.artist-row .artist-input{flex:1}.remove-artist-btn{border:1px solid var(--border);width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:16px;line-height:1;display:flex}.remove-artist-btn:hover{border-color:var(--red);color:var(--red)}.add-artist-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;margin-top:6px;padding:0;font-size:12px}.add-artist-btn:hover{text-decoration:underline}.form-group select{background-color:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:3px;width:100%;padding:6px 24px 6px 10px;font-family:inherit;font-size:13px}.form-group select:focus{border-color:var(--accent);outline:none}.field-hint-inline{color:var(--text-muted);opacity:.7;font-size:11px;font-weight:400}.type-chip{text-transform:uppercase;color:var(--text-muted);background:var(--bg-card);white-space:nowrap;flex-shrink:0;padding:2px 4px 0;font-size:9px;font-weight:600;display:inline-block}.mobile-section-title{display:none}.artist-type-section:last-child{padding-bottom:200px}.artist-type-section+.artist-type-section{margin-top:32px}.user-artist-tbl,.global-artist-tbl{overflow-x:hidden}.user-artist-tbl table,.global-artist-tbl table{table-layout:fixed;width:100%}.user-artist-tbl td,.global-artist-tbl td{overflow:hidden}.user-artist-tbl th:first-child,.global-artist-tbl th:first-child{width:60px}.user-artist-tbl th:nth-child(2){width:300px}.user-artist-tbl th:nth-child(3),.global-artist-tbl th:nth-child(3){width:48px}.user-artist-tbl th:nth-child(4),.global-artist-tbl th:nth-child(4){width:110px}.user-artist-tbl th:nth-child(5){width:200px;max-width:200px}.global-artist-tbl th:nth-child(5){max-width:0}.user-artist-tbl th:nth-child(6){width:250px}.user-artist-tbl th:nth-child(7){width:52px}.global-artist-tbl th:nth-child(6),.global-artist-tbl th:nth-child(7){width:100px}.user-artist-tbl td:nth-child(2) a,.global-artist-tbl td:nth-child(2) a{text-overflow:ellipsis;flex-direction:row;align-items:center;gap:6px;width:100%;display:flex;overflow:hidden}.artist-type-heading{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:10px;font-size:11px;font-weight:600}.artist-info-panel{flex-direction:column;gap:20px;margin-bottom:40px;display:flex}.artist-info-loading{color:var(--text-muted);margin:0;font-size:11px}.artist-info-top{flex-direction:column;align-items:flex-start;gap:16px;display:flex}.artist-info-logo{object-fit:contain;flex-shrink:0;max-width:130px;max-height:64px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .artist-info-logo{filter:invert()}}[data-theme=dark] .artist-info-logo{filter:invert()}.artist-info-meta{flex-direction:column;gap:20px;min-width:0;display:flex}.artist-disambiguation-wrapper{flex-direction:column;align-items:baseline;gap:5px;display:flex}.artist-info-disambiguation{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--border);border-radius:3px;margin:0;padding:1px 5px 0;font-size:11px;font-weight:600}.artist-info-dates{color:var(--text-muted);margin:0;font-size:11px}.artist-info-aliases{color:var(--text-muted);margin:0;font-size:11px;font-style:italic}.artist-info-members-grid{flex-wrap:wrap;gap:16px 28px;display:flex}.artist-info-member-section h4{text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin:0 0 4px;font-size:10px;font-weight:600}.member-cols{gap:20px;width:fit-content;display:flex}.artist-info-member-section ul{margin:0;padding:0;list-style:none}.artist-info-member-section li{color:var(--text);margin-bottom:2px;font-size:11px}.member-instruments{color:var(--text-muted);font-size:11px;text-decoration:none!important}.member-aka{color:var(--text-muted);font-size:11px}.member-dates{font-size:10px}.member-inactive{opacity:.3}.artist-performs-as-list{color:var(--text-muted);margin:0;font-size:11px}.artist-info-blurb{color:var(--text-muted);flex-direction:column;gap:6px;max-width:50vw;font-size:11px;line-height:1.6;display:flex}.artist-info-blurb p{margin:0}.artist-info-wiki-link{color:var(--accent);align-self:flex-start;font-size:11px;text-decoration:none}.artist-info-wiki-link:hover{text-decoration:underline}@media (width<=640px){.artist-info-blurb{max-width:100vw}}.fp-sub-chips{flex-wrap:wrap;gap:5px;display:flex}.sub-chip{border:1px solid var(--border);background:var(--bg-hover);color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:3px;padding:3px 10px;font-family:inherit;font-size:11px;transition:border-color .1s,background .1s,color .1s}.sub-chip:hover{border-color:var(--border-hover);color:var(--text)}.sub-chip[data-state=include]{border-color:var(--accent);color:var(--text);background:#2172ce26}.sub-chip[data-state=exclude]{color:#c06060;background:#b428281f;border-color:#b43030;text-decoration:line-through}.fp-sub-hint{color:var(--text-muted);opacity:.55;margin-top:2px;font-size:10px}.descriptor-widget{flex-direction:column;gap:6px;display:flex}.descriptor-chips{flex-wrap:wrap;gap:4px;min-height:0;display:flex}.descriptor-chip{background:var(--bg-hover);border:1px solid var(--accent);color:var(--text);border-radius:3px;align-items:center;gap:3px;padding:2px 6px 2px 8px;font-size:11px;display:inline-flex}.descriptor-chip-remove{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 1px;font-size:14px;line-height:1}.descriptor-chip-remove:hover{color:#c06060}.descriptor-chip-pending{border:1px dashed var(--text-muted);background:0 0}.descriptor-input-wrap{position:relative}.descriptor-input{width:100%}.descriptor-dropdown{background:var(--bg);border:1px solid var(--border);scrollbar-width:none;z-index:200;border-radius:3px;max-height:180px;display:none;position:absolute;top:calc(100% + 2px);left:0;right:0;overflow-y:auto;box-shadow:0 4px 16px #00000080}.descriptor-dropdown::-webkit-scrollbar{display:none}.descriptor-dropdown.open{display:block}.descriptor-opt{cursor:pointer;color:var(--text);padding:7px 12px;font-size:11px}.descriptor-opt:hover,.descriptor-opt.focused{background:var(--bg-hover)}.descriptor-tag{color:var(--accent-hi);border-color:#2e3a4a}.form-edit-layout{grid-template-columns:1fr 3fr;align-items:start;gap:40px;display:grid}.edit-fields .form-grid{grid-template-columns:1fr}.edit-preview{position:sticky;top:80px}.edit-preview-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px;font-size:10px;font-weight:600}.preview-placeholder{color:var(--text-muted);opacity:.4;text-transform:uppercase;font-size:11px}.edit-preview>.album-hero{border:1px solid var(--border-hover);padding:10px}#mobile-cover-slot,#mobile-tracks-slot{display:none}@media (width<=900px){#mobile-cover-slot,#mobile-tracks-slot{display:block}}.icon-toggle-row{align-items:center;gap:10px;padding-top:14px;display:flex}.icon-toggle-btn{cursor:pointer;color:var(--text-muted);background:0 0;border:1px solid #0000;border-radius:3px;align-items:center;padding:5px 6px;line-height:1;transition:color .12s,border-color .12s;display:flex}.icon-toggle-btn:hover{color:var(--text);border-color:var(--border-hover)}.icon-toggle-btn .icon-active{display:none}.star-btn.active{color:var(--yellow)}.star-btn.active .icon-inactive{display:none}.star-btn.active .icon-active{display:block}.eye-btn.active{color:var(--red)}.eye-btn.active .icon-inactive{display:none}.eye-btn.active .icon-active{display:block}@media (width<=900px){.form-edit-layout{grid-template-columns:1fr}.edit-preview{display:none}}@media (width<=640px){.mobile-section-title{margin-bottom:12px;padding-top:26px;font-size:16px;font-weight:600;display:block}.lib-table-wrap{overflow-x:hidden}.lib-table-wrap table,.lib-table-wrap tbody{display:block}.lib-table-wrap thead{display:none}.lib-table-wrap tbody tr{border-bottom:1px solid var(--border);grid-template-columns:44px minmax(0,6fr) minmax(0,1fr);align-items:center;column-gap:3px;padding:8px 0;display:grid}.lib-table-wrap tbody tr:hover td{background:0 0}.lib-table-wrap tbody td{border:none;padding:2px 0}.lib-table-wrap tbody tr:after{display:none}.lib-table-wrap tbody td:first-child{grid-area:1/1/span 2}.lib-table-wrap tbody td:nth-child(2){white-space:nowrap;text-overflow:ellipsis;grid-area:1/2;min-width:0;font-size:11px;font-weight:600;overflow:hidden}.lib-table-wrap tbody td:nth-child(3){display:none}.lib-table-wrap tbody td:nth-child(4){white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--text-muted);grid-area:2/2;font-size:11px;overflow:hidden}.lib-table-wrap tbody td:nth-child(4) .col-album-year{display:inline-block}.lib-table-wrap tbody td:nth-child(5),.lib-table-wrap tbody td:nth-child(6),.lib-table-wrap tbody td:nth-child(7){display:none}.lib-table-wrap tbody td:nth-child(8){text-align:right;grid-area:1/3}.lib-table-wrap tbody td:nth-child(n+9){display:none}.lib-table-wrap tbody tr[data-album-href]{cursor:pointer}.lib-table-wrap tbody td a{pointer-events:none}main{padding:0 16px 16px}#site-header{padding:calc(16px + env(safe-area-inset-top)) 16px 16px;gap:8px}.form-grid{grid-template-columns:1fr}.album-hero{grid-template-columns:1fr 110px;grid-template-areas:"meta cover""release release""notes notes""like like""tracks tracks""logdate logdate""editions editions""also also""related related";gap:16px 20px}.hero-left{display:contents}.hero-left>.cover-col{grid-area:cover}.album-hero>.album-meta{grid-area:meta}.hero-left>.release-detail{grid-area:release;margin-top:0}.album-hero>#log-main-notes,.album-hero>#log-hist-wrap{grid-area:notes}.album-hero>.like-row{grid-area:like}.album-hero>.tracks-wrap{grid-area:tracks}.album-hero>.log-date-row{grid-area:logdate}.hero-left>.other-editions{grid-area:editions;margin-top:36px;margin-bottom:24px}.album-hero>.also-logged{grid-area:also;margin:0}.album-hero>.related-section{grid-area:related;margin:24px 0 0}.like-row,.tracks-wrap{margin:0!important}.cover-box-lg{width:110px;height:110px}.edit-fields .cover-box-lg{width:200px;height:200px}.edit-fields .cover-col{flex-direction:row;width:100%}.release-detail{width:auto}.hero-left>.release-detail{border:1px solid var(--border);border-radius:3px;padding:10px}.release-dl{flex-wrap:wrap;gap:4px 14px;display:flex}.release-field{align-items:baseline;gap:4px;max-width:100%;display:flex}.release-dl dt{color:var(--border-hover);flex-shrink:0}.release-select{font-size:16px}.added-at{font-size:9px}.breadcrumb h1:not(:first-child),.breadcrumb .count{display:none}.page-header-actions{flex-flow:wrap;justify-content:flex-end;align-items:flex-end;gap:6px}.filter-bar{width:100%}.search-input{flex:1;min-width:0}input[type=text],input[type=number],select,textarea{font-size:16px!important}.table-wrap{padding-bottom:20px}.rel-right{width:110px}.artist-tbl{overflow-x:hidden}.artist-tbl table,.artist-tbl tbody{display:block}.artist-tbl thead{display:none}.artist-tbl tbody tr{border-bottom:1px solid var(--border);grid-template-columns:44px minmax(0,6fr) auto;align-items:center;column-gap:3px;padding:8px 0;display:grid}.artist-tbl tbody tr:hover td{background:0 0}.artist-tbl tbody td{border:none;padding:2px 0}.artist-tbl tbody tr[data-href]{cursor:pointer}.artist-tbl tbody td a{pointer-events:none}.artist-tbl tbody td:first-child{grid-area:1/1}.artist-tbl tbody td:nth-child(2){min-width:0;color:var(--text-muted);grid-area:1/2;font-size:11px;overflow:hidden}.artist-tbl tbody td:nth-child(2) a{align-items:center;gap:3px;display:flex;overflow:hidden}.artist-tbl tbody td:nth-child(2) .col-album-text{white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;overflow:hidden}.artist-tbl tbody td:nth-child(2) a .col-album-year{display:inline-block}.artist-tbl tbody td:nth-child(3),.artist-tbl tbody td:nth-child(4),.artist-tbl tbody td:nth-child(5){display:none}.artist-tbl tbody td:nth-child(6){text-align:right;grid-area:1/3}.artist-tbl tbody td:nth-child(7),.artist-tbl tbody td:nth-child(8),.user-artist-tbl tbody td:nth-child(6){display:none}.user-artist-tbl tbody td:nth-child(7){text-align:right;grid-area:1/3;display:inline-block}}.tip-link{border-radius:3px;align-items:center;text-decoration:none;transition:opacity .15s;display:inline-flex}.tip-link:hover{opacity:1}.aep-toggle-btn{cursor:pointer;color:var(--border);background:0 0;border:none;font-size:.7rem;text-decoration:underline}.aep-toggle-btn:hover{color:var(--border-hover)}.aep-overlay{display:none}.aep-overlay:not([hidden]){z-index:1000;background:#0000008c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.aep{border:1px solid var(--border);background:var(--bg-card);border-radius:6px;width:100%;max-width:780px;max-height:90vh;padding:1.25rem;overflow-y:auto;box-shadow:0 8px 32px #0006}.aep-header{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;margin-bottom:.75rem;padding-bottom:.5rem;display:flex}.aep-header strong{color:var(--text);font-size:.85rem}.aep-header small{color:var(--text-muted);flex:1;font-size:.72rem}.aep-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:1rem;line-height:1}.aep-close:hover{color:var(--text-hi)}.aep-scalars{grid-template-columns:1fr 1fr;gap:.5rem 1rem;margin-bottom:1rem;display:grid}.aep-scalars label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;flex-direction:column;gap:3px;font-size:.68rem;display:flex}.aep-scalars .aep-full{grid-column:1/-1}.aep-scalars input,.aep-scalars textarea{background:var(--bg);border:1px solid var(--border);color:var(--text);resize:vertical;border-radius:3px;padding:4px 7px;font-family:inherit;font-size:.83rem}.aep-scalars input:focus,.aep-scalars textarea:focus{border-color:var(--border-hover);outline:none}.aep-section{margin-bottom:.75rem}.aep-section-head{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:.5rem;margin-bottom:.35rem;font-size:.72rem;display:flex}.aep-add-btn{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:3px;padding:1px 7px;font-size:.68rem}.aep-add-btn:hover{border-color:var(--border-hover);color:var(--text)}.aep-grid{align-items:center;gap:4px;display:grid}.aep-grid-alias{grid-template-columns:1fr 58px 58px 22px}.aep-grid-member{grid-template-columns:1.1fr 1.8fr 1.2fr 50px 50px 54px 22px}.aep-col-head{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;opacity:.6;padding:0 1px 3px;font-size:.62rem}.aep-grid input[type=text]{background:var(--bg);border:1px solid var(--border);color:var(--text);box-sizing:border-box;border-radius:3px;width:100%;padding:3px 6px;font-size:.82rem}.aep-grid input[type=text]:focus{border-color:var(--border-hover);outline:none}.aep-mbid{font-family:monospace!important;font-size:.72rem!important}.aep-row-del{color:var(--border-hover);cursor:pointer;background:0 0;border:none;justify-self:center;padding:0;font-size:1rem;line-height:1}.aep-row-del:hover{color:var(--red)}.aep-active{color:var(--text-muted);white-space:nowrap;cursor:pointer;align-items:center;gap:3px;font-size:.72rem;display:flex}.aep-footer{border-top:1px solid var(--border);align-items:center;gap:.75rem;margin-top:.75rem;padding-top:.75rem;display:flex}#aep-save{background:var(--green);border:1px solid var(--green);color:#fff;cursor:pointer;border-radius:3px;padding:4px 12px;font-size:.82rem}#aep-save:hover{opacity:.85}#aep-save:disabled{opacity:.4;cursor:default}#aep-cancel{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:3px;padding:4px 10px;font-size:.82rem}#aep-cancel:hover{border-color:var(--border-hover);color:var(--text)}#aep-status{color:var(--text-muted);flex:1;font-size:.78rem}.confirm-overlay{z-index:9999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000008c;justify-content:center;align-items:center;position:fixed;inset:0}.confirm-box{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;width:90%;max-width:380px;padding:24px 24px 20px;box-shadow:0 12px 40px #00000059}.confirm-body{align-items:center;gap:14px;margin-bottom:20px;display:flex}.confirm-cover{object-fit:cover;border:1px solid var(--border);border-radius:3px;flex-shrink:0;width:52px;height:52px}.confirm-msg{color:var(--text);font-size:13px;line-height:1.55}.confirm-album-name{color:var(--text-hi);font-weight:600}.confirm-actions{justify-content:flex-end;gap:8px;display:flex}.queue-grid{flex-wrap:wrap;gap:8px;margin-top:2px;display:flex}.queue-card{background:var(--bg-card);border:1px solid var(--border);border-radius:6px;align-items:center;max-width:300px;transition:border-color .15s;display:flex;overflow:hidden}.queue-card:hover{border-color:var(--text-muted)}.queue-card-link{color:inherit;flex:1;align-items:center;gap:10px;min-width:0;padding:8px 10px;text-decoration:none;display:flex}.queue-cover{background:var(--bg-hover);border-radius:3px;flex-shrink:0;width:36px;height:36px;overflow:hidden}.queue-cover img{object-fit:cover;width:100%;height:100%}.queue-info{flex-direction:column;gap:1px;min-width:0;display:flex;overflow:hidden}.queue-album{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:600;overflow:hidden}.queue-title{color:var(--text);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:4px;font-size:10px;display:flex;overflow:hidden}.queue-title .year-chip{padding:0}.queue-remove{cursor:pointer;color:var(--text-muted);border:none;border-left:1px solid var(--border);background:0 0;flex-shrink:0;align-self:stretch;align-items:center;padding:0 10px;font-size:16px;display:flex}.queue-remove:hover{color:var(--text);background:var(--bg-hover)}.dash-list{flex-direction:column;display:flex}.dash-row{align-items:center;gap:10px;min-width:0;padding:8px;text-decoration:none;transition:background .1s;display:flex;position:relative}.dash-row:last-child{border-bottom:none}.dash-row:hover{background:var(--bg-hover)}.dash-cover{object-fit:cover;border:1px solid var(--border);border-radius:2px;flex-shrink:0;width:36px;height:36px}.dash-cover-empty{background:var(--bg-hover)}.dash-info{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.dash-album-wrap{flex-direction:row;align-items:center;gap:6px;display:flex}.dash-album{color:var(--text);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:11px;font-weight:600;display:block;overflow:hidden}.dash-artist-name{color:var(--text-muted);align-items:baseline;gap:6px;min-width:0;font-size:11px;display:flex;overflow:hidden}.dash-artist-text,.dash-album-text{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.dash-rating-wrap{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:5px;display:flex}.dash-rating{font-variant-numeric:tabular-nums;font-size:11px;font-weight:600}.dash-rating-none{color:var(--text-muted);font-weight:400}.dash-logged-date{color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:9px}.dash-list-bordered .dash-row+.dash-row:before{content:"";border-top:1px solid var(--border);position:absolute;top:0;left:0;right:0}.dash-list-days .dash-row+.dash-row:not(.dash-row-day-start):before{content:"";border-top:1px solid var(--border);position:absolute;top:0;left:40px;right:0}.dash-list-days .dash-row-day-start:before{content:"";border-top:1px solid var(--border);position:absolute;top:0;left:0;right:0}.dash-day-sep{color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;padding:8px 0 2px;font-size:10px;font-weight:600}.dash-date-cell{width:25px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;flex-shrink:0;align-self:flex-start;padding-top:3px;font-size:9px;font-weight:600}.dash-year-sep{color:var(--text);text-transform:uppercase;letter-spacing:.1em;padding:14px 0 4px;font-size:11px;font-weight:700}.lib-table-wrap tbody tr{border-bottom:1px solid var(--border)}.lib-table-wrap tbody tr.lib-year-sep{border-bottom:none}.col-date-head{width:52px}.col-date-cell{color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;vertical-align:top;white-space:nowrap;padding:10px 12px 0 4px;font-size:9px;font-weight:600;background:var(--bg)!important}.lib-year-sep td{color:var(--text);text-transform:uppercase;letter-spacing:.1em;border-top:2px solid var(--border);padding:14px 8px 4px;font-size:11px;font-weight:700}.hidden-badge{opacity:.6;cursor:default;align-items:center;display:inline-flex}.dash-queue-row{padding:0}.dash-queue-row-link{min-width:0;color:inherit;flex:1;align-items:center;gap:10px;padding:8px;text-decoration:none;display:flex}.dash-queue-remove-wrap{flex-direction:column;flex-shrink:0;justify-content:center;align-self:stretch;align-items:flex-end;gap:8px;min-width:44px;padding:6px 10px;display:flex}.dash-queue-remove{background:var(--bg-card);border:1px solid var(--border);cursor:pointer;color:var(--text-muted);border-radius:3px;justify-content:center;align-items:center;padding:2px 4px;font-size:9px;display:flex}.dash-queue-remove:hover{color:var(--text);background:var(--bg-hover)}.tip-left[data-tip]:after{inset:50% calc(100% + 5px) auto auto;transform:translateY(-50%)}.qa-box{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;width:95%;max-width:480px;padding:20px;box-shadow:0 12px 40px #00000059}.qa-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.qa-title{color:var(--text);font-size:13px;font-weight:600}.qa-search-input{box-sizing:border-box;width:100%}.qa-results{max-height:260px;position:relative;top:0}.qa-msg{color:var(--text-muted);text-align:center;margin:12px 0 4px;font-size:11px}#ap-modal,#qa-modal,#ns-modal{align-items:flex-start;padding-top:min(12vh,80px);overflow-y:auto}
