:root{--bg:#0f0f14;--surface:#1a1a22;--surface-2:#23232e;--border:#2e2e3a;--text:#e8e6ef;--text-dim:#8b8898;--accent:#7c6cff;--accent-soft:#7c6cff26;--danger:#ff5c6c;--recording:#ff4757;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-family:system-ui,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background:var(--bg);overscroll-behavior-y:none;min-height:100svh;margin:0}#root{max-width:560px;min-height:100svh;padding:env(safe-area-inset-top) 16px env(safe-area-inset-bottom);flex-direction:column;margin:0 auto;display:flex}button{cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;font-family:inherit}h1,h2,h3{margin:0;font-weight:600}textarea{font-family:inherit}.record-area{flex-direction:column;align-items:center;gap:12px;padding:32px 0 24px;display:flex}.record-btn{background:var(--accent-soft);width:120px;height:120px;color:var(--accent);border:2px solid var(--accent);border-radius:50%;justify-content:center;align-items:center;transition:transform .1s,background .2s;display:flex}.record-btn:active{transform:scale(.95)}.record-btn.recording{border-color:var(--recording);color:var(--recording);background:#ff475726;animation:1.6s ease-in-out infinite pulse}.stop-square{background:var(--recording);border-radius:8px;width:36px;height:36px}.record-hint{color:var(--text-dim);font-variant-numeric:tabular-nums;margin:0;font-size:15px}@keyframes pulse{0%,to{box-shadow:0 0 #ff475759}50%{box-shadow:0 0 0 16px #ff475700}}.text-entry{flex-direction:column;gap:8px;display:flex}.text-entry textarea{background:var(--surface);border:1px solid var(--border);width:100%;color:var(--text);resize:vertical;border-radius:12px;min-height:72px;padding:12px 14px;font-size:16px}.text-entry textarea:focus{border-color:var(--accent);outline:none}.text-entry textarea::placeholder{color:var(--text-dim)}.text-entry-save{background:var(--accent);color:#fff;border-radius:10px;align-self:flex-end;padding:10px 20px;font-size:15px;font-weight:600}.dump-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.dump-empty{color:var(--text-dim);text-align:center;padding:24px 0;font-size:15px}.dump-card{text-align:left;background:var(--surface);border:1px solid var(--border);width:100%;color:var(--text);border-radius:14px;flex-direction:column;gap:6px;padding:14px 16px;display:flex}.dump-card:active{background:var(--surface-2)}.dump-card-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.dump-date{color:var(--text-dim);font-size:13px}.dump-status{background:var(--surface-2);color:var(--text-dim);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600}.dump-status.ready{background:var(--accent-soft);color:var(--accent)}.dump-status.transcribing,.dump-status.organizing{color:#f0b95c;background:#f0b95c1f}.dump-status.error{color:var(--danger);background:#ff5c6c1f}.dump-snippet{color:var(--text);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:14px;line-height:1.45;display:-webkit-box;overflow:hidden}.detail-overlay{z-index:10;background:#0009;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.detail-sheet{background:var(--surface);border:1px solid var(--border);border-radius:16px 16px 0 0;flex-direction:column;gap:14px;width:100%;max-width:560px;max-height:75vh;padding:20px;display:flex;overflow-y:auto}.detail-header{justify-content:space-between;align-items:center;display:flex}.detail-date{color:var(--text-dim);font-size:.85rem}.detail-close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:1rem}.detail-audio{width:100%}.detail-content{color:var(--text);white-space:pre-wrap;margin:0;font-size:.95rem;line-height:1.55}.detail-content.muted{color:var(--text-dim)}.detail-delete{border:1px solid var(--danger);color:var(--danger);cursor:pointer;background:0 0;border-radius:8px;align-self:flex-start;padding:8px 14px;font-size:.85rem}.app{flex-direction:column;gap:20px;width:100%;padding:24px 0 48px;display:flex}.app-header h1{letter-spacing:-.02em;color:var(--text);margin:0;font-size:1.6rem}.tagline{color:var(--text-dim);margin:4px 0 0;font-size:.9rem}.mic-error{color:var(--danger);text-align:center;margin:-8px 0 0;font-size:.85rem}
