/* Talaan public pages (talaan.net). Plain on purpose: the Claude Design styling replaces these tokens. */
:root {
	--tl-ink: #1f2328;
	--tl-muted: #59636e;
	--tl-line: #e3e5e8;
	--tl-bg: #ffffff;
	--tl-soft: #f6f7f9;
	--tl-accent: #1f2328;
	--tl-on-accent: #ffffff;
	--tl-ok: #1e6b34;
	--tl-ok-bg: #e6f4ea;
	--tl-bad: #b42318;
	--tl-bad-bg: #fdecea;
	--tl-radius: 10px;
	--tl-font: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}
.tl-page { max-width: 560px; margin: 0 auto; padding: 32px 16px 64px; color: var(--tl-ink); font-family: var(--tl-font); font-size: 16px; line-height: 1.55; }
.tl-page.wide { max-width: 860px; }
.tl-page h1 { font-size: 30px; line-height: 1.2; margin: 0 0 8px; letter-spacing: -0.3px; }
.tl-page h2 { font-size: 20px; margin: 32px 0 8px; }
.tl-page .lead { color: var(--tl-muted); margin: 0 0 24px; }
.tl-card { border: 1px solid var(--tl-line); border-radius: var(--tl-radius); padding: 24px; background: var(--tl-bg); }
.tl-field { margin-bottom: 16px; }
.tl-field label { display: block; font-weight: 600; font-size: 14px; margin-bottom: 6px; }
.tl-field input[type=text], .tl-field input[type=email], .tl-field input[type=password] {
	width: 100%; box-sizing: border-box; border: 1px solid #c9ccd1; border-radius: 8px; padding: 10px 12px; font-size: 16px; font-family: inherit; background: var(--tl-bg); color: var(--tl-ink);
}
.tl-field input:focus { outline: 2px solid #9db8ff; border-color: #6d8de8; }
.tl-hint { font-size: 13px; color: var(--tl-muted); margin-top: 6px; }
.tl-hint.ok { color: var(--tl-ok); }
.tl-hint.bad { color: var(--tl-bad); }
.tl-addr { display: flex; align-items: stretch; }
.tl-addr input { border-top-right-radius: 0 !important; border-bottom-right-radius: 0 !important; }
.tl-addr span { border: 1px solid #c9ccd1; border-left: 0; border-radius: 0 8px 8px 0; padding: 10px 12px; background: var(--tl-soft); color: var(--tl-muted); white-space: nowrap; }
.tl-check { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; }
.tl-btn { display: inline-block; background: var(--tl-accent); color: var(--tl-on-accent); border: 0; border-radius: 8px; padding: 11px 20px; font-size: 16px; font-weight: 600; cursor: pointer; text-decoration: none; }
.tl-btn:disabled { opacity: .6; cursor: default; }
.tl-btn.alt { background: transparent; color: var(--tl-ink); border: 1px solid #c9ccd1; font-weight: 500; }
.tl-msg { border-radius: 8px; padding: 12px 14px; margin: 0 0 16px; font-size: 15px; }
.tl-msg.bad { background: var(--tl-bad-bg); color: var(--tl-bad); }
.tl-msg.ok { background: var(--tl-ok-bg); color: var(--tl-ok); }
.tl-hp { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.tl-steps { list-style: none; padding: 0; margin: 16px 0 0; }
.tl-steps li { padding: 8px 0; color: var(--tl-muted); }
.tl-steps li.done { color: var(--tl-ok); }
.tl-steps li.now { color: var(--tl-ink); font-weight: 600; }
.tl-foot { margin-top: 24px; font-size: 14px; color: var(--tl-muted); }
.tl-legal h2 { font-size: 18px; }
.tl-legal p, .tl-legal li { color: #333; }
