.cf{display:flex;flex-direction:column;gap:1.4rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-left:2px solid var(--color-accent);border-radius:var(--radius);padding:2rem}.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.cf-field{display:flex;flex-direction:column;gap:.5rem}.cf-field--half{max-width:260px}.cf-label{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-family:var(--font-mono);color:var(--color-text-muted)}.cf-required{color:var(--color-accent)}.cf-hint{color:var(--color-border);font-size:.65rem;letter-spacing:.05em}.cf-input,.cf-textarea{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);font-family:var(--font-serif);font-size:.9rem;padding:.7rem .9rem;transition:border-color var(--transition-fast);outline:none;width:100%}.cf-input:focus,.cf-textarea:focus{border-color:var(--color-accent)}.cf-input[type=date],.cf-input[type=time]{color-scheme:dark}.cf-textarea{resize:vertical;min-height:110px;line-height:1.6}.cf-type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:.25rem}.cf-type-card{display:flex;flex-direction:column;gap:.3rem;padding:1rem 1rem .9rem;border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;user-select:none;transition:border-color var(--transition-fast),background var(--transition-fast);background:var(--color-bg)}.cf-type-card input[type=radio]{display:none}.cf-type-card:hover{border-color:var(--color-accent)}.cf-type-card--active{border-color:var(--color-accent);background:#c8a96e0f}.cf-type-name{font-size:.8rem;font-family:var(--font-mono);letter-spacing:.05em;color:var(--color-text);transition:color var(--transition-fast)}.cf-type-card--active .cf-type-name{color:var(--color-accent)}.cf-type-sub{font-size:.68rem;line-height:1.4;color:var(--color-text-muted);font-family:var(--font-mono)}.cf-kind-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.cf-kind-pill{display:flex;align-items:center;justify-content:center;text-align:center;font-size:.7rem;letter-spacing:.06em;font-family:var(--font-mono);color:var(--color-text-muted);border:1px solid var(--color-border);padding:.5rem;border-radius:var(--radius);cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast);user-select:none;line-height:1.3}.cf-kind-pill input[type=radio]{display:none}.cf-kind-pill:hover{border-color:var(--color-accent);color:var(--color-text)}.cf-kind-pill--active{border-color:var(--color-accent);color:var(--color-accent);background:#c8a96e0d}.cf-checkbox-group{display:flex;flex-wrap:wrap;gap:.5rem}.cf-check-pill{display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;letter-spacing:.08em;font-family:var(--font-mono);color:var(--color-text-muted);border:1px solid var(--color-border);padding:.4rem .85rem;border-radius:var(--radius);cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast);user-select:none}.cf-check-pill input[type=checkbox]{display:none}.cf-check-pill:hover{border-color:var(--color-accent);color:var(--color-text)}.cf-check-pill--active{border-color:var(--color-accent);color:var(--color-accent);background:#c8a96e0d}.cf-check-pill--active:before{content:"✓ ";font-size:.65rem}.cf-submit{align-self:flex-start;background:var(--color-accent);border:1px solid var(--color-accent);color:#000;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;font-family:var(--font-mono);padding:.7rem 1.8rem;border-radius:var(--radius);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);margin-top:.25rem}.cf-submit:hover:not(:disabled){background:transparent;color:var(--color-accent)}.cf-submit:disabled{opacity:.4;cursor:not-allowed}.cf-feedback{font-size:.85rem;font-family:var(--font-mono);padding:.7rem 1rem;border-radius:var(--radius);border:1px solid}.cf-feedback--success{color:#7ecb9a;border-color:#7ecb9a4d;background:#7ecb9a0f}.cf-feedback--error{color:#e07a7a;border-color:#e07a7a4d;background:#e07a7a0f}@media(max-width:680px){.cf{padding:1.5rem}.cf-row{grid-template-columns:1fr}.cf-field--half{max-width:100%}.cf-type-grid{grid-template-columns:1fr}.cf-kind-grid{grid-template-columns:repeat(2,1fr)}.cf-submit{width:100%;justify-content:center}}@media(max-width:400px){.cf-kind-grid{grid-template-columns:1fr}}
