/*! Online Metronome 2.0.0 | pitchdetector.com */
.pom{--b:#2563eb;--b2:#1d4ed8;--v:#7c3aed;--n:#0f172a;--mut:#475569;--line:#e2e8f0;--ok:#15803d;--warn:#b45309;--bad:#b91c1c;
	box-sizing:border-box;max-width:980px;margin:0 auto 2em;color:var(--n);font:16px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
.pom *,.pom *::before,.pom *::after{box-sizing:border-box}
.pom [hidden]{display:none!important}
.pom .pom-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 14px;margin:0 0 10px}
.pom .pom-title{margin:0;font-size:1.5rem;line-height:1.2;font-weight:800;color:var(--n);letter-spacing:-.01em}
.pom .pom-kbd{margin:0;font-size:.82rem;color:var(--mut)}
.pom kbd{display:inline-block;min-width:1.6em;padding:0 5px;border:1px solid #cbd5e1;border-bottom-width:2px;border-radius:5px;background:#fff;font:600 .78rem/1.5 ui-monospace,Consolas,monospace;color:var(--n);text-align:center}
.pom .pom-device{position:relative;padding:18px;border-radius:26px;background:linear-gradient(160deg,#1e293b 0,#0f172a 60%,#1e1b4b 100%);box-shadow:0 18px 40px rgba(15,23,42,.35),inset 0 1px 0 rgba(255,255,255,.08);color:#e2e8f0}
.pom .pom-screen{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px 18px;border-radius:18px;background:radial-gradient(120% 140% at 30% 0,#1e3a8a 0,#0b1024 62%);border:1px solid #312e81;box-shadow:inset 0 2px 14px rgba(0,0,0,.55);transition:background .08s}
.pom .pom-screen[data-flash="1"]{background:radial-gradient(120% 140% at 30% 0,#3b82f6 0,#1e3a8a 70%)}
.pom .pom-screen[data-flash="2"]{background:radial-gradient(120% 140% at 30% 0,#a78bfa 0,#5b21b6 70%)}
.pom[data-visual="dots"] .pom-screen,.pom[data-visual="flash"] .pom-screen{grid-template-columns:minmax(0,1fr) auto}
.pom .pom-count{display:flex;align-items:center;justify-content:center;width:150px;height:150px;border-radius:50%;border:3px solid #312e81;background:rgba(15,23,42,.5);font:800 5.2rem/1 ui-monospace,Consolas,monospace;color:#475569;font-variant-numeric:tabular-nums;transition:color .06s,border-color .06s,box-shadow .06s}
.pom .pom-count[data-level="3"]{color:#fbbf24;border-color:#a78bfa;box-shadow:0 0 30px rgba(167,139,250,.45)}
.pom .pom-count[data-level="2"]{color:#fde68a;border-color:#60a5fa;box-shadow:0 0 24px rgba(96,165,250,.35)}
.pom .pom-count[data-level="1"]{color:#e2e8f0;border-color:#64748b}
.pom .pom-count[data-level="0"]{color:#334155;border-style:dashed}
.pom[data-visual="dots"] .pom-pend,.pom[data-visual="flash"] .pom-pend{display:none}
.pom .pom-pend svg{display:block;width:100%;height:auto;max-height:150px}
.pom .pom-arm{transform-box:view-box;transform-origin:50px 138px;will-change:transform}
.pom .pom-readout{min-width:0}
.pom .pom-bpmrow{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.pom .pom-bpm{font:800 4.6rem/1 ui-monospace,"SF Mono","Cascadia Mono",Consolas,monospace;letter-spacing:-.04em;color:#fff;font-variant-numeric:tabular-nums;text-shadow:0 0 18px rgba(129,140,248,.55)}
.pom .pom-unit{font-weight:800;font-size:1rem;letter-spacing:.12em;color:#a5b4fc}
.pom .pom-mark{margin:2px 0 8px;font:italic 600 1.35rem/1.2 Georgia,"Times New Roman",serif;color:#c4b5fd}
.pom .pom-stats{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0;padding:0;list-style:none;font-size:.8rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em}
.pom .pom-stats li{margin:0}
.pom .pom-stats b{display:block;font:700 1.15rem/1.2 ui-monospace,Consolas,monospace;color:#f1f5f9;letter-spacing:0;text-transform:none;font-variant-numeric:tabular-nums}
.pom .pom-dots{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:16px 0 4px}
.pom .pom-dot{appearance:none;-webkit-appearance:none;position:relative;display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;min-height:44px;padding:0;border-radius:50%;border:2px solid #475569;background:#1e293b;color:#cbd5e1;font:800 1rem/1 system-ui,sans-serif;cursor:pointer;box-shadow:none;text-transform:none;letter-spacing:0;transition:transform .07s,box-shadow .07s,background .07s}
.pom .pom-dot:hover{border-color:#94a3b8;background:#273449;color:#fff}
.pom .pom-dot[data-level="3"]{background:linear-gradient(145deg,#8b5cf6,#6d28d9);border-color:#c4b5fd;color:#fff}
.pom .pom-dot[data-level="2"]{background:linear-gradient(145deg,#3b82f6,#1d4ed8);border-color:#93c5fd;color:#fff}
.pom .pom-dot[data-level="0"]{background:transparent;border-style:dashed;color:#64748b}
.pom .pom-dot[data-level="0"] span{text-decoration:line-through}
.pom .pom-dot[data-level="3"]::after,.pom .pom-dot[data-level="2"]::after{content:"";position:absolute;top:5px;width:6px;height:6px;border-radius:50%;background:#fff}
.pom .pom-dot[data-level="3"]::before{content:"";position:absolute;top:5px;left:calc(50% - 9px);width:6px;height:6px;border-radius:50%;background:#fff;box-shadow:12px 0 0 #fff}
.pom .pom-dot[data-level="3"]::after{display:none}
.pom .pom-dot[data-on="1"]{transform:scale(1.16);box-shadow:0 0 0 4px #fbbf24,0 0 22px rgba(251,191,36,.7);border-color:#fde68a}
.pom .pom-dot[data-level="1"][data-on="1"]{background:#f8fafc;color:var(--n)}
.pom .pom-dot[data-on="ghost"]{box-shadow:0 0 0 3px rgba(251,191,36,.45)}
.pom .pom-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 14px;margin:6px 0 0;font-size:.78rem;color:#94a3b8}
.pom .pom-legend i{display:inline-block;width:10px;height:10px;margin-right:5px;border-radius:50%;vertical-align:-1px;border:1px solid #94a3b8}
.pom .pom-legend .l3{background:#7c3aed;border-color:#c4b5fd}.pom .pom-legend .l2{background:#2563eb;border-color:#93c5fd}.pom .pom-legend .l1{background:#1e293b}.pom .pom-legend .l0{border-style:dashed}
.pom[data-silent="1"][data-running="1"] .pom-silent{display:inline-block}
.pom .pom-silent{display:none;margin-left:8px;padding:1px 8px;border-radius:99px;background:#b45309;color:#fff;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;vertical-align:3px}
.pom .pom-transport{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:10px;margin:16px 0 12px}
.pom .pom-btn{appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;min-width:44px;padding:8px 14px;border-radius:12px;border:2px solid #475569;background:#1e293b;color:#f1f5f9;font:inherit;font-weight:700;font-size:1rem;line-height:1.2;text-transform:none;letter-spacing:normal;cursor:pointer;text-decoration:none;box-shadow:none;transition:background .12s,transform .08s}
.pom .pom-btn:hover{background:#334155;color:#fff;border-color:#64748b}
.pom .pom-btn:active{transform:translateY(1px)}
.pom .pom-go{min-height:64px;font-size:1.35rem;border:0;border-radius:999px;background:linear-gradient(90deg,var(--b),var(--v));color:#fff;box-shadow:0 8px 22px rgba(124,58,237,.45)}
.pom .pom-go:hover{background:linear-gradient(90deg,var(--b2),#6d28d9);color:#fff}
.pom[data-running="1"] .pom-go{background:linear-gradient(90deg,#be123c,#b91c1c);box-shadow:0 8px 22px rgba(185,28,28,.4)}
.pom .pom-tap{min-height:64px;border-radius:999px;border-color:#818cf8;color:#e0e7ff;font-size:1.05rem;touch-action:manipulation}
.pom .pom-tap[data-hit="1"]{background:#4f46e5;color:#fff}
.pom .pom-tempo{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto auto;gap:8px;align-items:center}
.pom .pom-tempo .pom-btn{padding:6px 10px;font-variant-numeric:tabular-nums}
.pom input[type=range]{width:100%;min-height:44px;margin:0;accent-color:#8b5cf6;background:transparent;cursor:pointer}
.pom .pom-tempo2{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin-top:10px}
.pom .pom-numlab{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:.9rem;color:#cbd5e1;font-weight:600}
.pom .pom-num{width:96px;min-height:44px;padding:6px 10px;border-radius:12px;border:2px solid #475569;background:#0b1024;color:#fff;font:700 1.1rem ui-monospace,Consolas,monospace;text-align:center}
.pom .pom-jump{min-height:44px;flex:1 1 200px;max-width:320px;padding:6px 10px;border-radius:12px;border:2px solid #475569;background:#0b1024;color:#fff;font:inherit;font-size:.92rem}
.pom .pom-btn:focus-visible,.pom .pom-dot:focus-visible,.pom input:focus-visible,.pom select:focus-visible,.pom .pom-seg input:focus-visible+span,.pom .pom-check input:focus-visible{outline:3px solid #f59e0b;outline-offset:2px}
.pom .pom-status{margin:12px 0 0;padding:9px 12px;border-radius:12px;background:rgba(255,255,255,.06);font-size:.9rem;color:#e2e8f0;min-height:2.6em}
.pom .pom-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pom .pom-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}
.pom .pom-card{margin:0;min-width:0;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:#fff}
.pom .pom-card>legend{float:none;width:auto;margin:0;padding:0 6px;border:0;font-weight:800;font-size:1rem;line-height:1.3;color:var(--n)}
.pom .pom-card>legend+*{margin-top:6px}
.pom .pom-card[data-on="1"]{border-color:#a78bfa;box-shadow:0 0 0 2px #ede9fe}
.pom .pom-wide{grid-column:1/-1}
.pom .pom-seg{display:flex;flex-wrap:wrap;gap:6px}
.pom .pom-seg label{position:relative;margin:0}
.pom .pom-seg input{position:absolute;opacity:0;width:1px;height:1px}
.pom .pom-seg span{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-width:52px;min-height:44px;padding:5px 12px;border-radius:12px;border:2px solid #c7d2fe;background:#f8fafc;cursor:pointer;font-weight:700;font-size:.95rem;line-height:1.15;color:var(--n)}
.pom .pom-seg span small{font-weight:500;font-size:.72rem;color:var(--mut)}
.pom .pom-seg input:checked+span{border-color:var(--b);background:#eff6ff;color:var(--b2);box-shadow:inset 0 0 0 1px var(--b)}
.pom .pom-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:10px 0 0}
.pom .pom-lab{display:block;margin:0 0 5px;font-weight:700;font-size:.85rem;color:var(--mut)}
.pom .pom-card select,.pom .pom-card input[type=number]{min-height:44px;padding:6px 10px;border:2px solid #c7d2fe;border-radius:12px;background:#fff;color:var(--n);font:inherit;font-size:.95rem}
.pom .pom-card input[type=number]{width:80px;text-align:center;font-variant-numeric:tabular-nums}
.pom .pom-card select{max-width:100%}
.pom .pom-inl{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:.92rem;color:var(--n)}
.pom .pom-check{display:flex;align-items:flex-start;gap:10px;min-height:44px;padding:4px 0;margin:0;font-size:.95rem;cursor:pointer}
.pom .pom-check input{width:22px;height:22px;margin:2px 0 0;flex:none;accent-color:var(--v)}
.pom .pom-check small{display:block;color:var(--mut);font-size:.82rem}
.pom .pom-info{margin:8px 0 0;font-size:.85rem;color:var(--mut)}
.pom .pom-card[data-on="1"] .pom-info{color:#5b21b6;font-weight:600}
.pom .pom-light{appearance:none;-webkit-appearance:none;min-height:44px;padding:6px 12px;border-radius:12px;border:2px solid #c7d2fe;background:#fff;color:var(--b2);font:inherit;font-weight:700;font-size:.9rem;cursor:pointer;text-transform:none;letter-spacing:normal;box-shadow:none}
.pom .pom-light:hover{background:#eff6ff;color:var(--b2)}
.pom .pom-light:focus-visible{outline:3px solid #f59e0b;outline-offset:2px}
.pom .pom-volval{min-width:3.2em;font-weight:700;font-variant-numeric:tabular-nums}
.pom .pom-card input[type=range]{accent-color:var(--b);flex:1 1 160px}
.pom .pom-note{margin:10px 0 0;font-size:.82rem;color:var(--mut)}
@media (max-width:700px){
	.pom .pom-title{font-size:1.25rem}
	.pom .pom-kbd{display:none}
	.pom .pom-device{padding:12px;border-radius:20px}
	.pom .pom-screen,.pom[data-visual="dots"] .pom-screen,.pom[data-visual="flash"] .pom-screen{grid-template-columns:58px minmax(0,1fr);gap:10px;padding:10px 12px}
	.pom[data-visual="dots"] .pom-screen,.pom[data-visual="flash"] .pom-screen{grid-template-columns:minmax(0,1fr)}
	.pom .pom-count{display:none}
	.pom .pom-pend svg{max-height:100px}
	.pom .pom-bpm{font-size:3.3rem}
	.pom .pom-mark{font-size:1.1rem;margin:0 0 4px}
	.pom .pom-stats{gap:4px 12px;font-size:.68rem}
	.pom .pom-stats b{font-size:.98rem}
	.pom .pom-dots{gap:8px;margin:10px 0 2px}
	.pom .pom-dot{width:46px;height:46px}
	.pom .pom-legend{display:none}
	.pom .pom-transport{margin:10px 0 10px}
	.pom .pom-go,.pom .pom-tap{min-height:56px}
	.pom .pom-go{font-size:1.2rem}
	.pom .pom-tempo{grid-template-columns:repeat(4,minmax(0,1fr))}
	.pom .pom-tempo input[type=range]{grid-column:1/-1;grid-row:1}
	.pom .pom-panels{grid-template-columns:minmax(0,1fr)}
	.pom .pom-jump{max-width:none}
}
@media (prefers-reduced-motion:reduce){
	.pom *,.pom *::before,.pom *::after{transition:none!important;animation:none!important}
	.pom .pom-dot[data-on="1"]{transform:none}
}
