.vr-stage,.vr-card{border-radius:var(--radius-lg);background:var(--card);border:1px solid var(--line);min-width:0;box-shadow:var(--edge);position:relative}.vr-stage{isolation:isolate;gap:14px;padding:clamp(18px,4vw,34px) clamp(16px,4vw,40px);display:grid;overflow:hidden}.vr-stage:before{content:"";z-index:-1;background:var(--glow);opacity:.28;pointer-events:none;height:80%;transition:opacity var(--med) var(--ease);position:absolute;inset:-45% 15% auto}.vr-stage[data-mode=recording]:before{opacity:.55}.vr-card{gap:14px;padding:clamp(16px,3vw,24px);display:grid}.vr-card h2{margin:0}.vr-why{border-radius:var(--radius);background:var(--primary-soft);border:1px solid var(--line);grid-template-columns:auto 1fr;align-items:start;gap:12px;padding:12px 14px;display:grid}.vr-why p{color:var(--ink-2);margin:0;font-size:.95rem}.vr-why-ico{background:var(--surface-2);width:34px;height:34px;color:var(--accent-text);border-radius:50%;place-items:center;display:grid}.vr-block{border-radius:var(--radius);background:var(--danger-soft);color:var(--ink);border:1px solid var(--danger);margin:0;padding:12px 14px}.vr-clock{justify-items:center;gap:2px;display:grid}.vr-time{font-family:var(--font-display);letter-spacing:-.045em;font-variant-numeric:tabular-nums;font-size:clamp(3rem,2.2rem + 4vw,5.2rem);font-weight:650;line-height:1}.vr-state,.vr-meter-row,.vr-keys{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:.76rem}.vr-stage.vr-granted .vr-why{display:none}.vr-stage[data-mode=recording] .vr-state{color:var(--danger)}.vr-wave{border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--line);width:100%;height:96px;display:block}.vr-meter{border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--line);height:10px;position:relative;overflow:hidden}.vr-meter-fill{transform-origin:0;background:linear-gradient(90deg,#2f7bff 0%,#7cc4ff 62%,#6ee7b7 80%,#ffd36b 90%,#ff8a7a 100%) 0 0/100% 100%;position:absolute;inset:0;transform:scaleX(0)}.vr-meter-peak{background:var(--ink);width:2px;position:absolute;top:0;bottom:0;left:0}.vr-meter-row{flex-wrap:wrap;justify-content:space-between;gap:4px 12px;margin-top:-6px;display:flex}.vr-clip{color:var(--danger)}.vr-controls{grid-template-rows:auto auto;grid-template-columns:1fr auto 1fr;align-items:center;gap:6px 18px;margin-top:4px;display:grid}.vr-side{border-radius:var(--radius-pill);border:1px solid var(--line-strong);background:var(--surface-2);min-height:48px;color:var(--ink);cursor:pointer;grid-area:1/1;justify-self:end;align-items:center;gap:8px;padding:0 18px;font-weight:600;display:inline-flex}.vr-side:hover:not([disabled]){border-color:var(--sky)}.vr-side[disabled]{opacity:.45;cursor:not-allowed}.vr-pause-ico{border-inline:4px solid;width:12px;height:14px}.vr-side[aria-pressed=true] .vr-pause-ico{background:var(--danger);border:0;border-radius:50%;width:12px;height:12px}.vr-rec{border:3px solid var(--line-strong);background:var(--surface);cursor:pointer;touch-action:manipulation;width:92px;height:92px;transition:transform var(--fast) var(--ease), border-color var(--fast) var(--ease);border-radius:50%;grid-area:1/2;place-items:center;display:grid;box-shadow:0 0 #ff8a7a80}.vr-rec:hover:not([disabled]){border-color:var(--danger);transform:scale(1.04)}.vr-rec:active:not([disabled]){transform:scale(.95)}.vr-rec[disabled]{opacity:.45;cursor:not-allowed}.vr-rec:focus-visible,.vr-side:focus-visible,.vr-del:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.vr-rec-ico{width:46px;height:46px;transition:border-radius var(--med) var(--spring), width var(--med) var(--spring), height var(--med) var(--spring);background:#ff5a4a;border-radius:50%}.vr-rec[aria-pressed=true] .vr-rec-ico{border-radius:8px;width:32px;height:32px}.vr-stage[data-mode=recording] .vr-rec{border-color:#ff5a4a;animation:1.6s ease-out infinite vr-pulse}.vr-stage[data-mode=starting] .vr-rec-ico{opacity:.6}@keyframes vr-pulse{0%{box-shadow:0 0 #ff5a4a73}to{box-shadow:0 0 0 22px #ff5a4a00}}.vr-rec-label{grid-area:2/2;justify-self:center;font-weight:650}.vr-keys{text-align:center;text-transform:none;letter-spacing:.02em;margin:0}.vr-keys kbd{font-family:var(--font-mono);border:1px solid var(--line-strong);border-radius:6px;padding:1px 6px}.vr-set-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:14px;display:grid}.vr-field{gap:6px;min-width:0;font-size:.92rem;font-weight:600;display:grid}.vr-field select{border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--surface);width:100%;height:46px;color:var(--ink);font:inherit;padding:0 12px;font-weight:500}.vr-field select:disabled{opacity:.6}.vr-small{color:var(--muted);font-size:.82rem;font-weight:400}.vr-cleaners{border:0;flex-wrap:wrap;gap:4px 22px;min-inline-size:0;margin:0;padding:0;display:flex}.vr-cleaners legend{margin-bottom:6px;font-size:.92rem;font-weight:600}.vr-cleaners .tt-check{min-height:44px}.vr-takes-head{gap:4px;display:grid}.vr-empty{border-radius:var(--radius);border:1px dashed var(--line-strong);color:var(--muted);text-align:center;margin:0;padding:18px}.vr-list{grid-template-columns:minmax(0,1fr);gap:14px;margin:0;padding:0;list-style:none;display:grid}.vr-take{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);min-width:0;animation:vr-in var(--med) var(--ease-out);gap:10px;padding:14px;display:grid}@keyframes vr-in{0%{opacity:0;transform:translateY(8px)}}.vr-take.is-busy{opacity:.8}.vr-take-head{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.vr-take-n{background:var(--primary-soft);width:32px;height:32px;color:var(--accent-text);font-family:var(--font-display);border-radius:50%;place-items:center;font-weight:700;display:grid}.vr-take-name input{border-radius:var(--radius-sm);width:100%;height:44px;color:var(--ink);font:inherit;font-family:var(--font-display);background:0 0;border:1px solid #0000;padding:0 10px;font-size:1.12rem;font-weight:650}.vr-take-name input:hover,.vr-take-name input:focus{border-color:var(--line-strong);background:var(--surface-2)}.vr-del{border:1px solid var(--line-strong);width:44px;height:44px;color:var(--muted);cursor:pointer;background:0 0;border-radius:50%;place-items:center;display:grid}.vr-del:hover,.vr-del.vr-armed{color:var(--danger);border-color:var(--danger)}.vr-del.vr-armed{background:var(--danger-soft)}.vr-take-meta{font-family:var(--font-mono);color:var(--muted);margin:-4px 0 0;font-size:.78rem}.vr-take-wave{border-radius:var(--radius-sm);background:var(--surface-2);cursor:ew-resize;touch-action:none;width:100%;height:84px;display:block}.vr-nowave .vr-take-wave,.vr-nowave .vr-trim{display:none}.vr-trim{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.vr-tfield{align-items:center;gap:8px;font-size:.9rem;font-weight:600;display:inline-flex}.vr-tfield input{border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--surface);width:6.5ch;height:44px;color:var(--ink);font:inherit;font-family:var(--font-mono);text-align:center;padding:0 8px}.vr-tlen{color:var(--muted);font-size:.88rem}.vr-trimmed .vr-tlen{color:var(--accent-text)}.vr-take-actions{flex-wrap:wrap;gap:8px;display:flex}.vr-take-actions .btn{min-height:44px;padding:0 16px;font-size:.95rem}.vr-play-ico{border-block:7px solid #0000;border-left:11px solid;width:0;height:0;margin-right:-2px}[aria-pressed=true]>.vr-play-ico{background:currentColor;border:0;border-radius:2px;width:12px;height:12px}.vr-take-note{color:var(--muted);margin:0;font-size:.85rem}.vr-take-note:empty{display:none}@media (width<=600px){.vr-controls{column-gap:12px}.vr-side{padding:0 14px}.vr-rec{width:84px;height:84px}.vr-keys{display:none}.vr-take-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.vr-take-actions .btn{white-space:normal;width:100%;min-width:0;padding:0 10px;line-height:1.15}.vr-trim{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.vr-tfield{justify-content:space-between;min-width:0}.vr-tfield input{flex:1;width:0;min-width:0}.vr-tlen,.vr-trim .chip-btn{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){.vr-stage[data-mode=recording] .vr-rec,.vr-take{animation:none}}@media (width<=400px){.vr-take-head{grid-template-columns:minmax(0,1fr) auto}.vr-take-n{display:none}}
