:root{--green:#2dbf7b;--green-2:#e9f8f0;--ink:#1f2937;--muted:#6b7280;--bg:#ffffff}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,"Helvetica Neue",Arial;color:var(--ink);background:var(--bg)}
header{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:12px;padding:14px 18px;background:var(--green-2);border-bottom:1px solid #d2f2e3}
header img.logo{height:40px;width:auto}
header h1{margin:0;font-size:1.25rem;text-align:center;flex:1}
.nav{display:flex;gap:8px}
.nav a,.nav button{appearance:none;text-decoration:none;color:#fff;background:var(--green);padding:8px 12px;border-radius:10px;border:0;cursor:pointer}
main{max-width:1100px;margin:24px auto;padding:0 16px}
footer{margin-top:32px;padding:16px;text-align:center;color:var(--muted);border-top:1px solid #eef2f7}
.card{background:#fff;border:1px solid #eef2f7;border-radius:16px;padding:16px;box-shadow:0 1px 2px rgba(0,0,0,.04);margin-bottom:16px}
.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.input,textarea,select{width:100%;padding:10px 12px;border:1px solid #dbe3ea;border-radius:12px;font:inherit}
label{font-weight:600;display:block;margin:8px 0 6px}
.kv{display:grid;grid-template-columns:140px 1fr;gap:6px 14px}
.preview-img{max-width:100%;height:auto;border-radius:12px;border:1px solid #eef2f7}
.dictation-bar{display:flex;gap:8px;align-items:center;margin-top:8px}
.dictation-bar button{padding:8px 12px;border-radius:10px;border:1px solid #dbe3ea;background:#fff;cursor:pointer}
.badge{display:inline-block;padding:2px 8px;border-radius:999px;background:var(--green-2);color:#0a8c57;font-size:.8rem;border:1px solid #d2f2e3}
.entry{padding:12px;border:1px solid #eef2f7;border-radius:12px}