:root{color-scheme:dark;--bg:#10121b;--panel:#191c28;--panel2:#202431;--line:#ffffff12;--text:#f4f4f8;--muted:#9da3b4;--accent:#9d8cff;--accent2:#78d9c2;--danger:#ff8e9c}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 80% -15%,#47406f80,transparent 50%),radial-gradient(ellipse at -15% 50%,#225a5560,transparent 40%),var(--bg);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);-webkit-font-smoothing:antialiased}
.shell{max-width:560px;margin:0 auto;padding:calc(26px + env(safe-area-inset-top)) 20px calc(28px + env(safe-area-inset-bottom))}.topbar{display:flex;align-items:center;gap:13px;margin:0 0 30px}.brand-mark{height:43px;width:43px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(145deg,#b09aff,#68d9c7);color:#171523;font-weight:800;font-size:23px;box-shadow:0 8px 28px #9d8cff33}.eyebrow{font-size:9px;letter-spacing:.16em;font-weight:800;color:#aaa3ca;margin:0 0 3px}h1{font-size:22px;letter-spacing:-.05em;margin:0;font-weight:800}h1 span{font-weight:500;color:#c1bdd5}.composer{background:linear-gradient(145deg,#1b1e2beF,#171a25ef);border:1px solid var(--line);border-radius:22px;padding:20px;box-shadow:0 20px 55px #0002}.composer label{display:block;font-size:14px;font-weight:700;margin-bottom:12px}textarea{display:block;width:100%;min-height:128px;resize:vertical;border:1px solid #ffffff16;border-radius:15px;background:#10121b;padding:15px;color:var(--text);font:500 14px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;outline:none}textarea:focus{border-color:#a294f477;box-shadow:0 0 0 3px #a294f41c}textarea::placeholder{color:#777d90}.field-bottom{height:28px;display:flex;align-items:center;justify-content:space-between;color:#747a8b;font-size:11px}.actions{display:flex;gap:10px}.icon-button,.primary,.secondary,.text-button,.save-button{font:700 13px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;border:0;cursor:pointer;text-decoration:none}.icon-button{height:50px;width:54px;border-radius:15px;background:var(--panel2);color:white;font-size:20px}.icon-button.recording-active{background:#653542;animation:pulse 1.2s infinite}.primary{flex:1;height:50px;border-radius:15px;background:linear-gradient(105deg,#a394ff,#7bd9c7);color:#151522;box-shadow:0 8px 24px #9d8cff22}.primary:disabled,.secondary:disabled{opacity:.55;cursor:wait}.primary span,.save-button span{font-size:18px;margin-left:7px}.recording{margin-top:15px;border-top:1px solid var(--line);padding-top:14px}.recording audio{width:100%;height:38px}.record-actions{display:flex;gap:9px;align-items:center;margin-top:8px}.secondary{background:#343149;color:#eee9ff;border-radius:12px;padding:11px 14px}.text-button{background:none;color:var(--muted);padding:10px}.progress,.result{margin-top:18px;border:1px solid var(--line);border-radius:21px;background:#191c28eF;padding:18px}.progress{display:flex;align-items:center;gap:13px}.progress p{margin:3px 0 0;color:var(--muted);font-size:12px}.spinner{width:25px;height:25px;border-radius:50%;border:2px solid #ffffff26;border-top-color:var(--accent2);animation:spin .8s linear infinite}.result{padding:14px}.result-heading{display:flex;justify-content:space-between;align-items:end;padding:5px 5px 14px}.result-heading h2{font-size:17px;margin:0}.result-heading span{font-size:11px;color:var(--muted)}.image-frame{display:block;background:#11131c;border-radius:14px;overflow:hidden;text-align:center}.image-frame img{display:block;width:100%;height:auto;max-height:65vh;object-fit:contain}.result-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 4px 2px}.result-footer p{font-size:11px;color:var(--muted);margin:0}.save-button{background:#292d3b;border:1px solid var(--line);color:white;border-radius:12px;padding:11px 14px}.message{min-height:20px;color:var(--muted);font-size:12px;line-height:1.5;padding:0 4px}.message.error{color:var(--danger)}footer{text-align:center;color:#656a79;font-size:10px;padding-top:10px}.hidden{display:none!important}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{box-shadow:0 0 0 6px #ff718522}}@media(min-width:520px){.shell{padding-top:52px}.topbar{margin-bottom:38px}.composer{padding:24px}}
