:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#10191a;color:#f6f3e9;color-scheme:dark;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}
:focus-visible{outline:2px solid #e2bb80;outline-offset:3px}a{color:inherit}button{border:0}.site-shell{display:grid;grid-template-columns:242px minmax(0,1fr);min-height:100vh}
.sidebar{background:#0b1415;border-right:1px solid #273333;display:flex;flex-direction:column;padding:31px 22px;min-height:100vh}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;margin-bottom:76px}.brand-symbol{width:40px;height:40px;display:grid;place-items:center;border:2px solid #c39b6c;border-radius:50%;background:repeating-radial-gradient(circle at 50%,#10191a 0 3px,#293030 4px 5px);box-shadow:0 0 0 4px #132021}.brand-symbol span{width:9px;height:9px;background:#c39b6c;border-radius:50%}.brand-text strong,.brand-text em{display:block;letter-spacing:.16em;font-size:13px;font-style:normal;line-height:1.4}.brand-text em{color:#d2b58c;font-weight:400;letter-spacing:.30em}
.sidebar-label,.eyebrow{color:#cda671;font-size:10px;letter-spacing:.19em;font-weight:750}.sidebar-label{padding:0 13px;margin-bottom:18px}.nav-item{display:flex;align-items:center;gap:12px;border-radius:9px;padding:15px 13px;font-size:13px;margin-bottom:8px}.nav-item.active{background:#253331;color:#fff0da}.nav-icon{font-size:21px;width:24px;text-align:center;color:#d9b381}.nav-item.planned{color:#77878a}.nav-item.planned .nav-icon{color:#788a88}.nav-item small{font-size:9px;margin-left:auto}.sidebar-bottom{display:flex;gap:10px;margin-top:auto;padding:20px 8px;border-top:1px solid #293536;font-size:12px}.sidebar-bottom strong,.sidebar-bottom small{display:block}.sidebar-bottom small{margin-top:4px;color:#92a09e;line-height:1.6}
.dot{display:inline-block;flex-shrink:0;width:7px;height:7px;border-radius:50%;background:#96d8ae;box-shadow:0 0 0 3px #31534144}.dot.amber{background:#d5a86b;box-shadow:0 0 0 3px #b4824240}
.workarea{display:flex;min-width:0;flex-direction:column}.topbar{height:72px;padding:0 clamp(20px,4.5vw,62px);border-bottom:1px solid #293535;display:flex;align-items:center;justify-content:space-between;gap:12px}.topbar-label{font-size:10px;letter-spacing:.17em;color:#8c9b9b;font-weight:700}.topbar-right{display:flex;align-items:center;gap:16px}.connection{display:flex;gap:10px;align-items:center;color:#a8b6b4;font-size:12px}.main{padding:43px clamp(20px,4.5vw,62px) 60px;flex:1;width:100%;max-width:1530px;margin:auto}.footer{display:flex;justify-content:space-between;border-top:1px solid #293535;padding:20px clamp(20px,4.5vw,62px);font-size:10px;letter-spacing:.13em;color:#b9b6a9}.footer-light{color:#6d7c7b}
h1,h2,h3,p{margin-top:0}h1{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.045em;font-weight:400;font-size:clamp(40px,4.4vw,68px);line-height:1.1;margin:12px 0 13px}h1 i{color:#d0a773}h2{font-family:Georgia,serif;font-size:28px;font-weight:400;letter-spacing:-.035em;margin-bottom:4px}h3{font-family:Georgia,serif;font-size:21px;font-weight:400}p{line-height:1.65;color:#a9b7b5}.heading-period{color:#ce9f64}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:13px 19px;border-radius:7px;font-weight:700;font-size:12px;white-space:nowrap;min-height:44px;transition:background .15s,color .15s,transform .15s}.button:hover{transform:translateY(-1px)}.button.primary{background:#d7aa76;color:#12201f}.button.primary:hover{background:#edc496}.button.secondary{background:#273331;color:#f2f0e6}.button.subtle{background:transparent;border:1px solid #475553;color:#d5dfd7}.button.full{width:100%}.view[hidden],.generated[hidden],.auth-form[hidden],#album-dialog:not([open]),[hidden]{display:none!important}
.auth-stage{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(0,1fr);max-width:990px;overflow:hidden;background:#172322;border:1px solid #36413d;border-radius:16px;margin:35px auto;min-height:510px}.auth-art{min-height:490px;background:linear-gradient(130deg,#273f39,#1c2c29 55%,#0e1b1a);position:relative;display:grid;place-items:center;overflow:hidden}.huge-disc{width:300px;height:300px;display:grid;place-items:center;border-radius:50%;background:repeating-radial-gradient(circle at center,#0c1514 0,#0e1717 6px,#1d2625 7px,#0d1819 10px);box-shadow:0 0 0 12px #0002,35px 50px 85px #0008;transform:rotate(-18deg)}.huge-disc:after{content:"";width:84px;height:84px;background:radial-gradient(circle,#15201f 0 7px,#d4ab7a 8px 15px,#a9794b 16px 100%);border-radius:50%}.auth-body{padding:clamp(25px,4vw,65px);display:flex;flex-direction:column;justify-content:center}.auth-body h1{font-size:clamp(34px,4vw,57px)}.auth-body>p{font-size:13px}.auth-switch{display:flex;margin:19px 0;border-bottom:1px solid #42504c}.switch-button{flex:1;text-align:center;padding:13px 5px;background:transparent;color:#a5b2ae;font-size:12px;border-bottom:2px solid transparent}.switch-button.selected{color:#e4c292;border-bottom-color:#d5aa73}.auth-form{display:grid;gap:11px}.auth-form label,.album-form label{font-size:11px;font-weight:700;color:#cdd6cd}.auth-form input,.album-form input,.album-form select,.searchbox input,.sort-wrap select{width:100%;border:1px solid #455553;background:#131e1e;border-radius:7px;color:#f9f6ed;min-height:46px;padding:0 13px;font-size:13px}.auth-form input::placeholder,.album-form input::placeholder,.searchbox input::placeholder{color:#748680}.auth-form button{margin-top:8px}.note,.form-hint,.help-small{font-size:12px!important;color:#9baaab}.setup-info,.generated{border:1px solid #546047;background:#26322d;padding:16px;border-radius:9px;margin:17px 0;display:grid;gap:10px;font-size:12px}.setup-info code,.generated code{font-family:ui-monospace,SFMono-Regular,monospace;overflow-wrap:anywhere;color:#ecc68e}.setup-info small{line-height:1.7;color:#b6c2bc}.form-message{font-size:12px;background:#482d2d;color:#ffcabd;border:1px solid #744640;border-radius:7px;padding:12px;margin-top:12px}
.section-intro{display:flex;justify-content:space-between;align-items:center;gap:20px}.section-intro>div>p{max-width:620px;font-size:14px;margin-bottom:0}.toolbar{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:23px}.toolbar-actions{display:flex;gap:10px;align-items:center}.searchbox{display:flex;align-items:center;gap:4px;min-width:245px;border-radius:7px;background:#172423;border:1px solid #394845;padding:0 10px;color:#b2a98b}.searchbox input{border:0;background:transparent;min-height:44px;outline:0;padding:0 5px}.sort-wrap select{min-width:173px;background:#172423}
.album-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.album-card{background:#1a2827;border:1px solid #33413e;border-radius:11px;padding:19px;min-width:0;display:grid;grid-template-columns:86px minmax(0,1fr);gap:16px;position:relative;transition:border-color .15s}.album-card:hover{border-color:#ba9165}.record-art{width:86px;height:86px;position:relative;background:linear-gradient(135deg,#bb9169,#72503c 50%,#ccb082);border-radius:4px;display:grid;place-items:center;overflow:hidden}.record-art:before{content:"";width:75px;height:75px;border-radius:50%;background:repeating-radial-gradient(circle,#111a1a 0 3px,#26302d 4px 5px,#101b1a 6px 8px);box-shadow:4px 5px 9px #0008}.record-art:after{content:"";position:absolute;width:22px;height:22px;border-radius:50%;background:#d4b085;box-shadow:inset 0 0 0 7px #ab8056}.album-info{min-width:0}.album-info .artist{font-size:10px;text-transform:uppercase;letter-spacing:.11em;color:#d5af7a;font-weight:750;overflow-wrap:anywhere}.album-info h3{font-size:20px;margin:5px 0 4px;overflow-wrap:anywhere}
.empty-state{border:1px dashed #526054;background:#1a2825;border-radius:13px;text-align:center;padding:65px 20px}.empty-record{font-size:78px;line-height:1;color:#d1a779}.empty-state h2{margin:12px 0}.empty-state p{font-size:14px}
dialog{border:1px solid #485850;border-radius:13px;background:#1c2b29;color:#f6f3e9;padding:0;box-shadow:0 30px 90px #000b;width:min(92vw,550px);max-height:90vh;overflow:auto}dialog::backdrop{background:#071111d9}.album-form{padding:30px;display:grid;gap:11px}.dialog-heading{position:relative;margin-bottom:15px}.dialog-heading h2{margin:8px 25px 0 0}.close-dialog{position:absolute;right:0;top:0;font-size:30px;background:transparent;color:#ccc}.album-form label span{color:#dba774}.album-form label{margin-top:6px}.form-hint{line-height:1.6}.dialog-actions{display:flex;justify-content:end;gap:10px;padding-top:16px;border-top:1px solid #354541}.toast{position:fixed;right:25px;bottom:25px;background:#d6ad79;color:#12201f;padding:15px 20px;border-radius:9px;box-shadow:0 10px 50px #0008;font-size:13px;max-width:min(90vw,380px);z-index:200}.loading-panel{text-align:center;padding:17vh 0}.spinning-disc{display:block;margin:auto;width:75px;height:75px;border-radius:50%;border:18px solid #172728;border-top-color:#cda571;animation:spin 1.6s linear infinite}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:1120px){.album-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.toolbar{align-items:start;flex-direction:column}.toolbar-actions{width:100%}.searchbox{flex:1}}
@media(max-width:760px){.site-shell{display:block}.sidebar{min-height:auto;padding:14px 20px;flex-direction:row;align-items:center;justify-content:space-between}.brand{margin:0}.sidebar-label,.sidebar-nav{display:none}.sidebar-bottom{border:0;padding:0;margin:0}.sidebar-bottom small{display:none}.topbar{height:54px;padding:0 20px}.topbar-label{font-size:9px}.main{padding:28px 20px 50px}.auth-stage{grid-template-columns:1fr;margin:0}.auth-art{display:none}.section-intro{align-items:start}.add-top{margin-top:25px}.album-grid{grid-template-columns:1fr 1fr}.auth-body{padding:35px}.footer{padding:20px}}
@media(max-width:520px){.album-grid{grid-template-columns:1fr}.section-intro{display:block}.add-top{margin-top:20px}.toolbar-actions{flex-wrap:wrap}.searchbox,.sort-wrap,.sort-wrap select{width:100%}.footer{gap:10px;font-size:8px}.sidebar-bottom strong{font-size:10px}.connection{font-size:10px}.auth-body h1{font-size:39px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}


/* VINYL-05A1 – seven-store historical evidence panel, no live-search control */
.offers-dialog{width:min(94vw,750px);max-height:88vh}
.offers-modal{padding:clamp(18px,3.5vw,33px)}
.offers-modal .dialog-heading{padding-right:25px}

.offers-status{font-size:12px;color:#dfba87;margin:15px 0 18px}
.offers-list{display:grid;gap:10px}
.offer-store{padding:14px 16px;border:1px solid #44544c;border-radius:9px;background:#152220}
.offer-store-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.offer-store-head strong{font-size:13px}
.offer-flag{border-radius:5px;padding:6px 8px;font-size:11px;background:#2c3837;color:#9caca5}
.offer-flag.historical{background:#51412d;color:#e9c58b}
.offer-candidate{border-top:1px solid #3f4a42;margin-top:12px;padding-top:12px;display:grid;gap:7px}
.offer-candidate-name{font-weight:650;font-size:14px;overflow-wrap:anywhere}
.offer-candidate-date,.offer-explanation{color:#a6b1ab;font-size:11px;line-height:1.5}
.offer-price{font-size:13px;color:#e4b681}
.offer-link,.offer-source{font-size:12px;color:#f0c58e;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.offer-source{font-size:11px;color:#9aa9a3}


@media(max-width:520px){.offer-store-head{align-items:flex-start}.offers-modal{padding:20px}}

/* VINYL-05A2 – user-driven search only */
.manual-search-block{margin-top:16px;border-top:1px solid #46554c;padding-top:12px;display:grid;gap:10px}
.manual-search-link{font-weight:700;color:#f0c58e;font-size:12px;text-decoration:underline;text-underline-offset:3px}
.manual-link-entry{border:1px solid #536248;border-radius:6px;padding:10px;display:grid;gap:7px;overflow-wrap:anywhere}
.manual-link-tag{color:#e2c69b;font-size:10px;font-weight:700;letter-spacing:.07em}
.manual-link-form{display:flex;gap:10px;align-items:end;flex-wrap:wrap}
.manual-link-form label{min-width:180px;flex:1;display:grid;gap:6px;font-size:11px;color:#bdc9c0}
.manual-link-form input{width:100%;min-height:42px;padding:8px;border:1px solid #526258;background:#121e1e;color:#f6f3e9;border-radius:6px}
.manual-link-form button{min-height:42px}

/* VINYL-05A3B: seven-store automatic discovery status, fail-closed */
.discovery-summary{border:1px solid #a17b48;background:#24322c;border-radius:10px;padding:16px;margin-bottom:15px;display:grid;gap:9px}
.discovery-summary h3{font-size:19px;margin:0;color:#f0d4b4}
.discovery-subline{font-size:12px;color:#d4d7ce;margin:0;line-height:1.6}
.discovery-store-row{display:grid;grid-template-columns:minmax(115px,1fr) 2fr;gap:7px 13px;padding:9px 0;border-top:1px solid #485348;align-items:center}
.discovery-store-row strong{font-size:12px}
.discovery-state{font-size:11px;color:#e0c9a4}
.discovery-store-row a,.discovery-meta{grid-column:1/-1}
.discovery-meta{color:#b5bcab;font-size:11px}
@media(max-width:520px){.discovery-store-row{grid-template-columns:1fr;gap:4px}}

/* VINYL-05A3D: owner-triggered MG product observation controls */
.mg-live-pilot{display:grid;gap:9px;padding:14px;border:1px solid #677664;border-radius:9px;margin:12px 0;background:#202d2b}
.mg-live-pilot h3{font-size:17px;margin:0;color:#e4d8bd}
.mg-live-pilot button{justify-self:start}
.mg-pilot-results{display:grid;gap:8px}
.mg-pilot-item{display:grid;gap:3px;padding:10px;border-top:1px solid #3f514c}

/* VINYL-05A4 Discogs Master image: signed remote URL, no local caching. */
.record-art{position:relative;overflow:hidden}
.record-cover{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}

.record-art.has-cover::before,.record-art.has-cover::after{display:none}
.record-art.has-cover .record-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}


/* VINYL-UX01 — pastel retro-futurism. No external font, script or Tailwind runtime. */
/* The brief repeated #FFDAB9 for mint and peach: use distinct pastel mint #CDEFE2 and peach #FFDAB9. */
:root{
  --mint:#CDEFE2;--peach:#FFDAB9;--lavender:#E6E6FA;--silver:#E0E0E0;
  --pink:#FF69B4;--ink:#343449;--muted:#626477;--surface:#FFFCFA;
  color-scheme:light;background:var(--mint);color:var(--ink);
}
body{background:linear-gradient(to bottom right,var(--mint) 0%,#F4E9DD 52%,var(--peach) 100%);background-attachment:fixed;color:var(--ink)}
:focus-visible{outline:3px solid #A52170;outline-offset:3px}
.site-shell{background:transparent}
.sidebar{background:rgba(230,230,250,.94);border-right:1px solid var(--silver)}
.brand-symbol{border-color:#A75591;background:repeating-radial-gradient(circle,#F7EFF9 0 3px,#C9BEDD 4px 5px);box-shadow:0 0 0 4px #F6EFFB}
.brand-symbol span{background:var(--pink)}
.brand-text em,.sidebar-label,.eyebrow,.album-info .artist{color:#8D3671}
.sidebar-label{font-weight:800}
.nav-item.active{background:#FFFFFFB8;color:#40354E;box-shadow:0 3px 16px #66608016}
.nav-icon{color:#9B4B84}.nav-item.planned,.nav-item.planned .nav-icon{color:#737184}
.sidebar-bottom{border-color:var(--silver)}
.sidebar-bottom small{color:var(--muted)}
.dot{background:#459A77;box-shadow:0 0 0 3px #459A772B}
.dot.amber{background:#B1783F;box-shadow:0 0 0 3px #B1783F25}
.topbar,.footer{border-color:#C9C5D0A6}
.topbar{background:#FFFFFF40}
.topbar-label,.connection,.footer,.footer-light{color:#56566B}
.main{padding:32px clamp(16px,4.5vw,62px) 60px}
h1,h2,h3{font-family:"Denton",Georgia,"Times New Roman",serif;color:#343449}
h1 i,.heading-period{color:#AD397B}
p,.section-intro>div>p{color:var(--muted)}
.button{border-radius:10px;box-shadow:0 3px 10px #4340570D}
.button.primary{background:var(--pink);color:#2C1831}
.button.primary:hover{background:#F34B9F;color:#29132B}
.button.secondary{background:#ECE8F4;color:#413D56}
.button.subtle{border:1px solid #C6BDCF;background:#FFFFFF7D;color:#444052}
.auth-stage,.album-card,.empty-state,dialog,.setup-info,.generated{
  background:rgba(255,252,250,.86);border:1px solid var(--silver);
  box-shadow:0 8px 32px #77708712
}
.auth-stage,.empty-state,dialog{border-radius:18px}
.album-card{border-radius:15px}
.auth-art{background:linear-gradient(135deg,#D9F1E5,#E5DDF4 55%,#FFE1CB)}
.huge-disc{box-shadow:0 0 0 12px #FFFFFF50,22px 30px 65px #57516D30}
.auth-switch{border-color:#D5CBD9}
.switch-button{color:#6C6477}.switch-button.selected{color:#8D3671;border-bottom-color:#D04A98}
.auth-form label,.album-form label{color:#48445C}
.auth-form input,.album-form input,.album-form select,.searchbox input,.sort-wrap select,.manual-link-form input{
  background:#FFFFFFD9;color:#353348;border:1px solid #C9C4D0;border-radius:9px
}
.auth-form input::placeholder,.album-form input::placeholder,.searchbox input::placeholder{color:#777488}
.note,.form-hint,.help-small,.setup-info small{color:#626477!important}
.setup-info code,.generated code{color:#873F79}
.form-message{background:#FFE5E9;color:#842E48;border-color:#EAB3C0}




.searchbox,.sort-wrap select{background:#FFFFFFB8;border:1px solid #C9C4D0;color:#5D5670}
.searchbox input{border:0;background:transparent;outline-offset:3px}
.album-card:hover{border-color:#D885B7;box-shadow:0 10px 32px #955C8B27}
.record-art{background:linear-gradient(135deg,#DFB4D8,#B5E6D1 55%,#FFCBAE)}
.dialog-actions,.offer-candidate,.manual-search-block{border-color:#D8D3DC}





.empty-state{border-style:dashed;border-color:#C3B7CF}
.empty-record{color:#BE5F99}

dialog{color:var(--ink);box-shadow:0 28px 84px #4F45623D}
dialog::backdrop{background:#2C283B8C}
.close-dialog{color:#585267}
.album-form label span{color:#AD397B}
.toast{background:#FF69B4;color:#291B32;box-shadow:0 12px 35px #4F456238}
.spinning-disc{border-color:#E6E6FA;border-top-color:#C04B96}

.offers-status,.offer-price{color:#8D3671}
.offer-store,.mg-live-pilot,.discovery-summary{background:#FFFFFFC7;border:1px solid var(--silver)}
.offer-store-head strong,.mg-live-pilot h3,.discovery-summary h3{color:#343449}
.offer-flag{background:#EEEDF3;color:#625D70}
.offer-flag.historical{background:#FBE8D5;color:#775333}
.offer-candidate-date,.offer-explanation,.offer-source,.discovery-meta,.discovery-subline{color:#626477}
.offer-link,.manual-search-link,.discovery-store-row a{color:#8F2F71}
.manual-link-entry{border-color:#CCC5D0}
.manual-link-tag,.discovery-state{color:#784467}
.manual-link-form label{color:#514C5F}
.discovery-store-row,.mg-pilot-item{border-color:#D8D3DC}
@media(max-width:760px){
  .sidebar{background:rgba(230,230,250,.94);border-right:0;border-bottom:1px solid var(--silver);padding:14px 20px}
  .main{padding:28px 20px 50px}
  .topbar{background:#FFFFFF40}
}
@media(max-width:520px){
  .main{padding:24px 16px 44px}
  .topbar{padding:0 16px}
  
  .album-card{padding:15px}
}


/* VINYL-UX02 – compact wishlist hierarchy; count remains live, keyboard controls unchanged. */
.section-intro .wishlist-title{margin:0 0 14px}
.wishlist-count{
  display:inline-block;
  vertical-align:super;
  margin-left:.32em;
  padding:.27em .56em;
  border:1px solid #E9BED6;
  border-radius:999px;
  background:#FBE5F2;
  color:#7E2F65;
  font:800 clamp(14px,.32em,22px)/1 Inter,ui-sans-serif,system-ui,sans-serif;
  letter-spacing:0;
  white-space:nowrap;
  box-shadow:0 3px 13px #834C7420
}
.toolbar{justify-content:flex-end;align-items:center;margin:30px 0 23px}
@media(max-width:760px){
  .toolbar{align-items:stretch;margin:24px 0 20px}
}
@media(max-width:520px){
  .section-intro .wishlist-title{font-size:clamp(30px,8.5vw,40px)}
  .toolbar{margin:22px 0 19px}
}


/* VINYL-UX03 — a keyboard-operable album card opens one accessible detail sheet. */
.album-card{
  cursor:pointer;
  align-items:center;
  min-height:125px;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
.album-card:hover{transform:translateY(-2px)}
.album-card:focus-visible{outline:3px solid #A52170;outline-offset:3px;border-color:#D885B7}
.album-info h3{margin-bottom:6px}
.detail-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-right:0}
.detail-heading h2{margin:8px 0 0}
.detail-icon-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.detail-icon-button{
  display:grid;place-items:center;flex-shrink:0;
  width:42px;height:42px;padding:0;
  border:1px solid #D4CDDA;border-radius:11px;
  color:#48425B;background:#F7F0F8;
  transition:background .16s,border-color .16s
}
.detail-icon-button:hover{background:#EADCEB;border-color:#C799BC}
.detail-icon-button.danger{color:#9C335A}
.detail-icon-button.danger:hover{background:#FFE4ED;border-color:#DF9FB6}
.detail-icon-button svg{height:19px;width:19px}
.close-detail{font-size:26px;line-height:1}






@media(max-width:520px){
  .detail-heading{gap:8px;flex-wrap:wrap}
  .detail-heading>div:first-child{flex:1 1 180px;min-width:0}
  .detail-icon-actions{gap:6px}
  .detail-icon-button{width:38px;height:38px}


}

/* VINYL-UX04 attribution moved to each verified release in VINYL-UX06. */







/* VINYL-UX05 – EAN is the edition boundary; verified shops nest within it. */
.offer-variant{
  padding:17px;
  border:1px solid var(--silver);
  border-radius:15px;
  background:rgba(255,255,255,.76);
  display:grid;
  gap:14px;
  min-width:0;
  box-shadow:0 4px 18px rgba(59,51,72,.045)
}
.variant-summary{display:grid;grid-template-columns:106px minmax(0,1fr);gap:17px;align-items:center}
.variant-art{
  display:grid;place-items:center;overflow:hidden;
  width:106px;height:106px;
  border:1px solid #D8CFDB;border-radius:10px;
  background:linear-gradient(145deg,#DDEFE7,#E8DCEC)
}
.variant-image{display:block;width:100%;height:100%;object-fit:cover}
.variant-placeholder{font-size:46px;color:#A487AB;line-height:1}
.variant-identity{min-width:0;overflow-wrap:anywhere}
.variant-overline{
  display:block;margin-bottom:6px;color:#8D3671;
  font-size:10px;font-weight:750;letter-spacing:.12em
}
.variant-ean{font-family:ui-sans-serif,system-ui,sans-serif;font-size:18px;font-weight:750;
  letter-spacing:-.02em;margin:0 0 5px;color:#40374C}
.variant-format{font-size:13px;font-weight:650;color:#5D4B63;margin:0 0 4px;line-height:1.4}
.variant-meta{font-size:11px;color:#696577;margin:0 0 5px;line-height:1.5}
.variant-source{font-size:11px;color:#8D3671;text-decoration:underline;text-underline-offset:2px}
.variant-offers{display:grid;gap:8px;border-top:1px solid #DDD5DE;padding-top:13px}
.variant-shop{padding:12px 14px;background:#F8F5FA;border:1px solid #E5DDE8;border-radius:11px}
.variant-shop-line{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}
.variant-shop-name{font-size:13px;color:#4B3E52}
.variant-shop-price{font-size:18px;font-weight:800;color:#983270;white-space:nowrap}
.variant-shop-meta{color:#666176;font-size:11px;margin:6px 0;line-height:1.5}
.variant-shop .offer-link{display:inline-block;margin-top:1px}
@media(max-width:520px){
  .offer-variant{padding:12px;gap:11px}
  .variant-summary{grid-template-columns:80px minmax(0,1fr);gap:11px}
  .variant-art{height:80px;width:80px}
  .variant-placeholder{font-size:33px}
  .variant-ean{font-size:15px}
  .variant-shop{padding:11px}
  .variant-shop-price{font-size:16px}
}

/* VINYL-UX06 – the album Master cover stays only on wishlist cards. */
.album-info .best-price{
  display:block;
  font-size:12px;
  font-weight:750;
  color:#8D3671;
  line-height:1.5;
  overflow-wrap:anywhere
}
.offers-modal .detail-heading{margin-bottom:14px}

/* VINYL-ADMIN01 – admin-only device management, responsive and keyboard accessible. */
.devices-panel{padding:clamp(20px,4vw,32px);display:grid;gap:14px}
.devices-panel .dialog-heading{padding-right:28px;margin-bottom:0}
.devices-help{font-size:12px;line-height:1.6;margin:0;color:var(--muted,#666176)}
.devices-heading{font:750 15px/1.4 Inter,ui-sans-serif,system-ui,sans-serif;margin:4px 0 0;color:var(--ink,#343449)}
.devices-list{display:grid;gap:9px}
.device-row{display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:12px;border:1px solid #D8CFDB;border-radius:10px;background:#FFFFFFA8}
.device-info{display:grid;gap:5px;min-width:0;overflow-wrap:anywhere}
.device-info strong{font-size:13px}.device-info small{font-size:11px;color:#625D70}
.device-revoke{font-size:11px;min-height:38px;padding:8px 11px;white-space:normal;text-align:center}
.devices-new{display:grid;gap:12px;padding-top:15px;border-top:1px solid #D8CFDB}
.devices-new>.button{justify-self:start}
#device-code-box{margin:0;min-width:0}
#device-code{font-size:16px;user-select:all;word-break:break-all}
@media(max-width:520px){
  .topbar-right{gap:6px}.topbar-right>.button{padding:8px;min-height:36px;font-size:10px}
  .topbar-label{display:none}
  .topbar{justify-content:flex-end}
  .device-row{align-items:stretch;flex-direction:column}
  .device-revoke{align-self:start}
}

/* VINYL-AUTH02 – secure recovery UX with no persistent browser credentials. */
.recovery-admin{border-top:1px solid #D8D3DC;padding-top:17px;display:grid;gap:12px}
.recovery-admin>.button{justify-self:start;white-space:normal;text-align:center}
.recovery-admin .generated{margin:0}
#recovery-key-text{font:700 13px/1.6 ui-monospace,SFMono-Regular,monospace;user-select:all;word-break:break-all;overflow-wrap:anywhere}
#recovery-open{margin-top:16px;white-space:normal;align-self:flex-start;text-align:center}
#recovery-dialog .auth-form input,#account-dialog .auth-form input{
 width:100%;min-height:45px;border-radius:9px;border:1px solid #C9C4D0;
 padding:0 12px;background:#FFFFFFD9;color:#353348
}
#recovery-dialog .auth-form label,#account-dialog .auth-form label{font-size:12px;color:#48445C}
#recovery-dialog .auth-form{display:grid;gap:12px}
#recovery-dialog .devices-panel{min-width:0}
