.oral-recorder{border:1px solid #cab8a6;border-radius:18px;background:#fffdf7;padding:24px;margin:28px 0;color:#191714}
.oral-recorder-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}
.oral-recorder h4{font-size:24px;line-height:1.2;margin:12px 0}.oral-beta{font-size:11px;letter-spacing:1.2px;color:#754a29;font-weight:700}
.oral-recorder p,.oral-recorder span[data-oral-detail]{font-size:15px;line-height:1.6}.oral-timer{flex-shrink:0;border-radius:12px;background:#191714;color:#fffdf7;padding:16px;font:700 27px/1.2 monospace;font-variant-numeric:tabular-nums}
.oral-steps{list-style:none;display:flex;gap:8px;margin:24px 0;padding:0;flex-wrap:wrap}.oral-steps li{font-size:13px;padding:9px 14px;border-radius:24px;border:1px solid #d9cbbc}.oral-steps .current{background:#e0c5df;border-color:#191714;font-weight:700}.oral-steps .done{background:#e0ff94}
.oral-live{display:grid;gap:5px;padding:18px;background:#f5efe4;border-radius:12px}.oral-live strong{font-size:18px}.oral-live span{color:#655d54}.oral-recorder.is-recording .oral-live strong:before{content:'●';color:#bd2929;margin-right:9px}
.oral-meter{display:flex;gap:14px;align-items:center;margin:15px 0}.oral-meter meter{width:180px;height:16px}.oral-meter small{font-size:12px;color:#655d54}
.oral-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:18px 0 8px}.oral-actions button,.oral-actions a{width:auto;min-height:46px;padding:12px 18px;border-radius:10px;font-size:14px;text-decoration:none;cursor:pointer}.oral-actions button:disabled{cursor:default;opacity:.55}
.oral-recorder [hidden]{display:none!important}.oral-recording-result{margin-top:24px;border-top:1px solid #dfd1c2;padding-top:22px}.oral-recorder audio,.oral-saved audio{display:block;width:100%;margin:12px 0}.oral-recorder .oral-privacy{font-size:12px;color:#655d54;margin-top:20px}.oral-saved{border-top:1px solid #dfd1c2;padding-top:18px;margin-top:20px}.oral-saved p{font-size:13px;color:#655d54}.oral-text-fallback>summary{cursor:pointer;font-weight:700;padding:16px 0}
@media(max-width:600px){.oral-recorder{padding:18px 14px}.oral-recorder-heading{flex-direction:column;align-items:flex-start;gap:10px}.oral-recorder h4{font-size:21px}.oral-timer{font-size:21px;padding:12px}.oral-meter{flex-wrap:wrap}.oral-meter meter{max-width:100%}.oral-actions{align-items:stretch}.oral-actions button,.oral-actions a{flex:1;text-align:center}.oral-steps{gap:5px}.oral-steps li{padding:8px 11px}}
