:root {
	--bg: #f7f7f5;
	--fg: #1b1b1a;
	--muted: #6b6b66;
	--line: #d6d6d0;
	--accent: #2d5bd7;
}
@media (prefers-color-scheme: dark) {
	:root {
		--bg: #161615;
		--fg: #ececea;
		--muted: #9a9a94;
		--line: #3a3a37;
		--accent: #7f9ef5;
	}
}
* { box-sizing: border-box; }
html, body { margin: 0; height: 100%; background: var(--bg); color: var(--fg); }
body { font: 15px/1.4 system-ui, -apple-system, "Segoe UI", sans-serif; display: flex; flex-direction: column; }
header { display: flex; gap: 6px; padding: 6px 8px; border-bottom: 1px solid var(--line); }
header form { flex: 1; min-width: 0; }
#cloak { margin-left: auto; }
form { display: flex; gap: 6px; }
form[hidden] { display: none; }
input { flex: 1; min-width: 0; font: inherit; padding: 7px 10px; border: 1px solid var(--line); border-radius: 7px; background: transparent; color: inherit; }
input:focus { outline: 2px solid var(--accent); outline-offset: 0; }
button { font: inherit; min-width: 34px; padding: 6px 10px; border: 1px solid var(--line); border-radius: 7px; background: transparent; color: inherit; cursor: pointer; }
#login button { background: var(--accent); color: #fff; border-color: var(--accent); }
main { flex: 1; display: grid; place-content: center; text-align: center; padding: 16px; }
main[hidden] { display: none; }
h1 { font-weight: 600; font-size: 1.4rem; margin: 0 0 0.5rem; }
#status { color: var(--muted); margin: 0; }
iframe { flex: 1; width: 100%; border: 0; background: #fff; }
iframe[hidden] { display: none; }
