:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:#0c1015;color:#f4f7fb;-webkit-text-size-adjust:100%}*{box-sizing:border-box}body{margin:0;min-width:320px;background:#0c1015}.shell{width:min(1040px,calc(100% - 24px));margin:auto;padding:16px 0 72px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 0 12px;border-bottom:1px solid #27303b}.brand{display:grid;gap:1px;min-width:0}.brand strong{font-size:17px;white-space:nowrap}.eyebrow{font-size:9px;letter-spacing:.18em;color:#8fa2b5;font-weight:800}.nav-actions{display:flex;align-items:center;gap:6px}.view-label{position:absolute;left:-9999px}select,input,button{font:inherit}select,input{color:#f4f7fb;background:#0e151d;border:1px solid #394655;border-radius:10px;min-height:42px}#viewSelect{max-width:150px;padding:0 30px 0 10px;font-size:13px}.icon-btn{width:40px;height:40px;min-height:40px;padding:0;border:1px solid #3c4958;border-radius:50%;background:#17212b;color:#e6edf5;display:grid;place-items:center;cursor:pointer}.icon-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.intro{padding:16px 2px 6px}.intro h1{margin:0;font-size:clamp(27px,7vw,44px);letter-spacing:-.035em}.intro p{margin:4px 0 0;color:#92a2b2;font-size:13px}.statusbar{display:flex;justify-content:space-between;gap:12px;padding:8px 2px;color:#8394a5;font-size:11px}.statusbar strong{color:#bdc9d5}.uniform-list{border:1px solid #293440;border-radius:10px;overflow:hidden;background:#111820}.song-row{display:grid;grid-template-columns:155px minmax(0,1fr);gap:14px;padding:9px 12px;border-bottom:1px solid #27313c}.song-row:last-child{border-bottom:0}.song-time{color:#8fa0b0;font-size:11px}.song-title{font-weight:760;font-size:15px;line-height:1.15}.song-artist{font-size:12px;color:#d1dbe5;margin-top:1px}.song-album{font-size:10px;color:#7f90a0;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.photo-list{display:grid;gap:7px}.photo-row{display:grid;grid-template-columns:94px minmax(0,1fr);gap:10px;padding:7px;border:1px solid #293440;border-radius:10px;background:#111820}.photo-row img{width:94px;height:94px;object-fit:cover;border-radius:7px;background:#090d11}.photo-meta{min-width:0}.photo-time{font-size:10px;color:#8394a6}.photo-caption{margin-top:3px;font-size:13px;color:#dce5ee}.photo-song{margin-top:6px;padding-top:6px;border-top:1px solid #26313c}.photo-song strong{display:block;font-size:13px}.photo-song span{display:block;font-size:11px;color:#9cabb9;margin-top:1px}.no-song{font-size:11px;color:#778899;margin-top:7px}.empty{padding:42px 12px;text-align:center;color:#8797a7}.modal{width:min(520px,calc(100% - 20px));max-height:calc(100% - 24px);padding:0;border:1px solid #344252;border-radius:16px;background:#111820;color:#f4f7fb;box-shadow:0 24px 70px rgba(0,0,0,.55)}.modal::backdrop{background:rgba(3,7,12,.72);backdrop-filter:blur(3px)}.modal-body{display:grid;gap:13px;padding:15px}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.modal-head small{font-size:9px;letter-spacing:.16em;color:#899cad;font-weight:800}.modal-head h2{margin:1px 0 0;font-size:25px}.modal-head .icon-btn{font-size:23px}.modal label{display:grid;gap:5px;font-size:12px;color:#b5c1cc;font-weight:700}.modal input,.modal select{width:100%;padding:9px 10px;font-size:16px}.date-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.quick{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.quick button,.secondary,.primary{min-height:42px;border:1px solid #3b4857;border-radius:10px;background:#17212b;color:#dbe5ee}.primary{background:#dce9f5;color:#0b1118;font-weight:800;border-color:#dce9f5}.modal-actions{display:grid;grid-template-columns:auto 1fr;gap:8px}.photo-preview{width:100%;max-height:260px;object-fit:contain;border-radius:10px;background:#090d11}.hint{font-size:11px;color:#8293a4;line-height:1.4}.file-picker input{padding:7px}.uploading{opacity:.65;pointer-events:none}@media(max-width:640px){.shell{width:calc(100% - 12px);padding-top:10px}.brand strong{font-size:15px}#viewSelect{max-width:130px;font-size:12px}.icon-btn{width:38px;height:38px}.intro{padding:12px 2px 4px}.intro h1{font-size:29px}.intro p{font-size:11px}.song-row{grid-template-columns:61px minmax(0,1fr);gap:7px;padding:5px 7px}.song-time{font-size:9px;line-height:1.2}.song-title{font-size:13px}.song-artist{font-size:10px}.song-album{font-size:9px}.photo-row{grid-template-columns:78px minmax(0,1fr);padding:5px;gap:7px}.photo-row img{width:78px;height:78px}.date-grid{grid-template-columns:1fr}.modal-body{padding:13px;gap:11px}}@media(max-width:390px){.brand strong{display:none}#viewSelect{max-width:120px}.nav-actions{gap:4px}.photo-row{grid-template-columns:70px minmax(0,1fr)}.photo-row img{width:70px;height:70px}}
/* Album art: compact thumbnail inside the existing uniform history row. */
.song-main{display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px;align-items:center;min-width:0}.cover-wrap{width:44px;height:44px;border-radius:5px;overflow:hidden;background:#0a1016;display:grid;place-items:center}.album-cover,.cover-placeholder{grid-area:1/1;width:44px;height:44px}.album-cover{object-fit:cover}.cover-placeholder{display:grid;place-items:center;color:#526374;font-size:17px;border:1px solid #273441}.song-copy{min-width:0}
@media(max-width:640px){.song-main{grid-template-columns:36px minmax(0,1fr);gap:6px}.cover-wrap,.album-cover,.cover-placeholder{width:36px;height:36px}.cover-wrap{border-radius:4px}.cover-placeholder{font-size:14px}}
.song-main{display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px;align-items:center;min-width:0}.cover-wrap{width:44px;height:44px;border-radius:5px;overflow:hidden;background:#0a1016;display:grid;place-items:center}.album-cover,.cover-placeholder{grid-area:1/1;width:44px;height:44px}.album-cover{object-fit:cover}.cover-placeholder{display:grid;place-items:center;color:#526374;font-size:17px;border:1px solid #273441}.song-copy{min-width:0}@media(max-width:640px){.song-main{grid-template-columns:36px minmax(0,1fr);gap:6px}.cover-wrap,.album-cover,.cover-placeholder{width:36px;height:36px}.cover-wrap{border-radius:4px}.cover-placeholder{font-size:14px}}
