:root { color-scheme: light; --line: #d9dde3; --ink: #1c2430; --soft: #f5f6f8; --brand: #1a4fa0; }
* { box-sizing: border-box; }
html, body { height: 100%; margin: 0; }
body { font: 15px/1.45 Inter, system-ui, -apple-system, "Segoe UI", sans-serif; color: var(--ink); background: #fff; }
main { display: flex; flex-direction: column; height: 100%; max-width: 640px; margin: 0 auto; border: 1px solid var(--line); }
header { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border-bottom: 1px solid var(--line); }
header .grow { flex: 1; }
#status { font-size: 12px; padding: 2px 8px; border-radius: 99px; background: var(--soft); }
#log { flex: 1; overflow-y: auto; margin: 0; padding: 10px 14px; list-style: none; }
#log li { padding: 3px 0; word-break: break-word; }
#log li b { color: var(--brand); }
#log li.blur .t { filter: blur(6px); user-select: none; pointer-events: none; }
#gate { padding: 12px 14px; text-align: center; background: var(--soft); border-top: 1px solid var(--line); }
#gate p { margin: 0 0 8px; }
#gbtn { display: flex; justify-content: center; }
form { display: flex; gap: 8px; padding: 10px 14px; border-top: 1px solid var(--line); }
input { flex: 1; padding: 9px 10px; border: 1px solid var(--line); border-radius: 8px; font: inherit; }
button { padding: 9px 14px; border: 0; border-radius: 8px; background: var(--brand); color: #fff; font: inherit; cursor: pointer; }
button:disabled { background: #b9c3d3; cursor: not-allowed; }
#out { background: transparent; color: var(--brand); padding: 4px 8px; }
#note { margin: 0; padding: 0 14px 10px; min-height: 1.2em; font-size: 13px; color: #8a2d2d; }
