/* NECROSOCIETY beat store (29 Oct 2026, b7): beats, open verses, features, beat packs, kits + the member studio.
   Built like a real beat store (track list, license picker, cart drawer) in the site's own look:
   Courier Prime, bone on black, thin rules, real objects (tapes, Polaroids, the MPC). No red, no glow, nothing tilted. */
@font-face{font-family:'Courier Prime';src:url(/assets/fonts/CourierPrime-Regular.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Courier Prime';src:url(/assets/fonts/CourierPrime-Bold.woff2) format('woff2');font-weight:700;font-style:normal;font-display:swap}
.nsb,.nsb-bar,.nsb-ov,.nsb-toast{--bone:#ece7df;--txt:#cfcac2;--dim:#948e84;--mute:#6f6a63;--rule:#262421;--rule2:#3a3631;--ink:#151311;--panel:#0f0e0d;--panel2:#141210;--hov:#131210;--paper:#efebe3;--ok:#8fae78;--bad:#d08b7a;
  --f:'Courier Prime','Courier New',Courier,monospace}
.nsb{max-width:1240px;margin:0 auto;padding:128px 20px 120px;color:var(--txt);font-family:var(--f)}
.nsb *,.nsb-bar *,.nsb-ov *{box-sizing:border-box}
:where(.nsb,.nsb-ov) a{color:inherit}
.nsb button,.nsb input,.nsb select,.nsb textarea,.nsb-ov button,.nsb-ov input,.nsb-bar button{font-family:var(--f)}
html body .nsb h1,html body .nsb h2,html body .nsb h3,html body .nsb-ov h2{font-family:var(--f)!important;text-shadow:none!important;animation:none!important;text-indent:0!important}
html body main.nsb{--color-glow:transparent;--color-blood-primary:#948e84;--color-blood-accent:#ece7df}
html body .nsb button:hover,html body .nsb a:hover,html body .nsb button:focus,html body .nsb input:focus,html body .nsb select:focus,html body .nsb textarea:focus,html body .nsb-ov button:hover,html body .nsb-ov a:hover{box-shadow:none!important;text-shadow:none!important}
.nsb :focus-visible,.nsb-ov :focus-visible,.nsb-bar :focus-visible{outline:1px dashed var(--dim);outline-offset:3px}
.nsb-ico{width:16px;height:16px;fill:var(--bone);flex:none}
html.nsb-lock,html.nsb-lock body{overflow:hidden}

/* ---------- store bar (every store page) ---------- */
.nsb-sbar{display:flex;align-items:center;gap:22px;margin:0 0 34px;padding:0 0 16px;border-bottom:1px solid var(--rule)}
.nsb-sbar .br{flex:none;color:var(--bone);text-decoration:none;font-weight:700;font-size:15px;letter-spacing:.05em}
.nsb-sbar .br small{color:var(--mute);font-weight:400;letter-spacing:.05em;margin-left:8px}
.nsb-sbar .mid{display:flex;gap:20px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}
.nsb-sbar .mid::-webkit-scrollbar{display:none}
.nsb-sbar .mid a{flex:none;color:var(--dim);text-decoration:none;font-size:14px;font-weight:700;letter-spacing:.05em;padding:4px 0}
.nsb-sbar .mid a:hover,.nsb-sbar .mid a.on{color:var(--bone)}
.nsb-sbar .rt{display:flex;align-items:center;gap:18px;flex:none}
.nsb-sbar .rt a{color:var(--dim);text-decoration:none;font-size:14px;font-weight:700;letter-spacing:.05em;white-space:nowrap}
.nsb-sbar .rt a:hover{color:var(--bone)}
.nsb-sbar .rt a.cart{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--rule2);color:var(--bone)}
.nsb-sbar .rt a.cart:hover{border-color:var(--dim)}
.nsb-sbar .rt a.cart .nsb-cart-count{min-width:18px;padding:2px 4px 1px;background:var(--bone);color:var(--ink);font-size:13px;text-align:center}

/* ---------- hero: search + the tape on the deck ---------- */
.nsb-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:0;margin:0 0 40px;border:1px solid var(--rule2);background:#0c0b0a;overflow:hidden;isolation:isolate}
.nsb-hero::before{content:'';position:absolute;inset:-80px;z-index:-2;background:var(--hbg,none) center/cover no-repeat;filter:blur(70px) saturate(1.15) brightness(.5);opacity:.85;transition:opacity .6s}
.nsb-hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,9,8,.94) 0%,rgba(10,9,8,.72) 48%,rgba(10,9,8,.35) 100%)}
.nsb-hero .hl{padding:56px 48px 48px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.nsb-kick{margin:0 0 14px;font-size:14px;font-weight:700;letter-spacing:.05em;color:var(--dim)}
html body .nsb-hero h1.nsb-title{margin:0 0 18px;font:700 54px/1 var(--f)!important;letter-spacing:.01em!important;color:var(--bone)!important;text-align:left}
.nsb-hero .nsb-sub{margin:0 0 26px;max-width:520px;font-size:17px;line-height:1.55;color:var(--dim)}
.nsb-sform{display:flex;align-items:stretch;max-width:600px;border:1px solid var(--rule2);background:#0a0909;transition:border-color .2s}
.nsb-sform:focus-within{border-color:var(--dim)}
.nsb-sform .si{display:flex;align-items:center;padding:0 0 0 16px}
.nsb-sform .si .nsb-ico{fill:none;stroke:var(--dim);color:var(--dim)}
.nsb-sform input{flex:1;min-width:0;padding:16px 14px;background:none;border:0;outline:none;color:var(--bone);font-size:17px}
.nsb-sform input::placeholder{color:var(--mute)}
.nsb-sform input::-webkit-search-cancel-button{filter:invert(.6)}
.nsb-sform button{flex:none;padding:0 22px;background:var(--bone);border:0;color:var(--ink);font-weight:700;font-size:14.5px;letter-spacing:.05em;cursor:pointer}
.nsb-sform button:hover{background:#fff}
.nsb-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:16px 0 0;min-height:30px}
.nsb-chips span{font-size:13px;font-weight:700;letter-spacing:.05em;color:var(--mute);margin-right:4px}
.nsb-chips button{padding:6px 10px 5px;background:none;border:1px solid var(--rule2);color:var(--txt);font-size:14px;cursor:pointer;transition:border-color .2s,color .2s}
.nsb-chips button:hover{border-color:var(--dim);color:var(--bone)}
.nsb-hero .hr{min-width:0}

/* ---------- objects (the shelf + the studio type picker) ---------- */
.ob{position:relative;display:flex;align-items:flex-end;justify-content:center;width:100%;height:150px;container-type:size}
.ob img{display:block;max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 14px 12px rgba(0,0,0,.85))}
.ob-beat img{width:86%}
.ob-kit img{width:82%}
.ob-open img{width:auto;height:100%}
.ob-feature .pf{display:block;height:94%;padding:4cqh 4cqh 15cqh;background:var(--paper,#efebe3);box-shadow:0 16px 18px -10px rgba(0,0,0,.9)}
.ob-feature .pf img{height:100%;width:auto;aspect-ratio:1;object-fit:cover;filter:none}
.ob-pack img{position:absolute;left:50%;bottom:0;width:74%;transform:translateX(-50%)}
.ob-pack img:nth-child(1){bottom:24%;filter:brightness(.35) drop-shadow(0 8px 8px rgba(0,0,0,.8))}
.ob-pack img:nth-child(2){bottom:12%;filter:brightness(.62) drop-shadow(0 8px 8px rgba(0,0,0,.8))}
.nsb-shelf{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 30px}
.nsb-obj{display:flex;flex-direction:column;align-items:center;min-width:0;padding:22px 8px 18px;background:none;border:1px solid transparent;color:var(--txt);text-align:center;cursor:pointer;transition:opacity .25s,border-color .25s,background-color .25s}
.nsb-obj .ob{height:118px;margin:0 0 18px;transition:transform .35s ease}
.nsb-obj:hover{background:var(--hov)}
.nsb-obj:hover .ob,.nsb-obj:focus-visible .ob{transform:translateY(-5px)}
.nsb-obj b{font-size:16px;letter-spacing:.05em;color:var(--bone)}
.nsb-obj small{margin-top:7px;font-size:14px;line-height:1.35;color:var(--dim)}
.nsb-obj em{margin-top:10px;font-style:normal;font-size:13px;font-weight:700;letter-spacing:.05em;color:var(--mute)}
.nsb-obj.on{border-color:var(--rule2);background:var(--panel)}
.nsb-obj.on em{color:var(--bone)}
.nsb-obj.dim{opacity:.42}
.nsb-obj.dim:hover{opacity:.9}

/* ---------- tools row ---------- */
.nsb-tools{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:0 0 30px;padding:14px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);flex-wrap:wrap}
.nsb-count{margin:0;font-size:14px;letter-spacing:.05em;color:var(--dim);min-height:1em}
.nsb-count b{color:var(--bone)}
.nsb-count button{margin-left:10px;padding:0;background:none;border:0;border-bottom:1px solid var(--rule2);color:var(--txt);font-size:13px;font-weight:700;letter-spacing:.05em;cursor:pointer}
.nsb-count button:hover{color:var(--bone);border-color:var(--dim)}
.nsb-tools .r{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.nsb-in,.nsb-sel,.nsb-ta{background:var(--panel);border:1px solid var(--rule2);color:var(--bone);font:16px/1.3 var(--f);padding:10px 12px;border-radius:0;outline:none;min-width:0}
.nsb-in:focus,.nsb-sel:focus,.nsb-ta:focus{border-color:var(--dim)}
.nsb-in::placeholder,.nsb-ta::placeholder{color:var(--mute)}
.nsb-sel{appearance:none;-webkit-appearance:none;padding-right:30px;background-image:linear-gradient(45deg,transparent 50%,var(--dim) 50%),linear-gradient(135deg,var(--dim) 50%,transparent 50%);background-position:calc(100% - 15px) 52%,calc(100% - 10px) 52%;background-size:5px 5px;background-repeat:no-repeat;cursor:pointer;font-size:14.5px;letter-spacing:.06em}
.nsb-sel option{background:#111;color:var(--bone)}
.nsb-ta{width:100%;min-height:96px;resize:vertical;line-height:1.5}
.nsb-view{display:flex;border:1px solid var(--rule2)}
.nsb-view button{padding:10px 13px;background:none;border:0;color:var(--dim);font-weight:700;font-size:13.5px;letter-spacing:.05em;cursor:pointer}
.nsb-view button+button{border-left:1px solid var(--rule2)}
.nsb-view button:hover{color:var(--bone)}
.nsb-view button.on{background:var(--bone);color:var(--ink)}

/* ---------- sections ---------- */
.nsb-sec{margin:0 0 64px}
.nsb-sec-h{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin:0 0 16px}
html body .nsb-sec-h h2{margin:0;font:700 19px/1.1 var(--f)!important;letter-spacing:.05em!important;color:var(--bone)!important}
html body .nsb-sec-h h2 .n{margin-left:12px;font-size:14px;font-weight:400;letter-spacing:.05em;color:var(--mute)}
.nsb-sec-h p{margin:6px 0 0;font-size:15px;color:var(--dim)}
.nsb-sec-h button,.nsb-sec-h a{flex:none;background:none;border:0;color:var(--dim);font-weight:700;font-size:13.5px;letter-spacing:.05em;cursor:pointer;text-decoration:none;padding:0 0 2px;border-bottom:1px solid var(--rule2)}
.nsb-sec-h button:hover,.nsb-sec-h a:hover{color:var(--bone);border-color:var(--dim)}

/* ---------- track list (BeatStars-style rows) ---------- */
.nsb-tl{--cols:26px 48px minmax(0,1.5fr) minmax(0,1.35fr) 50px 46px 50px minmax(0,.8fr) auto;border-top:1px solid var(--rule)}
.nsb-th{display:grid;grid-template-columns:var(--cols);gap:14px;padding:10px 10px;border-bottom:1px solid var(--rule);font-size:13px;font-weight:700;letter-spacing:.05em;color:var(--mute)}
.nsb-th span:first-child{text-align:right}
.nsb-trs{list-style:none;margin:0;padding:0}
.nsb-tr{display:grid;grid-template-columns:var(--cols);gap:14px;align-items:center;padding:9px 10px;border-bottom:1px solid #1b1917;cursor:pointer;transition:background-color .15s}
.nsb-tr:hover{background:var(--hov)}
.nsb-tr.playing{background:#171512}
.nsb-tr.nopv{cursor:default}
.nsb-tr .n{font-size:14px;color:var(--mute);text-align:right}
.nsb-tr.playing .n{color:var(--bone)}
.nsb-tr .cv{position:relative;width:48px;height:48px;padding:0;border:0;background:#1a1816;cursor:pointer;overflow:hidden}
.nsb-tr .cv[disabled]{cursor:default}
.nsb-tr .cv img{width:100%;height:100%;object-fit:cover;display:block}
.nsb-tr .cv .pbi{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(10,9,8,.5);opacity:0;transition:opacity .15s}
.nsb-tr .cv[disabled] .pbi{display:none}
.nsb-tr:hover .cv .pbi,.nsb-tr.playing .cv .pbi,.nsb-tr .cv:focus-visible .pbi{opacity:1}
.nsb-tr .t{min-width:0}
.nsb-tr .t .ti{display:block;color:var(--bone);font-weight:700;font-size:16.5px;letter-spacing:.03em;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nsb-tr .t .ti:hover{text-decoration:underline;text-underline-offset:3px}
.nsb-tr .t .by{display:flex;align-items:center;gap:8px;margin-top:3px;font-size:14.5px;color:var(--dim);white-space:nowrap;overflow:hidden}
.nsb-tr .t .by a{text-decoration:none;overflow:hidden;text-overflow:ellipsis}
.nsb-tr .t .by a:hover{color:var(--bone)}
.nsb-tr .t .mm{display:none;margin-top:3px;font-size:13px;letter-spacing:.05em;color:var(--mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nsb-tr .t .mm:empty{display:none!important}
.nsb-tr .wv{min-width:0}
.nsb-wave{display:block;width:100%;height:34px;cursor:pointer}
.nsb-tr .c{font-size:14.5px;color:var(--txt);white-space:nowrap}
.nsb-th .c{white-space:nowrap}
.nsb-tr .tm{color:var(--dim)}
.nsb-tr .tags{display:flex;gap:6px;min-width:0;overflow:hidden}
.nsb-tr .tags .tag,.nsb-tags .tag{flex:none;padding:3px 7px 2px;border:1px solid var(--rule2);color:var(--dim);font-size:13px;text-decoration:none;white-space:nowrap;transition:color .2s,border-color .2s}
.nsb-tr .tags .tag:hover,.nsb-tags .tag:hover{color:var(--bone);border-color:var(--dim)}
.nsb-tr .act{display:flex;gap:8px;align-items:center;justify-content:flex-end}
.nsb-tr .ic{width:36px;height:36px;display:flex;align-items:center;justify-content:center;padding:0;background:none;border:1px solid transparent;cursor:pointer;transition:border-color .2s}
.nsb-tr .ic .nsb-ico{fill:none;stroke:var(--dim);color:var(--dim)}
.nsb-tr .ic:hover{border-color:var(--rule2)}
.nsb-tr .ic:hover .nsb-ico{color:var(--bone)}
.chip{display:inline-block;flex:none;padding:3px 6px 2px;border:1px solid var(--rule2);font-size:13px;letter-spacing:.05em;color:var(--dim);font-weight:700;line-height:1.2}
.chip.solid{background:var(--bone);border-color:var(--bone);color:var(--ink)}
.chip.ok{border-color:#4d5e41;color:var(--ok)}

/* the price button = opens the license picker */
.nsb-buy-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:92px;padding:10px 13px;background:var(--bone);color:var(--ink);border:1px solid var(--bone);font-weight:700;font-size:15px;letter-spacing:.04em;white-space:nowrap;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}
.nsb-buy-btn .nsb-ico{fill:none;stroke:var(--ink);color:var(--ink);width:15px;height:15px}
.nsb-buy-btn .nsb-ico circle{fill:var(--ink);stroke:none}
.nsb-buy-btn:hover{background:#fff;border-color:#fff}
.nsb-buy-btn.free{background:none;color:var(--bone);border-color:var(--rule2);letter-spacing:.05em}
.nsb-buy-btn.free:hover{border-color:var(--dim)}
.nsb-buy-btn.in{background:none;color:var(--bone);border-color:var(--bone)}
.nsb-buy-btn.in .nsb-ico{stroke:var(--bone);color:var(--bone)}
.nsb-buy-btn.in .nsb-ico circle{fill:var(--bone)}
.nsb-buy-btn.sm{min-width:0;padding:8px 10px;font-size:14px}

/* ---------- tapes: beats, open verses, packs ---------- */
.nsb-tapes{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:52px 30px;padding-top:24px}
.nsb-tape{min-width:0}
.cas{position:relative;display:block;width:100%;aspect-ratio:3/2;padding:0;border:0;background:none;cursor:pointer;container-type:inline-size;transition:transform .3s ease}
a.cas,span.cas{cursor:default}
a.cas{cursor:pointer}
.nsb-tape .cas:hover{transform:translateY(-4px)}
.cas .sh{position:absolute;inset:0;width:100%;height:100%;display:block;filter:drop-shadow(0 16px 14px rgba(0,0,0,.8))}
.cas .sh.b1{transform:translateY(-8%);filter:brightness(.6)}
.cas .sh.b2{transform:translateY(-16%);filter:brightness(.32)}
.cas .lab{position:absolute;left:26%;right:13.5%;top:16.4%;font:700 3.7cqw/1.15 var(--f);letter-spacing:.03em;color:#1b1814;text-align:left;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cas .side{position:absolute;right:13.5%;top:27.5%;padding:.3cqw .9cqw .2cqw;border:1px solid #1b1814;font:700 2.3cqw/1 var(--f);letter-spacing:.05em;color:#1b1814;background:#eeebe4}
.cas .reel{position:absolute;top:45.5%;width:12.4%;aspect-ratio:1;transform:translate(-50%,-50%)}
.cas .reel.l{left:30.3%}
.cas .reel.r{left:68.7%}
.cas .reel svg{display:block;width:100%;height:100%}
.spin .cas .reel svg{animation:nsb-spin 2.4s linear infinite}
@keyframes nsb-spin{to{transform:rotate(-360deg)}}
.cas .pb{position:absolute;left:49.6%;top:45.5%;width:13cqw;height:13cqw;display:flex;align-items:center;justify-content:center;background:rgba(236,231,223,.94);transform:translate(-50%,-50%);opacity:0;transition:opacity .2s}
.cas .pb .nsb-ico{fill:var(--ink);width:42%;height:42%}
.cas:hover .pb,.cas:focus-visible .pb,.playing .cas .pb{opacity:1}
@media (hover:none){.cas .pb{opacity:.92}}
.nsb-tape .info,.nsb-pol .info,.nsb-cd .info{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;margin-top:18px}
.nsb-tape .tx,.nsb-pol .tx,.nsb-cd .tx{min-width:0}
.nsb-tape .ti,.nsb-pol .ti,.nsb-cd .ti{display:block;color:var(--bone);font-weight:700;font-size:16px;letter-spacing:.03em;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nsb-tape .ti:hover,.nsb-pol .ti:hover,.nsb-cd .ti:hover{text-decoration:underline;text-underline-offset:3px}
.nsb-tape .by,.nsb-pol .by,.nsb-cd .by{margin:4px 0 0;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--dim)}
.nsb-tape .by a,.nsb-pol .by a,.nsb-cd .by a{text-decoration:none}
.nsb-tape .by a:hover,.nsb-pol .by a:hover,.nsb-cd .by a:hover{color:var(--bone)}
.nsb-tape .mt,.nsb-pol .mt,.nsb-cd .mt{margin:6px 0 0;font-size:13px;letter-spacing:.05em;color:var(--mute)}
.nsb-tape.playing .ti,.nsb-pol.playing .ti,.nsb-cd.playing .ti{text-decoration:underline;text-underline-offset:3px}

/* ---------- features: Polaroids ---------- */
.nsb-pols{display:grid;grid-template-columns:repeat(auto-fill,minmax(212px,1fr));gap:48px 32px}
.nsb-pol{min-width:0}
.nsb-pol .frame{position:relative;padding:10px 10px 0;background:var(--paper);box-shadow:0 24px 30px -18px rgba(0,0,0,.95);transition:transform .3s ease}
.nsb-pol:hover .frame{transform:translateY(-4px)}
.nsb-pol .ph{display:block;aspect-ratio:1;overflow:hidden;background:#1a1816}
.nsb-pol .ph img{display:block;width:100%;height:100%;object-fit:cover}
.nsb-pol .cap{display:block;padding:13px 4px 15px;font:700 16px/1.2 var(--f);letter-spacing:.05em;color:#26221d;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nsb-pol .pb,.nsb-cd .pb{position:absolute;left:20px;bottom:58px;width:42px;height:42px;display:flex;align-items:center;justify-content:center;border:0;background:rgba(15,14,13,.86);cursor:pointer}
.nsb-pol .pbi,.nsb-cd .pbi{display:flex}

/* ---------- packs + kits: cover cards ---------- */
.nsb-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(212px,1fr));gap:44px 28px}
.nsb-cd{min-width:0}
.nsb-cd .art{position:relative;aspect-ratio:1;background:#1a1816;overflow:hidden;box-shadow:0 22px 34px -22px rgba(0,0,0,.95)}
.nsb-cd .art>a{display:block;width:100%;height:100%}
.nsb-cd .art img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.nsb-cd:hover .art img{transform:scale(1.03)}
.nsb-cd .badge{position:absolute;left:10px;top:10px;padding:5px 8px 4px;background:rgba(15,14,13,.86);color:var(--bone);font-size:13px;font-weight:700;letter-spacing:.05em}
.nsb-cd .pb{left:10px;bottom:10px}

/* ---------- producers ---------- */
.nsb-prs{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}
.nsb-pr{display:flex;flex-direction:column;align-items:center;gap:6px;padding:22px 10px 18px;border:1px solid var(--rule);text-decoration:none;text-align:center;transition:border-color .2s,background-color .2s}
.nsb-pr:hover{border-color:var(--rule2);background:var(--hov)}
.nsb-pr .av,.nsb-ph .av,.nsb-who .av{display:block;width:96px;height:96px;border-radius:50%;overflow:hidden;background:#1a1816;margin-bottom:8px;flex:none}
.nsb-pr .av img,.nsb-ph .av img,.nsb-who .av img{width:100%;height:100%;object-fit:cover;display:block}
.nsb-pr b{color:var(--bone);font-size:15.5px;letter-spacing:.05em;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nsb-pr small{font-size:13px;letter-spacing:.05em;color:var(--mute)}
.nsb-ph{display:flex;gap:30px;align-items:center;margin:0 0 30px;padding:30px;border:1px solid var(--rule);background:var(--panel)}
.nsb-ph .av{width:150px;height:150px;margin:0}
.nsb-ph .tx{min-width:0}
html body .nsb-ph h1{margin:4px 0 12px;font:700 38px/1.05 var(--f)!important;letter-spacing:.05em!important;color:var(--bone)!important;overflow-wrap:anywhere}
.nsb-ph .st{display:flex;gap:22px;margin:0 0 12px;font-size:13.5px;letter-spacing:.05em;color:var(--mute)}
.nsb-ph .st b{color:var(--bone);font-size:17px;margin-right:6px}
.nsb-ph .bio{margin:0 0 14px;max-width:640px;font-size:16px;line-height:1.6;color:var(--txt);white-space:pre-line}
.nsb-ph .ln{display:flex;flex-wrap:wrap;gap:8px;margin:0}

/* ---------- empty / loading ---------- */
.nsb-empty{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:34px 30px;border:1px dashed var(--rule2);color:var(--dim);font-size:16px;line-height:1.6}
.nsb-empty b{color:var(--bone);font-size:17px}
.nsb-empty .nsb-btn{margin-top:6px}
.nsb-empty a{color:var(--txt)}
.nsb-load{padding:40px 0;color:var(--dim);font-size:15px;letter-spacing:.05em}

/* ---------- buttons ---------- */
.nsb-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 18px;background:var(--bone);color:var(--ink);border:1px solid var(--bone);font:700 14.5px/1.15 var(--f);letter-spacing:.05em;text-decoration:none;cursor:pointer;border-radius:0;transition:background-color .2s,border-color .2s,color .2s}
.nsb-btn .nsb-ico{fill:none;stroke:currentColor;color:inherit;width:14px;height:14px}
.nsb-btn:hover{background:#fff;border-color:#fff;color:#000}
.nsb-btn.ghost{background:none;color:var(--txt);border-color:var(--rule2)}
.nsb-btn.ghost:hover{border-color:var(--dim);color:var(--bone)}
.nsb-btn.small{padding:8px 11px;font-size:13px}
.nsb-btn.wide{display:flex;width:100%;margin-top:10px}
.nsb-btn[disabled],.nsb-btn.off{background:#1a1816;border-color:var(--rule);color:var(--mute);cursor:not-allowed}
.nsb-btn.warn{background:none;color:#e2bfae;border-color:#5a3e35}
.nsb-btn.warn:hover{border-color:#a8483a;color:#f0d6c9}
.nsb-lnk{padding:0;background:none;border:0;border-bottom:1px solid var(--rule2);color:var(--txt);font:inherit;cursor:pointer}
.nsb-lnk:hover{color:var(--bone);border-color:var(--dim)}

/* ---------- item page ---------- */
.nsb-ip-top{position:relative;display:grid;grid-template-columns:320px minmax(0,1fr);gap:44px;align-items:center;padding:40px;border:1px solid var(--rule);overflow:hidden;isolation:isolate;background:var(--panel)}
.nsb-ip-top .bg{position:absolute;inset:-60px;z-index:-1;background-size:cover;background-position:center;filter:blur(50px) saturate(.5) brightness(.32);opacity:.9}
.nsb-ip-top .art{position:relative;aspect-ratio:1;background:#1a1816;box-shadow:0 30px 46px -26px rgba(0,0,0,.95)}
.nsb-ip-top .art img{width:100%;height:100%;object-fit:cover;display:block}
.nsb-ip-top .art.pol{padding:14px 14px 0;background:var(--paper);aspect-ratio:auto}
.nsb-ip-top .art.pol .ph{aspect-ratio:1;overflow:hidden;background:#1a1816}
.nsb-ip-top .art.pol .cap{display:block;padding:16px 4px 20px;font:700 17px/1.2 var(--f);letter-spacing:.05em;color:#26221d;text-align:center}
.nsb-ip-top .hd{min-width:0}
.nsb-kicker{margin:0 0 12px;font-size:13.5px;letter-spacing:.05em;color:var(--dim);font-weight:700}
.nsb-kicker a{color:var(--dim);text-decoration:none;border-bottom:1px solid var(--rule2)}
.nsb-kicker a:hover{color:var(--bone)}
html body .nsb-ip h1{margin:0 0 14px;font:700 40px/1.06 var(--f)!important;letter-spacing:.05em!important;color:var(--bone)!important;overflow-wrap:anywhere}
.nsb-ip .prod{display:inline-flex;align-items:center;gap:10px;margin:0 0 24px;color:var(--txt);text-decoration:none;font-size:16px;font-weight:700;letter-spacing:.05em}
.nsb-ip .prod img{width:30px;height:30px;border-radius:50%;object-fit:cover}
.nsb-ip .prod:hover{color:var(--bone)}
.nsb-play{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:16px;align-items:center;margin:0 0 22px;padding:12px;background:rgba(10,9,8,.55);border:1px solid var(--rule2)}
.nsb-play .big{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:var(--bone);border:0;cursor:pointer}
.nsb-play .big .nsb-ico{fill:var(--ink);width:20px;height:20px}
.nsb-play .pbi{display:flex}
.nsb-play .nsb-wave{height:52px}
.nsb-play .tm{font-size:14px;color:var(--dim);white-space:nowrap}
.nsb-play .pvl{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:4px 10px;margin:-4px 0 0;font-size:12px;line-height:1.4;letter-spacing:.04em;color:var(--dim)}
.nsb-play .pvl b{color:var(--bone);letter-spacing:.08em}
.nsb-stat{display:flex;flex-wrap:wrap;gap:0;margin:0 0 18px;border:1px solid var(--rule2);background:rgba(10,9,8,.4)}
.nsb-stat span{display:flex;flex-direction:column;gap:5px;padding:11px 16px;border-right:1px solid var(--rule2);font-size:13px;letter-spacing:.05em;color:var(--mute);font-weight:700}
.nsb-stat span:last-child{border-right:0}
.nsb-stat b{color:var(--bone);font-size:16px;letter-spacing:.06em}
.nsb-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.nsb-ip .row{display:flex;gap:8px}
.nsb-ip-body{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:40px;align-items:start;margin-top:40px}
.nsb-ip-body .main{min-width:0}
.nsb-h2{margin:0 0 16px!important;font:700 16px/1.2 var(--f)!important;letter-spacing:.05em!important;color:var(--bone)!important}
.nsb-desc{margin:0 0 30px;font-size:16.5px;line-height:1.7;color:var(--txt);white-space:pre-line;overflow-wrap:anywhere}
.nsb-side{position:sticky;top:110px}
.nsb-side .pk{margin:6px 0 0;color:var(--bone);font-size:16px;font-weight:700;letter-spacing:.06em;line-height:1.4}
.nsb-trust{list-style:none;margin:18px 0 0;padding:16px 0 0;border-top:1px solid var(--rule);display:grid;gap:10px}
.nsb-trust li{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;line-height:1.45;color:var(--dim)}
.nsb-trust .nsb-ico{fill:none;stroke:var(--txt);color:var(--txt);margin-top:1px}
.nsb-trust.row{grid-template-columns:repeat(3,minmax(0,1fr));border-top:0;padding:0;margin-top:22px}
.nsb-more{margin-top:70px}
.nsb-note{margin:0 0 6px;font-size:14.5px;line-height:1.55;color:var(--mute)}
.nsb-note a{color:var(--txt)}
.nsb-h3{margin:0 0 12px;font-size:14px!important;letter-spacing:.05em;color:var(--dim)!important;font-weight:700}

/* ---------- license cards ---------- */
.nsb-lics{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin:0 0 30px}
.nsb-lic{position:relative;display:flex;flex-direction:column;padding:18px 18px 20px;border:1px solid var(--rule2);background:var(--panel);cursor:pointer;transition:border-color .2s,background-color .2s}
.nsb-lic input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.nsb-lic:hover{border-color:var(--dim)}
.nsb-lic.on{border-color:var(--bone);background:#17150f}
.nsb-lic.on::after{content:'';position:absolute;right:12px;top:12px;width:9px;height:9px;border-radius:50%;background:var(--bone)}
.nsb-lic:not(.on)::after{content:'';position:absolute;right:11px;top:11px;width:9px;height:9px;border-radius:50%;border:1px solid var(--rule2)}
.nsb-lic:focus-within{outline:1px dashed var(--dim);outline-offset:3px}
.nsb-lic .hd{display:flex;flex-direction:column;gap:8px;padding-right:20px}
.nsb-lic .n{font-weight:700;font-size:14.5px;letter-spacing:.05em;color:var(--dim)}
.nsb-lic.on .n{color:var(--bone)}
.nsb-lic .p{font-weight:700;font-size:26px;color:var(--bone);white-space:nowrap;letter-spacing:.02em}
.nsb-lic .f{display:block;margin-top:8px;padding-bottom:12px;border-bottom:1px solid var(--rule);font-size:14px;color:var(--txt)}
.nsb-lic ul{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:7px}
.nsb-lic li{display:flex;gap:8px;align-items:flex-start;font-size:14px;line-height:1.45;color:var(--dim)}
.nsb-lic li .nsb-ico{width:12px;height:12px;margin-top:2px;fill:none;stroke:var(--dim);color:var(--dim)}
.nsb-lic.on li .nsb-ico{stroke:var(--bone)}
.nsb-lic.gone{opacity:.45;cursor:not-allowed}

/* ---------- overlays: cart drawer, login drawer, license picker ---------- */
.nsb-ov{position:fixed;inset:0;z-index:99990;font-family:var(--f);color:var(--txt)}
.nsb-ov-bg{position:absolute;inset:0;background:rgba(5,4,4,.72);opacity:0;transition:opacity .22s ease}
.nsb-ov.on .nsb-ov-bg{opacity:1}
.nsb-ov-p{position:absolute;background:#0e0d0c;border:1px solid var(--rule2);box-shadow:0 30px 80px rgba(0,0,0,.7);display:flex;flex-direction:column;transition:transform .24s ease,opacity .24s ease;opacity:0}
.nsb-ov.on .nsb-ov-p{opacity:1}
.nsb-ov-c{padding:34px 30px 30px;overflow-y:auto;overscroll-behavior:contain;flex:1}
.nsb-ov-x{position:absolute;right:12px;top:12px;z-index:2;width:38px;height:38px;display:flex;align-items:center;justify-content:center;padding:0;background:none;border:1px solid transparent;cursor:pointer}
.nsb-ov-x .nsb-ico{fill:none;stroke:var(--dim);color:var(--dim)}
.nsb-ov-x:hover{border-color:var(--rule2)}
.nsb-ov-x:hover .nsb-ico{color:var(--bone)}
.nsb-drawer .nsb-ov-p{top:0;right:0;bottom:0;width:min(440px,100%);border-width:0 0 0 1px;transform:translateX(30px)}
.nsb-drawer.on .nsb-ov-p{transform:none}
.nsb-modal .nsb-ov-p{left:50%;top:50%;width:min(820px,calc(100% - 40px));max-height:calc(100% - 60px);transform:translate(-50%,-47%)}
.nsb-modal.on .nsb-ov-p{transform:translate(-50%,-50%)}
.nsb-ov-k{margin:0 0 8px;font-size:13px;font-weight:700;letter-spacing:.05em;color:var(--mute)}
html body .nsb-ov-t{margin:0 0 18px;font:700 22px/1.15 var(--f)!important;letter-spacing:.05em!important;color:var(--bone)!important;overflow-wrap:anywhere}
.nsb-ov-h{margin:22px 0 12px;font-size:13.5px;font-weight:700;letter-spacing:.05em;color:var(--dim)}
.nsb-ov-note{margin:14px 0 0;font-size:14.5px;line-height:1.6;color:var(--dim)}
.nsb-ov-note b{color:var(--txt)}
.nsb-ov-note.c{text-align:center}
.nsb-ov-note a{color:var(--txt)}
.nsb-mh{display:flex;gap:16px;align-items:center;padding-right:40px}
.nsb-mh img{width:72px;height:72px;object-fit:cover;flex:none;background:#1a1816}
.nsb-mh .nsb-ov-t{margin:0 0 4px}
.nsb-mh .sub{margin:0;font-size:15px;color:var(--dim)}
.nsb-modal .nsb-lics{margin:0}
.nsb-modal .nsb-lics.many{grid-template-columns:repeat(3,minmax(0,1fr))}
.nsb-mf{position:sticky;bottom:-30px;display:flex;gap:10px;align-items:center;margin:22px -30px -30px;padding:16px 30px;background:#0e0d0c;border-top:1px solid var(--rule2)}
.nsb-mf .tot{flex:1;display:flex;flex-direction:column;gap:2px;font-size:13px;font-weight:700;letter-spacing:.05em;color:var(--mute)}
.nsb-mf .tot b{color:var(--bone);font-size:22px;letter-spacing:.02em}
.nsb-cl{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule)}
.nsb-cl li{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--rule)}
.nsb-cl img{width:56px;height:56px;object-fit:cover;display:block;background:#1a1816}
.nsb-cl .ti{display:block;color:var(--bone);font-weight:700;font-size:16px;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nsb-cl .sub{display:block;margin-top:4px;font-size:14px;color:var(--dim)}
.nsb-cl .r{text-align:right}
.nsb-cl .r b{display:block;color:var(--bone);font-size:16px}
.nsb-cl .r button{margin-top:6px;padding:0;background:none;border:0;color:var(--mute);font-size:13px;font-weight:700;letter-spacing:.05em;cursor:pointer}
.nsb-cl .r button:hover{color:var(--bone)}
.nsb-steps{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:12px}
.nsb-steps li{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.5;color:var(--dim)}
.nsb-steps b{flex:none;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:1px solid var(--rule2);color:var(--bone);font-size:14px}
.nsb-okmsg{display:flex;gap:10px;align-items:flex-start;margin:16px 0 0;padding:12px 14px;border:1px solid #4d5e41;color:var(--bone);font-size:15px;line-height:1.5}
.nsb-okmsg .nsb-ico{fill:none;stroke:var(--ok);color:var(--ok);margin-top:1px}

/* ---------- player bar ---------- */
.nsb-bar{position:fixed;left:0;right:0;bottom:0;z-index:950;display:none;background:rgba(12,11,10,.98);border-top:1px solid var(--rule2);font-family:var(--f);color:var(--txt)}
.nsb-bar.on{display:block}
.nsb-bar .in{max-width:1240px;margin:0 auto;padding:10px 20px;display:grid;grid-template-columns:48px minmax(0,220px) auto minmax(0,1fr) 130px auto;gap:18px;align-items:center}
.nsb-bar .cv img{width:48px;height:48px;object-fit:cover;display:block;background:#1a1816}
.nsb-bar .t{min-width:0}
.nsb-bar .t a{display:block;color:var(--bone);font-weight:700;font-size:15.5px;letter-spacing:.04em;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nsb-bar .t a:hover{text-decoration:underline;text-underline-offset:3px}
.nsb-bar .t span{display:block;margin-top:3px;font-size:13.5px;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nsb-bar .c{display:flex;gap:6px;align-items:center}
.nsb-bar .c button{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:none;border:1px solid var(--rule2);cursor:pointer;padding:0}
.nsb-bar .c button.pp{width:42px;height:42px;background:var(--bone);border-color:var(--bone)}
.nsb-bar .c button.pp .nsb-ico{fill:var(--ink)}
.nsb-bar .c button:hover{border-color:var(--dim)}
.nsb-bar .c .nsb-ico{width:14px;height:14px}
.nsb-bar .w{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;font-size:13px;color:var(--mute)}
.nsb-bar .w canvas{width:100%;height:36px;display:block;cursor:pointer}
.nsb-bar .vol{display:flex;align-items:center;gap:8px}
.nsb-bar .vol .nsb-ico{fill:var(--dim);color:var(--dim);stroke:none}
.nsb-bar .vol .nsb-ico path+path{fill:none;stroke:var(--dim)}
.nsb-bar .vol input{width:100%;accent-color:#ece7df;cursor:pointer}
body.nsb-bar-on{padding-bottom:70px}
body.nsb-bar-on .site-footer{padding-bottom:84px}

/* ---------- toast ---------- */
.nsb-toast{position:fixed;left:50%;bottom:96px;transform:translateX(-50%);z-index:99995;display:flex;gap:16px;align-items:center;justify-content:space-between;max-width:520px;width:calc(100% - 32px);padding:14px 16px 14px 18px;background:#151311;border:1px solid var(--rule2);border-left:3px solid var(--dim);color:var(--bone);font:700 15px/1.45 var(--f);letter-spacing:.02em;box-shadow:0 8px 32px rgba(0,0,0,.6)}
.nsb-toast.err{border-left-color:#a8483a}
.nsb-toast.ok{border-left-color:var(--ok)}
.nsb-toast button{flex:none;padding:8px 11px;background:var(--bone);border:0;color:var(--ink);font:700 13px/1 var(--f);letter-spacing:.05em;cursor:pointer}

/* ---------- page heads (cart, order, purchases) ---------- */
.nsb-head{margin:0 0 30px}
html body .nsb-title{margin:0 0 10px;font:700 36px/1.1 var(--f)!important;letter-spacing:.05em!important;color:var(--bone)!important;text-align:left}
.nsb-sub{margin:0;max-width:680px;font-size:16.5px;line-height:1.55;color:var(--dim)}

/* ---------- checkout, order, purchases ---------- */
.nsb-two{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:44px;align-items:start}
.nsb-lines{border-top:1px solid var(--rule)}
.nsb-line{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:16px;align-items:start;padding:18px 0;border-bottom:1px solid var(--rule)}
.nsb-line img{width:64px;height:64px;object-fit:cover;background:#1a1816;display:block}
.nsb-line .ti{display:block;color:var(--bone);font-weight:700;font-size:17px;letter-spacing:.03em;text-decoration:none}
.nsb-line .sub{display:block;margin-top:4px;font-size:14.5px;color:var(--dim)}
.nsb-line .pr{font-weight:700;color:var(--bone);font-size:18px;text-align:right;white-space:nowrap}
.nsb-line .rm{display:block;margin:8px 0 0 auto;background:none;border:0;color:var(--mute);font-weight:700;font-size:13px;letter-spacing:.05em;cursor:pointer;padding:0}
.nsb-line .rm:hover{color:var(--bone)}
.nsb-brief{grid-column:2/4;display:grid;gap:8px;margin-top:4px}
.nsb-brief label{font-size:13px;letter-spacing:.05em;color:var(--dim);font-weight:700}
.nsb-panel{padding:24px;border:1px solid var(--rule);background:var(--panel)}
.nsb-panel h2{margin:0 0 16px;font-size:15px!important;letter-spacing:.05em!important;color:var(--bone)!important}
.nsb-co{position:sticky;top:110px}
.nsb-co #nsb-paypal{min-height:50px}
.nsb-fld{display:grid;gap:7px;margin:0 0 15px;min-width:0}
.nsb-fld label{font-size:13px;letter-spacing:.05em;color:var(--dim);font-weight:700}
.nsb-fld .h{font-size:13.5px;color:var(--mute);line-height:1.45}
.nsb-fld .nsb-in{width:100%}
.nsb-sum{display:flex;justify-content:space-between;align-items:baseline;margin:18px 0 14px;padding:16px 0 0;border-top:1px solid var(--rule);font-weight:700;color:var(--bone);font-size:17px;letter-spacing:.06em}
.nsb-sum span:first-child{font-size:14px;letter-spacing:.05em;color:var(--dim)}
.nsb-files{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.nsb-wait{margin-top:10px;font-size:14.5px;color:var(--dim);line-height:1.55}
.nsb-thanks{display:flex;gap:16px;align-items:flex-start;margin:0 0 26px;padding:20px 22px;border:1px solid #4d5e41;background:#0f110d}
.nsb-thanks>.nsb-ico{width:22px;height:22px;fill:none;stroke:var(--ok);color:var(--ok)}
.nsb-thanks b{display:block;color:var(--bone);font-size:18px;margin-bottom:6px}
.nsb-thanks span{font-size:15px;line-height:1.6;color:var(--dim)}
.nsb-ask{display:grid;grid-template-columns:minmax(0,480px) minmax(0,1fr);gap:44px;align-items:start}
.nsb-ask .nsb-steps{margin-top:6px}
.nsb-orders{border-top:1px solid var(--rule)}
.nsb-order{padding:20px 0;border-bottom:1px solid var(--rule)}
.nsb-order .oh{display:flex;justify-content:space-between;gap:16px;font-size:14px;letter-spacing:.05em;color:var(--dim)}
.nsb-order .oh b{color:var(--bone)}
.nsb-order .oh .pr{color:var(--bone);font-weight:700;font-size:17px}
.nsb-order .nsb-mini:last-of-type{border-bottom:0}
.nsb-order .nsb-btn{margin-top:8px}
.nsb-err{margin:16px 0 0;padding:12px 14px;border:1px solid #5a3e35;color:#f0d6c9;font-size:15px;line-height:1.5;display:none}
.nsb-err.on{display:block}
.nsb-mini{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--rule)}
.nsb-mini img{width:48px;height:48px;object-fit:cover;background:#1a1816;display:block}
.nsb-mini .ti{color:var(--bone);font-weight:700;font-size:15.5px;letter-spacing:.04em}
.nsb-mini .sub{display:block;margin-top:4px;font-size:14px;color:var(--dim)}
.nsb-mini .acts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.nsb-foot{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 24px;margin:80px 0 0;padding:24px 0 0;border-top:1px solid var(--rule);font-size:14px;letter-spacing:.05em}
.nsb-foot a{color:var(--dim);text-decoration:none}
.nsb-foot a:hover{color:var(--bone)}

/* ---------- member studio: dashboard ---------- */
.nsb-dash{display:grid;grid-template-columns:240px minmax(0,1fr);gap:0;border:1px solid var(--rule);min-height:640px}
.nsb-dnav{display:flex;flex-direction:column;padding:24px 0;border-right:1px solid var(--rule);background:var(--panel)}
.nsb-who{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:0 22px 22px;margin:0 0 12px;border-bottom:1px solid var(--rule)}
.nsb-who .av{width:58px;height:58px;margin:0 0 10px}
.nsb-who b{color:var(--bone);font-size:17px;letter-spacing:.05em;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.nsb-who small{font-size:14px;color:var(--dim);max-width:100%;overflow:hidden;text-overflow:ellipsis}
.nsb-who .chip{margin-top:8px}
.nsb-dnav .tabs{display:flex;flex-direction:column}
.nsb-dnav .tabs button{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 22px;background:none;border:0;border-left:2px solid transparent;color:var(--dim);font-weight:700;font-size:14.5px;letter-spacing:.05em;text-align:left;cursor:pointer;transition:color .2s,background-color .2s}
.nsb-dnav .tabs button:hover{color:var(--bone);background:var(--hov)}
.nsb-dnav .tabs button.on{color:var(--bone);border-left-color:var(--bone);background:#151311}
.nsb-dnav .tabs button em{font-style:normal;min-width:20px;padding:2px 5px 1px;background:var(--bone);color:var(--ink);font-size:13px;text-align:center}
.nsb-dnav .tabs button.new{margin:4px 22px 8px;justify-content:center;border:1px solid var(--bone);background:var(--bone);color:var(--ink)}
.nsb-dnav .tabs button.new:hover{background:#fff;color:#000}
.nsb-dnav .lo{display:flex;flex-direction:column;gap:12px;margin-top:auto;padding:20px 22px 0;border-top:1px solid var(--rule);font-size:13.5px;letter-spacing:.05em;font-weight:700}
.nsb-dnav .lo a{color:var(--mute);text-decoration:none}
.nsb-dnav .lo a:hover{color:var(--bone)}
.nsb-dmain{min-width:0;padding:30px 34px 40px}
.nsb-dh{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin:0 0 26px}
html body .nsb-dh h1{margin:0;font:700 26px/1.1 var(--f)!important;letter-spacing:.05em!important;color:var(--bone)!important}
.nsb-dh p{margin:6px 0 0;font-size:15px;color:var(--dim)}
.nsb-dh .acts{display:flex;gap:8px;flex-wrap:wrap}
.nsb-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 26px}
.nsb-kpis div{padding:18px 18px 16px;border:1px solid var(--rule);background:var(--panel)}
.nsb-kpis b{display:block;font-size:24px;color:var(--bone);letter-spacing:.02em}
.nsb-kpis span{display:block;margin-top:8px;font-size:13px;font-weight:700;letter-spacing:.05em;color:var(--mute)}
.nsb-kpis small{display:block;margin-top:4px;font-size:13.5px;color:var(--dim)}
.nsb-alert{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin:0 0 26px;padding:16px 18px;border:1px solid var(--bone);background:#17150f;color:var(--bone);font-size:15.5px;line-height:1.5}
.nsb-alert.soft{border-color:var(--rule2);background:var(--panel);color:var(--txt)}
.nsb-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.nsb-box{padding:20px 20px 10px;border:1px solid var(--rule)}
.nsb-box .nsb-h3{display:flex;justify-content:space-between;gap:10px}
.nsb-box .nsb-h3 button{padding:0;background:none;border:0;color:var(--dim);font:700 13px/1 var(--f);letter-spacing:.05em;cursor:pointer}
.nsb-box .nsb-h3 button:hover{color:var(--bone)}
.nsb-box .nsb-mini:last-child{border-bottom:0}
.nsb-box .nsb-empty{margin:4px 0 12px;padding:20px}
.nsb-box .pr{color:var(--bone);font-weight:700;font-size:15.5px;white-space:nowrap;text-align:right}
.nsb-box .pr small{display:block;margin-top:3px;font-weight:400;color:var(--mute);font-size:13px}
/* item table */
.nsb-itl{border-top:1px solid var(--rule)}
.nsb-itl .hr2,.nsb-itr{display:grid;grid-template-columns:56px minmax(0,1.6fr) 100px minmax(0,1fr) 60px 60px auto;gap:14px;align-items:center;padding:12px 4px;border-bottom:1px solid var(--rule)}
.nsb-itl .hr2{padding:9px 4px;font-size:13px;font-weight:700;letter-spacing:.05em;color:var(--mute)}
.nsb-itr:hover{background:var(--hov)}
.nsb-itr img{width:56px;height:56px;object-fit:cover;display:block;background:#1a1816}
.nsb-itr .ti{display:block;color:var(--bone);font-weight:700;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nsb-itr .sub{display:block;margin-top:4px;font-size:13.5px;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nsb-itr .pz{font-size:14px;color:var(--txt);line-height:1.5}
.nsb-itr .num{font-size:15px;color:var(--bone);text-align:right}
.nsb-itr .acts{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}
.nsb-itf{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}
.nsb-itf button{padding:7px 11px 6px;background:none;border:1px solid var(--rule2);color:var(--dim);font:700 13px/1 var(--f);letter-spacing:.05em;cursor:pointer}
.nsb-itf button:hover{color:var(--bone)}
.nsb-itf button.on{background:var(--bone);border-color:var(--bone);color:var(--ink)}
/* editor */
.nsb-edit{display:grid;gap:18px;max-width:940px}
.nsb-sect{margin:0;padding:22px 24px 10px;border:1px solid var(--rule);background:var(--panel);min-width:0}
.nsb-sect legend{float:left;width:100%;display:flex;align-items:center;gap:12px;margin:0 0 18px;padding:0;font-size:14.5px;font-weight:700;letter-spacing:.05em;color:var(--bone)}
.nsb-sect legend .sn{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border:1px solid var(--rule2);font-size:14px;letter-spacing:0;color:var(--dim)}
.nsb-sect legend small{margin-left:auto;font-size:13px;font-weight:400;letter-spacing:.04em;color:var(--mute)}
.nsb-sect>.nsb-form{clear:both}
.nsb-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 22px}
.nsb-form .full{grid-column:1/-1}
.nsb-up{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:14px;border:1px dashed var(--rule2);background:#0b0a09}
.nsb-up .nm{font-size:14.5px;color:var(--txt);overflow-wrap:anywhere}
.nsb-up .nm small{display:block;color:var(--mute);margin-top:3px}
.nsb-up input[type=file]{display:none}
.nsb-up .bar{grid-column:1/-1;height:3px;background:var(--rule);display:none}
.nsb-up .bar i{display:block;height:100%;width:0;background:var(--bone);transition:width .2s}
.nsb-up.busy .bar{display:block}
.nsb-up img.cvp{width:72px;height:72px;object-fit:cover;display:block;margin-bottom:8px}
.nsb-tiers{display:grid;gap:0;border-top:1px solid var(--rule)}
.nsb-tier{display:grid;grid-template-columns:minmax(0,1fr) 140px;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--rule)}
.nsb-tier .n{font-weight:700;color:var(--bone);font-size:15px;letter-spacing:.06em}
.nsb-tier .n small{display:block;font-weight:400;color:var(--mute);margin-top:3px;letter-spacing:.02em}
.nsb-money{display:flex;align-items:center;border:1px solid var(--rule2);background:#0b0a09}
.nsb-money:focus-within{border-color:var(--dim)}
.nsb-money span{padding:0 0 0 10px;color:var(--dim);font-size:16px}
.nsb-money input{border:0!important;background:none!important;width:100%;padding:10px 10px 10px 4px}
.nsb-chk{display:flex;gap:10px;align-items:center;font-size:15px;color:var(--txt);cursor:pointer;margin:6px 0}
.nsb-chk input{accent-color:#ece7df;width:15px;height:15px}
.nsb-actions{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 0}
.nsb-actions.stick{position:sticky;bottom:0;z-index:5;margin:0;padding:16px 0;background:linear-gradient(180deg,rgba(10,10,10,0),#0a0a0a 30%)}
body.nsb-bar-on .nsb-actions.stick{bottom:70px}
.nsb-types{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 4px}
.nsb-types button{display:flex;flex-direction:column;align-items:center;gap:12px;min-width:0;padding:18px 6px 14px;background:#0b0a09;border:1px solid var(--rule2);color:var(--dim);font:700 13.5px/1.2 var(--f);letter-spacing:.05em;cursor:pointer;transition:border-color .2s,color .2s}
.nsb-types button .ob{height:66px}
.nsb-types button .ob img{filter:drop-shadow(0 6px 6px rgba(0,0,0,.8))}
.nsb-types button:hover{border-color:var(--dim);color:var(--bone)}
.nsb-types button.on{border-color:var(--bone);color:var(--bone);background:#17150f}
.nsb-tbl{width:100%;border-collapse:collapse;font-size:14.5px}
.nsb-tbl th{text-align:left;font-size:13px;letter-spacing:.05em;color:var(--mute);font-weight:700;padding:8px 10px 8px 0;border-bottom:1px solid var(--rule2);white-space:nowrap}
.nsb-tbl td{padding:10px 10px 10px 0;border-bottom:1px solid var(--rule);vertical-align:top;color:var(--txt)}
.nsb-tbl td b{color:var(--bone)}
.nsb-tbl .num{text-align:right;white-space:nowrap}
.nsb-scroll{overflow-x:auto}
.nsb-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 26px}
.nsb-stats div{padding:18px;border:1px solid var(--rule);background:var(--panel)}
.nsb-stats b{display:block;font-size:22px;color:var(--bone);letter-spacing:.02em}
.nsb-stats span{display:block;margin-top:8px;font-size:13px;letter-spacing:.05em;color:var(--mute);font-weight:700}
.nsb-block{margin:0 0 44px}

/* ---------- tablet ---------- */
@media (max-width:1100px){
  .nsb-tl{--cols:26px 48px minmax(0,1.5fr) minmax(0,1.2fr) 50px 46px 50px auto}
  .nsb-tl .tags,.nsb-th span:nth-child(8){display:none}
  .nsb-bar .in{grid-template-columns:48px minmax(0,200px) auto minmax(0,1fr) auto}
  .nsb-bar .vol{display:none}
  .nsb-ip-body{grid-template-columns:minmax(0,1fr) 310px;gap:30px}
  .nsb-dash{grid-template-columns:210px minmax(0,1fr)}
  .nsb-dmain{padding:26px 24px 34px}
  .nsb-itl .hr2,.nsb-itr{grid-template-columns:56px minmax(0,1.6fr) 90px minmax(0,1fr) auto}
  .nsb-itl .hr2 span:nth-child(5),.nsb-itl .hr2 span:nth-child(6),.nsb-itr .num{display:none}
}
@media (max-width:900px){
  .nsb{padding-top:120px}
  .nsb-hero{grid-template-columns:1fr}
  .nsb-hero .hl{padding:34px 26px 30px}
  .nsb-shelf{gap:6px}
  .nsb-obj small{display:none}
  .nsb-obj .ob{height:96px}
  .nsb-tl{--cols:48px minmax(0,1fr) auto}
  .nsb-th{display:none}
  .nsb-tr{padding:10px 4px}
  .nsb-tr .n,.nsb-tr .wv,.nsb-tr>.c{display:none}
  .nsb-tr .t .mm{display:block}
  .nsb-ip-top{grid-template-columns:240px minmax(0,1fr);gap:28px;padding:28px}
  .nsb-ip-body{grid-template-columns:1fr}
  .nsb-side{position:static}
  .nsb-two{grid-template-columns:minmax(0,1fr);gap:30px}
  .nsb-co{position:static}
  .nsb-ask{grid-template-columns:minmax(0,1fr);gap:26px}
  .nsb-bar .in{grid-template-columns:44px minmax(0,1fr) auto auto;gap:12px;padding:8px 14px}
  .nsb-bar .cv img{width:44px;height:44px}
  .nsb-bar .w{grid-column:1/-1;grid-row:2;grid-template-columns:auto minmax(0,1fr) auto}
  .nsb-bar .w canvas{height:22px}
  .nsb-bar .c .pv,.nsb-bar .c .nx{display:none}
  .nsb-bar [data-bar-buy]{min-width:0;padding:9px 10px}
  body.nsb-bar-on{padding-bottom:98px}
  body.nsb-bar-on .nsb-actions.stick{bottom:98px}
  .nsb-modal .nsb-lics.many{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nsb-dash{grid-template-columns:minmax(0,1fr);border:0;min-height:0}
  .nsb-dnav{flex-direction:row;flex-wrap:wrap;align-items:center;padding:0;border:1px solid var(--rule)}
  .nsb-who{flex-direction:row;align-items:center;gap:12px;width:100%;padding:16px;margin:0;flex-wrap:wrap}
  .nsb-who .av{width:44px;height:44px;margin:0}
  .nsb-who .chip{margin:0 0 0 auto}
  .nsb-dnav{min-width:0}
  .nsb-dnav .tabs{flex-direction:row;width:100%;min-width:0;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}
  .nsb-dnav .tabs::-webkit-scrollbar{display:none}
  .nsb-dnav .tabs button{flex:none;padding:14px 16px;border-left:0;border-bottom:2px solid transparent}
  .nsb-dnav .tabs button.on{border-bottom-color:var(--bone)}
  .nsb-dnav .tabs button.new{margin:8px 10px;padding:8px 12px}
  .nsb-dnav .lo{flex-direction:row;width:100%;padding:12px 16px;margin:0}
  .nsb-dmain{padding:24px 0 30px}
  .nsb-kpis,.nsb-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nsb-cols{grid-template-columns:1fr}
  .nsb-itl .hr2{display:none}
  .nsb-itr{grid-template-columns:56px minmax(0,1fr) auto;row-gap:8px}
  .nsb-itr .pz{grid-column:2/-1;grid-row:2}
  .nsb-itr .acts{grid-column:1/-1;justify-content:flex-start}
  .nsb-form{grid-template-columns:1fr}
}
/* ---------- phone ---------- */
@media (max-width:640px){
  html body main.nsb{padding:112px 14px 110px}
  .nsb-sbar{flex-wrap:wrap;gap:12px 14px;margin-bottom:22px;padding-bottom:12px}
  .nsb-sbar .br small{display:none}
  .nsb-sbar .rt{margin-left:auto;gap:14px}
  .nsb-sbar .rt a.pur{display:none}
  .nsb-sbar .mid{order:3;flex:1 1 100%;gap:18px}
  .nsb-hero .hl{padding:26px 18px 24px}
  html body .nsb-hero h1.nsb-title{font-size:31px!important}
  .nsb-hero .nsb-sub{font-size:16px;margin-bottom:20px}
  .nsb-sform input{padding:14px 10px;font-size:18px}
  .nsb-sform button{padding:0 14px}
  .nsb-sform .si{padding-left:12px}
  .nsb-chips{gap:6px}
  .nsb-chips span{width:100%}
  .nsb-shelf{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:8px;margin:0 -14px 22px;padding:0 14px;scrollbar-width:none}
  .nsb-shelf::-webkit-scrollbar{display:none}
  .nsb-obj{flex:0 0 30%;padding:14px 4px 12px;border-color:var(--rule)}
  .nsb-obj .ob{height:62px;margin-bottom:12px}
  .nsb-obj b{font-size:13px;letter-spacing:.05em}
  .nsb-obj em{font-size:13px;letter-spacing:.05em;margin-top:6px}
  .nsb-tools{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px 0}
  .nsb-count{grid-column:1/-1}
  .nsb-count:empty{display:none}
  .nsb-tools .r{display:contents}
  .nsb-tools .nsb-sel{width:100%}
  .nsb-view{grid-column:1/-1}
  .nsb-view button{flex:1}
  .nsb-sec{margin-bottom:50px}
  .nsb-sec-h{flex-wrap:wrap;gap:8px}
  html body .nsb-sec-h h2{font-size:18px!important}
  .nsb-tl{--cols:46px minmax(0,1fr) auto}
  .nsb-tr{gap:12px;padding:10px 0}
  .nsb-tr .cv{width:46px;height:46px}
  .nsb-tr .t .ti{font-size:16px}
  .nsb-tr .act .ic{display:none}
  .nsb-tr .nsb-buy-btn{min-width:0;padding:9px 10px;font-size:14px}
  .nsb-tapes,.nsb-pols,.nsb-cards{grid-template-columns:1fr 1fr;gap:34px 14px}
  .nsb-tapes{padding-top:16px}
  .nsb-tape .info,.nsb-pol .info,.nsb-cd .info{grid-template-columns:minmax(0,1fr);gap:10px;margin-top:12px}
  .nsb-tape .info .nsb-buy-btn,.nsb-pol .info .nsb-buy-btn,.nsb-cd .info .nsb-buy-btn{justify-self:start}
  .nsb-pol .frame{padding:7px 7px 0}
  .nsb-pol .cap{padding:9px 2px 11px;font-size:13px;letter-spacing:.05em}
  .nsb-pol .pb{left:13px;bottom:42px;width:36px;height:36px}
  .nsb-prs{grid-template-columns:1fr 1fr}
  .nsb-pr .av{width:72px;height:72px}
  .nsb-ph{flex-direction:column;align-items:flex-start;gap:18px;padding:22px 18px}
  .nsb-ph .av{width:96px;height:96px}
  html body .nsb-ph h1{font-size:28px!important}
  .nsb-ip-top{grid-template-columns:1fr;gap:22px;padding:18px}
  .nsb-ip-top .art{max-width:280px}
  html body .nsb-ip h1{font-size:28px!important}
  .nsb-play{grid-template-columns:48px minmax(0,1fr);gap:12px;padding:10px}
  .nsb-play .tm{display:none}
  .nsb-play .big{width:48px;height:48px}
  .nsb-stat span{padding:9px 12px}
  .nsb-lics,.nsb-modal .nsb-lics.many{grid-template-columns:1fr}
  .nsb-trust.row{grid-template-columns:1fr}
  .nsb-modal .nsb-ov-p{left:0;right:0;top:auto;bottom:0;width:100%;max-height:92%;border-width:1px 0 0;transform:translateY(40px)}
  .nsb-modal.on .nsb-ov-p{transform:none}
  .nsb-ov-c{padding:28px 18px 22px}
  .nsb-mf{bottom:-22px;margin:18px -18px -22px;padding:14px 18px;flex-wrap:wrap}
  .nsb-mf .tot{flex:1 1 100%;flex-direction:row;justify-content:space-between;align-items:baseline}
  .nsb-mf .nsb-btn{flex:1}
  .nsb-mh img{width:56px;height:56px}
  html body .nsb-title{font-size:27px!important}
  .nsb-line{grid-template-columns:52px minmax(0,1fr) auto;gap:12px}
  .nsb-line img{width:52px;height:52px}
  .nsb-brief{grid-column:1/-1}
  .nsb-mini{grid-template-columns:44px minmax(0,1fr)}
  .nsb-mini .acts{grid-column:1/-1;justify-content:flex-start}
  .nsb-box .nsb-mini{grid-template-columns:44px minmax(0,1fr) auto}
  .nsb-toast{bottom:110px}
  .nsb-who small{display:none}
  .nsb-kpis b,.nsb-stats b{font-size:19px}
  .nsb-kpis div,.nsb-stats div{padding:14px}
  .nsb-sect{padding:18px 14px 8px}
  .nsb-sect legend small{display:none}
  .nsb-types{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nsb-tier{grid-template-columns:minmax(0,1fr) 112px}
}
@media (max-width:360px){.nsb-tapes,.nsb-pols,.nsb-cards{grid-template-columns:1fr}.nsb-obj{flex-basis:40%}}
@media (prefers-reduced-motion:reduce){.nsb-cd .art img,.nsb-obj .ob,.cas,.nsb-pol .frame,.nsb-ov-p,.nsb-ov-bg{transition:none}.spin .cas .reel svg{animation-duration:9s}}

/* ===== b8 (29 Oct 2026): spotlight hero, swipe rows, filter sidebar, stronger shelf ===== */
.nsb-sform{background:rgba(8,7,7,.8)}
.nsb-chips button{background:rgba(8,7,7,.55)}
/* hero spotlight: cover art + its tape sliding out */
.nsb-deck{height:100%;display:flex;flex-direction:column;justify-content:center;padding:34px 40px 30px}
.nsb-deck .lbl{display:flex;align-items:center;gap:9px;margin:0 0 18px;font-size:13px;font-weight:700;letter-spacing:.05em;color:var(--txt)}
.nsb-deck .lbl i{width:8px;height:8px;border-radius:50%;background:#5c5750;transition:background-color .3s,box-shadow .3s}
.nsb-deck.playing .lbl i{background:var(--ok)}
.nsb-deck .stage{position:relative;width:min(100%,430px);aspect-ratio:1.42;margin:0 auto 24px}
.nsb-deck .stage .sleeve{position:absolute;left:0;top:0;width:70.4%;aspect-ratio:1;z-index:2;display:block;background:#1a1816;box-shadow:0 30px 50px -18px rgba(0,0,0,.95),0 0 0 1px rgba(255,255,255,.06)}
.nsb-deck .stage .sleeve img{width:100%;height:100%;object-fit:cover;display:block}
.nsb-deck .stage .cas{position:absolute;right:0;top:20%;width:64%;z-index:1;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.nsb-deck:hover .stage .cas,.nsb-deck.playing .stage .cas{transform:translateX(5%)}
.nsb-deck .stage .pbig{position:absolute;left:35.2%;top:49.5%;z-index:3;width:68px;height:68px;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:rgba(236,231,223,.95);cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.6);transition:transform .2s}
.nsb-deck .stage .pbig:hover{transform:translate(-50%,-50%) scale(1.06)}
.nsb-deck .stage .pbig .pbi{display:flex}
.nsb-deck .stage .pbig .nsb-ico{fill:var(--ink);width:24px;height:24px}
.nsb-deck .stage.solo{aspect-ratio:1.5}
.nsb-deck .stage.solo .cas{left:10%;right:10%;top:0;width:80%}
.nsb-deck .dk{display:flex;gap:16px;align-items:center;justify-content:space-between;width:min(100%,430px);margin:0 auto}
.nsb-deck .dk .tx{min-width:0}
.nsb-deck .dk .ti{display:block;color:var(--bone);font-weight:700;font-size:19px;letter-spacing:.02em;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nsb-deck .dk .ti:hover{text-decoration:underline;text-underline-offset:4px}
.nsb-deck .dk .by{margin:5px 0 0;font-size:14.5px;color:var(--txt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nsb-deck .dk .by a{text-decoration:none;font-weight:700}
.nsb-deck .dk .by a:hover{color:var(--bone)}
.nsb-deck.empty{align-items:center;text-align:center}
/* the shelf: lit cubbies */
.nsb-shelf{gap:10px;margin:0 0 26px}
.nsb-obj{position:relative;padding:24px 8px 18px;border:1px solid var(--rule);background:linear-gradient(180deg,#0d0c0b 0%,#141210 70%,#1a1815 100%)}
.nsb-obj::after{content:'';position:absolute;left:12%;right:12%;bottom:52px;height:14px;background:radial-gradient(ellipse at center,rgba(0,0,0,.65),transparent 70%);pointer-events:none}
.nsb-obj:hover{border-color:var(--rule2);background:linear-gradient(180deg,#100f0d 0%,#181613 70%,#1f1c18 100%)}
.nsb-obj.on{border-color:var(--bone);background:linear-gradient(180deg,#14120f 0%,#1c1915 70%,#24201b 100%)}
.nsb-obj b{font-size:16.5px;letter-spacing:.05em}
/* section heads */
html body .nsb-sec-h h2{font-size:23px!important;letter-spacing:.06em!important}
.nsb-sec{margin:0 0 58px}
/* browse = filter sidebar + results */
.nsb-browse{display:grid;grid-template-columns:236px minmax(0,1fr);gap:34px;align-items:start}
#nsb-results{min-width:0}
.nsb-filt{position:sticky;top:96px;max-height:calc(100vh - 110px);overflow-y:auto;scrollbar-width:thin;padding:0 6px 20px 0}
.nsb-filt .fh{display:flex;align-items:center;gap:12px;padding:0 0 14px;border-bottom:1px solid var(--rule)}
.nsb-filt .fh b{flex:1;color:var(--bone);font-size:15px;letter-spacing:.05em}
.nsb-filt .fh button{padding:0;background:none;border:0;border-bottom:1px solid var(--rule2);color:var(--dim);font:700 13px/1.2 var(--f);letter-spacing:.05em;cursor:pointer}
.nsb-filt .fh button:hover{color:var(--bone)}
.nsb-filt .fh .fx{display:none;border:0;width:34px;height:34px;align-items:center;justify-content:center}
.nsb-filt .fh .fx .nsb-ico{fill:none;color:var(--dim)}
.nsb-filt .fg{padding:16px 0;border-bottom:1px solid var(--rule)}
.nsb-filt .fg>p{margin:0 0 10px;font-size:13px;font-weight:700;letter-spacing:.05em;color:var(--mute)}
.nsb-filt .fr{display:flex;align-items:center;gap:9px;padding:6px 0;font-size:14.5px;color:var(--dim);cursor:pointer;letter-spacing:.04em}
.nsb-filt .fr:hover{color:var(--bone)}
.nsb-filt .fr input{appearance:none;-webkit-appearance:none;flex:none;width:13px;height:13px;margin:0;border:1px solid var(--rule2);border-radius:50%;background:none;cursor:pointer}
.nsb-filt .fr.ck input{border-radius:0}
.nsb-filt .fr input:checked{background:var(--bone);border-color:var(--bone);box-shadow:inset 0 0 0 2px #0a0a0a}
.nsb-filt .fr input:checked~span{color:var(--bone);font-weight:700}
.nsb-filt .fr input:focus-visible{outline:1px dashed var(--dim);outline-offset:2px}
.nsb-filt .fr em{margin-left:auto;font-style:normal;font-size:13px;color:var(--mute)}
.nsb-filt .fr .av{width:22px;height:22px;border-radius:50%;overflow:hidden;background:#1a1816;flex:none}
.nsb-filt .fr .av img{width:100%;height:100%;object-fit:cover;display:block}
.nsb-filt .fr span:not(.av){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nsb-filt .fchips{display:flex;flex-wrap:wrap;gap:6px}
.nsb-filt .fchips button{padding:6px 8px 5px;background:none;border:1px solid var(--rule2);color:var(--dim);font:700 13px/1 var(--f);letter-spacing:.05em;cursor:pointer}
.nsb-filt .fchips button:hover{color:var(--bone);border-color:var(--dim)}
.nsb-filt .fchips button.on{background:var(--bone);border-color:var(--bone);color:var(--ink)}
.nsb-filt .frng{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:center;margin-top:10px;font-size:13px;color:var(--mute)}
.nsb-filt .frng .nsb-in{width:100%;padding:8px 9px;font-size:15px}
.nsb-filt .nsb-sel{width:100%}
.nsb-filt .fgo{display:none}
.nsb-fbtn{display:none;align-items:center;gap:8px;padding:10px 13px;background:none;border:1px solid var(--rule2);color:var(--bone);font:700 13.5px/1 var(--f);letter-spacing:.05em;cursor:pointer}
.nsb-fbtn em{font-style:normal;padding:2px 5px 1px;background:var(--bone);color:var(--ink);font-size:13px}
.nsb-tools #nsb-prod{display:none}
/* swipe rows of big cover cards */
.nsb-rail{position:relative}
.nsb-rail .trk{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 0 8px}
.nsb-rail .trk::-webkit-scrollbar{display:none}
.nsb-rail .nsb-cd{flex:0 0 206px;scroll-snap-align:start}
.nsb-rail .ar{position:absolute;top:84px;z-index:3;width:42px;height:42px;display:flex;align-items:center;justify-content:center;padding:0 0 3px;border:1px solid var(--rule2);border-radius:50%;background:rgba(12,11,10,.92);color:var(--bone);font:400 24px/1 var(--f);cursor:pointer;transition:opacity .2s,border-color .2s}
.nsb-rail .ar:hover{border-color:var(--bone)}
.nsb-rail .ar.l{left:-14px}
.nsb-rail .ar.r{right:-14px}
.nsb-rail.at-s .ar.l,.nsb-rail.at-e .ar.r{opacity:0;pointer-events:none}
@media (hover:none){.nsb-rail .ar{display:none}}
/* cover cards: lift + the play button grows on hover */
.nsb-cd .art{transition:transform .3s ease,box-shadow .3s ease}
.nsb-cd:hover .art{transform:translateY(-4px);box-shadow:0 30px 40px -24px rgba(0,0,0,1)}
.nsb-cd .pb{width:44px;height:44px;border-radius:50%;background:rgba(236,231,223,.95);opacity:0;transform:translateY(6px);transition:opacity .2s,transform .2s}
.nsb-cd .pb .nsb-ico{fill:var(--ink)}
.nsb-cd:hover .pb,.nsb-cd.playing .pb,.nsb-cd .pb:focus-visible{opacity:1;transform:none}
@media (hover:none){.nsb-cd .pb{opacity:1;transform:none}}
.nsb-pol .pb{border-radius:50%}
/* track rows: bigger art, playing row marked */
.nsb-tl{--cols:28px 56px minmax(0,1.5fr) minmax(0,1.3fr) 50px 46px 50px minmax(0,.8fr) auto}
.nsb-tr{padding:10px 10px;border-left:2px solid transparent}
.nsb-tr.playing{border-left-color:var(--bone)}
.nsb-tr .cv{width:56px;height:56px}
.nsb-tr .t .ti{font-size:17.5px}
.nsb-tr .n{font-size:15px;font-weight:700}
.nsb-tr .wv{opacity:.85}
.nsb-tr:hover .wv,.nsb-tr.playing .wv{opacity:1}
/* SAMPLE items (look-only, cannot be bought) */
.chip.smp{border-color:#6b5a3a;color:#d6bf8e}
.nsb-buy-btn.smp{background:none;color:var(--dim);border:1px dashed var(--rule2);cursor:default}
.nsb-buy-btn.smp:hover{background:none;border-color:var(--rule2)}
@media (max-width:1100px){
  .nsb-tl{--cols:28px 56px minmax(0,1.5fr) minmax(0,1.2fr) 50px 46px 50px auto}
  .nsb-browse{grid-template-columns:1fr;gap:0}
  .nsb-fbtn{display:inline-flex}
  .nsb-filt{position:fixed;top:0;left:0;bottom:0;z-index:2147483001;width:min(360px,92%);max-height:none;padding:22px 22px 0;background:#0e0d0c;border-right:1px solid var(--rule2);box-shadow:30px 0 80px rgba(0,0,0,.7);transform:translateX(-105%);visibility:hidden;transition:transform .25s ease,visibility 0s .25s;font-family:var(--f);overscroll-behavior:contain}
  .nsb-filt.open{transform:none;visibility:visible;transition:transform .25s ease}
  .nsb-filt .fh .fx{display:flex}
  .nsb-filt .fgo{display:block;position:sticky;bottom:0;padding:12px 0 18px;background:#0e0d0c}
}
@media (max-width:900px){
  .nsb-hero::after{background:linear-gradient(180deg,rgba(10,9,8,.9) 0%,rgba(10,9,8,.6) 55%,rgba(10,9,8,.5) 100%)}
  .nsb-deck{padding:6px 26px 30px}
  .nsb-tl{--cols:56px minmax(0,1fr) auto}
}
@media (max-width:640px){
  html body .nsb-hero h1.nsb-title{font-size:36px!important}
  .nsb-hero .hl{padding:30px 18px 22px}
  .nsb-deck{padding:4px 18px 24px}
  .nsb-deck .dk .ti{font-size:18px}
  .nsb-deck .dk{flex-wrap:wrap}
  .nsb-deck .stage .pbig{width:56px;height:56px}
  .nsb-obj::after{bottom:40px}
  html body .nsb-sec-h h2{font-size:19px!important}
  .nsb-tl{--cols:52px minmax(0,1fr) auto}
  .nsb-tr .cv{width:52px;height:52px}
  .nsb-tr{padding:10px 2px}
  .nsb-rail .trk{gap:14px;margin:0 -14px;padding:4px 14px 8px;scroll-padding:0 14px}
  .nsb-rail .nsb-cd{flex-basis:62%}
  .nsb-tools .r{display:contents}
  .nsb-fbtn{justify-content:center}
}
.nsb-fbg{display:none}
@media (max-width:1100px){.nsb-fbg.on{display:block;position:fixed;inset:0;z-index:2147483000;background:rgba(0,0,0,.62)}}
@media (max-width:640px){
  .nsb-sbar .br{display:none}
  .nsb-sbar .rt{margin-left:0;flex:1 1 100%;justify-content:space-between}
  .nsb-sbar .mid{order:3;overflow-x:auto;scrollbar-width:none;flex-wrap:nowrap;white-space:nowrap;margin:0 -14px;padding:0 14px}
  .nsb-sbar .mid::-webkit-scrollbar{display:none}
  .nsb-rail .ar{display:none}
}

/* b9: one payment per member, the buyer's song upload, seller confirm + send */
.nsb-pay{margin:0 0 14px;padding:14px;border:1px solid var(--rule2);background:var(--panel2)}
.nsb-pay .hd{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 12px;font-size:14px;letter-spacing:.05em;color:var(--dim)}
.nsb-pay .hd b{color:var(--bone);font-weight:700;display:flex;align-items:center;gap:8px}
.nsb-pay .hd>span{color:var(--bone);font-size:18px;font-weight:700;letter-spacing:.02em}
.nsb-pay .to{margin:10px 0 0;font-size:14px}
.nsb-pay .pp{min-height:44px}
.nsb-pay [data-via]{margin-top:10px}
.nsb-pay.paid{border-color:#4d5e41;background:#0f110d}
.nsb-pay.paid .hd .nsb-ico{width:16px;height:16px;fill:none;stroke:var(--ok);color:var(--ok)}
.nsb-pay.paid .nsb-note{margin:0 0 10px}
.nsb-note.split{margin:0 0 14px;padding:10px 12px;border-left:2px solid var(--rule2);color:var(--txt)}
/* one payment, several members: who gets which part */
.nsb-pay .sp{list-style:none;margin:-4px 0 12px;padding:0;border-top:1px solid var(--rule)}
.nsb-pay .sp li{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:7px 0;border-bottom:1px solid var(--rule);font-size:14px;color:var(--txt)}
.nsb-pay .sp li>span:first-child{min-width:0;overflow-wrap:anywhere}
.nsb-pay .sp li small{display:block;font-size:12px;color:var(--mute)}
.nsb-pay .sp li>span:last-child{flex:none;color:var(--bone)}
.nsb-pay .res+.res{margin-top:14px;padding-top:14px;border-top:1px solid var(--rule)}
.nsb-pay .res.bad .hd b{color:var(--dim)}
.nsb-pay [data-again]{margin-top:14px}
.nsb-up small.bad,.nsb-up .nm small.bad{color:var(--bad)}
.nsb-up small .nsb-ico{width:12px;height:12px;vertical-align:-2px;fill:none;stroke:var(--ok)}
.nsb-brief .nsb-up{margin-bottom:2px}
.nsb-brief .nsb-chk span{line-height:1.45}
.nsb-later{display:grid;gap:8px;margin:8px 0 4px;max-width:520px}
.nsb-later .nsb-ta{min-height:64px}
.nsb-later button{justify-self:start}
.nsb-lnk{padding:0;background:none;border:0;border-bottom:1px solid var(--rule2);color:var(--dim);font:inherit;font-size:13px;letter-spacing:.05em;cursor:pointer}
.nsb-lnk:hover{color:var(--bone);border-color:var(--dim)}
.nsb-mini .st{color:var(--txt)}
.nsb-mini .st-approval,.nsb-mini .st-song{color:#d6bf8e}
.nsb-mini .st-ready,.nsb-mini .st-delivered{color:var(--ok)}
.nsb-appr{margin-bottom:14px}
.nsb-appr .it{display:flex;justify-content:space-between;gap:12px;margin:0 0 6px;font-size:15.5px;color:var(--txt)}
.nsb-appr .it b{color:var(--bone)}
.nsb-appr .it span{color:var(--bone);font-weight:700;white-space:nowrap}
.nsb-appr .nsb-chk{margin:12px 0}
.nsb-appr [data-send]:disabled{opacity:.45;cursor:not-allowed}
.nsb-ov-note.smp{padding:10px 12px;border:1px dashed #6b5a3a;color:#d6bf8e}
.nsb-ip-top .hd>.chip.smp{margin:0 0 10px}
@media (max-width:640px){
  .nsb-pay{padding:12px}
  .nsb-appr .it{flex-direction:column;gap:2px}
}
.nsb-lines + .nsb-h2{margin-top:40px!important}
.nsb-form>*{min-width:0}
.ob-feature .pf img{object-fit:contain;background:#0d0c0b;padding:8%;box-sizing:border-box}

.nsb{--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .5 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
/* how buying works */
.nsb-how{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:-22px 0 34px;padding:0}
.nsb-how li{position:relative;display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border:1px solid var(--rule2);background:#100f0d;font-size:15px;line-height:1.5;color:var(--txt);overflow:hidden}
.nsb-how li::after{content:'';position:absolute;inset:0;background:var(--grain);opacity:.05;pointer-events:none}
.nsb-how b{flex:none;width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:var(--bone);color:var(--ink);font-size:16px}
.nsb-how strong{display:block;margin-bottom:3px;color:var(--bone);font-size:14px;letter-spacing:.05em}
.nsb-shelf{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}
/* custom = a blank tape with a handwritten label, services = a mixing desk */
.ob-custom{position:relative}
.ob-custom img{width:86%}
.ob-custom .lab{position:absolute;left:50%;bottom:58%;transform:translateX(-50%) ;width:74%;padding:1px 0;font:700 clamp(7px,9cqh,11px)/1.1 var(--f);letter-spacing:.05em;color:#26221d;text-align:center;background:#e4ddcf;white-space:nowrap;overflow:hidden}
.ob-service svg{display:block;height:92%;width:auto;max-width:100%;filter:drop-shadow(0 14px 12px rgba(0,0,0,.85))}
.nsb-buy-btn i{font-style:normal;font-size:13px;letter-spacing:.05em;margin-right:5px;opacity:.7}
.nsb-filt .fnote{margin:10px 0 0;font-size:13px;line-height:1.45;color:var(--mute);letter-spacing:0;text-transform:none;font-weight:400}
/* item page */
.nsb-vid{position:relative;aspect-ratio:16/9;margin:0 0 30px;background:#0a0908;border:1px solid var(--rule)}
.nsb-vid iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.nsb-inside{margin:0 0 30px;padding:18px 20px;border:1px solid var(--rule2);background:#0d0c0b}
.nsb-inside .kinds{display:flex;flex-wrap:wrap;gap:10px 22px;margin:0 0 12px;font-size:14.5px;color:var(--dim)}
.nsb-inside .kinds b{color:var(--bone);font-size:17px;margin-right:6px}
.nsb-inside .fold{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:6px 18px}
.nsb-inside .fold li{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px solid #1b1917;font-size:14.5px;color:var(--txt);min-width:0}
.nsb-inside .fold li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nsb-inside .fold em{font-style:normal;color:var(--mute)}
.nsb-steps.how{margin:0 0 30px}
/* checkout + order page: what made-to-order buyers send */
.nsb-brief{padding:14px 16px;border:1px solid var(--rule2);border-left:3px solid var(--bone);background:#0d0c0b}
.nsb-brief .bh{margin:0 0 4px;font-size:14.5px;color:var(--dim)}
.nsb-brief .bh b{color:var(--bone);letter-spacing:.05em}
.nsb-pay .hd small{margin-left:6px;font-size:13px;letter-spacing:.05em;color:var(--mute);font-weight:400}
.nsb-later{display:grid;gap:8px;margin-top:8px}
.nsb-wait.off{color:#c9a98f}
.nsb-wait a{color:var(--bone)}
/* studio */
.nsb-types{grid-template-columns:repeat(7,minmax(0,1fr))}
@media (max-width:1100px){
  .nsb-shelf{grid-template-columns:repeat(4,minmax(0,1fr))}
  .nsb-types{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width:900px){
  .nsb-how{grid-template-columns:1fr;gap:8px;margin-top:-16px}
  .nsb-how li{padding:12px 14px}
}
@media (max-width:640px){
  .nsb-how{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:-8px 0 22px}
  .nsb-how li{flex-direction:column;align-items:center;gap:6px;padding:10px 4px;text-align:center;font-size:0}
  .nsb-how b{width:24px;height:24px;font-size:14px}
  .nsb-how strong{margin:0;font-size:13px;letter-spacing:.05em;line-height:1.3}
  .nsb-obj{flex:0 0 38%}
  .nsb-obj .ob{height:62px}
  .nsb-obj small{display:none}
  .nsb-types{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nsb-inside .fold{grid-template-columns:1fr}
}

/* ---- Discord login + MY ACCOUNT (30 Oct 2026) ---- */
.nsb-join{margin:16px 0 0;padding:14px;border:1px solid var(--rule2);background:var(--panel2);font-size:15px;line-height:1.55;color:var(--dim)}
.nsb-join p{margin:0 0 12px}
.nsb-join b{color:var(--bone)}
.nsb-join .h{display:block;margin-top:10px;font-size:14px;color:var(--mute)}
.nsb-join[hidden]{display:none}
.nsb-in.nsb-code{font-size:24px;font-weight:700;letter-spacing:.3em;text-align:center;text-transform:uppercase;padding-top:12px;padding-bottom:12px}
.nsb-acnote{margin:0 0 18px;padding:10px 12px;border:1px solid var(--rule2);font-size:14.5px;line-height:1.55;color:var(--dim)}
.nsb-acnote.on{display:flex;gap:10px;align-items:flex-start;border-color:#4d5e41;color:var(--txt)}
.nsb-acnote.on .nsb-ico{fill:none;stroke:var(--ok);color:var(--ok);flex:none;margin-top:2px}
.nsb-acnote b{color:var(--bone)}
.nsb-acnote a{color:var(--bone)}
.nsb-acc-h{display:flex;align-items:center;gap:18px;padding:0 0 22px;margin:0 0 6px;border-bottom:1px solid var(--rule)}
.nsb-acc-h .av{flex:none;width:64px;height:64px;border-radius:50%;overflow:hidden;background:#1a1816;display:flex;align-items:center;justify-content:center}
.nsb-acc-h .av img{width:100%;height:100%;object-fit:cover;display:block}
.nsb-acc-h .ini{font-size:26px;font-weight:700;color:var(--bone)}
.nsb-acc-h .who{min-width:0;flex:1;display:flex;flex-direction:column;gap:6px}
.nsb-acc-h .who b{color:var(--bone);font-size:18px;letter-spacing:.05em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nsb-acc-h .who>span{font-size:14px;color:var(--dim);display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center}
.nsb-acc-h .act{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.nsb-tabs{display:flex;gap:0;margin:0 0 22px;border-bottom:1px solid var(--rule);overflow-x:auto;scrollbar-width:none}
.nsb-tabs::-webkit-scrollbar{display:none}
.nsb-tabs button{flex:none;padding:14px 18px 12px;background:none;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;color:var(--dim);font:700 14px var(--f);letter-spacing:.05em;cursor:pointer}
.nsb-tabs button:hover{color:var(--bone)}
.nsb-tabs button.on{color:var(--bone);border-bottom-color:var(--bone)}
.nsb-acc-tot{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 20px}
.nsb-acc-tot span{display:flex;flex-direction:column;gap:4px;min-width:150px;padding:14px 16px;border:1px solid var(--rule2);background:var(--panel);font-size:13px;letter-spacing:.05em;color:var(--mute);font-weight:700}
.nsb-acc-tot b{font-size:20px;letter-spacing:.04em;color:var(--bone)}
.nsb-tbl-wrap{overflow-x:auto;margin:0 0 6px}
.nsb-tbl .r{text-align:right;white-space:nowrap}
.nsb-tbl .mono{display:block;margin-top:3px;font-size:13px;color:var(--mute);word-break:break-all}
.nsb-acc-em{list-style:none;margin:0 0 18px;padding:0;border-top:1px solid var(--rule)}
.nsb-acc-em li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--rule);font-size:15.5px;color:var(--bone);overflow-wrap:anywhere}
.nsb-acc-em li span{min-width:0}
.nsb-acc-em li button{flex:none}
.nsb-acc-add{display:flex;gap:12px;align-items:flex-end;max-width:620px}
.nsb-acc-add .nsb-fld{flex:1;margin:0}
@media (max-width:640px){
  .nsb-acc-h{flex-wrap:wrap;gap:14px}
  .nsb-acc-h .av{width:52px;height:52px}
  .nsb-acc-h .act{width:100%;justify-content:flex-start}
  .nsb-tabs button{padding:12px 13px 10px;font-size:13px}
  .nsb-acc-tot span{min-width:0;flex:1 1 40%}
  .nsb-acc-add{flex-direction:column;align-items:stretch}
  .nsb-tbl.pay thead{display:none}
  .nsb-tbl.pay tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;padding:14px 0;border-bottom:1px solid var(--rule)}
  .nsb-tbl.pay td{padding:0;border:0}
  .nsb-tbl.pay td:nth-child(1){grid-area:1/1;color:var(--bone);font-weight:700}
  .nsb-tbl.pay td:nth-child(6){grid-area:1/2;color:var(--bone);font-weight:700}
  .nsb-tbl.pay td:nth-child(2){grid-area:2/1;color:var(--dim)}
  .nsb-tbl.pay td:nth-child(5){grid-area:2/2;text-align:right;color:var(--dim);font-size:14px}
  .nsb-tbl.pay td:nth-child(3){grid-area:3/1}
  .nsb-tbl.pay td:nth-child(3)::before{content:'PAID TO ';font-size:13px;letter-spacing:.05em;color:var(--mute)}
  .nsb-tbl.pay td:nth-child(4){grid-area:3/2;text-align:right}
}
.nsb-mtbl td{vertical-align:top}
.nsb-mtbl td:nth-child(1) .nsb-in{width:150px}
.nsb-mtbl td:nth-child(2) .nsb-in{width:170px;display:block}
.nsb-mtbl td:nth-child(2) .nsb-in+.nsb-in{margin-top:6px}
.nsb-mtbl td small{display:block;margin-top:6px;font-size:13px;color:var(--mute)}
.nsb-mtbl .nsb-sel{min-width:118px}

/* ---------- v4 (30 Oct 2026, after "messy, the colors look AI, login hard to find"): like the MERCH page.
   One bar with the buttons people use all the time (LOG IN / MY ACCOUNT, CART) in the same spot on every store page,
   one row of plain tabs, plain section heads. One accent only: rust, for what is selected. ---------- */
.nsb,.nsb-bar,.nsb-ov,.nsb-toast{--rust:#b8693d}
.nsb-sbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 28px;padding:0 0 18px;border-bottom:1px solid var(--rule)}
.nsb-sbar.home{margin:0 0 12px;padding:0;border-bottom:0}
.nsb-sbar .br{display:inline-flex;gap:6px;align-items:center;color:var(--dim);font-size:15px;font-weight:700;letter-spacing:.04em;text-decoration:none;padding:10px 0}
.nsb-sbar .br:hover{color:var(--bone)}
html body .nsb-sbar h1.nsb-title{margin:0;font:700 46px/1 var(--f)!important;letter-spacing:.02em!important;color:var(--bone)!important;text-align:left}
.nsb-sbar .rt{display:flex;align-items:center;gap:10px;flex:none}
.nsb-sbar .rt a.nb{display:inline-flex;align-items:center;gap:9px;height:44px;padding:0 16px;border:1px solid var(--rule2);background:#0e0d0c;color:var(--bone);font-size:15px;font-weight:700;letter-spacing:.04em;text-decoration:none;white-space:nowrap;transition:border-color .15s,background .15s}
.nsb-sbar .rt a.nb:hover{border-color:var(--dim);background:#151311}
.nsb-sbar .rt a.nb[hidden]{display:none}
.nsb-sbar .rt a.nb .nsb-ico{width:17px;height:17px;fill:var(--bone)}
.nsb-sbar .rt a.nb .nsb-ico.ln{fill:var(--bone)}
.nsb-sbar .rt a.nb.in{border-color:#4a443d}
.nsb-sbar .rt a.nb.cart{background:var(--bone);border-color:var(--bone);color:var(--ink);padding:0 10px 0 13px;gap:8px}
.nsb-sbar .rt a.nb.cart .nsb-ico{width:19px;height:19px}
.nsb-sbar .rt a.nb.cart:hover{background:#fff;border-color:#fff}
.nsb-sbar .rt a.nb.cart .nsb-ico{fill:var(--ink)}
.nsb-sbar .rt a.nb.cart .nsb-cart-count{min-width:22px;padding:3px 5px 2px;background:var(--ink);color:var(--bone);font-size:14px;line-height:1.2;text-align:center}
/* the store page: one line about it, the search, then the tabs */
.nsb-intro{margin:0 0 28px}
.nsb-intro .nsb-sub{max-width:660px;margin:0 0 20px;font-size:17px;line-height:1.6;color:var(--dim)}
.nsb-intro .nsb-sform{max-width:760px}
.nsb-ttabs{display:flex;gap:2px;margin:0 0 28px;border-bottom:1px solid var(--rule);overflow-x:auto;scrollbar-width:none}
.nsb-ttabs::-webkit-scrollbar{display:none}
.nsb-ttabs button{flex:none;padding:14px 16px 12px;background:none;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;color:var(--dim);font:700 16px/1 var(--f);letter-spacing:.04em;white-space:nowrap;cursor:pointer}
.nsb-ttabs button span{margin-left:8px;font-size:14px;font-weight:400;color:var(--mute)}
.nsb-ttabs button:hover{color:var(--bone)}
.nsb-ttabs button.on{color:var(--bone);border-bottom-color:var(--rust)}
.nsb-ttabs button.on span{color:var(--rust)}
.nsb-main{min-width:0}
.nsb-main .nsb-tools{margin:0 0 26px;padding:0 0 14px;border-top:0}
.nsb-filt .fh{padding-top:12px}
/* section heads: the name, how many, one line */
.nsb-sec-h{margin:0 0 18px;padding:0 0 12px;border-bottom:1px solid var(--rule)}
html body .nsb-sec-h h2{font-size:22px!important;letter-spacing:.03em!important}
html body .nsb-sec-h h2 .n{margin-left:10px;font-size:15px;color:var(--mute)}
.nsb-sec-h button,.nsb-sec-h a{color:var(--txt);border-bottom-color:var(--rule2)}
.nsb-sec-h button:hover,.nsb-sec-h a:hover{color:var(--bone)}
/* selected things get the rust, nothing else */
.nsb-view button.on{background:var(--bone);color:var(--ink)}
.nsb-filt .fchips button.on{border-color:var(--rust);color:var(--bone);background:rgba(184,105,61,.14)}
.nsb-lic.on{border-color:var(--rust)}
.nsb-cd .badge{background:rgba(12,11,10,.88);color:var(--bone);border:1px solid #3a3631}
/* login sheet */
.nsb-login .nsb-ov-t{margin-bottom:8px}
.nsb-login .nsb-btn.wide{margin-top:4px}
.nsb-lalt{margin:26px 0 0;padding:16px 0 0;border-top:1px solid var(--rule);font-size:15px;line-height:1.6;color:var(--dim)}
.nsb-lalt a{color:var(--bone);text-decoration:underline;text-underline-offset:3px}
@media (max-width:900px){
  html body .nsb-sbar h1.nsb-title{font-size:38px!important}
}
@media (max-width:640px){
  .nsb-sbar{gap:10px;margin-bottom:20px;padding-bottom:14px}
  html body .nsb-sbar h1.nsb-title{font-size:30px!important}
  .nsb-sbar .rt{gap:8px}
  .nsb-sbar .rt a.nb{height:42px;padding:0 12px;gap:7px;font-size:14.5px}
  .nsb-sbar .rt a.nb[data-studio] .lb{display:none}
  .nsb-intro .nsb-sub{font-size:16px;margin-bottom:16px}
  .nsb-ttabs{margin:0 -14px 20px;padding:0 14px;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}
  .nsb-ttabs button{padding:13px 12px 11px;font-size:15px}
  .nsb-main .nsb-tools{margin-bottom:20px}
  html body .nsb-sec-h h2{font-size:19px!important}
}
@media (max-width:370px){
  .nsb-sbar .rt a.nb .lb{display:none}
  .nsb-sbar .rt a.nb[data-login] .lb{display:inline}
}
/* v4 spacing: the store title gets room under the site menu; filter group names readable */
.nsb-sbar.home{margin-top:22px}
.nsb-filt .fg>p{font-size:14.5px;color:var(--dim)}
@media (max-width:640px){.nsb-sbar.home{margin-top:10px}}
.nsb-cd .badge,.nsb .info .mt,.nsb-tr .mm,.nsb-th{letter-spacing:.02em}
/* v4.1: room above MORE FROM, bigger tap area on the kind link */
.nsb-sec.nsb-more{margin-top:64px}
.nsb-kicker a{display:inline-block;padding:7px 0}
@media (max-width:640px){.nsb-sec.nsb-more{margin-top:44px}}
/* members on a phone: studio + account + cart only fit on one row as icons + CART */
@media (max-width:640px){.nsb-sbar .rt:has([data-studio]:not([hidden])) .nb.in .lb{display:none}}
/* no up/down arrows in the price + BPM boxes (Firefox showed them) */
.nsb input[type=number]{-moz-appearance:textfield;appearance:textfield}
.nsb input[type=number]::-webkit-inner-spin-button,.nsb input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
/* real phones: the site forces main{padding-top:100px} under a 123px header, which hid the store bar. Same fix as merch */
html.mobile-device main.nsb{padding-top:138px!important}
/* phone: FILTERS and the sort box the same height */
@media (max-width:640px){.nsb-tools .nsb-fbtn,.nsb-tools .nsb-sel{height:42px;box-sizing:border-box}}
/* the currency note under PRICE is plain text, not a heading */
.nsb-filt .fg>p.fnote{margin:12px 0 0;font:400 13.5px/1.5 var(--f);letter-spacing:0;text-transform:none;color:var(--mute)}
/* one line between a section head and its track list, not two */
.nsb-sec-h+.nsb-tl{border-top:0}

/* ===== v5 (30 Oct 2026, after "pick the artist first like Traktrain, no fixed filter panel, the text is way too small"):
   the main page opens on artist boxes, an artist page = banner + one tab per kind of thing + SORT + a FILTER dropdown,
   bigger text everywhere (every size in this file went up about 2px). ===== */
.nsb [hidden]{display:none!important}
/* artist boxes */
.nsb-arts{margin:6px 0 60px}
/* all the artists on one row, same width each; when the screen is too narrow for that the row swipes sideways */
.nsb-artg{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(100px,1fr);gap:10px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;padding-bottom:6px}
.nsb-art{display:flex;flex-direction:column;min-width:0;container-type:inline-size;scroll-snap-align:start;border:1px solid var(--rule2);background:var(--panel);color:var(--txt);text-decoration:none;transition:border-color .2s,background-color .2s}
.nsb-art .ph{position:relative;display:block;aspect-ratio:1;overflow:hidden;background:#1a1816}
.nsb-art .ph img{width:100%;height:100%;object-fit:cover;object-position:50% 22%;display:block;transition:transform .5s ease}
.nsb-art .ph i{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font:700 32px/1 var(--f);font-style:normal;color:var(--mute)}
.nsb-art .nm{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px 12px;min-width:0;text-align:center}
/* the name grows with the card, so the longest one (SENTFROMIRAQ) still fits on one line */
.nsb-art .nm b{max-width:100%;font-size:clamp(10px,10.5cqi,17px);line-height:1.15;letter-spacing:.02em;color:var(--bone);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nsb-art .nm small{font-size:12px;line-height:1.3;letter-spacing:.03em;color:var(--dim);white-space:nowrap}
.nsb-art:hover{border-color:var(--dim);background:var(--hov)}
.nsb-art:hover .ph img{transform:scale(1.04)}
.nsb-art:hover .nm small{color:var(--bone)}
/* the shop: heading, tabs + SORT + FILTER on one line */
html body .nsb-shop-h{margin:0 0 4px;font:700 24px/1.1 var(--f)!important;letter-spacing:.03em!important;color:var(--bone)!important}
.nsb-tbar{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 0 18px;border-bottom:1px solid var(--rule)}
.nsb-tbar .nsb-ttabs{flex:1 1 auto;min-width:0;margin:0;border-bottom:0}
.nsb-tbar .nsb-ttabs button{padding:16px 18px 14px;font-size:17px}
.nsb-tbar .nsb-ttabs button span{font-size:14px}
.nsb-tbar .r{display:flex;align-items:center;gap:10px;flex:none;padding:0 0 10px}
.nsb-tbar .nsb-sel{height:46px;padding:0 34px 0 14px;font-size:14.5px;letter-spacing:.04em}
.nsb-tbar .nsb-fbtn{display:inline-flex;align-items:center;gap:9px;height:46px;padding:0 16px;background:#0e0d0c;border:1px solid var(--rule2);color:var(--bone);font:700 14.5px/1 var(--f);letter-spacing:.05em;cursor:pointer}
.nsb-tbar .nsb-fbtn:hover,.nsb-tbar .nsb-fbtn.on{border-color:var(--bone)}
.nsb-tbar .nsb-fbtn .nsb-ico{width:17px;height:17px;fill:none;color:var(--bone)}
.nsb-tbar .nsb-fbtn em{font-style:normal;padding:3px 6px 2px;background:var(--rust);color:#fff;font-size:13px}
.nsb-count{margin:0 0 18px;font-size:15px;line-height:1.5;color:var(--dim)}
.nsb-count:empty{display:none}
.nsb-count .bl{color:var(--dim)}
.nsb-count button{font-size:13.5px}
/* FILTER dropdown: closed until you open it */
.nsb-fwrap{position:relative}
.nsb-fwrap .nsb-filt{position:absolute;top:calc(100% + 8px);right:0;left:auto;bottom:auto;z-index:70;display:flex;flex-direction:column;width:420px;max-width:calc(100vw - 28px);max-height:min(74vh,700px);padding:0;overflow:hidden;background:#0e0d0c;border:1px solid var(--rule2);box-shadow:0 26px 70px rgba(0,0,0,.8);transform:none;visibility:visible;transition:none}
.nsb-fwrap .nsb-filt .fh{display:flex;align-items:center;gap:14px;padding:16px 18px 14px;border-bottom:1px solid var(--rule)}
.nsb-fwrap .nsb-filt .fh b{flex:1;font-size:16px;color:var(--bone)}
.nsb-fwrap .nsb-filt .fh .fc{font-size:13.5px}
.nsb-fwrap .nsb-filt .fh .fc[disabled]{opacity:.35;cursor:default}
.nsb-fwrap .nsb-filt .fh .fx{display:flex;width:38px;height:38px;border:0}
.nsb-fwrap .nsb-filt .fh .fx .nsb-ico{width:18px;height:18px}
.nsb-fwrap .nsb-filt .fb{flex:1 1 auto;min-height:0;overflow-y:auto;padding:0 18px;overscroll-behavior:contain;scrollbar-width:thin}
.nsb-fwrap .nsb-filt .fg{padding:18px 0}
.nsb-fwrap .nsb-filt .fg:last-child{border-bottom:0}
.nsb-fwrap .nsb-filt .fg>p{display:flex;justify-content:space-between;margin:0 0 12px;font-size:14px;color:var(--dim)}
.nsb-fwrap .nsb-filt .fg>p .fv{color:var(--bone)}
.nsb-fwrap .nsb-filt .fg>p.fnote{display:block;margin:12px 0 0;font-size:13px;color:var(--mute)}
.nsb-fwrap .nsb-filt .fchips{gap:8px}
.nsb-fwrap .nsb-filt .fchips button{padding:9px 12px 8px;font-size:14px}
.nsb-fwrap .nsb-filt .fr{padding:8px 0;font-size:15px}
.nsb-fwrap .nsb-filt .fr input{width:17px;height:17px}
.nsb-fwrap .nsb-filt .frng .nsb-in{padding:10px 11px;font-size:16px}
.nsb-fwrap .nsb-filt .frng{font-size:14px}
.nsb-fwrap .nsb-filt .nsb-sel{height:46px;font-size:15px}
.nsb-fwrap .nsb-filt .fsr{display:flex;align-items:center;gap:10px;padding:0 0 0 12px;border:1px solid var(--rule2);background:var(--panel)}
.nsb-fwrap .nsb-filt .fsr:focus-within{border-color:var(--dim)}
.nsb-fwrap .nsb-filt .fsr .nsb-ico{fill:none;color:var(--dim)}
.nsb-fwrap .nsb-filt .fsr .nsb-in{flex:1;border:0;background:none;padding:12px 10px 12px 0;font-size:16px}
.nsb-fwrap .nsb-filt .fgo{display:block;position:static;padding:12px 18px 16px;border-top:1px solid var(--rule);background:none}
.nsb-fwrap .nsb-filt .fgo .nsb-btn{margin:0;padding:15px 18px;font-size:15px}
/* BPM: one slider, two handles */
.nsb-filt .frs{position:relative;height:30px;margin:0 9px}
.nsb-filt .frs .tr,.nsb-filt .frs .fl{position:absolute;top:14px;height:2px;pointer-events:none}
.nsb-filt .frs .tr{left:0;right:0;background:var(--rule2)}
.nsb-filt .frs .fl{left:var(--a,0%);right:calc(100% - var(--b,100%));background:var(--bone)}
.nsb-filt .frs input[type=range]{position:absolute;top:6px;left:-9px;width:calc(100% + 18px);height:18px;margin:0;padding:0;background:none;border:0;pointer-events:none;-webkit-appearance:none;appearance:none;outline:none}
.nsb-filt .frs input[type=range]::-webkit-slider-runnable-track{height:18px;background:none;border:0}
.nsb-filt .frs input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--bone);border:3px solid #0e0d0c;box-shadow:0 0 0 1px var(--bone);cursor:pointer;pointer-events:auto}
.nsb-filt .frs input[type=range]::-moz-range-track{height:18px;background:none;border:0}
.nsb-filt .frs input[type=range]::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--bone);border:3px solid #0e0d0c;box-shadow:0 0 0 1px var(--bone);cursor:pointer;pointer-events:auto}
.nsb-filt .frs input[type=range]:focus-visible::-webkit-slider-thumb{outline:1px dashed var(--dim);outline-offset:3px}
.nsb-filt .frs input[type=range]:focus-visible::-moz-range-thumb{outline:1px dashed var(--dim);outline-offset:3px}
.nsb-fbg.on{display:none}
/* one artist: banner, picture, name, numbers, links */
.nsb-back{display:inline-flex;margin:0 0 14px;padding:8px 0;color:var(--dim);font-size:15px;font-weight:700;letter-spacing:.04em;text-decoration:none}
.nsb-back:hover{color:var(--bone)}
.nsb-ah{position:relative;margin:0 0 34px;border:1px solid var(--rule2);background:#0c0b0a;overflow:hidden;isolation:isolate}
.nsb-ah .bn{position:relative;height:230px;overflow:hidden;background:#141210}
.nsb-ah .bn img{position:absolute;left:-10%;top:-60%;width:120%;height:220%;object-fit:cover;filter:blur(34px) brightness(.5) saturate(1.05)}
.nsb-ah .bn::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,11,10,.1) 20%,rgba(12,11,10,.96) 100%)}
.nsb-ah .row{position:relative;display:flex;align-items:flex-end;gap:30px;margin-top:-120px;padding:0 32px 30px}
.nsb-ah .av{display:block;width:190px;height:190px;flex:none;border-radius:50%;overflow:hidden;border:4px solid #0c0b0a;background:#1a1816}
.nsb-ah .av img{width:100%;height:100%;object-fit:cover;display:block}
.nsb-ah .tx{flex:1 1 auto;min-width:0;padding-bottom:6px}
.nsb-ah .k{margin:0 0 8px;font-size:14px;font-weight:700;letter-spacing:.06em;color:var(--dim)}
html body .nsb-ah h2{margin:0 0 14px;font:700 54px/1 var(--f)!important;letter-spacing:.03em!important;color:var(--bone)!important;overflow-wrap:anywhere}
.nsb-ah .st{display:flex;flex-wrap:wrap;gap:8px 22px;margin:0;font-size:15px;letter-spacing:.04em;color:var(--dim)}
.nsb-ah .st b{color:var(--bone);font-size:18px}
.nsb-ah .bio{margin:14px 0 0;max-width:640px;font-size:16px;line-height:1.6;color:var(--txt);white-space:pre-line}
.nsb-ah .ln{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end;flex:0 1 auto;padding-bottom:8px}
.nsb-ah .ln .nsb-btn{height:44px;padding:0 16px;font-size:14px}
.nsb-ah .so{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--rule2);color:var(--txt);transition:border-color .2s,color .2s}
.nsb-ah .so:hover{border-color:var(--dim);color:var(--bone)}
.nsb-ah .so .nsb-ico{width:19px;height:19px;fill:currentColor}
/* rows: kind of kit next to the name, what you get for made-to-order things */
.nsb-tr .t .by .kd{flex:none;font-size:13.5px;letter-spacing:.04em;color:var(--mute)}
.nsb-tr .t .by .kd::before{content:'· ';}
.nsb-tr .wv .dt{display:block;font-size:14.5px;line-height:1.45;color:var(--txt)}
.nsb-tr.nopv .cv img{opacity:1}
@media (max-width:1100px){
  .nsb-tbar .nsb-ttabs button{padding:15px 14px 13px;font-size:16px}
}
@media (max-width:900px){
  .nsb-tbar{flex-direction:column;align-items:stretch;gap:0}
  .nsb-tbar .r{padding:12px 0 14px;justify-content:flex-end}
  .nsb-tr .t .by .kd{display:none}
  .nsb-ah .row{flex-wrap:wrap}
  .nsb-ah .ln{flex:1 1 100%;justify-content:flex-start;padding:4px 0 0}
}
@media (max-width:640px){
  .nsb-arts{margin-bottom:46px}
  .nsb-artg{margin:0 -14px;padding:0 14px 6px;scroll-padding-inline:14px}
  html body .nsb-shop-h{font-size:21px!important}
  .nsb-tbar .nsb-ttabs{margin:0 -14px;padding:0 14px}
  .nsb-tbar .nsb-ttabs button{padding:14px 12px 12px;font-size:15.5px}
  .nsb-tbar .r{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
  .nsb-tbar .nsb-sel{width:100%;height:46px;font-size:14px}
  .nsb-tbar .nsb-fbtn{width:100%;justify-content:center}
  .nsb-fwrap{position:static}
  .nsb-fwrap .nsb-filt{position:fixed;top:auto;left:0;right:0;bottom:0;z-index:2147483001;width:100%;max-width:none;max-height:88vh;border-width:1px 0 0;box-shadow:0 -20px 60px rgba(0,0,0,.7)}
  .nsb-fbg.on{display:block;position:fixed;inset:0;z-index:2147483000;background:rgba(0,0,0,.62)}
  .nsb-back{margin-bottom:10px}
  .nsb-ah{margin:0 -14px 26px;border-width:1px 0}
  .nsb-ah .bn{height:150px}
  .nsb-ah .row{gap:16px;margin-top:-86px;padding:0 16px 22px}
  .nsb-ah .av{width:124px;height:124px;border-width:3px}
  .nsb-ah .tx{flex-basis:100%}
  html body .nsb-ah h2{font-size:38px!important;margin-bottom:10px}
  .nsb-ah .st{gap:6px 16px;font-size:14px}
  .nsb-ah .st b{font-size:16px}
}
/* v5 fixes: the price column has one width on every row, so TIME / BPM / KEY sit under their names */
.nsb-tl{--cols:28px 56px minmax(0,1.5fr) minmax(0,1.3fr) 54px 50px 50px minmax(0,.8fr) 214px}
.nsb-tr .act,.nsb-th span:last-child{min-width:0}
.nsb-art .nm small .kn,.nsb-ah .st .kn{white-space:nowrap}
.nsb-ah .ln{flex:none}
@media (max-width:1100px){.nsb-tl{--cols:28px 56px minmax(0,1.5fr) minmax(0,1.2fr) 54px 50px 50px 214px}}
@media (max-width:900px){.nsb-tl{--cols:56px minmax(0,1fr) auto}.nsb-ah .ln{flex:1 1 100%}}
@media (max-width:640px){.nsb-tl{--cols:52px minmax(0,1fr) auto}}
/* studio profile: the member's links, one row per site */
fieldset.nsb-links{margin:0 0 15px;padding:0;border:0}
#p-tagw{margin-bottom:22px}
.nsb-tagh{display:block;margin-top:8px;font-size:13.5px;color:var(--mute);line-height:1.45}
fieldset.nsb-links legend{padding:0;margin:0 0 7px;font-size:13px;letter-spacing:.05em;color:var(--dim);font-weight:700}
.nsb-links .ln{display:grid;grid-template-columns:130px minmax(0,1fr);align-items:center;gap:12px;margin-top:8px}
.nsb-links .ln span{font-size:14px;color:var(--txt);font-weight:400;letter-spacing:.02em}
@media (max-width:640px){.nsb-links .ln{grid-template-columns:1fr;gap:5px}}
/* the site puts a little arrow after outside links; the icon buttons don't need it */
html body .nsb-ah a.so::after{content:none!important;display:none!important}
/* ===== studio v2 (30 Oct 2026, "make it super simple ... everything even, nothing off-centered"): no sidebar. Who you are
   on top, one row of tabs like the store (an even grid on phones, nothing cut off), + PUT UP NEW next to them, then the page.
   Every input, select and button in a row has one height; every row of boxes has one width. ===== */
.nsb-dash.nsb-st{display:block;border:0;min-height:0}
.nsb-st .nsb-dmain{padding:0}
.nsb-me{display:flex;align-items:center;gap:18px;padding:18px 20px;border:1px solid var(--rule2);background:var(--panel)}
.nsb-me .av{display:flex;align-items:center;justify-content:center;width:56px;height:56px;flex:none;border-radius:50%;overflow:hidden;background:#1a1816}
.nsb-me .av img{width:100%;height:100%;object-fit:cover;display:block}
.nsb-me .av i{font:700 24px/1 var(--f);font-style:normal;color:var(--mute)}
.nsb-me .nm{display:flex;flex-direction:column;gap:6px;flex:1 1 auto;min-width:0}
.nsb-me .nm b{font-size:21px;line-height:1.1;letter-spacing:.04em;color:var(--bone);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nsb-me .nm small{font-size:14px;color:var(--dim);letter-spacing:.03em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nsb-me .lk{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;flex:none}
.nsb-me .lk .nsb-btn{height:44px;padding:0 18px;font-size:13.5px;white-space:nowrap}
.nsb-dbar{display:flex;align-items:center;gap:20px;margin:0 0 34px;border-bottom:1px solid var(--rule)}
.nsb-dbar .tabs{display:flex;flex:1 1 auto;min-width:0}
.nsb-dbar .tabs button{position:relative;padding:20px 22px 17px;background:none;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;color:var(--dim);font:700 16px/1 var(--f);letter-spacing:.05em;white-space:nowrap;cursor:pointer;transition:color .2s}
.nsb-dbar .tabs button:hover{color:var(--bone)}
.nsb-dbar .tabs button.on{color:var(--bone);border-bottom-color:var(--rust)}
.nsb-dbar .tabs button em{display:inline-block;margin-left:8px;min-width:20px;padding:3px 5px 2px;background:var(--rust);color:#fff;font:700 12.5px/1 var(--f);font-style:normal;text-align:center;vertical-align:1px}
.nsb-dbar .new{flex:none;height:44px;padding:0 22px}
.nsb-st .nsb-dh{align-items:center;margin:0 0 28px}
html body .nsb-st .nsb-dh h1{font-size:30px!important}
.nsb-st .nsb-dh p{margin-top:8px;font-size:16px}
.nsb-st .nsb-dh .acts .nsb-btn{height:44px;padding:0 18px}
.nsb-st .nsb-dh p:empty{display:none}
/* one height for every field */
.nsb-st .nsb-in:not(textarea),.nsb-st .nsb-sel{height:46px}
.nsb-st .nsb-money{height:46px}
.nsb-st .nsb-money input{height:44px}
.nsb-st .nsb-chk.box{min-height:46px;margin:0;padding:0 14px;border:1px solid var(--rule2);background:var(--panel)}
.nsb-st .nsb-fld>span:first-child{font-size:13px;letter-spacing:.05em;color:var(--dim);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* HOME */
.nsb-st .nsb-alert{margin:0 0 16px}
.nsb-st .nsb-alert .nsb-btn{flex:none;min-width:160px;height:44px}
.nsb-st .nsb-kpis{grid-auto-rows:1fr;gap:14px;margin:0 0 30px}
.nsb-st .nsb-alert+.nsb-kpis{margin-top:30px}
.nsb-st .nsb-kpis div{display:flex;flex-direction:column;padding:20px 20px 18px}
.nsb-st .nsb-kpis span{margin:0 0 14px;font-size:13.5px;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nsb-st .nsb-kpis b{font-size:28px;line-height:1}
.nsb-st .nsb-kpis small{margin-top:10px;font-size:14px;color:var(--mute)}
.nsb-st .nsb-box{padding:20px 22px 8px}
.nsb-st .nsb-h3{font-size:14.5px!important}
/* MY ITEMS */
.nsb-st .nsb-itf{gap:8px;margin:0 0 18px}
.nsb-st .nsb-itf button{height:40px;padding:0 15px;font-size:14px}
.nsb-st .nsb-itr .acts .nsb-btn{height:40px;min-width:76px}
.nsb-st .nsb-itl .hr2,.nsb-st .nsb-itr{grid-template-columns:56px minmax(0,1.5fr) 80px minmax(0,1.1fr) 60px 60px 252px}
.nsb-me{margin:0 0 10px}
.nsb-st p.nsb-note{max-width:none}
/* the floating language button sits bottom-left: lift it over the sticky save bar (same as ns-file.css does) */
body:has(.nsb-actions.stick) #ns-lang:not(.nsl-top){bottom:calc(100px + env(safe-area-inset-bottom,0px))}
/* lists: sales, orders, payouts, buyers, owner items */
.nsb-list{border-top:1px solid var(--rule)}
.nsb-lrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:15px 4px;border-bottom:1px solid var(--rule)}
.nsb-lrow .tx{display:flex;flex-direction:column;gap:6px;min-width:0}
.nsb-lrow .ti{color:var(--bone);font-weight:700;font-size:16px;letter-spacing:.03em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nsb-lrow .sub{font-size:14px;color:var(--dim);line-height:1.45;overflow-wrap:anywhere}
.nsb-lrow .sub b{color:var(--txt)}
.nsb-lrow .pr{display:flex;flex-direction:column;align-items:flex-end;gap:7px;color:var(--bone);font-weight:700;font-size:16px;text-align:right;white-space:nowrap}
.nsb-lrow .pr small{font-weight:400;font-size:13px;color:var(--mute);letter-spacing:.03em}
.nsb-lrow .acts{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.nsb-lrow .acts .nsb-btn{height:40px;min-width:120px}
.nsb-lrow .acts .nsb-in{width:200px;height:40px}
.nsb-st .nsb-block{margin:0 0 40px}
.nsb-pnote{margin:14px 0 10px!important}
/* PUT UP NEW / EDIT */
.nsb-st .nsb-edit{max-width:none;gap:20px}
button.nsb-back{background:none;border:0;cursor:pointer;font-family:var(--f)}
.nsb-st .nsb-sect{padding:24px 26px 12px}
.nsb-st .nsb-sect legend{font-size:15.5px}
.nsb-st .nsb-sect legend .sn{width:28px;height:28px}
.nsb-st .nsb-types{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}
.nsb-st .nsb-types button{gap:14px;padding:22px 6px 18px;font-size:14px}
.nsb-st .nsb-types button span{white-space:nowrap}
.nsb-tico{width:30px;height:30px;flex:none}
.nsb-intro1{margin:16px 0 10px!important;font-size:15.5px!important;color:var(--dim)!important}
.nsb-intro1.first{margin-top:0!important}
.nsb-frow{display:grid;gap:0 22px;align-items:end}
.nsb-frow.n1{grid-template-columns:minmax(0,1fr)}
.nsb-frow.n2{grid-template-columns:repeat(2,minmax(0,1fr))}
.nsb-frow.n3{grid-template-columns:repeat(3,minmax(0,1fr))}
.nsb-frow.n4{grid-template-columns:repeat(4,minmax(0,1fr))}
.nsb-frow .kk{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.nsb-fnote{margin:-4px 0 16px!important;font-size:14px!important}
.nsb-st .nsb-files{grid-template-columns:minmax(0,1fr)}
.nsb-st .nsb-up{min-height:70px}
.nsb-st .nsb-up .nsb-btn{height:38px;min-width:96px}
.nsb-st .nsb-tier{grid-template-columns:minmax(0,1fr) 170px;padding:14px 0}
.nsb-st .nsb-actions{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,230px);gap:10px}
.nsb-st .nsb-actions .nsb-btn{height:52px;padding:0 14px;white-space:nowrap}
.nsb-st .nsb-actions.stick{padding:18px 0}
/* PROFILE */
.nsb-prof .nsb-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 26px;margin:0 0 16px}
.nsb-prof .nsb-links .ln{grid-template-columns:120px minmax(0,1fr);margin:0}
.nsb-prof #p-tagw{margin-bottom:14px}
/* OWNER: six even buttons, one part at a time */
.nsb-otabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:0 0 26px}
.nsb-otabs button{display:flex;align-items:center;justify-content:center;gap:9px;height:50px;padding:0 6px;background:var(--panel);border:1px solid var(--rule2);color:var(--dim);font:700 14.5px/1 var(--f);letter-spacing:.05em;white-space:nowrap;cursor:pointer;transition:border-color .2s,color .2s}
.nsb-otabs button span{font-weight:400;color:var(--mute)}
.nsb-otabs button:hover{color:var(--bone);border-color:var(--dim)}
.nsb-otabs button.on{background:var(--bone);border-color:var(--bone);color:var(--ink)}
.nsb-otabs button.on span{color:var(--ink)}
.nsb-oit{grid-template-columns:minmax(0,1fr) 160px 160px}
.nsb-oit .nsb-sel,.nsb-oit .nsb-pin{width:100%;height:44px}
.nsb-pin.on{background:var(--bone);border-color:var(--bone);color:var(--ink)}
.nsb-sold{display:flex;align-items:center;justify-content:center;height:44px;border:1px dashed var(--rule2);font-size:13.5px;font-weight:700;letter-spacing:.05em;color:var(--dim)}
.nsb-oord{align-items:start}
.nsb-mems{display:grid;gap:14px}
.nsb-mem{padding:18px 20px;border:1px solid var(--rule2);background:var(--panel);min-width:0}
.nsb-mem .hd{display:flex;align-items:baseline;gap:14px;margin:0 0 14px;min-width:0}
.nsb-mem .hd b{flex:none;font-size:17px;color:var(--bone);letter-spacing:.04em}
.nsb-mem .hd small{min-width:0;font-size:14px;color:var(--dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nsb-mem .fs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.3fr) 140px 150px 110px;gap:12px;align-items:end}
.nsb-mem .nsb-fld,.nsb-lease .nsb-fld{margin:0}
.nsb-mem .sv .nsb-btn{width:100%;height:46px}
.nsb-add{max-width:560px;margin:26px 0 0!important}
.nsb-oset{max-width:none}
.nsb-leases{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.nsb-lease{padding:18px 20px;border:1px solid var(--rule2);background:var(--panel);min-width:0}
.nsb-lease>b{display:block;margin:0 0 14px;font-size:16px;color:var(--bone);letter-spacing:.05em}
.nsb-lease .fs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.nsb-lease .fs>*{grid-column:span 3}
.nsb-lease .fs>.nsb-fld:nth-child(5),.nsb-lease .fs>.nsb-fld:nth-child(6){grid-column:1/-1}
@media (max-width:1100px){
  .nsb-dbar .tabs button{padding:19px 16px 16px}
  .nsb-st .nsb-itl .hr2,.nsb-st .nsb-itr{grid-template-columns:56px minmax(0,1.6fr) 80px minmax(0,1fr) 252px}
  .nsb-mem .fs{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:900px){
  .nsb-dbar{flex-direction:column;align-items:stretch;gap:0;border-bottom:0}
  .nsb-dbar .tabs{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));border-bottom:1px solid var(--rule)}
  .nsb-dbar .tabs button{padding:17px 0 15px;text-align:center}
  .nsb-dbar .new{width:100%;margin-top:14px}
  .nsb-st .nsb-types{grid-template-columns:repeat(4,minmax(0,1fr))}
  .nsb-otabs{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nsb-frow.n4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nsb-leases{grid-template-columns:minmax(0,1fr)}
  .nsb-st .nsb-itr{grid-template-columns:56px minmax(0,1fr) auto}
  .nsb-st .nsb-itr .acts{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:8px}
}
@media (max-width:640px){
  .nsb-me{flex-wrap:wrap;gap:14px;padding:16px}
  .nsb-me .av{width:48px;height:48px}
  .nsb-me .nm b{font-size:18px}
  .nsb-me .nm small{font-size:13.5px}
  .nsb-me .lk{flex:1 1 100%}
  .nsb-me .lk .nsb-btn{padding:0 8px}
  .nsb-dbar{margin-bottom:28px}
  .nsb-dbar .tabs button{padding:16px 0 14px;font-size:13px;letter-spacing:.03em}
  .nsb-dbar .tabs button em{position:absolute;top:5px;right:3px;margin:0;min-width:17px;padding:2px 3px 1px;font-size:11px}
  .nsb-dbar .new{height:50px}
  html body .nsb-st .nsb-dh h1{font-size:25px!important}
  .nsb-st .nsb-dh{margin-bottom:22px}
  .nsb-st .nsb-dh .acts{width:100%;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}
  .nsb-st .nsb-alert{flex-direction:column;align-items:stretch;gap:12px;padding:16px}
  .nsb-st .nsb-alert .nsb-btn{width:100%}
  .nsb-st .nsb-kpis{gap:10px}
  .nsb-st .nsb-kpis div{padding:16px}
  .nsb-st .nsb-kpis span{font-size:12.5px;margin-bottom:12px}
  .nsb-st .nsb-kpis b{font-size:22px}
  .nsb-st .nsb-kpis small{font-size:13px}
  .nsb-st .nsb-box{padding:16px 16px 6px}
  .nsb-st .nsb-sect{padding:18px 16px 8px}
  .nsb-st .nsb-sect legend{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:12px;row-gap:4px}
  .nsb-st .nsb-sect legend small{display:block;grid-column:2;margin:0}
  .nsb-st .nsb-types{grid-template-columns:minmax(0,1fr);gap:8px}
  .nsb-st .nsb-types button{flex-direction:row;justify-content:flex-start;gap:16px;padding:14px 16px;font-size:14.5px}
  .nsb-tico{width:24px;height:24px}
  .nsb-frow.n2,.nsb-frow.n3,.nsb-frow.n4{grid-template-columns:minmax(0,1fr)}
  .nsb-st .nsb-up{grid-template-columns:minmax(0,1fr)}
  .nsb-st .nsb-up>div:nth-child(2){display:grid!important;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}
  .nsb-st .nsb-tier{grid-template-columns:minmax(0,1fr) 130px}
  .nsb-st .nsb-actions{grid-auto-columns:minmax(0,1fr)}
  .nsb-st .nsb-actions .nsb-btn{font-size:14px;padding:0 8px}
  .nsb-prof .nsb-links{grid-template-columns:minmax(0,1fr)}
  .nsb-lrow{grid-template-columns:minmax(0,1fr);gap:10px;padding:14px 0}
  .nsb-lrow .pr{flex-direction:row;flex-wrap:wrap;align-items:baseline;column-gap:10px;row-gap:10px;text-align:left;white-space:normal}
  .nsb-lrow .acts{width:100%;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);justify-content:stretch}
  .nsb-lrow .acts .nsb-btn{min-width:0}
  .nsb-lrow .acts .nsb-in{width:100%}
  .nsb-oit{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nsb-oit .tx{grid-column:1/-1}
  .nsb-otabs button{height:46px;font-size:13px;gap:6px}
  .nsb-mem{padding:16px}
  .nsb-mem .hd{flex-direction:column;gap:5px}
  .nsb-mem .hd small{white-space:normal;overflow-wrap:anywhere}
  .nsb-mem .fs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nsb-mem .fs .ap,.nsb-mem .fs .sv{grid-column:1/-1}
  .nsb-mem .sv>span{display:none}
  .nsb-lease{padding:16px}
}
@media (max-width:360px){
  .nsb-dbar .tabs button{font-size:11.5px;letter-spacing:.02em}
  .nsb-st .nsb-sect legend{font-size:14px}
}
/* studio PROFILE: keep the currency on EUR */
.nsb-prof .nsb-fnote.keep{padding:10px 12px;border-left:2px solid var(--bone);color:var(--txt)}
.nsb-prof .nsb-fnote.keep b{color:var(--bone);letter-spacing:.06em}
