*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--color-background);color:var(--color-text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:var(--font-body);min-height:100vh;line-height:1.5}.shell{max-width:420px;padding:var(--space-xl) var(--space-lg);gap:var(--space-lg);flex-direction:column;margin:0 auto;display:flex}.brand-mark{align-items:center;gap:var(--space-sm);letter-spacing:.02em;color:var(--color-text-secondary);text-transform:uppercase;font-size:13px;font-weight:700;display:flex}.brand-dot{background:var(--color-brand);width:10px;height:10px;box-shadow:0 0 12px color-mix(in srgb, var(--color-brand) 60%, transparent);border-radius:999px}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);gap:var(--space-md);flex-direction:column;display:flex}h1{font-size:var(--font-title);margin:0}.muted{color:var(--color-text-secondary);margin:0}.error{color:var(--color-danger);background:var(--color-brand-subtle);border:1px solid color-mix(in srgb, var(--color-danger) 40%, transparent);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);margin:0}.notice{color:var(--color-text-primary);background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);margin:0}h2{font-size:var(--font-size-body);margin:var(--space-lg) 0 0}form{gap:var(--space-md);flex-direction:column;display:flex}label{color:var(--color-text-secondary);flex-direction:column;gap:6px;font-size:13px;display:flex}input{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-body);padding:12px var(--space-md);outline:none}input:focus{border-color:var(--color-brand);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-brand) 25%, transparent)}button{background:var(--color-brand);border-radius:var(--radius-md);color:var(--color-on-brand);cursor:pointer;font-size:var(--font-body);padding:12px var(--space-lg);border:none;font-weight:600}button:hover{background:var(--color-brand-pressed)}button.secondary{background:var(--color-surface-elevated);border:1px solid var(--color-border);color:var(--color-text-primary)}a{color:var(--color-brand)}dl{gap:6px var(--space-lg);grid-template-columns:auto 1fr;margin:0;display:grid}dt{color:var(--color-text-muted)}dd{margin:0}
