@font-face{font-family:'JetBrains Mono Nerd';src:url('/assets/fonts/JetBrainsMonoNerdFontMono-Regular.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
:root{color-scheme:dark;--bg:#101010;--panel:#181818;--raised:#222;--line:#303030;--text:#ededeb;--muted:#999;--font-sans:'JetBrains Mono Nerd',monospace;--font-mono:var(--font-sans);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-sans);--color-border:var(--line);--color-popover:var(--panel)}
html,body,#root{min-height:100%;background:var(--bg);color:var(--text)}body,button,input,select,textarea{font-family:var(--font-sans)!important;font-size:14px;line-height:1.5}body{margin:0;font-size:16px}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.35}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,[role=slider]:focus-visible{outline:2px solid #ddd!important;outline-offset:4px}button,input{border-radius:4px}button{transition:background .15s,color .15s}h1,h2,p{margin:0}button svg{flex-shrink:0}.muted{color:var(--muted);font-size:13px}.studio{max-width:1800px;margin:auto}.studio-header{height:92px;padding:0 36px;display:flex;align-items:center;justify-content:space-between;gap:28px}.studio-header nav{display:flex;gap:32px}.studio-header nav button{font-size:20px;color:#929292;padding:5px 0;border-radius:0;background:none;border-bottom:2px solid transparent}.studio-header nav button:hover{color:var(--text)}.studio-header nav button.active{color:var(--text);border-bottom-color:var(--text)}.header-utilities{display:flex;align-items:center;gap:28px}.wordmark{color:#686868;font-size:13px}.studio-main{padding:8px 36px 60px}.quiet,.back-link{color:#a1a1a1;background:none;border:0;padding:6px 0}.quiet:hover,.back-link:hover{color:#fff}.back-link{font-size:14px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;height:auto!important;padding:8px 14px!important;border:1px solid var(--line)!important;border-radius:4px!important;font:14px/1.4 var(--font-sans)!important;box-shadow:none!important;white-space:nowrap}.primary{background:#e7e7e3!important;color:#111!important;border-color:#e7e7e3!important}.primary:hover{background:#fff!important}.secondary{background:#212121!important;color:#ddd!important}.secondary:hover{background:#2a2a2a!important}.section-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;min-height:38px}.crate-list{display:grid;gap:22px}.crate-row{background:var(--panel);border:1px solid #282828;border-radius:7px;padding:16px 18px 18px}.crate-row-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.crate-name-line{display:flex;align-items:baseline;gap:15px;min-width:0;flex-wrap:wrap}.crate-name-line h2{font-size:16px;overflow-wrap:anywhere}.crate-status{font-size:12px;color:#a4a4a4}.row-actions{display:flex;align-items:center;gap:20px;flex-shrink:0}.row-actions .secondary{min-height:32px;padding:6px 12px!important;font-size:13px!important}.crate-strip{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:3px;scrollbar-width:thin;scrollbar-color:#454545 transparent}.crate-art,.add-album{flex:0 0 104px;width:104px;height:104px;scroll-snap-align:start;border-radius:4px;overflow:hidden}.crate-art .album-cover{width:100%;height:100%;aspect-ratio:1}.crate-art{background:#292929;border:1px solid transparent}.crate-art:hover{border-color:#aaa}.add-album{background:#242424;color:#ababab;border:1px dashed #484848;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}.add-album>span{font-size:32px;line-height:1}.add-album>small{font-size:12px}.add-album:hover{color:#fff;background:#303030}.crate-empty-note{font-size:13px;color:#858585;margin-top:16px}.empty-state{min-height:60vh;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:20px;padding:40px 20px}.empty-state h1{font-size:clamp(24px,3vw,40px);font-weight:400;letter-spacing:-1px}.empty-state p{font-size:15px;color:#999}.inventory-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:32px 22px}.inventory-album{text-align:left;min-width:0;background:none}.inventory-album .album-cover{aspect-ratio:1;width:100%;border-radius:5px;background:#222;margin-bottom:13px}.inventory-album strong{display:block;font-size:14px;line-height:1.5;font-weight:400}.inventory-album>span{display:block;color:#999;font-size:13px;margin-top:3px}.inventory-album>small{display:block;color:#818181;font-size:12px;margin-top:10px}.inventory-album:hover .album-cover{outline:1px solid #777;outline-offset:3px}.storage-note{color:#777;font-size:12px;margin-top:36px}.detail-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px;min-height:27px}.album-detail{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:36px;align-items:start}.detail-stage{min-width:0}.detail-info{padding:0 0 20px;min-width:0}.detail-info h1{font-size:clamp(30px,3.8vw,64px);font-weight:400;line-height:1.12;letter-spacing:-.04em;overflow-wrap:anywhere}.artist{font-size:clamp(19px,2vw,29px);color:#b8b8b8;margin-top:13px;line-height:1.3}.album-year{font-size:13px;color:#777;margin-top:12px}.edition-line{display:flex;align-items:center;gap:14px;font-size:14px;margin-top:36px;padding-bottom:22px;border-bottom:1px solid #292929}.pill{display:inline-flex;border:1px solid #3b3b3b;color:#b6b6b6;border-radius:3px;padding:3px 7px;font-size:12px}.condition-stats{display:grid;gap:20px;margin:24px 0}.stat-row dt{font-size:13px;color:#888;margin-bottom:6px}.stat-row dd{display:flex;gap:10px;justify-content:space-between;margin:0;font-size:14px}.stat-value{color:#aaa;font-size:13px;font-variant-numeric:tabular-nums}.wear-track{height:2px;background:#303030;margin-top:12px}.wear-track i{display:block;height:100%;background:#a7a7a7}.other-stats{border-top:1px solid #292929;margin:26px 0 0;padding-top:20px;display:grid;gap:12px}.other-stats>div{display:flex;justify-content:space-between;gap:16px;font-size:13px}.other-stats dt{color:#888}.other-stats dd{color:#bfbfbf}.detail-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:28px}.record-viewer{width:100%;height:auto!important;aspect-ratio:1;min-height:490px;max-height:none;border:1px solid #2d2d2d;border-radius:6px;background:#1c1c1c!important;box-shadow:none;position:relative;overflow:hidden}.vinyl-canvas{position:absolute;inset:40px 0 95px}.vinyl-canvas canvas{display:block;width:100%;height:100%;touch-action:none}.viewer-controls{background:#1a1a1a!important;border-top:1px solid #303030;position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:62px;height:auto;padding:12px}.viewer-controls>div:first-child{display:flex;gap:6px}.viewer-controls .secondary{font-size:12px!important;min-height:30px;padding:6px 9px!important}.slide-fallback{display:flex;align-items:center;gap:10px;min-width:110px;flex:1;max-width:230px}.slide-fallback label,.slide-fallback>span{color:#aaa;font-size:12px}.slide-fallback [data-slot=slider]{flex:1;min-width:50px}.viewer-help{position:absolute;bottom:76px;left:14px;right:14px;font-size:12px;color:#909090;line-height:1.4;text-align:center;pointer-events:none}.viewer-camera{position:absolute;top:10px;right:10px;display:flex;gap:3px}.viewer-camera button{background:#222!important;color:#b9b9b9!important;border:1px solid #383838!important;width:30px;height:30px}.viewer-message,.opening-overlay{position:absolute;inset:0 0 63px;background:#1c1c1c;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:15px;color:#ccc;font-size:14px}.opening-overlay{z-index:3;background:#171717}.opening-disc{border-color:#5a5a5a!important;background:repeating-radial-gradient(circle,#202020 0 2px,#333 3px,#1d1d1d 4px)!important}.record-viewer:fullscreen{height:100vh!important;aspect-ratio:auto;background:#1c1c1c}.missing-cover{font-size:12px;background:#222;color:#aaa}.edit-header{display:flex;align-items:center;gap:26px;margin:0 0 26px}.edit-header h1{font-size:20px;font-weight:400}.crate-builder{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:32px}.builder-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.builder-heading h1{font-size:22px}.builder-heading>span{color:#999;font-size:13px}.search-bar{background:#1c1c1c;border:1px solid #383838;border-radius:4px;display:flex;align-items:center;gap:12px;padding:7px 8px 7px 14px}.search-bar>input{font-size:14px;flex:1;min-width:0;color:#e5e5e5;outline:none;background:none}.search-bar>svg{color:#999}.browser-actions{margin:18px 0;display:flex;align-items:center;justify-content:space-between;gap:12px}.browser-actions>span{color:#999;font-size:13px}.browse-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:24px 16px}.browse-album{position:relative;text-align:left;background:none}.browse-album>.album-cover{aspect-ratio:1;width:100%;border:1px solid transparent;border-radius:4px}.browse-album.selected>.album-cover{outline:2px solid #ddd;outline-offset:2px}.browse-album strong{font-size:14px;font-weight:400;display:block;margin-top:11px}.browse-album>span:not(.selection-mark){font-size:13px;color:#999;display:block;margin-top:4px}.selection-mark{color:#bbb!important;background:#232323!important;border:1px solid #555;position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:3px;display:grid;place-items:center}.selected .selection-mark{background:#ddd!important;color:#111!important}.crate-selection{position:sticky;top:22px;align-self:start;background:#181818;border:1px solid #303030;border-radius:5px;padding:18px}.selection-heading{display:flex;align-items:center;justify-content:space-between}.selection-heading h2{font-size:16px}.selection-heading>span{font-size:20px;color:#eee}.selection-heading small{font-size:13px;color:#888}.selection-progress{height:2px;background:#333;margin-top:18px}.selection-progress i{height:100%;display:block;background:#bbb}.crate-selection>p{color:#999;font-size:13px;margin-top:10px}.selected-list{max-height:42vh;min-height:100px;overflow:auto;margin:20px 0;display:flex;flex-direction:column;gap:14px}.selected-album{display:flex;align-items:center;gap:11px}.selected-album>.album-cover{height:40px;width:40px;flex-shrink:0}.selected-album>div:not(.album-cover){flex:1;min-width:0}.selected-album strong{font-size:13px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#ddd}.selected-album span{font-size:12px;color:#999;display:block}.selected-album button{padding:8px;color:#aaa}.crate-selection>.primary{width:100%}.crate-selection>small,.crate-selection .small-note{font-size:12px!important;color:#888!important}.type-cover{background:#272727!important;color:#d5d5d5!important;display:flex;flex-direction:column;justify-content:space-between;padding:14px;height:100%;width:100%}.type-cover strong{font-size:13px}.type-cover>span{font-size:12px;color:#aaa}.manual-trigger,.load-more{margin-top:24px;color:#bbb;font-size:14px}.inline-error,.studio-notice{color:#e0b7a7;font-size:14px}.studio-notice{display:flex;justify-content:space-between;gap:20px;padding:14px;border:1px solid #564338;border-radius:4px;margin-bottom:20px;background:#211d1b}.empty-message{color:#999;font-size:14px}.dark-dialog{background:#191919!important;color:#eee!important;border:1px solid #3b3b3b!important;border-radius:6px!important;padding:28px!important;max-width:min(560px,calc(100vw - 32px))!important;max-height:calc(100dvh - 36px)!important;overflow:auto;box-shadow:0 20px 80px #0009!important}.dark-dialog [data-slot=dialog-title]{font:400 22px/1.4 var(--font-sans)!important}.dark-dialog [data-slot=dialog-description]{color:#999!important;font-size:14px!important;line-height:1.6;margin:8px 0 22px}.dark-dialog label{color:#bbb;font-size:14px}.dark-dialog input:not([type=checkbox]){height:40px;background:#111!important;border:1px solid #454545!important;color:#eee;padding:8px 12px;font-size:14px;border-radius:4px}.dark-dialog [data-slot=dialog-close]{color:#aaa!important}.name-form{display:flex;flex-direction:column;gap:12px}.dialog-actions{border-top:1px solid #333;padding-top:18px;margin-top:22px;display:flex;justify-content:space-between;gap:15px}.finish-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:20px 0}.finish-grid button{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:12px;background:#202020;border:1px solid #333;border-radius:4px;font-size:14px}.finish-grid button.chosen{background:#2b2b2b;border-color:#b0b0b0}.finish-grid small{font-size:12px;color:#999}.wear-control{margin:22px 0}.wear-control label{display:flex;justify-content:space-between;margin-bottom:12px;font-size:14px}.wear-control label span{font-size:13px;color:#999}.pattern-control{display:flex;align-items:center;justify-content:space-between;gap:12px}.pattern-control input{width:115px}.settings-body{display:grid;gap:20px}.setting-toggle{display:flex;align-items:center;justify-content:space-between;gap:20px}.setting-toggle input{accent-color:#ddd;width:18px;height:18px}.settings-body details{border-top:1px solid #333;padding-top:18px}.settings-body summary{cursor:pointer;font-size:14px}.odds-list{display:grid;gap:12px;margin-top:18px}.odds-list>div{display:flex;justify-content:space-between;gap:18px;font-size:13px}.odds-list strong{font-weight:400;color:#bbb}.small-note{font-size:12px!important;color:#999!important;line-height:1.6}.manual-form{display:grid;gap:10px}.manual-form label,.manual-form label>span{font-size:14px;color:#bbb}.manual-form .primary{justify-self:end;margin-top:15px}[data-slot=slider-track]{background:#414141!important}[data-slot=slider-range]{background:#bcbcbc!important}[data-slot=slider-thumb]{background:#dedede!important;border-color:#dedede!important;box-shadow:none!important;width:15px!important;height:15px!important}.market-state .pill{margin-bottom:10px}
@media(min-width:1450px){.crate-art,.add-album{width:116px;height:116px;flex-basis:116px}.album-detail{gap:48px}.detail-info{padding-top:4px}}
@media(max-width:1050px){.studio-header{padding:0 26px}.studio-main{padding:8px 26px 45px}.album-detail{gap:25px}.record-viewer{min-height:460px}.viewer-controls{flex-wrap:wrap}.slide-fallback{order:-1;max-width:none;width:100%;flex-basis:100%}.viewer-controls>div:first-child{margin-left:auto}.vinyl-canvas{inset:40px 0 120px}.viewer-help{bottom:104px}.viewer-message,.opening-overlay{bottom:95px}.crate-builder{grid-template-columns:minmax(0,1fr) 260px;gap:24px}.detail-actions .primary,.detail-actions .secondary{font-size:13px!important}.crate-status{display:none}}
@media(max-width:760px){.studio-header{height:78px;padding:0 20px;gap:15px}.studio-header nav{gap:22px}.studio-header nav button{font-size:17px}.wordmark{display:none}.header-utilities{gap:0}.header-utilities button{font-size:12px}.studio-main{padding:5px 20px 40px}.row-actions{gap:13px}.row-actions .quiet{font-size:12px}.crate-row{padding:14px}.crate-row-head{align-items:flex-start;flex-wrap:wrap;gap:12px}.crate-name-line{gap:10px}.crate-art,.add-album{width:88px;height:88px;flex-basis:88px}.crate-strip{gap:10px}.album-detail{grid-template-columns:1fr;gap:26px}.record-viewer{min-height:420px;aspect-ratio:1.08}.detail-info h1{font-size:36px}.detail-info .artist{font-size:23px}.edition-line{margin-top:26px}.crate-builder{grid-template-columns:1fr}.crate-selection{position:static}.selected-list{max-height:300px}.builder-heading h1{font-size:20px}.builder-heading>span{font-size:12px}.inventory-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px 16px}.inventory-album strong{font-size:13px}.inventory-album>span,.inventory-album>small{font-size:12px}.detail-top>.muted{font-size:12px}.browse-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.browser-actions>span{font-size:12px}.empty-state{min-height:55vh}.detail-actions{margin-bottom:20px}}
@media(max-width:450px){.studio-header{padding:0 16px}.studio-main{padding:4px 16px 36px}.studio-header nav{gap:17px}.studio-header nav button{font-size:16px}.header-utilities button{font-size:12px}.section-top{margin-bottom:18px}.crate-row-head .row-actions{width:100%;justify-content:flex-end}.crate-name-line{width:100%}.crate-name-line .muted{margin-left:auto}.inventory-grid,.browse-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.record-viewer{min-height:390px}.viewer-help{font-size:12px}.detail-info h1{font-size:32px}.builder-heading{flex-wrap:wrap}.search-bar{gap:8px}.search-bar>input{font-size:13px}.finish-grid button{font-size:13px}.studio-dialog{padding:23px 20px!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Gatefold controls remain independent of the side-opening record pocket. */
.record-viewer.gatefold-viewer{min-height:540px}
.gatefold-viewer .viewer-controls{flex-wrap:wrap;justify-content:center;gap:12px;padding:14px}
.gatefold-viewer .viewer-controls>div:first-child{flex-wrap:wrap;justify-content:center;margin:0}
.gatefold-viewer .slide-fallback{max-width:none;flex-basis:100%;order:1}
.gatefold-viewer .viewer-controls .secondary{font-size:14px!important;min-height:36px;padding:7px 10px!important}
.gatefold-viewer .vinyl-canvas{inset:44px 0 158px}
.gatefold-viewer .viewer-help{bottom:122px;font-size:12px}
.gatefold-viewer .viewer-message,.gatefold-viewer .opening-overlay{bottom:116px}
.gatefold-pages{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0;border-bottom:1px solid #303030;font-size:14px}
.gatefold-pages button{font-size:14px!important}
.sleeve-tracklist{padding:18px 0;color:#aaa;font-size:14px;line-height:1.7}
.sleeve-tracklist summary{cursor:pointer;color:#ddd;min-height:28px}
.sleeve-tracklist ol{list-style:none;margin:20px 0;padding:0;display:grid;gap:13px}
.sleeve-tracklist li{display:grid;grid-template-columns:42px minmax(0,1fr) 46px;gap:12px;align-items:baseline}
.sleeve-tracklist li>span:nth-child(2){color:#ddd;overflow-wrap:anywhere;font-size:16px}
.sleeve-tracklist time{text-align:right;font-variant-numeric:tabular-nums;color:#999}
.track-number{color:#888}.tracklist-source{margin-top:10px;font-size:13px}.tracklist-source a{color:#ddd;text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.record-viewer.gatefold-viewer{min-height:480px;aspect-ratio:auto}.gatefold-viewer .vinyl-canvas{inset:44px 0 174px}.gatefold-viewer .viewer-help{bottom:132px}.gatefold-viewer .viewer-controls{min-height:116px}.gatefold-pages{gap:8px;font-size:12px}}
@media(max-width:380px){.gatefold-viewer .viewer-controls .secondary{font-size:12px!important;padding:7px!important}.gatefold-pages button{font-size:12px!important}.record-viewer.gatefold-viewer{min-height:490px}}
