:root { --fg:#111827; --muted:#6b7280; --line:#e5e7eb; --brand:#0f766e; --bg:#f6f7f9; --err:#b91c1c; }
* { box-sizing: border-box; }
body { margin:0; font:16px/1.5 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; color:var(--fg); background:var(--bg); }
body.center { display:grid; place-items:center; min-height:100vh; padding:16px; }
h1 { margin:0 0 4px; } h2 { margin:0 0 12px; font-size:1.15rem; } h3 { margin:18px 0 8px; font-size:.95rem; color:var(--muted); text-transform:uppercase; letter-spacing:.04em; }
.muted { color:var(--muted); } .error { color:var(--err); min-height:1.4em; margin:.25rem 0; }
.card { background:#fff; border:1px solid var(--line); border-radius:10px; padding:20px; margin-bottom:16px; }
.narrow { width:100%; max-width:380px; }
.wrap { max-width:860px; margin:0 auto; padding:16px; }
.bar { display:flex; align-items:center; gap:12px; padding:10px 16px; background:#fff; border-bottom:1px solid var(--line); }
.grow { flex:1; }
label { display:block; margin:12px 0; font-size:.9rem; font-weight:600; }
label small { display:block; font-weight:400; color:var(--muted); }
input, select, textarea { width:100%; margin-top:4px; padding:9px 10px; font:inherit; border:1px solid #d1d5db; border-radius:8px; background:#fff; }
textarea { min-height:110px; resize:vertical; }
.bar select { width:auto; margin:0; }
button { padding:9px 16px; font:inherit; font-weight:600; color:#fff; background:var(--brand); border:0; border-radius:8px; cursor:pointer; }
button.secondary { color:var(--fg); background:#e5e7eb; } button.danger { background:var(--err); } button:disabled { opacity:.5; cursor:not-allowed; }
.inline { display:flex; gap:8px; } .inline input { margin:0; }
.list { list-style:none; margin:0 0 12px; padding:0; } .list li { display:flex; align-items:center; gap:10px; padding:8px 0; border-bottom:1px solid var(--line); } .list code { flex:1; word-break:break-all; }
.status { min-height:1.4em; } .status.ok { color:var(--brand); } .status.bad { color:var(--err); }
.notice { background:#fffbeb; border:1px solid #fde68a; border-radius:8px; padding:10px 12px; margin-bottom:12px; word-break:break-all; }
.secret-row { display:flex; gap:8px; align-items:center; } .secret-row input { flex:1; } .secret-row button { margin-top:4px; }
