:root{--navy: #14315c;--navy-soft: #eef3fa;--border: #e2e7ee;--bg: #f4f6f9;--text: #1a1a1a;--muted: #6b7787;--green: #1e8449;--red: #c0392b;--orange: #f39c12;--radius: 10px}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);font-size:15px;-webkit-text-size-adjust:100%}.app{max-width:480px;margin:0 auto;min-height:100%;display:flex;flex-direction:column;background:var(--bg)}.top{background:var(--navy);color:#fff;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:8px}.logo{font-weight:700;font-size:15px;letter-spacing:.3px}.logo b{color:var(--orange)}.top-actions{display:flex;align-items:center;gap:8px}.linklike{background:none;border:none;color:#cdd9ea;font-size:12px;cursor:pointer;padding:4px}.body{flex:1;padding:16px}h1{font-size:19px;color:var(--navy);margin-bottom:10px}h2{font-size:16px;color:var(--navy);margin-bottom:8px}.muted{color:var(--muted);font-size:13px;line-height:1.5}.center{text-align:center}.stack>*+*{margin-top:10px}.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:14px}.card+.card{margin-top:10px}.row{display:flex;align-items:center;justify-content:space-between;gap:10px}.card.locked{color:var(--muted)}.card.current{border-left:4px solid var(--red)}.pill,.badge{display:inline-block;border-radius:20px;padding:3px 10px;font-size:11px;font-weight:700}.pill{background:#fdeee0;color:#b9770e;border:1px solid #f0d3a8}.badge{background:#fbeaea;color:var(--red);border:1px solid #eec4c1}.tag{display:inline-block;background:var(--navy-soft);color:var(--navy);border-radius:6px;padding:3px 9px;font-size:11px;margin:4px 4px 0 0}.btn{display:block;width:100%;text-align:center;border:none;border-radius:9px;padding:14px;font-size:15px;font-weight:700;cursor:pointer;font-family:inherit}.btn+.btn{margin-top:8px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.rec{background:var(--red);color:#fff}.btn.pri{background:var(--navy);color:#fff}.btn.ok{background:var(--green);color:#fff}.btn.ghost{background:var(--navy-soft);color:var(--navy)}.btn.line{background:#fff;border:1.5px solid var(--navy);color:var(--navy)}.btn.small{width:auto;padding:8px 14px;font-size:13px}label.file-btn{display:block;margin-top:8px}label.file-btn input{display:none}input[type=email],input[type=text]{width:100%;padding:12px;font-size:15px;font-family:inherit;border:1px solid var(--border);border-radius:9px;background:#fff}.rec-timer{font-size:34px;font-weight:800;color:var(--navy);text-align:center}.waves{display:flex;gap:3px;justify-content:center;align-items:flex-end;height:46px;margin:16px 0}.waves i{width:5px;background:var(--red);border-radius:3px;animation:pulse 1s infinite ease-in-out}@keyframes pulse{0%,to{height:12px}50%{height:40px}}.spinner{width:44px;height:44px;margin:24px auto 12px;border:5px solid #dfe5ec;border-top-color:var(--navy);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px}.metric{text-align:center}.metric .v{font-size:20px;font-weight:800;color:var(--green)}.metric .l{font-size:11px;color:var(--muted)}.report-img{width:100%;border:1px solid var(--border);border-radius:var(--radius);background:#fff}.statline{display:flex;justify-content:space-between;align-items:center;padding:11px 0;border-bottom:1px solid #eef1f5;font-size:14px}.statline b{color:var(--navy)}.listitem{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #eef1f5;font-size:14px}.listitem small{color:var(--muted);display:block;font-size:11px}.error{background:#fbeaea;border:1px solid #eec4c1;color:#8c2b21;border-radius:9px;padding:12px;font-size:14px;line-height:1.45}.note{background:#fff7e6;border:1px solid #f0d9a8;color:#6b4e16;border-radius:9px;padding:12px;font-size:13px;line-height:1.45}.nav{display:flex;border-top:1px solid var(--border);background:#fff;position:sticky;bottom:0}.nav a{flex:1;text-align:center;font-size:11px;color:#8a97a8;padding:9px 0;text-decoration:none}.nav a.on{color:var(--navy);font-weight:700}.nav .ic{font-size:17px;display:block}
