body.bde-drumroll-host{margin:0;background:#141018}
@font-face{font-family:BDEDrumrollBarlow;src:url('assets/barlow-condensed-latin-700.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:BDEDrumrollInter;src:url('assets/inter-latin-variable.woff2') format('woff2');font-weight:100 900;font-display:swap}
#bde-drumroll-root{color-scheme:dark;--bg:#141018;--panel:#1c1723;--ink:#f3efe9;--muted:#b9b0c3;--purple:#c2a0e8;--border:#3a3046;--heading:BDEDrumrollBarlow,'Arial Narrow',sans-serif}
#bde-drumroll-root, #bde-drumroll-root *{box-sizing:border-box}
#bde-drumroll-root{margin:0;background:var(--bg);color:var(--ink);font-family:BDEDrumrollInter,Arial,sans-serif;font-size:15px;line-height:1.55}
#bde-drumroll-root button,#bde-drumroll-root input{font:inherit}
#bde-drumroll-root button,#bde-drumroll-root a,#bde-drumroll-root input,#bde-drumroll-root summary{-webkit-tap-highlight-color:transparent}
#bde-drumroll-root button{cursor:pointer}
#bde-drumroll-root button:disabled{cursor:default}
#bde-drumroll-root button:focus-visible,#bde-drumroll-root a:focus-visible,#bde-drumroll-root input:focus-visible,#bde-drumroll-root summary:focus-visible,#bde-drumroll-root #instrument:focus-visible{outline:3px solid #dfc4ff;outline-offset:5px}
#bde-drumroll-root button{border-radius:8px}
#bde-drumroll-root a{color:inherit}
#bde-drumroll-root button[hidden],#bde-drumroll-root [hidden]{display:none!important}
#bde-drumroll-root .masthead,#bde-drumroll-root main,#bde-drumroll-root footer{width:min(1240px,calc(100% - 80px));margin-inline:auto}
#bde-drumroll-root .masthead{padding-block:29px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border)}
#bde-drumroll-root .wordmark{text-decoration:none;font-family:var(--heading);font-size:18px;line-height:.95;letter-spacing:.02em}
#bde-drumroll-root .wordmark span{display:block;font-size:23px;margin-top:4px}
#bde-drumroll-root .preview-label{color:var(--muted);font-size:10px;letter-spacing:.13em;text-align:right}
#bde-drumroll-root .preview-label b{display:block;color:var(--purple);font-size:9px;font-weight:500;margin-top:4px}
#bde-drumroll-root .intro{display:flex;justify-content:space-between;align-items:flex-end;padding-block:35px 30px;gap:32px}
#bde-drumroll-root .eyebrow{font-size:11px;letter-spacing:.18em;font-weight:600;margin:0 0 14px;color:var(--purple)}
#bde-drumroll-root h1,#bde-drumroll-root h2{font-family:var(--heading);font-weight:700;line-height:.91;letter-spacing:-.015em;margin:0}
#bde-drumroll-root h1{font-size:clamp(54px,6vw,86px)}
#bde-drumroll-root h1 br{display:none}
#bde-drumroll-root h1 em{font-style:normal;color:var(--purple)}
#bde-drumroll-root .intro-copy{font-size:14px;color:var(--muted);margin:0 0 4px;max-width:360px;line-height:1.7}
#bde-drumroll-root .game-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,1fr);border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--panel)}
#bde-drumroll-root .instrument-panel{min-width:0;background:radial-gradient(ellipse at 50% 46%,#352641 0%,#211928 54%,#19151f 100%);position:relative;padding:24px 28px 18px}
#bde-drumroll-root .scoreboard{display:flex;justify-content:space-between;align-items:center}
#bde-drumroll-root .stat-label{font-size:10px;letter-spacing:.17em;color:var(--muted);display:block}
#bde-drumroll-root .scoreboard strong{font-family:var(--heading);font-size:48px;line-height:1.05;font-variant-numeric:tabular-nums;display:block}
#bde-drumroll-root .time-stat{text-align:right}
#bde-drumroll-root .round-mode{text-align:center;font-size:10px;font-weight:600;letter-spacing:.14em;color:var(--purple)}
#bde-drumroll-root .round-mode span{display:block;letter-spacing:0;text-transform:none;color:var(--muted);font-weight:400;margin-top:4px}
#bde-drumroll-root .time-track{height:2px;background:#493557;margin-top:16px;overflow:hidden}
#bde-drumroll-root #time-fill{height:100%;background:var(--purple);transform-origin:left}
#bde-drumroll-root .instrument{position:relative;width:min(100%,660px);margin:-12px auto -9px;isolation:isolate;border-radius:10px}
#bde-drumroll-root .snare{display:block;width:100%;height:auto;overflow:visible;pointer-events:none}
#bde-drumroll-root .drum-brand{font:700 24px BDEDrumrollBarlow,sans-serif;letter-spacing:2px}
#bde-drumroll-root .drum-sub{font:600 6px BDEDrumrollInter,sans-serif;letter-spacing:1.1px}
#bde-drumroll-root .stick{transform-box:view-box}
#bde-drumroll-root #stick-L{transform-origin:48px 406px;--lift:-7deg}
#bde-drumroll-root #stick-R{transform-origin:612px 406px;--lift:7deg}
#bde-drumroll-root .impact{opacity:0;transform-box:fill-box;transform-origin:center}
#bde-drumroll-root .pad-targets{position:absolute;left:14%;top:17%;width:72%;height:52%;display:flex;overflow:hidden;border-radius:50%}
#bde-drumroll-root .pad{width:50%;position:relative;background:transparent;border:0;touch-action:none;user-select:none;-webkit-user-select:none;border-radius:0;color:#5e5269;display:flex;align-items:flex-end;justify-content:center;padding:0 0 11%;font-size:16px;font-weight:700}
#bde-drumroll-root .pad:focus-visible{outline:4px solid #755299;outline-offset:-6px;background:#9776b82e}
#bde-drumroll-root .pad:hover{background:#9061af10}
#bde-drumroll-root .pad kbd{background:#d4ccbf;border-color:#a59aa2;color:#5e5269;font-size:10px;vertical-align:middle;margin-left:5px}
#bde-drumroll-root .pad span{opacity:.8;pointer-events:none}
#bde-drumroll-root .countdown{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;font:700 clamp(58px,10vw,108px)/1 var(--heading);text-shadow:0 4px 30px #08040e;color:#fff;pointer-events:none}
#bde-drumroll-root .countdown.ready{font-size:clamp(36px,7vw,68px)}
#bde-drumroll-root .control-hint{text-align:center;font-size:12px;color:#d2c9dc;margin:0 0 16px}
#bde-drumroll-root .control-hint span{display:block;font-size:10px;color:var(--muted);margin-top:5px}
#bde-drumroll-root kbd{display:inline-flex;align-items:center;justify-content:center;min-width:20px;padding:0 5px;border:1px solid #655571;background:#2b2136;border-radius:4px;font:500 10px/20px BDEDrumrollInter,sans-serif;vertical-align:baseline}
#bde-drumroll-root .sound-controls{display:flex;justify-content:center;gap:12px;align-items:center;flex-wrap:wrap;min-height:44px}
#bde-drumroll-root .sound-button{min-height:44px;padding:8px 12px;background:transparent;border:1px solid #655571;color:var(--ink);font-size:10px;font-weight:600;letter-spacing:.06em}
#bde-drumroll-root .sound-button[aria-pressed=true]{color:var(--purple);background:#34243f}
#bde-drumroll-root .sound-controls label{font-size:10px;color:var(--muted)}
#bde-drumroll-root input[type=range]{width:78px;min-height:44px;accent-color:var(--purple);margin:0}
#bde-drumroll-root #audio-status:not(:empty){flex-basis:100%;font-size:11px;color:var(--muted);text-align:center}
#bde-drumroll-root .session-panel{padding:38px 32px;align-self:stretch;border-left:1px solid var(--border);background:#201926}
#bde-drumroll-root h2{font-size:48px}
#bde-drumroll-root #session-copy{font-size:14px;color:#cbc1d4;line-height:1.7;margin:20px 0 25px}
#bde-drumroll-root .primary{width:100%;min-height:54px;border:1px solid #bd95e5;background:#ba96df;color:#1a1022;padding:14px 17px;text-align:left;font-size:11px;letter-spacing:.025em;font-weight:750;display:flex;justify-content:space-between;align-items:center;gap:10px}
#bde-drumroll-root .primary:hover{background:#d1b3ef}
#bde-drumroll-root .primary span{font-size:21px;font-weight:400;line-height:1}
#bde-drumroll-root .secondary{width:100%;min-height:48px;border:1px solid #655571;background:transparent;color:var(--ink);font-size:11px;font-weight:650}
#bde-drumroll-root .status{font-size:11px;color:var(--muted);min-height:35px;margin:12px 0 22px}
#bde-drumroll-root .round-explainer{display:grid;grid-template-columns:24px 1fr;gap:19px 14px;border-top:1px solid var(--border);padding-top:26px}
#bde-drumroll-root .small-number{font:700 21px/1.4 var(--heading);color:#9a7cb5}
#bde-drumroll-root .round-explainer p{font-size:12px;line-height:1.65;color:var(--muted);margin:0}
#bde-drumroll-root .result-main{display:flex;align-items:baseline;gap:12px;margin-bottom:20px}
#bde-drumroll-root .result-main strong{font:700 70px/1 var(--heading);color:var(--purple)}
#bde-drumroll-root .result-main span{color:var(--muted);font-size:12px}
#bde-drumroll-root .metrics{display:grid;grid-template-columns:1fr 1fr;margin:0 0 15px}
#bde-drumroll-root .metrics>div+div{padding-left:20px;border-left:1px solid var(--border)}
#bde-drumroll-root .metrics span{font-size:9px;letter-spacing:.1em;display:block;color:var(--muted)}
#bde-drumroll-root .metrics strong{font:700 32px/1.2 var(--heading);display:block;margin-top:6px}
#bde-drumroll-root .best{color:#d5c0ea;font-size:12px;margin:16px 0 24px}
#bde-drumroll-root .how-it-works{border-bottom:1px solid var(--border);margin-top:20px;font-size:12px;color:var(--muted);padding-bottom:4px}
#bde-drumroll-root .how-it-works summary{min-height:48px;cursor:pointer;padding:14px 0;font-weight:600;letter-spacing:.08em;font-size:10px}
#bde-drumroll-root .score-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:10px 0}
#bde-drumroll-root .score-notes strong{display:block;font:700 22px/1.2 var(--heading);color:var(--ink);margin-bottom:9px}
#bde-drumroll-root .how-it-works>p{max-width:740px;line-height:1.8}
#bde-drumroll-root footer{display:flex;justify-content:space-between;gap:20px;padding-block:24px 30px;align-items:center}
#bde-drumroll-root footer p{font:700 22px/1 var(--heading);margin:0}
#bde-drumroll-root footer span{font-size:10px;color:var(--muted)}
#bde-drumroll-root .noscript{position:fixed;bottom:0;background:#efdac0;color:#21182a;padding:16px;margin:0;width:100%}
@media(min-width:1000px){#bde-drumroll-root[data-state=finished] .round-explainer{display:none}
}
@media(max-width:1000px){#bde-drumroll-root .masthead,#bde-drumroll-root main,#bde-drumroll-root footer{width:calc(100% - 48px)}
#bde-drumroll-root .intro-copy{max-width:250px;font-size:12px}
#bde-drumroll-root h1 br{display:block}
#bde-drumroll-root .game-layout{grid-template-columns:minmax(0,1.35fr) minmax(260px,1fr)}
#bde-drumroll-root .instrument-panel{padding:22px 20px 16px}
#bde-drumroll-root .session-panel{padding:30px 24px}
#bde-drumroll-root .instrument{margin:5px auto 9px}
#bde-drumroll-root .round-explainer{gap:14px 12px}
#bde-drumroll-root .session-panel h2{font-size:40px}
}
@media(max-width:700px){#bde-drumroll-root .masthead,#bde-drumroll-root main,#bde-drumroll-root footer{width:calc(100% - 32px)}
#bde-drumroll-root .masthead{padding-block:19px}
#bde-drumroll-root .wordmark{font-size:14px}
#bde-drumroll-root .wordmark span{font-size:18px}
#bde-drumroll-root .preview-label{font-size:8px;max-width:130px}
#bde-drumroll-root .preview-label b{font-size:8px}
#bde-drumroll-root .intro{display:block;padding:25px 0 23px}
#bde-drumroll-root .eyebrow{font-size:9px;margin-bottom:12px}
#bde-drumroll-root h1{font-size:54px}
#bde-drumroll-root h1 br{display:none}
#bde-drumroll-root .intro-copy{font-size:12px;max-width:none;margin:15px 0 0;line-height:1.6}
#bde-drumroll-root .intro-copy br{display:none}
#bde-drumroll-root .game-layout{display:flex;flex-direction:column;overflow:visible}
#bde-drumroll-root .instrument-panel{padding:17px 14px 13px;border-radius:14px 14px 0 0}
#bde-drumroll-root .scoreboard strong{font-size:38px}
#bde-drumroll-root .stat-label{font-size:8px}
#bde-drumroll-root .round-mode{font-size:9px}
#bde-drumroll-root .time-track{margin-top:12px}
#bde-drumroll-root .instrument{margin:-7px auto -5px;max-width:450px}
#bde-drumroll-root .control-hint{font-size:11px;margin-bottom:8px}
#bde-drumroll-root .sound-controls{gap:9px}
#bde-drumroll-root .sound-controls label{font-size:9px}
#bde-drumroll-root .session-panel{border-left:0;border-top:1px solid var(--border);border-radius:0 0 14px 14px;padding:24px 22px}
#bde-drumroll-root .session-panel .eyebrow{margin-bottom:10px}
#bde-drumroll-root .session-panel h2{font-size:36px}
#bde-drumroll-root #session-copy{font-size:12px;margin:13px 0 18px;line-height:1.7}
#bde-drumroll-root .round-explainer{display:none}
#bde-drumroll-root .status{min-height:0;margin-bottom:0}
#bde-drumroll-root .how-it-works{margin-top:10px}
#bde-drumroll-root .score-notes{grid-template-columns:1fr;gap:0}
#bde-drumroll-root .how-it-works>p{font-size:11px}
#bde-drumroll-root .result-main strong{font-size:52px}
#bde-drumroll-root .result-main{margin-bottom:15px}
#bde-drumroll-root .best{margin-bottom:16px}
#bde-drumroll-root footer{display:block;padding-top:22px}
#bde-drumroll-root footer p{font-size:20px;margin-bottom:10px}
#bde-drumroll-root .pad kbd{display:none}
#bde-drumroll-root[data-state=countdown] .session-panel,#bde-drumroll-root[data-state=armed] .session-panel,#bde-drumroll-root[data-state=running] .session-panel{padding-block:16px}
#bde-drumroll-root[data-state=countdown] #session-copy,#bde-drumroll-root[data-state=armed] #session-copy,#bde-drumroll-root[data-state=running] #session-copy{display:none}
#bde-drumroll-root[data-state=countdown] .session-panel>.eyebrow,#bde-drumroll-root[data-state=armed] .session-panel>.eyebrow,#bde-drumroll-root[data-state=running] .session-panel>.eyebrow{display:none}
#bde-drumroll-root[data-state=countdown] #session-title,#bde-drumroll-root[data-state=armed] #session-title,#bde-drumroll-root[data-state=running] #session-title{font-size:26px;margin-bottom:16px}
}
@media(max-width:365px){#bde-drumroll-root h1{font-size:46px}
#bde-drumroll-root .preview-label{font-size:7px}
#bde-drumroll-root .instrument-panel{padding-inline:10px}
#bde-drumroll-root .session-panel{padding-inline:18px}
#bde-drumroll-root .sound-controls{gap:7px}
#bde-drumroll-root input[type=range]{width:66px}
#bde-drumroll-root .pad{font-size:14px}
#bde-drumroll-root .primary{font-size:10px}
}
@media(prefers-reduced-motion:reduce){#bde-drumroll-root, #bde-drumroll-root *{scroll-behavior:auto!important}
}
@media(max-width:700px){#bde-drumroll-root h1{font-size:clamp(42px,12vw,54px)}
#bde-drumroll-root .session-panel{order:-1;border-top:0;border-bottom:1px solid var(--border);border-radius:14px 14px 0 0;padding:18px 20px}
#bde-drumroll-root .instrument-panel{border-radius:0 0 14px 14px}
#bde-drumroll-root .session-panel>.eyebrow{display:none}
#bde-drumroll-root:not([data-state=finished]) .session-panel h2,#bde-drumroll-root:not([data-state=finished]) #session-copy{display:none}
#bde-drumroll-root .status{font-size:10px;line-height:1.6;margin-top:10px}
}
#bde-drumroll-root #instrument:focus-visible{outline-offset:-18px}
@media(max-width:1000px){#bde-drumroll-root #instrument:focus-visible{outline-offset:-14px}
}
@media (min-width:560px) and (min-height:300px) and (max-height:540px) and (orientation:landscape){#bde-drumroll-root .game-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(220px,1fr);overflow:visible;scroll-margin-top:8px}
#bde-drumroll-root .instrument-panel{padding:12px 14px 10px;border-radius:14px 0 0 14px}
#bde-drumroll-root .scoreboard strong{font-size:32px}
#bde-drumroll-root .stat-label{font-size:9px}
#bde-drumroll-root .round-mode{font-size:9px}
#bde-drumroll-root .time-track{margin-top:6px}
#bde-drumroll-root .instrument{width:min(100%,clamp(160px,calc(134.69vh - 255.91px),400px));width:min(100%,clamp(160px,calc(134.69svh - 255.91px),400px));margin:0 auto}
#bde-drumroll-root #instrument:focus-visible{outline-offset:-4px}
#bde-drumroll-root .control-hint{font-size:10px;margin:0 0 5px}
#bde-drumroll-root .control-hint span{font-size:9px;margin-top:0}
#bde-drumroll-root .sound-controls{gap:8px}
#bde-drumroll-root .session-panel{order:0;padding:16px;border:0;border-left:1px solid var(--border);border-radius:0 14px 14px 0}
#bde-drumroll-root .session-panel>.eyebrow,#bde-drumroll-root .round-explainer{display:none}
#bde-drumroll-root .game-layout .session-panel #session-title{display:block;font-size:28px;margin:0 0 12px}
#bde-drumroll-root .game-layout .session-panel #session-copy{display:none}
#bde-drumroll-root .status{font-size:11px;min-height:0;margin:10px 0 0}
#bde-drumroll-root[data-state=finished] .game-layout .session-panel #session-copy{display:block;font-size:12px;margin:12px 0}
}
#bde-drumroll-root .loading-notice{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 20px;padding:16px 20px;border:1px solid #87679e;border-radius:12px;background:#251b30;color:#f4edf8}
#bde-drumroll-root .loading-notice[hidden]{display:none}
#bde-drumroll-root .loading-notice p{margin:0;line-height:1.55;max-width:56ch}
#bde-drumroll-root .loading-notice a{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:10px 16px;border:1px solid #b291cd;border-radius:8px;color:#fff;font-weight:700;font-size:13px;text-decoration:none;white-space:nowrap}
#bde-drumroll-root .pad span{opacity:1;background:#f6efdfed;border:1px solid #81748780;border-radius:6px;padding:1px 7px;color:#493453;box-shadow:0 1px 3px #21182718}
#bde-drumroll-root .drumskin-art{pointer-events:none}
#bde-drumroll-root .loading-notice a:focus-visible{outline:3px solid #efdc9c;outline-offset:4px}
#bde-drumroll-root [data-game-control]:disabled{cursor:wait;opacity:.5}
@media(max-width:600px){#bde-drumroll-root .loading-notice{align-items:stretch;flex-direction:column;padding:16px}
#bde-drumroll-root .loading-notice a{align-self:flex-start}
}
