.ikiro-btn{font-family:var(--font-body);font-size:16px;font-weight:600;border-radius:var(--radius-sm);padding:var(--space-3) var(--space-5);border:1px solid transparent;cursor:pointer;text-decoration:none}.ikiro-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ikiro-btn--primary{background:var(--accent-primary);color:var(--ink-on-accent)}.ikiro-btn--secondary{background:transparent;color:var(--ink);border-color:var(--border)}.ikiro-btn--secondary:hover{background:var(--surface-300)}.ikiro-btn:disabled{opacity:.5;cursor:not-allowed}.ikiro-otp{display:flex;gap:var(--space-2);max-width:100%}.ikiro-otp .ikiro-otp-cell{box-sizing:border-box;flex:0 1 44px;min-width:0;height:48px;padding:0;text-align:center;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-300);color:var(--ink);font-size:20px}.ikiro-otp .ikiro-otp-cell:focus-visible{outline:none;border:2px solid var(--accent-secondary);box-shadow:0 0 0 2px var(--focus-ring)}.ikiro-otp--error .ikiro-otp-cell{border-color:var(--status-stop)}@font-face{font-family:Cinzel;src:url(/fonts/cinzel-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Cormorant SC;src:url(/fonts/cormorantsc-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:"Source Sans 3";src:url(/fonts/sourcesans3-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Source Sans 3";src:url(/fonts/sourcesans3-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrainsmono-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}:root,[data-theme=nacht]{color-scheme:dark;--surface-100: #17131a;--surface-200: #211b24;--surface-300: #2b232f;--ink: #ede6da;--ink-muted: #b9ad9b;--border: #3a2a22;--accent-primary: #8e1b2c;--ink-on-accent: #ede6da;--accent-secondary: #b8924a;--focus-ring: var(--accent-secondary);--status-ok: #4fae8b;--status-caution: #e0b24a;--status-stop: #e2596b;--ink-on-status: #17131a}[data-theme=pergament]{color-scheme:light;--surface-100: #f4eee3;--surface-200: #fbf7ee;--surface-300: #efe7d6;--ink: #1e1a17;--ink-muted: #5c5247;--border: #d8cbb4;--accent-primary: #7a1424;--ink-on-accent: #fbf7ee;--accent-secondary: #8c6a2f;--focus-ring: var(--accent-secondary);--status-ok: #1f6f55;--status-caution: #7f611a;--status-stop: #8a1b29;--ink-on-status: #fbf7ee}:root{accent-color:var(--accent-secondary);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 14px;--radius-pill: 999px;--font-display: "Cinzel", "Iowan Old Style", "Palatino Linotype", serif;--font-kicker: "Cormorant SC", "Palatino Linotype", serif;--font-body: "Source Sans 3", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", monospace}.display-xl{font-family:var(--font-display);font-size:32px;line-height:40px;font-weight:700}.display-lg{font-family:var(--font-display);font-size:24px;line-height:32px;font-weight:700}.kicker{font-family:var(--font-kicker);font-size:15px;line-height:20px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.body-lg{font-family:var(--font-body);font-size:18px;line-height:28px;font-weight:400}.body{font-family:var(--font-body);font-size:16px;line-height:24px;font-weight:400}.body-sm{font-family:var(--font-body);font-size:14px;line-height:20px;font-weight:400}.label{font-family:var(--font-body);font-size:13px;line-height:18px;font-weight:600}.mono-sm{font-family:var(--font-mono);font-size:13px;line-height:20px;font-weight:400}body{margin:0;background:var(--surface-100);color:var(--ink);font-family:var(--font-body)}a{color:var(--accent-secondary)}
