@charset "UTF-8";
:root{color-scheme:light;--paper:#f5f3ec;--panel:#fcfbf6;--ink:#30382f;--muted:#73786b;--line:#dcded1;--green:#42654e;font:13px/1.5 "Segoe UI",-apple-system,BlinkMacSystemFont,sans-serif;background:var(--paper);color:var(--ink)}
*{box-sizing:border-box}[hidden]{display:none!important}
body{margin:0;min-width:260px}
button,select{font:inherit;color:inherit;min-height:31px;border:1px solid var(--line);border-radius:5px;background:var(--panel)}
button{padding:4px 10px;cursor:pointer;white-space:nowrap}button:hover:not(:disabled){background:#e9eee3;border-color:#b7c6af}button:disabled{opacity:.5;cursor:default}
select{min-width:0;padding:4px 25px 4px 8px;max-width:100%}button:focus-visible,select:focus-visible,audio:focus-visible{outline:2px solid var(--green);outline-offset:3px}::selection{background:#d9e4cf}
.app-shell{max-width:710px;margin:auto;padding:0 20px 16px}.app-header{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:77px;padding:14px 0;border-bottom:1px solid var(--line)}
.app-name{display:flex;align-items:center;gap:10px;min-width:0}.app-name img{flex-shrink:0}h1{margin:0;font:400 28px/1.2 Georgia,"Times New Roman",serif;letter-spacing:-.6px}
.state-badge{flex-shrink:0;border:1px solid var(--line);background:#f0f2e9;border-radius:4px;padding:2px 6px;font-size:10px;color:var(--muted)}.state-badge[data-state=ready]{color:#34563b;border-color:#c2d0ba;background:#edf3e7}.state-badge[data-state=recording]{color:#9c2b29;border-color:#dcb6ae;background:#faeeea}.state-badge[data-state=paused]{color:#856623;border-color:#d8cba4;background:#f8f3e5}
.status{min-height:18px;margin:10px 0 13px;color:var(--muted);font-size:11px}.error{margin:0 0 13px;padding:9px 11px;border:1px solid #dbc3b6;border-radius:5px;background:#f9eee6;color:#854e38;font-size:12px}
.panel{min-width:0;background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:15px}.panel>label{display:block;font-size:11px;color:var(--green);margin-bottom:6px}.source-row{display:flex;gap:6px;flex-wrap:wrap}.source-row select{flex:1 1 170px}.source-row button{font-size:11px}.signal{margin-top:18px}canvas{display:block;width:100%;height:86px;background:#f1f3ea;border:1px solid #e3e6d9;border-radius:5px}.level-row{display:flex;align-items:center;gap:9px;margin-top:8px;font-size:10px;color:var(--muted)}.level-row label{white-space:nowrap}meter{width:100%;height:9px;accent-color:#638262}.level-row span{width:28px;flex-shrink:0;text-align:right;font-variant-numeric:tabular-nums}
.transport{display:flex;justify-content:space-between;align-items:center;gap:13px;margin-top:18px}.transport output{font:30px/1.15 Consolas,"SFMono-Regular",monospace;letter-spacing:-1px;font-variant-numeric:tabular-nums}.record-buttons{display:flex;gap:6px}.record-button span{color:#b7433b;margin-right:3px}.record-button:not(:disabled){border-color:#bdcbb6;background:#edf2e7}
.result-panel{margin-top:14px}.result-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px}h2{margin:0;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--green)}#result-meta{font-size:10px;color:var(--muted);text-align:right}audio{display:block;width:100%;height:40px}.result-actions{display:flex;align-items:center;gap:7px;margin-top:12px}.result-actions button{font-size:11px}#saved-state{font-size:10px;color:var(--muted);margin-left:auto;text-align:right}footer{display:flex;justify-content:space-between;align-items:start;gap:16px;margin-top:17px;font-size:10px;line-height:1.6;color:var(--muted)}footer p{margin:0}footer a{flex-shrink:0;color:var(--green);text-decoration:none}footer a:hover{text-decoration:underline}footer a:focus-visible{outline:2px solid var(--green);outline-offset:3px}
@media(max-width:520px){.app-shell{padding:0 14px 14px}.app-header{flex-wrap:wrap;gap:8px;min-height:0}.app-name{flex:1 0 100%}h1{font-size:26px}.state-badge{margin-left:39px}.panel{padding:12px}.source-row select{flex-basis:100%}.transport{gap:8px}.transport output{font-size:27px}.record-buttons{gap:5px}.record-buttons button{padding:4px 8px;font-size:12px}}
@media(max-width:320px){.transport{flex-wrap:wrap}.record-buttons{width:100%}.record-buttons button{flex:1}.result-heading{align-items:start;flex-direction:column;gap:3px}#result-meta{text-align:left}}
.result-actions{flex-wrap:wrap}

.result-actions #download{margin-left:3px;border-left:2px solid #a6b29c}.result-actions #discard{margin-left:5px}
