@font-face{font-family:'Geist Mono';src:url('/fonts/geist-mono/GeistMono-Variable.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
@property --bgm-scrollbar-thumb{syntax:'<color>';inherits:true;initial-value:transparent}
@property --bgm-photo-opacity{syntax:'<number>';inherits:false;initial-value:1}
/* A persistent audio shell; documents inside it retain their own layout and scroll. */
.music-shell{margin:0!important;padding:0!important;width:100%;height:100svh;min-height:0!important;overflow:hidden!important;background:#f7f7f7;font-family:'DM Sans',Arial,sans-serif;color:#242424}
.music-shell.is-home{--bgm-footer-clearance:48px}
.site-content-frame{display:block;position:fixed;inset:0;z-index:0;width:100%;height:100%;border:0;filter:blur(var(--bgm-blur,0px))}
/* Keep the fixed instrument clear of the Home/Archives links at the foot of a page. */
.with-bgm-player footer{padding-bottom:calc(120px + env(safe-area-inset-bottom,0px))}
#bgm-player{--bgm-paper:#fff;--bgm-ink:#343434;--bgm-muted:#777;--bgm-accent:#df6a2e;font-family:'DM Sans',Arial,sans-serif;font-weight:400;color:var(--bgm-ink);color-scheme:light}
#bgm-player *{box-sizing:border-box}
#bgm-player button,#bgm-player input{font:inherit;color:inherit;-webkit-tap-highlight-color:transparent}
#bgm-player button{cursor:pointer}
#bgm-player button:disabled{cursor:default;opacity:.4}
#bgm-player button:focus-visible,#bgm-player input:focus-visible{outline:1px solid #777;outline-offset:5px}
#bgm-player button svg{display:block;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
#bgm-player .bgm-launcher{--lp-icon-width:168px;--lp-icon-height:132px;position:fixed;right:max(36px,env(safe-area-inset-right));bottom:calc(max(28px,env(safe-area-inset-bottom)) + var(--bgm-footer-clearance,0px));z-index:40;width:180px;height:172px;padding:0;border:0;background:transparent;border-radius:0;box-shadow:none;display:grid;place-items:start center;mix-blend-mode:multiply;opacity:var(--bgm-photo-opacity);visibility:visible;transition:transform .5s cubic-bezier(.4,0,.2,1),--bgm-photo-opacity .16s ease,visibility 0s}
#bgm-player .bgm-launcher:hover{transform:translateY(-4px)}
#bgm-player .bgm-launcher.is-presenting{opacity:0;pointer-events:none;transform:none}
.music-shell.is-viewing-photo #bgm-player .bgm-launcher{--bgm-photo-opacity:0;visibility:hidden;pointer-events:none;transition-delay:0s,0s,.16s}
#bgm-player .lp-icon{display:block;width:var(--lp-icon-width);height:var(--lp-icon-height);pointer-events:none}
#bgm-player .lp-icon canvas{display:block;width:100%;height:100%}
#bgm-player .bgm-launcher-caption{position:absolute;top:calc(var(--lp-icon-height) + 4px);left:0;right:0;text-align:center;pointer-events:none}
#bgm-player .bgm-launcher-label{display:block;font-family:'Geist Mono',monospace;font-size:12px;line-height:16px;letter-spacing:.06em;color:#777}
#bgm-player .bgm-launcher.is-playing .bgm-launcher-label{font-size:11px;color:var(--bgm-accent)}
#bgm-player .bgm-launcher-track{display:block;min-height:16px;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:16px;letter-spacing:0;color:var(--bgm-muted)}
#bgm-dialog{--bgm-gutter:clamp(14px,2vw,32px);position:fixed;inset:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:var(--bgm-gutter);border:0;background:rgba(247,247,247,calc(var(--bgm-wash,0)*.48));overflow:auto;color:var(--bgm-ink)}
#bgm-dialog[open]{display:grid;place-items:center}
#bgm-dialog::backdrop{background:transparent}
#bgm-player .bgm-panel{--bgm-column-gap:clamp(24px,3vw,64px);position:relative;isolation:isolate;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:clamp(16px,2.5vh,28px);width:100%;height:calc(100svh - 2 * var(--bgm-gutter));min-height:560px;margin:auto;background:transparent;padding:clamp(20px,2.4vw,40px) clamp(24px,3vw,56px) 28px}
#bgm-player .bgm-panel::before{content:'';position:absolute;inset:0;z-index:-1;background:var(--bgm-paper);opacity:var(--bgm-paper-opacity,0);pointer-events:none}
#bgm-player .bgm-selection,#bgm-player .bgm-controls,#bgm-player .bgm-close,#bgm-player .bgm-message{opacity:var(--bgm-chrome,0);transform:translateY(var(--bgm-chrome-y,10px))}
#bgm-player .bgm-icon-button{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;padding:0;border:0;background:transparent;border-radius:0}
#bgm-player .bgm-icon-button:hover{color:var(--bgm-accent)}
#bgm-player .bgm-close{position:absolute;top:16px;right:20px;z-index:5}
#bgm-player .bgm-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:var(--bgm-column-gap);min-height:0;align-items:stretch}
#bgm-player .lp-product{position:relative;z-index:1;width:100%;height:100%;min-width:0;min-height:0;transform-origin:0 0}
#bgm-player .lp-drawing{position:absolute;inset:0;cursor:grab;touch-action:none}
#bgm-player .lp-drawing.is-orbiting{cursor:grabbing}
#bgm-player .lp-drawing canvas{display:block;width:100%;height:100%}
#bgm-player .lp-hit{position:absolute;background:transparent;border:0;padding:0;z-index:2;outline-offset:3px}
#bgm-player .lp-power,#bgm-player .lp-volume{width:44px;height:44px;transform:translate(-50%,-50%);border-radius:50%;z-index:4}
#bgm-player .lp-volume{touch-action:none;cursor:ns-resize}
#bgm-player .lp-lid{left:0;top:0;width:100%;height:100%;pointer-events:none}
#bgm-player .lp-volume-value{position:absolute;z-index:5;transform:translate(-50%,20px);font-size:15px;color:var(--bgm-muted);opacity:0;pointer-events:none;white-space:nowrap;transition:opacity .2s}
#bgm-player .lp-product.is-adjusting .lp-volume-value,#bgm-player .lp-volume:focus-visible~.lp-volume-value{opacity:1}
#bgm-player .lp-fallback{display:none;position:absolute;inset:0;place-items:center;font-size:18px;color:var(--bgm-muted)}
#bgm-player .bgm-selection{--bgm-selection-width:min(100%,clamp(200px,28svh,360px));--bgm-artwork-size:min(var(--bgm-selection-width),var(--bgm-artwork-fit,360px));display:flex;flex-direction:column;min-width:0;min-height:0;max-height:100%;align-self:center;padding-block:20px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;opacity:var(--bgm-selection,0);transform:translateY(var(--bgm-selection-y,8px))}
#bgm-player .bgm-selection::-webkit-scrollbar{display:none}
/* Collapsing the whole slot preserves the unselected view; the list moves with it. */
#bgm-player .bgm-artwork{display:grid;grid-template-rows:0fr;flex-shrink:0;opacity:0;transform:translateY(10px);transition:grid-template-rows .7s cubic-bezier(.22,.61,.36,1),opacity .44s ease,transform .7s cubic-bezier(.22,.61,.36,1)}
#bgm-player .bgm-artwork.is-visible{grid-template-rows:1fr;opacity:1;transform:translateY(0)}
#bgm-player .bgm-artwork-reveal{min-height:0;overflow:hidden}
#bgm-player .bgm-artwork-space{width:var(--bgm-selection-width);padding-bottom:54px}
#bgm-player .bgm-artwork-stage{position:relative;width:var(--bgm-artwork-size);aspect-ratio:1;margin:0 0 0 auto}
#bgm-player .bgm-artwork-face{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .28s ease}
#bgm-player .bgm-artwork-face.is-current{opacity:1;transition-duration:.44s}
#bgm-player .bgm-artwork-square{position:absolute;inset:0;overflow:hidden;background:#eeede9}
#bgm-player .bgm-artwork-square img,#bgm-player .bgm-artwork-square video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
#bgm-player .bgm-artwork-square video{opacity:0;transition:opacity .35s ease;pointer-events:none}
#bgm-player .bgm-artwork-square video.is-ready{opacity:1}
#bgm-player .bgm-artwork-face figcaption{position:absolute;top:100%;left:0;right:0;display:flex;justify-content:flex-end;padding-top:10px;overflow:hidden;white-space:nowrap;text-align:right;font-size:13px;line-height:20px;color:var(--bgm-muted)}
#bgm-player .bgm-artwork-album{min-width:0;overflow:hidden;text-overflow:ellipsis}
#bgm-player .bgm-artwork-year{flex-shrink:0;white-space:pre}
#bgm-player .bgm-kicker,#bgm-player .bgm-record-info{flex-shrink:0}
#bgm-player .bgm-kicker{font-family:'Geist Mono',monospace;font-size:12px;line-height:1.5;min-height:1.5em;letter-spacing:.035em;color:var(--bgm-muted);margin:0 0 16px;opacity:0;transform:translateY(3px);transition:opacity .32s ease,transform .4s cubic-bezier(.22,.61,.36,1)}
#bgm-player .bgm-kicker.is-setting{opacity:1;transform:translateY(0)}
#bgm-player .bgm-record-info[aria-hidden=true]{opacity:0}
#bgm-player .bgm-track-title{font-size:clamp(28px,2vw,38px);line-height:1.15;min-height:1.15em;font-weight:400;letter-spacing:-.75px;margin:0 0 10px;overflow-wrap:anywhere}
#bgm-player .bgm-track-artist{font-size:17px;line-height:1.4;min-height:1.4em;color:var(--bgm-muted);margin:0 0 36px}
#bgm-player .bgm-track-list{--bgm-track-row:75px;--bgm-track-gap:3px;--bgm-scrollbar-thumb:transparent;position:relative;flex-shrink:0;width:var(--bgm-selection-width);list-style:none;margin:0;padding:0;display:grid;grid-auto-rows:var(--bgm-track-row);gap:var(--bgm-track-gap);min-height:var(--bgm-track-row);max-height:calc(var(--bgm-track-row)*3 + var(--bgm-track-gap)*2);overflow-y:auto;overscroll-behavior:contain;scroll-snap-type:y mandatory;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--bgm-scrollbar-thumb) transparent;scrollbar-gutter:stable;transition:--bgm-scrollbar-thumb .16s ease}
#bgm-player .bgm-track-list{-webkit-mask-image:linear-gradient(to bottom,transparent,#000 24px,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(to bottom,transparent,#000 24px,#000 calc(100% - 24px),transparent)}
#bgm-player .bgm-track-list>li{scroll-snap-align:start}
#bgm-player .bgm-track-list.is-scrolling{scroll-snap-type:none;scroll-behavior:auto}
#bgm-player .bgm-track-list:hover{--bgm-scrollbar-thumb:#aaa}
#bgm-player .bgm-track-list::-webkit-scrollbar{width:6px;background:transparent}
#bgm-player .bgm-track-list::-webkit-scrollbar-track{background:transparent}
#bgm-player .bgm-track-list::-webkit-scrollbar-thumb{background:var(--bgm-scrollbar-thumb);border-radius:3px}
#bgm-player .bgm-track-list::-webkit-scrollbar-button{display:none}
@supports selector(::-webkit-scrollbar){#bgm-player .bgm-track-list,#bgm-player .bgm-track-list:hover{scrollbar-width:auto;scrollbar-color:auto}}
#bgm-player .bgm-track{width:100%;height:var(--bgm-track-row);display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:center;text-align:left;border:0;border-radius:2px;background:transparent;padding:14px 16px;color:var(--bgm-ink)}
#bgm-player .bgm-track>span:last-child{min-width:0}
#bgm-player .bgm-track:focus-visible{outline-offset:-2px}
#bgm-player .bgm-track-number{position:relative;font-family:'Geist Mono',monospace;font-size:16px;line-height:1.4;color:#888;transition:color .42s ease}
#bgm-player .bgm-track-number::before{content:'';position:absolute;right:calc(100% + 5px);top:50%;width:7px;height:10px;transform:translate(-4px,-50%);background:var(--bgm-accent);clip-path:polygon(0 0,100% 50%,0 100%);opacity:0;transition:opacity .42s ease,transform .42s cubic-bezier(.22,.61,.36,1);pointer-events:none}
#bgm-player .bgm-track-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:18px;line-height:1.35}
#bgm-player .bgm-track-byline{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.4;color:var(--bgm-muted);margin-top:3px}
#bgm-player .bgm-track:hover .bgm-track-name{text-decoration:underline;text-underline-offset:4px}
#bgm-player .bgm-track[aria-current=true] .bgm-track-number::before{opacity:1;transform:translate(0,-50%)}
#bgm-player .bgm-track[aria-current=true] .bgm-track-number{color:var(--bgm-accent)}
#bgm-player .bgm-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,220px);align-items:center;column-gap:clamp(24px,2.4vw,40px);width:min(100%,1020px);justify-self:center;padding-top:8px}
#bgm-player .bgm-main-controls{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:clamp(16px,2vw,32px);width:100%;min-width:0}
#bgm-player .bgm-transport{display:flex;gap:8px;align-items:center}
#bgm-player .bgm-transport .bgm-icon-button{width:52px;height:52px}
#bgm-player .bgm-transport .bgm-play{width:56px;height:56px}
#bgm-player .bgm-transport button svg{width:30px;height:30px;stroke-width:1.45}
#bgm-player .bgm-timeline{display:grid;grid-template-columns:4ch minmax(0,1fr) 4ch;align-items:center;gap:14px;min-width:0}
#bgm-player .bgm-current,#bgm-player .bgm-duration,#bgm-player .bgm-volume-label{font:12px/1.5 'Geist Mono',monospace;font-variant-numeric:tabular-nums;color:var(--bgm-muted)}
#bgm-player .bgm-duration,#bgm-player .bgm-volume-label{text-align:right}
/* Native range inputs retain keyboard/touch behavior with a quiet, borderless rail. */
#bgm-player input[type=range]{--range-progress:0%;--range-ink:#464646;--range-track:#e5e5e5;-webkit-appearance:none;appearance:none;display:block;width:100%;min-width:0;height:44px;margin:0;padding:0;border:0;border-radius:0;background:transparent;cursor:pointer}
#bgm-player input[type=range]::-webkit-slider-runnable-track{height:2px;border:0;border-radius:2px;background:linear-gradient(to right,var(--range-ink) 0 var(--range-progress),var(--range-track) var(--range-progress) 100%)}
#bgm-player input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:8px;height:8px;margin-top:-3px;border:0;border-radius:50%;background:var(--range-ink);box-shadow:0 0 0 3px #fff;transition:box-shadow .18s}
#bgm-player input[type=range]::-moz-range-track{height:2px;border:0;border-radius:2px;background:var(--range-track)}
#bgm-player input[type=range]::-moz-range-progress{height:2px;border:0;border-radius:2px;background:var(--range-ink)}
#bgm-player input[type=range]::-moz-range-thumb{width:8px;height:8px;border:0;border-radius:50%;background:var(--range-ink);box-shadow:0 0 0 3px #fff;transition:box-shadow .18s}
#bgm-player input[type=range]:hover::-webkit-slider-thumb,#bgm-player input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px #fff,0 0 0 5px #e9e9e9}
#bgm-player input[type=range]:hover::-moz-range-thumb,#bgm-player input[type=range]:focus-visible::-moz-range-thumb{box-shadow:0 0 0 3px #fff,0 0 0 5px #e9e9e9}
#bgm-player input[type=range]:disabled{--range-ink:#bdbdbd;cursor:default}
#bgm-player .bgm-volume-row{display:grid;grid-template-columns:32px minmax(0,1fr) 3ch;align-items:center;gap:12px;width:100%;min-width:0}
#bgm-player .bgm-volume-row svg{width:30px;height:30px;fill:none;stroke:var(--bgm-muted);stroke-width:1.45}
#bgm-player .bgm-message{font-size:14px;color:var(--bgm-muted);margin:0;text-align:center}
#bgm-player .bgm-message:empty{display:none}
@media(max-width:960px){#bgm-player .bgm-panel{--bgm-column-gap:24px}#bgm-player .bgm-track-title{font-size:27px}#bgm-player .bgm-track-name{font-size:17px}}
@media(max-width:820px){#bgm-player .bgm-controls{grid-template-columns:minmax(0,1fr);row-gap:12px;width:min(100%,760px)}#bgm-player .bgm-volume-row{width:min(280px,100%);justify-self:center}}
@media(min-width:641px) and (max-height:800px){#bgm-player .bgm-selection{padding-block:8px}#bgm-player .bgm-artwork-space{padding-bottom:40px}#bgm-player .bgm-kicker{margin-bottom:8px;font-size:11px}#bgm-player .bgm-track-title{font-size:26px;margin-bottom:6px}#bgm-player .bgm-track-artist{font-size:15px;margin-bottom:20px}#bgm-player .bgm-track-list{--bgm-track-row:68px}#bgm-player .bgm-track{padding:10px 12px}#bgm-player .bgm-track-name{font-size:16px}#bgm-player .bgm-track-byline{font-size:13px}}
@media(min-width:641px) and (max-height:640px){#bgm-player .bgm-panel{height:640px}}
@media(min-width:641px) and (max-width:960px) and (max-height:800px){#bgm-player .bgm-close{right:-12px}}
@media(max-width:640px){#bgm-dialog{padding:12px;place-items:start center}#bgm-player .bgm-panel{height:auto;min-height:calc(100svh - 24px);grid-template-rows:auto auto;gap:16px;padding:16px 20px 24px}#bgm-player .bgm-close{top:8px;right:8px}#bgm-player .bgm-layout{grid-template-columns:minmax(0,1fr);gap:4px}#bgm-player .lp-product{height:clamp(280px,70vw,420px)}#bgm-player .bgm-selection{max-height:none;overflow:visible;padding:6px 4px 12px}#bgm-player .bgm-kicker{margin-bottom:8px}#bgm-player .bgm-track-title{font-size:27px;margin-bottom:6px}#bgm-player .bgm-track-artist{margin-bottom:18px;font-size:16px}#bgm-player .bgm-track{padding:12px}#bgm-player .bgm-controls{row-gap:12px;padding-top:0}#bgm-player .bgm-main-controls{grid-template-columns:minmax(0,1fr);gap:4px;width:100%}#bgm-player .bgm-transport{justify-content:center;gap:16px}#bgm-player .bgm-timeline{gap:12px}#bgm-player .bgm-volume-row{justify-self:center;width:min(240px,100%);margin-right:0}#bgm-player .bgm-launcher{--lp-icon-width:128px;--lp-icon-height:102px;right:max(20px,env(safe-area-inset-right));bottom:calc(max(18px,env(safe-area-inset-bottom)) + var(--bgm-footer-clearance,0px));width:140px;height:142px}}
@media(max-width:640px){#bgm-player .bgm-selection{--bgm-selection-width:min(100%,280px);--bgm-artwork-size:var(--bgm-selection-width)}#bgm-player .bgm-artwork-space{padding-bottom:46px}}
@media(max-width:640px){#bgm-player .bgm-launcher{--lp-icon-width:90px;--lp-icon-height:72px;width:102px;height:106px}#bgm-player .bgm-launcher-label{font-size:10px;line-height:14px}#bgm-player .bgm-launcher.is-playing .bgm-launcher-label{font-size:9px}#bgm-player .bgm-launcher-track{font-size:10px;line-height:14px;min-height:14px;margin-top:2px}}
@media(prefers-reduced-motion:reduce){#bgm-player .bgm-artwork,#bgm-player .bgm-artwork-face,#bgm-player .bgm-artwork-square video{transition:none!important}}
@media(prefers-reduced-motion:reduce){#bgm-player .bgm-track-list{scroll-behavior:auto}}
@media(prefers-reduced-motion:reduce){.site-content-frame,#bgm-dialog,#bgm-player .bgm-panel,#bgm-player .bgm-launcher,#bgm-player .bgm-kicker,#bgm-player .bgm-track-list,#bgm-player .bgm-track-number,#bgm-player .bgm-track-number::before{transition:none!important}}
