/* PRIMAL Boxing Club. Static, responsive, no external font required. */
:root{--bg:#0c0d0f;--panel:#161719;--surface:#1c1d20;--line:#323236;--ink:#f6f4ef;--sub:#aaa9a7;--red:#ec3c32;--red2:#b92b28;--gold:#ecc39e}
*,*::before,*::after{box-sizing:border-box}
html{background:#050607;scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:#08090b;color:var(--ink);font:15px/1.45 -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased}
button,input,select{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed;opacity:.44}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #ffac7a;outline-offset:3px}a{color:#ffa29c}
svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;fill:none}
.app-shell{max-width:510px;min-height:100dvh;margin:0 auto;background:var(--bg);position:relative;padding:env(safe-area-inset-top) 22px calc(177px + env(safe-area-inset-bottom));overflow:hidden;box-shadow:0 15px 95px #0009}
.site-header{height:75px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #ffffff12}
.brand{font-family:Impact,'Arial Narrow',Arial,sans-serif;font-size:32px;font-weight:900;line-height:.83;letter-spacing:-1.4px;color:var(--red)}.brand span{display:block;margin-top:7px;color:#f2f1ed;font:700 8px/1.3 -apple-system,sans-serif;letter-spacing:3.25px}
.header-right{display:flex;align-items:center;gap:13px}.red-dot{display:inline-block;border-radius:50%;width:6px;height:6px;background:var(--red);margin-right:5px;box-shadow:0 0 10px #f6474080}.circle-button{width:38px;height:38px;display:grid;place-items:center;background:#ffffff09;border:1px solid #ffffff24;border-radius:12px;color:#eee}
.welcome{display:block;padding-top:24px}.eyebrow{font-weight:800;color:#e2e0dc;font-size:10px;letter-spacing:2.5px;margin:0 0 9px}h1{font-family:Impact,'Arial Narrow',Arial,sans-serif;font-weight:900;font-size:clamp(53px,13vw,78px);line-height:.90;letter-spacing:-.6px;margin:0;max-width:440px}h1 em{font-style:normal;color:var(--red)}.hero-subtitle{color:var(--sub);font-size:13px;margin:13px 0 0}.hero-character-frame{height:clamp(250px,72vw,352px);position:relative;margin:4px -22px 0;overflow:hidden;display:flex;justify-content:center;align-items:flex-end;isolation:isolate}.hero-halo{position:absolute;z-index:-1;width:260px;height:260px;top:22px;border-radius:50%;background:radial-gradient(circle at 50% 45%,#a537253d 0,#50221c20 39%,transparent 75%);box-shadow:inset 0 0 0 1px #c14e3b1f}.hero-character{width:auto;height:116%;max-width:94%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 12px 24px #000b)}.hero-mark{position:absolute;bottom:13px;left:22px;font-size:8px;font-weight:800;letter-spacing:2px;color:#d2ceca;opacity:.7}.hero-stats{display:flex;justify-content:space-around;align-items:center;border:1px solid #333338;border-radius:16px;padding:12px 5px;background:#151619}.hero-stats span{text-align:center}.hero-stats strong{display:block;font-family:Impact,Arial;font-weight:800;font-size:24px;letter-spacing:.4px}.hero-stats small{display:block;color:#999a9b;font-size:8px;letter-spacing:1.2px;font-weight:700}.hero-stats i{height:21px;border-left:1px solid #48484a}
.session-chip{display:flex;align-items:center;width:100%;gap:13px;padding:14px 15px;margin:15px 0 0;background:#1a1b1e;border:1px solid #39393c;border-radius:15px;color:#f5f3f0;text-align:left}.chip-icon{width:37px;height:37px;border-radius:11px;background:#313234;display:grid;place-items:center;color:#e8e8e8;flex:0 0 auto}.session-chip b{font-size:14px;font-weight:750;display:block}.session-chip small{font-size:11px;color:#999;display:block;margin-top:2px}.chip-edit{margin-left:auto;color:#ff8074;font-size:10px;letter-spacing:.7px;font-weight:800;white-space:nowrap}.chip-edit span{font-size:14px}
.ring{display:none;position:relative;margin-top:14px;padding:18px 0 0;background:var(--bg);border-top:2px solid var(--red);min-height:clamp(450px,67dvh,760px)}.ring-top{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:10px;color:#aaa;letter-spacing:1.3px;font-weight:800}.round-phase{display:flex;gap:5px;align-items:center;color:#eee}.phase-dot{width:7px;height:7px;border-radius:50%;background:var(--red)}.clock-face{background:none;position:relative;display:flex;justify-content:center;margin:clamp(22px,6dvh,65px) auto 22px}.clock-inner{display:flex;flex-direction:column;align-items:center;justify-content:center}.clock-caption{order:2;color:#b2b1b2;font-size:10px;font-weight:700;letter-spacing:3px;margin-top:4px}.timer{color:var(--red);font:900 clamp(81px,22vw,120px)/1 Impact,'Arial Narrow',sans-serif;letter-spacing:-1px;font-variant-numeric:tabular-nums}.timeline{height:3px;width:100%;background:#343439;overflow:hidden;border-radius:5px}.timeline div{height:100%;width:0;background:var(--red);border-radius:5px;transition:width .12s linear}.round-divider{display:flex;justify-content:space-between;color:#8e9094;font-weight:800;font-size:9px;letter-spacing:1.4px;margin-top:34px}.sequence{margin:16px auto 10px;min-height:205px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;text-align:center}.ready-word{font:900 clamp(29px,9vw,48px)/1.06 Impact,'Arial Narrow',sans-serif;text-transform:uppercase;letter-spacing:.3px}.move{display:flex;flex-direction:column-reverse;align-items:center;gap:0}.move b{color:var(--red);font-size:10px;line-height:1.4;font-weight:800;letter-spacing:1.4px}.move span{display:block;color:#f8f8f9;font:900 clamp(26px,7.4vw,46px)/1.06 Impact,'Arial Narrow',sans-serif;text-transform:uppercase;letter-spacing:.05px;overflow-wrap:anywhere}.sequence:has(.move:nth-child(4)) .move span{font-size:clamp(23px,6vw,35px)}.sequence:has(.move:nth-child(5)){gap:4px}.sequence:has(.move:nth-child(5)) .move span{font-size:clamp(19px,5vw,28px)}.sequence .move.defense span,.sequence .move.footwork span{color:#f7cdaa}.cue{font-size:12px;color:#aaa;text-align:center;line-height:1.5;min-height:36px;max-width:340px;margin:5px auto 14px}.ring-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #33343a;padding:8px 0 0}.ring-bottom button{background:none;border:0;color:#c7c7c9;min-height:44px;display:flex;align-items:center;gap:6px;padding:6px 0;font-size:11px;font-weight:650}.ring-bottom svg{width:18px;height:18px}.ring-bottom #skip{color:#ff746c;letter-spacing:.4px}.ring-bottom #skip span{font-size:19px}
.transport{margin-top:15px}.start{display:flex;width:100%;min-height:58px;align-items:center;justify-content:center;gap:12px;border:0;border-radius:10px;background:var(--red);color:#fff;font-size:14px;font-weight:850;letter-spacing:1.1px;box-shadow:0 3px 0 #9b211d}.start:active{transform:translateY(2px);box-shadow:0 1px 0 #9b211d}.start span{font-size:15px}.secondary{width:100%;border:1px solid #55565b;border-radius:9px;min-height:42px;margin-top:10px;color:#eee;background:#24252a}.secondary:disabled{display:none}.session-footnote{text-align:center;color:#858589;font-size:9px;font-weight:700;letter-spacing:2.1px;margin:16px 0 0}
.tab-bar{position:fixed;z-index:9;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,510px);display:flex;justify-content:space-around;align-items:center;gap:4px;background:#111214ef;border-top:1px solid #333337;backdrop-filter:blur(12px);padding:9px 16px calc(9px + env(safe-area-inset-bottom))}.tab-bar button{border:0;background:none;color:#97979d;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:80px;min-height:46px;font-size:10px;font-weight:700}.tab-bar button.selected{color:var(--red)}.tab-bar svg{width:22px;height:22px}
.music-dock{z-index:10;position:fixed;bottom:calc(76px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(calc(100% - 34px),480px);display:flex;align-items:center;height:58px;background:#26272aee;border:1px solid #48494c;border-radius:13px;overflow:hidden;backdrop-filter:blur(16px);box-shadow:0 5px 20px #0008}.music-dock button{background:none;border:0;color:#f4f1ed;height:100%}.music-dock #musicToggle{flex:1;min-width:0;display:flex;align-items:center;gap:11px;text-align:left;padding:8px 13px}.music-dock #musicIcon{background:var(--red);color:#fff;width:34px;height:34px;display:grid;place-items:center;border-radius:8px;flex:0 0 auto;font-size:19px}.music-dock b{font-weight:800;font-size:12px;display:block}.music-dock small{color:#b7b7b9;font-size:10px;display:block}.music-dock #musicDetails{font-size:19px;min-width:48px;border-left:1px solid #ffffff15}
/* Exclusive training mode: timer and callout dominate */
body[data-state=prepare] .welcome,body[data-state=work] .welcome,body[data-state=rest] .welcome,body[data-state=paused] .welcome,body[data-state=done] .welcome{display:none}
body[data-state=prepare] .session-chip,body[data-state=work] .session-chip,body[data-state=rest] .session-chip,body[data-state=paused] .session-chip{display:none}
body[data-state=prepare] .ring,body[data-state=work] .ring,body[data-state=rest] .ring,body[data-state=paused] .ring,body[data-state=done] .ring{display:block}
body[data-state=prepare] .app-shell,body[data-state=work] .app-shell,body[data-state=paused] .app-shell{padding-bottom:26px}
body[data-state=prepare] .tab-bar,body[data-state=work] .tab-bar,body[data-state=rest] .tab-bar,body[data-state=paused] .tab-bar{display:none}
body[data-state=prepare] .music-dock,body[data-state=work] .music-dock,body[data-state=paused] .music-dock{display:none}
body[data-state=rest] .app-shell{padding-bottom:125px}body[data-state=rest] .music-dock{bottom:calc(12px + env(safe-area-inset-bottom))}body[data-state=rest] .timer{color:#f4f2ec}body[data-state=rest] .phase-dot{background:#ffcf95}body[data-state=rest] .ring{border-color:#f6bd89}body[data-state=rest] .timeline div{background:#f0bd89}body[data-state=rest] .ready-word{color:#f0bd89}
body[data-state=paused] .timer{opacity:.58}body[data-state=done] .ring{border-color:#f6bd89}body[data-state=done] .ready-word{color:#f1d7b7}body[data-state=done] .music-dock{bottom:calc(75px + env(safe-area-inset-bottom))}
/* Settings, history and technique */
.sheet{margin:auto auto 0;width:min(100%,510px);max-width:100%;max-height:93dvh;background:#1b1c1f;border:1px solid #393a3e;border-radius:23px 23px 0 0;padding:0;color:#f5f3ef;box-shadow:0 -15px 90px #000a;overflow-y:auto;overscroll-behavior:contain}.sheet::backdrop{background:#000a;backdrop-filter:blur(5px)}.handle{width:44px;height:5px;border-radius:10px;background:#777;margin:11px auto 2px}.sheet-header{position:sticky;z-index:2;top:0;display:flex;align-items:center;justify-content:space-between;background:#1b1c1ff3;padding:14px 20px;border-bottom:1px solid #38393c}.sheet-header h2{font-size:23px;font-weight:800;margin:0;letter-spacing:-.5px}.done{background:var(--red);color:white;font-size:13px;font-weight:800;border:0;border-radius:11px;min-height:41px;padding:0 18px}.sheet-body{padding:0 19px calc(22px + env(safe-area-inset-bottom))}.section-label{font-size:10px;letter-spacing:1.8px;font-weight:800;color:#9b9c9e;margin:23px 6px 9px}.group{border:1px solid #3b3c41;background:#24252a;border-radius:13px;overflow:hidden;margin:0 0 12px}.group label{display:flex;align-items:center;gap:8px;margin:0 13px;border-bottom:1px solid #393a40;min-height:53px;font-size:14px}.group label:last-child{border-bottom:none}.group select{min-width:0;max-width:66%;margin-left:auto;text-align:right;background:#24252a;border:0;color:#dedcdf;font-size:13px;min-height:48px}.group input[type=number]{width:72px;border:1px solid #46464c;background:#17171a;color:white;margin-left:auto;text-align:center;border-radius:9px;padding:7px;min-height:39px}.unit{color:#a8a8a8;font-size:12px}fieldset{border:0;margin:0;padding:0;min-width:0}.range-group label{display:block;padding:12px 0}.range-group label span{float:right;color:#fa7168;font-weight:800}input[type=range]{width:100%;margin:12px 0 4px;display:block;accent-color:var(--red)}.toggle input{appearance:none;-webkit-appearance:none;background:#59595d;width:48px;height:28px;border-radius:30px;margin-left:auto;flex-shrink:0;position:relative}.toggle input:before{content:'';position:absolute;background:#fff;width:23px;height:23px;border-radius:50%;top:2.5px;left:3px;transition:transform .2s}.toggle input:checked{background:var(--red)}.toggle input:checked:before{transform:translateX(19px)}.group .voice-row{display:flex;flex-wrap:wrap;padding:9px 0}.group .voice-row select{max-width:100%;width:100%;text-align:left}.field-note{font-size:12px;line-height:1.55;color:#a9a9ad;margin:12px 3px 18px}.presets{display:flex;gap:8px;margin:10px 0}.presets button{flex:1;background:#303136;color:#f5f4f3;border:1px solid #494a4d;border-radius:10px;min-height:42px;font-size:12px}.total{margin:20px 4px;display:flex;justify-content:space-between;align-items:center;font-size:13px}.total strong{font-size:22px}.outline{width:100%;min-height:47px;border-radius:11px;border:1px solid #e25750;background:#2a1c1c;color:#ff8680;font-weight:800}.sheet-intro{font-size:23px;font-weight:800;margin:18px 0 10px}.history{border-radius:13px;background:#27282b;padding:12px}.history article{border-bottom:1px solid #494950;padding:15px 3px;display:flex;justify-content:space-between;gap:8px;font-size:13px}.history article:last-child{border:0}.history small{color:#a3a3a3;font-size:11px}.text-button{background:none;border:0;color:#ff827a;min-height:45px;font-size:13px}.dictionary article,.catalog article{background:#24252a;border:1px solid #3b3c41;border-radius:11px;padding:12px 14px;margin-bottom:9px;font-size:13px}.dictionary b{color:#ff877f}.dictionary p{margin:5px 0 0;color:#b2b2b5;font-size:12px}details{padding:15px 0;border-bottom:1px solid #3c3d42}summary{cursor:pointer;font-weight:700}#musicSheet iframe{max-width:100%;border:0;border-radius:12px}.playlist-label{display:block;font-weight:750;font-size:13px;margin-top:18px}
@media(min-width:600px){body{background:repeating-linear-gradient(145deg,#0b0c0e,#101114 12px,#0b0c0e 30px);padding:20px}.app-shell{border-radius:22px;min-height:calc(100dvh - 40px);border:1px solid #343438}.tab-bar,.music-dock{position:fixed}.hero-character-frame{height:330px}body[data-state=prepare] .ring,body[data-state=work] .ring{min-height:550px}}
@media(max-height:740px) and (max-width:599px){.site-header{height:60px}.welcome{padding-top:14px}h1{font-size:54px}.hero-character-frame{height:238px}.hero-stats{padding:8px 5px}.hero-stats strong{font-size:20px}.session-chip{padding:9px 12px;margin-top:10px}.ring{min-height:430px}.clock-face{margin:18px auto 20px}.sequence{min-height:155px}.round-divider{margin-top:22px}.timer{font-size:82px}.cue{margin-bottom:6px}.transport{margin-top:10px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* First-viewport composition on phones: keep the start CTA above the music dock. */
@media(max-width:599px){
  .site-header{height:64px}
  .welcome{padding-top:13px}
  h1{font-size:clamp(49px,12.8vw,56px);line-height:.88}
  .hero-subtitle{margin-top:9px}
  .hero-character-frame{height:210px;margin-top:1px}
  .hero-character{height:100%}
  .hero-stats{padding:8px 5px}
  .hero-stats strong{font-size:20px}
  .hero-stats small{font-size:7px}
  .session-chip{padding:10px 12px;margin-top:11px}
  .start{min-height:53px}
  .transport{margin-top:11px}
}
@media(max-width:599px) and (max-height:760px){
  .hero-character-frame{height:165px}
  .hero-halo{top:-24px}
  .welcome{padding-top:9px}
  h1{font-size:47px}
  .hero-subtitle{margin-top:6px}
  .site-header{height:58px}
  .hero-stats{padding:6px 5px}
  .session-chip{padding:8px 10px}
  .start{min-height:49px}
}

/* Language selector: visible both on welcome and during workouts. */
.header-right{display:flex;align-items:center;gap:10px}
.language-wrap{height:39px;display:flex;align-items:center;gap:5px;padding:0 9px;border:1px solid #3b3c42;border-radius:11px;color:#eeeef0;background:#202125}
.language-wrap svg{width:15px;height:15px;stroke:#d9d9dd;stroke-width:1.6;fill:none}
.language-wrap select{appearance:none;background:transparent;color:#fff;border:0;outline:0;font:800 12px/1 system-ui;letter-spacing:.04em;cursor:pointer;padding:0 4px 0 0}
.language-wrap select option{background:#202125;color:#fff}
/* Módulo de grabación local */
.record-tools{display:flex;gap:9px;margin:18px 0 16px;align-items:center}
.record-cta{width:100%;padding:12px 16px;background:#25252a;border:1px solid #53515a;color:#f6f2ee;border-radius:15px;font-size:13px;letter-spacing:.15px;font-weight:700;display:flex;justify-content:center;align-items:center;gap:10px}
.record-cta span:first-child{color:#e7483c;font-size:16px}
.record-cta span:last-child{margin-left:auto;color:#aaa}
.record-stop{border:1px solid #e64b40;background:#381915;color:#fff;padding:11px;border-radius:12px;flex-shrink:0;font-size:12px}
.rec-badge{background:#c82f30;color:white;border-radius:8px;padding:4px 7px;font-weight:800;font-size:10px;letter-spacing:1px;animation:record-blink 1.6s ease-in-out infinite}
[hidden]{display:none!important}
@keyframes record-blink{50%{opacity:.6}}
.record-sheet .sheet-body{padding-top:14px}
.record-lead{font-size:14px;line-height:1.5;color:#32302b;margin:5px 0 14px}
.camera-preview,.recorded-video{width:100%;height:235px;object-fit:cover;background:#111216;border-radius:18px;display:block}
.camera-preview:not([src]){background:#17181b}
.record-config{display:grid;grid-template-columns:1fr;gap:8px;margin:14px 0}
.record-config label{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #ded8cd;border-radius:12px;padding:11px 12px;font-size:13px}
.record-config select{background:#f2efea;padding:7px;border:0;border-radius:8px;color:#292722}
.record-config input{accent-color:#ae3028;width:22px;height:22px}
.record-hint{font-size:12px;line-height:1.55;color:#62615e;margin:10px 2px}
.record-message{font-size:13px;background:#e4ded4;color:#4f2924;border-radius:12px;padding:12px;line-height:1.4}
.record-start{margin:16px 0;width:100%;background:#b6372e}
.record-save{display:block;text-align:center;padding:16px 12px;border-radius:14px;background:#b33329;color:#fff;text-decoration:none;font-weight:750;margin:14px 0}
.record-privacy{color:#5b6459;font-size:12px;text-align:center;margin:12px 0}
.recorded-video{object-fit:contain;max-height:400px;height:auto;min-height:200px;margin-top:10px}
.record-sheet h3{font-size:20px;margin:15px 0 5px}
body[data-state="work"] .record-tools,body[data-state="prepare"] .record-tools,body[data-state="rest"] .record-tools,body[data-state="paused"] .record-tools{display:none}
body.is-recording .record-tools{display:flex}
body.is-recording .record-cta{display:none}
body.is-recording .record-stop{display:block}
@media(prefers-reduced-motion:reduce){.rec-badge{animation:none}}
/* Contraste accesible en el panel oscuro de grabación */
.record-lead{color:#e7e5e2}
.record-config label{background:#292a2f;border:1px solid #48494f;color:#f0f0ed}
.record-config select{background:#393a41;color:#faf8f3}
.record-hint{color:#b5b5ba}
.record-message{background:#363139;color:#f9c7c3}
.record-privacy{color:#a5b9a9}
.recorded-video{background:#090a0c}
.record-secondary{display:block;width:100%;min-height:44px;margin:9px 0;border:1px solid #767279;border-radius:12px;background:#2d2d31;color:#f6f4ee;font-size:13px;font-weight:700}


/* Full-screen capture mode: same canvas is displayed and recorded. */
.record-stage{position:fixed;inset:0;inset-block:0;z-index:1000;background:#08090b;isolation:isolate}
.record-stage[hidden]{display:none!important}
.record-canvas{display:block;width:100%;height:100%;object-fit:fill;touch-action:manipulation}
.record-stage-controls{position:absolute;z-index:3;left:16px;right:16px;bottom:calc(24px + env(safe-area-inset-bottom));display:flex;gap:10px;justify-content:center;align-items:center;pointer-events:auto}
.record-stage-stop,.record-stage-sound{touch-action:manipulation;pointer-events:auto;min-height:50px;border:1px solid rgba(255,255,255,.35);color:white;font-size:13px;font-weight:850;letter-spacing:.2px;border-radius:12px;box-shadow:0 5px 18px #0005;padding:12px 15px}
.record-stage-stop{background:#d92b29;flex:1;max-width:250px}
.record-stage-sound{background:rgba(20,21,23,.8);flex-shrink:0}
.record-stage-sound.is-ready{border-color:#84bd9e;color:#d9ffe5}
/* Never disable pointer events on the app parent of recording controls. */
body.is-recording .music-dock{display:none}
body.is-recording{overflow:hidden}

.home-menu{background:#25272b;border:1px solid #45474d;color:#eee;border-radius:10px;font-size:12px;font-weight:700;padding:9px 10px;white-space:nowrap}
@media(max-width:599px){.header-right{gap:5px}.home-menu{font-size:11px;padding:8px}.yt-dock{right:7px;bottom:calc(82px + env(safe-area-inset-bottom))}}

/* PRIMAL identity */
body[data-state="idle"] .home-menu{display:none!important}
.hero-character-frame{align-items:center}
.hero-character{height:96%;width:auto;max-width:85%;object-fit:contain;filter:drop-shadow(0 6px 12px rgba(0,0,0,.35))}
.hero-halo{background:radial-gradient(circle at center,#ffffff19 0%,transparent 70%);box-shadow:none}
/* No Inicio control on the initial landing page even before data-state is set. */
.home-menu{display:none!important}
body[data-state="prepare"] .home-menu,
body[data-state="work"] .home-menu,
body[data-state="rest"] .home-menu,
body[data-state="paused"] .home-menu,
body[data-state="done"] .home-menu{display:inline-flex!important}

/* PRIMAL MP3 native player. No external floating frame. */
.primal-music-dock{position:relative;z-index:1;margin:24px 0 18px;padding:13px 15px;border:1px solid #36383e;border-radius:16px;background:#17191e;color:#f5f4f1;box-shadow:none}
.primal-music-heading{display:flex;align-items:center;gap:12px;min-width:0}
.primal-music-symbol{display:grid;place-items:center;width:38px;height:38px;flex-shrink:0;border-radius:12px;background:#c93a32;color:#fff;font-size:23px}
.primal-music-heading strong{display:block;font-size:13px;letter-spacing:.1px}
.primal-music-heading small{display:block;color:#aaaeb8;font-size:11px;margin-top:2px}
.primal-music-actions{display:flex;align-items:center;gap:16px;margin-top:12px}
.primal-music-actions button{min-height:43px;padding:10px 14px;border:1px solid #4e515c;border-radius:10px;color:#fff;background:#292c33;font-weight:750;font-size:12px;white-space:nowrap}
.primal-music-actions label{flex:1;display:flex;flex-direction:column;gap:2px;font-size:10px;color:#bec1c8}
.primal-music-actions input{width:100%;accent-color:#c93a32}
.primal-music-status{font-size:11px;color:#aeb1b9;line-height:1.4;margin:9px 0 0}
body.is-recording .primal-music-dock{display:none!important}
@media(max-width:400px){.record-stage-controls{flex-wrap:wrap}.primal-music-actions{gap:8px}.primal-music-actions button{padding:8px;font-size:11px}.record-stage-controls{gap:5px}.record-stage-stop,.record-stage-sound{padding:9px 8px;font-size:11px;min-height:44px}}
