/* Drum generator page only. Everything is scoped under .drums-page; site styles come from style.css and tools.css. */
.drums-page .drums-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.drums-page .drums-intro{position:relative}
.drums-page .drums-lang{display:flex;gap:8px;margin-bottom:22px}
.drums-page .drums-chip{min-height:36px;min-width:48px;padding:6px 12px;background:transparent;color:var(--cream);border:1px solid var(--line);border-radius:2px;font:600 12px var(--body);letter-spacing:.12em;cursor:pointer}
.drums-page .drums-chip[aria-pressed=true]{background:var(--red);border-color:#ff6e4f77;color:#fff5e0}
.drums-page .drums-tool{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:32px;padding-bottom:60px;align-items:start}
.drums-page .drums-controls,.drums-page .drums-card{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:2px;padding:24px;box-shadow:inset 0 1px 0 #ffffff0d}
.drums-page .drums-controls{display:grid;gap:22px}
.drums-page .drums-field{border:0;margin:0;padding:0;min-width:0}
.drums-page .drums-label{display:flex;justify-content:space-between;width:100%;font-size:10px;font-weight:600;letter-spacing:.19em;color:var(--muted);margin-bottom:10px}
.drums-page .drums-feel-name{color:var(--lamp)}
.drums-page .drums-help{font-size:12px;line-height:1.6;color:var(--muted);margin:10px 0 0}
.drums-page .drums-seed{display:flex;gap:8px}
.drums-page input[type=text],.drums-page input[type=number],.drums-page select{min-width:0;min-height:48px;padding:10px 12px;background:var(--ink);color:var(--cream);border:1px solid var(--line);border-radius:2px;font:inherit}
.drums-page #drums-seed{flex:1;font:700 26px var(--display);letter-spacing:.08em}
.drums-page .drums-step{min-width:48px;min-height:48px;padding:0 12px;background:var(--steel);color:var(--cream);border:1px solid var(--line);border-radius:2px;font:600 18px var(--body);cursor:pointer}
.drums-page .drums-dice{font-size:12px}
.drums-page [aria-invalid=true]{border-color:var(--lamp)}
.drums-page .drums-seg{display:flex;flex-wrap:wrap;gap:6px}
.drums-page .drums-seg label{flex:1 1 0;min-width:44px}
.drums-page .drums-seg input{position:absolute;opacity:0;width:1px;height:1px}
.drums-page .drums-seg span{display:flex;align-items:center;justify-content:center;min-height:44px;padding:4px 6px;background:var(--steel);border:1px solid var(--line);border-radius:2px;font:700 18px var(--display);letter-spacing:.06em;cursor:pointer;text-align:center}
.drums-page .drums-feel span{font:600 10px var(--body);letter-spacing:.1em}
.drums-page .drums-seg input:checked+span{background:var(--red);border-color:#ff6e4f77;color:#fff5e0}
.drums-page .drums-seg input:focus-visible+span,.drums-page :focus-visible{outline:2px solid var(--lamp);outline-offset:2px}
.drums-page .drums-more summary{cursor:pointer;font-size:12px;min-height:40px;display:flex;align-items:center;border-bottom:1px solid var(--line)}
.drums-page .drums-more-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}
.drums-page .drums-more-grid p{margin:0;display:grid;gap:6px;min-width:0}
.drums-page .drums-more-grid label{font-size:12px;color:var(--cream)}
.drums-page .drums-generate{width:100%;justify-content:center;font:800 26px var(--display);letter-spacing:.12em;min-height:64px}
.drums-page .drums-error{margin:0;color:var(--lamp);font-size:13px}
.drums-page .drums-canvas{display:block;width:100%;aspect-ratio:16/9;min-height:220px;border:1px solid var(--line);border-radius:2px}
.drums-page .drums-summary{font-size:13px;margin:14px 0 0}
.drums-page .drums-summary.is-stale{color:var(--lamp)}
.drums-page .drums-download{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:16px}
.drums-page .drums-dl{justify-content:center;cursor:pointer}
.drums-page .drums-dl[aria-disabled=true]{opacity:.45;cursor:not-allowed;transform:none}
.drums-page .drums-file,.drums-page .drums-report{font-size:11px;color:var(--muted);margin:0;overflow-wrap:anywhere;min-width:0}
.drums-page .drums-report{margin-top:12px;line-height:1.6}
.drums-page .drums-notes p+p{margin-top:12px}
.drums-page .signup-section .drums-optional{color:var(--cream)}
@media(max-width:1050px){.drums-page .drums-tool{grid-template-columns:1fr}}
@media(max-width:720px){.drums-page .drums-controls,.drums-page .drums-card{padding:16px}.drums-page .drums-more-grid{grid-template-columns:1fr}.drums-page .drums-seed{flex-wrap:wrap}.drums-page #drums-seed{flex-basis:100%}.drums-page .drums-step{flex:1}.drums-page .drums-canvas{aspect-ratio:4/3}.drums-page .drums-dl{width:100%}}
.drums-page .drums-generate span,.drums-page .drums-dl span{font:inherit}
@media(max-width:420px){.drums-page .drums-feel{gap:4px}.drums-page .drums-feel label{min-width:0}.drums-page .drums-feel span{font-size:8px;letter-spacing:0;padding:4px 2px}}
