:root{--bfj-bg:#0B0B14;--bfj-surface:#15121F;--bfj-surface-raised:#1E1A2B;--bfj-text:#F2EFE7;--bfj-text-2:#ADA6B8;--bfj-text-3:#8A8398;--bfj-line:rgba(242,239,231,.12);--bfj-line-strong:rgba(242,239,231,.24);--bfj-action:#FFB000;--bfj-action-hover:#FFC333;--bfj-on-action:#0B0B14;--bfj-beatport:#01FF95;--bfj-bandcamp:#1DA0C3;--bfj-buy-h:26px;--bfj-buy-w:4.75rem;--bfj-play:28px;--bfj-row-art:48px;--bfj-row-art-radius:5px;--bfj-rank:1.25rem;--bfj-interactive:#2F8FFF;--bfj-interactive-soft:#9CC5FF;--bfj-interactive-bg:rgba(47,143,255,.1);--bfj-interactive-bg-hover:rgba(47,143,255,.18);--bfj-interactive-border:rgba(47,143,255,.4);--bfj-interactive-border-hover:rgba(47,143,255,.7);--bfj-brand-cyan:#00D4FF;--bfj-brand-gradient:linear-gradient(135deg,#2F8FFF,#00D4FF);--bfj-hd-green:#C6FF00;--bfj-hd-ink:#0C0D0B;--bfj-success:#7FD98F;--bfj-success-bg:rgba(127,217,143,.08);--bfj-success-border:rgba(127,217,143,.35);--bfj-warning:#F2B84B;--bfj-warning-bg:rgba(242,184,75,.08);--bfj-warning-border:rgba(242,184,75,.35);--bfj-error:#E06C75;--bfj-error-bg:rgba(224,108,117,.08);--bfj-error-border:rgba(224,108,117,.4);--bfj-info:#7AC8FF;--bfj-info-bg:rgba(122,200,255,.08);--bfj-info-border:rgba(122,200,255,.35);--bfj-disabled-bg:rgba(242,239,231,.07);--bfj-disabled-text:#6F6A7A;--bfj-font-display:'Anton',Impact,'Arial Narrow',sans-serif;--bfj-font-body:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--bfj-font-mono:'Share Tech Mono',ui-monospace,'SFMono-Regular',Menlo,monospace;--bfj-text-display:clamp(2.75rem,8vw,5rem);--bfj-text-h1:clamp(2rem,5vw,2.8rem);--bfj-text-h2:clamp(1.5rem,3.5vw,2rem);--bfj-text-h3:1.15rem;--bfj-text-h4:1rem;--bfj-text-body:1rem;--bfj-text-small:.875rem;--bfj-text-meta:.8125rem;--bfj-text-label:.75rem;--bfj-text-button:.95rem;--bfj-text-tm:.5em;--bfj-space-1:.25rem;--bfj-space-2:.5rem;--bfj-space-3:.75rem;--bfj-space-4:1rem;--bfj-space-5:1.5rem;--bfj-space-6:2rem;--bfj-space-7:3rem;--bfj-space-8:4rem;--bfj-space-9:6rem;--bfj-radius-sm:3px;--bfj-radius-md:6px;--bfj-radius-lg:12px;--bfj-radius-pill:999px;--bfj-shadow-menu:0 10px 28px rgba(0,0,0,.4);--bfj-shadow-modal:0 18px 40px rgba(0,0,0,.45);--bfj-duration-fast:120ms;--bfj-duration-base:200ms;--bfj-duration-slow:350ms;--bfj-ease:cubic-bezier(.2,.7,.2,1);--bfj-z-sticky:10;--bfj-z-dropdown:20;--bfj-z-tooltip:30;--bfj-z-notice:40;--bfj-z-floating:60;--bfj-z-popover:70;--bfj-z-player-promo:499;--bfj-z-player:500;--bfj-z-prompt:600;--bfj-z-consent:700;--bfj-z-drawer:750;--bfj-z-modal:900;--bfj-z-modal-top:1000;--bg:var(--bfj-bg);--bg-alt:var(--bfj-surface);--fg:var(--bfj-text);--fg-dim:var(--bfj-text-2);--muted:var(--bfj-text-3);--line:var(--bfj-line);--border:var(--bfj-line);--accent:var(--bfj-interactive);--accent-blue:var(--bfj-interactive);--accent2:var(--bfj-action);--secondary-bg:var(--bfj-interactive-bg);--secondary-border:var(--bfj-interactive-border);--secondary-fg:var(--bfj-interactive-soft);--secondary-bg-hover:var(--bfj-interactive-bg-hover);--secondary-border-hover:var(--bfj-interactive-border-hover)}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--bfj-interactive);outline-offset:2px}
@media (max-width:600px){
:root{--bfj-row-art:44px}
}
@media (prefers-reduced-motion:reduce){
*,::after,::before{animation-duration:NaNs!important;animation-iteration-count:1!important;transition-duration:NaNs!important;scroll-behavior:auto!important}
}
.bfj-confirm{display:flex;flex-direction:column;gap:var(--bfj-space-2);margin-top:var(--bfj-space-2);padding:var(--bfj-space-3) var(--bfj-space-4);background:var(--bfj-surface);border:1px solid var(--bfj-line-strong);border-left:3px solid var(--bfj-interactive);border-radius:var(--bfj-radius-md);font-size:var(--bfj-text-small);color:var(--bfj-text-2)}
.bfj-confirm.is-danger{border-left-color:var(--bfj-error)}
.bfj-confirm strong{color:var(--bfj-text);font-weight:600}
.bfj-confirm-actions{display:flex;flex-wrap:wrap;gap:var(--bfj-space-2)}
.bfj-confirm-actions button{font:inherit;font-weight:600;font-size:var(--bfj-text-small);min-height:44px;padding:0 var(--bfj-space-4);border-radius:var(--bfj-radius-md);cursor:pointer;background:0 0;color:var(--bfj-text);border:1px solid var(--bfj-line-strong)}
.bfj-confirm-actions button.is-yes{background:var(--bfj-interactive-bg);color:var(--bfj-interactive-soft);border-color:var(--bfj-interactive-border)}
.bfj-confirm.is-danger .bfj-confirm-actions button.is-yes{background:0 0;color:var(--bfj-error);border-color:var(--bfj-error-border)}
.bfj-confirm-actions button:disabled{background:var(--bfj-disabled-bg);color:var(--bfj-disabled-text);border-color:transparent;cursor:not-allowed}
.bfj-confirm-msg{margin:0;color:var(--bfj-error)}
.bfj-confirm-msg:empty{display:none}
.bfj-btn,.bfj-cta,.bfj-cta-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:44px;padding:.72rem 1.1rem;border-radius:var(--bfj-radius-md);border:1px solid transparent;font-family:inherit;font-size:.86rem;font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer;transition:background-color var(--bfj-duration-fast) var(--bfj-ease),border-color var(--bfj-duration-fast) var(--bfj-ease),color var(--bfj-duration-fast) var(--bfj-ease)}
.bfj-btn[hidden],.bfj-cta-secondary[hidden],.bfj-cta[hidden]{display:none}
.bfj-btn svg,.bfj-cta svg,.bfj-cta-secondary svg{width:18px;height:18px;flex-shrink:0}
.bfj-btn--primary,.bfj-cta{background:var(--bfj-action);color:var(--bfj-on-action)}
.bfj-btn--primary:hover,.bfj-cta:hover{background:var(--bfj-action-hover)}
.bfj-btn--secondary{background:var(--bfj-interactive-bg);color:var(--bfj-interactive-soft);border-color:var(--bfj-interactive-border)}
.bfj-btn--secondary:hover{background:var(--bfj-interactive-bg-hover);border-color:var(--bfj-interactive-border-hover)}
.buy-action{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--bfj-space-1);height:var(--bfj-buy-h);padding:0 var(--bfj-space-2);box-sizing:border-box;border:0;border-radius:2px;background:var(--bfj-action);color:var(--bfj-on-action);font-family:var(--bfj-font-body);font-size:var(--bfj-text-label);font-weight:700;line-height:1;letter-spacing:.01em;white-space:nowrap;text-decoration:none;cursor:pointer;flex:none}
[class*=buy-action--]{width:var(--bfj-buy-w);min-width:var(--bfj-buy-w);max-width:var(--bfj-buy-w)}
.buy-action::before{content:"";position:absolute;inset:-9px -2px}
.buy-action:hover{filter:brightness(1.08)}
.buy-action:focus-visible{outline:2px solid var(--bfj-interactive);outline-offset:3px}
.buy-action--beatport{background:var(--bfj-beatport)}
.buy-action--bandcamp{background:var(--bfj-bandcamp)}
.buy-action--pluginboutique{background:var(--bfj-text)}
img.buy-logo{border-radius:2px}
.buy-logo{width:13px;height:13px;flex:none;fill:currentColor;display:block}
.play-btn{width:var(--bfj-play);height:var(--bfj-play);border-radius:50%;flex:none;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;padding:0 0 0 2px;margin:0;border:1px solid var(--bfj-interactive);background:var(--bfj-interactive);color:var(--bfj-on-action);font-family:inherit;font-size:var(--bfj-text-label);line-height:1;cursor:pointer}
.play-btn.playing{background:var(--bfj-action);border-color:var(--bfj-action);padding-left:0}
.play-btn.is-empty{visibility:hidden;cursor:default}
.play-btn:focus-visible{outline:2px solid var(--bfj-interactive);outline-offset:2px}
@media (hover:hover){
.play-btn:not(.is-empty):hover{filter:brightness(1.12)}
}
.bfj-btn--quiet,.bfj-cta-secondary{background:0 0;color:var(--bfj-text);border-color:var(--bfj-line-strong)}
.bfj-btn--quiet:hover,.bfj-cta-secondary:hover{border-color:var(--bfj-text);background:rgba(242,239,231,.06)}
.bfj-btn--danger{background:0 0;color:var(--bfj-error);border-color:var(--bfj-error-border)}
.bfj-btn--danger:hover{background:var(--bfj-error-bg)}
.bfj-btn:disabled,.bfj-btn[aria-disabled=true],.bfj-cta-secondary:disabled,.bfj-cta:disabled{background:var(--bfj-disabled-bg);color:var(--bfj-disabled-text);border-color:transparent;cursor:not-allowed}
.bfj-btn--block{width:100%}
.bfj-link-btn{background:0 0;border:none;color:var(--bfj-text-2);font:inherit;font-size:.8rem;cursor:pointer;text-decoration:underline;padding:.3rem 0}
.bfj-link-btn:hover{color:var(--bfj-text)}
.bfj-status{display:inline-flex;align-items:center;gap:.4rem;padding:.2rem .6rem;border-radius:var(--bfj-radius-pill);font-size:var(--bfj-text-label);font-weight:600;line-height:1.4;letter-spacing:.02em;white-space:nowrap;border:1px solid var(--bfj-line-strong);color:var(--bfj-text-2);background:0 0}
.bfj-status-dot{width:.5rem;height:.5rem;border-radius:50%;background:currentColor;flex-shrink:0}
.bfj-status--good{color:var(--bfj-success);background:var(--bfj-success-bg);border-color:var(--bfj-success-border)}
.bfj-status--warn{color:var(--bfj-warning);background:var(--bfj-warning-bg);border-color:var(--bfj-warning-border)}
.bfj-status--bad{color:var(--bfj-error);background:var(--bfj-error-bg);border-color:var(--bfj-error-border)}
.bfj-status--info{color:var(--bfj-info);background:var(--bfj-info-bg);border-color:var(--bfj-info-border)}
.bfj-notice{display:flex;flex-direction:column;gap:var(--bfj-space-1);padding:var(--bfj-space-3) var(--bfj-space-4);border:1px solid var(--bfj-info-border);border-left-width:3px;border-radius:var(--bfj-radius-md);background:var(--bfj-info-bg);color:var(--bfj-text-2);font-size:var(--bfj-text-small);line-height:1.5}
.bfj-notice--good{border-color:var(--bfj-success-border);border-left-color:var(--bfj-success);background:var(--bfj-success-bg)}
.bfj-notice--warn{border-color:var(--bfj-warning-border);border-left-color:var(--bfj-warning);background:var(--bfj-warning-bg)}
.bfj-notice--bad{border-color:var(--bfj-error-border);border-left-color:var(--bfj-error);background:var(--bfj-error-bg)}
.bfj-notice--info{border-left-color:var(--bfj-info)}
.bfj-notice-title{color:var(--bfj-text);font-weight:600;font-size:var(--bfj-text-small)}
.bfj-notice-text{margin:0}
.bfj-notice-action{margin-top:var(--bfj-space-2)}
.bfj-empty{display:flex;flex-direction:column;align-items:flex-start;gap:var(--bfj-space-2);padding:var(--bfj-space-6) var(--bfj-space-5);border:1px dashed var(--bfj-line-strong);border-radius:var(--bfj-radius-lg);background:var(--bfj-surface)}
.bfj-empty-title{margin:0;color:var(--bfj-text);font-weight:600;font-size:var(--bfj-text-h4)}
.bfj-empty-text{margin:0;color:var(--bfj-text-2);font-size:var(--bfj-text-small);max-width:52ch}
.bfj-empty-action{margin-top:var(--bfj-space-2)}
.bfj-field{display:flex;flex-direction:column;gap:var(--bfj-space-1);margin-bottom:var(--bfj-space-4)}
.bfj-field>label{color:var(--bfj-text);font-size:var(--bfj-text-small);font-weight:600}
.bfj-field input,.bfj-field select,.bfj-field textarea{width:100%;min-height:44px;box-sizing:border-box;padding:.6rem .8rem;border-radius:var(--bfj-radius-md);border:1px solid var(--bfj-line-strong);background:var(--bfj-bg);color:var(--bfj-text);font:inherit;font-size:var(--bfj-text-body);color-scheme:dark}
.bfj-field input:focus,.bfj-field select:focus,.bfj-field textarea:focus{border-color:var(--bfj-interactive);outline:0;box-shadow:0 0 0 3px var(--bfj-interactive-bg)}
.bfj-field-hint{margin:0;color:var(--bfj-text-3);font-size:var(--bfj-text-meta)}
.bfj-field-error{margin:0;color:var(--bfj-error);font-size:var(--bfj-text-meta)}
.bfj-field-error:empty{display:none}
.bfj-field.is-invalid input,.bfj-field.is-invalid select,.bfj-field.is-invalid textarea{border-color:var(--bfj-error)}
.bfj-tm{font-size:var(--bfj-text-tm);vertical-align:super;line-height:0;margin-left:.05em;letter-spacing:0;text-transform:none;font-weight:inherit}
.bfj-tm-name{white-space:nowrap}
.bfj-page-title{display:block;font-family:var(--bfj-font-display);font-weight:400;font-size:var(--bfj-text-display);line-height:.92;letter-spacing:.01em;text-transform:uppercase;color:var(--bfj-text);margin:0 0 var(--bfj-space-3);text-wrap:balance}
.bfj-page-title:not(:has(+ .bfj-runout)){margin-bottom:var(--bfj-space-6)}
.bfj-runout{display:flex;flex-wrap:wrap;gap:var(--bfj-space-1) var(--bfj-space-4);max-width:none;margin:0 0 var(--bfj-space-6);padding-top:var(--bfj-space-2);border-top:1px solid var(--bfj-line-strong);font-family:var(--bfj-font-mono);font-size:var(--bfj-text-label);letter-spacing:.12em;text-transform:uppercase;color:var(--bfj-text-3)}
.bfj-rag{display:inline-block;width:.6em;height:.6em;border-radius:50%;margin-right:.45em;vertical-align:.05em;background:var(--bfj-text-3);flex-shrink:0}
.bfj-rag.is-red{background:var(--bfj-error)}
.bfj-rag.is-amber{background:var(--bfj-warning)}
.bfj-rag.is-green{background:var(--bfj-success)}