/* ==========================================================================
   The Registry — public form list & fill-out page
   ========================================================================== */

.registry-page {
    max-inline-size: 36rem;
    margin-inline: auto;
    padding: 2rem 1.5rem;
}

.reg-note { color: var(--text-dim); }

.reg-title { color: var(--text-primary); margin-block-end: 0.25rem; }
.reg-form-desc { color: var(--text-secondary); margin-block-end: 1.5rem; }

.reg-card-list { display: flex; flex-direction: column; gap: 0.75rem; }
.reg-card {
    display: block;
    background: var(--bg-secondary);
    border: 1px solid var(--bg-tertiary);
    border-radius: 8px;
    padding: 1rem 1.25rem;
    text-decoration: none;
    color: var(--text-primary);
}
.reg-card:hover { border-color: var(--cyan-dim); }
.reg-card-title { font-weight: 600; }
.reg-card-desc { color: var(--text-dim); font-size: 0.9rem; margin-block-start: 0.25rem; }

.reg-contact { display: flex; flex-direction: column; gap: 0.5rem; margin-block-end: 1.5rem; }

.reg-form { display: flex; flex-direction: column; gap: 1.25rem; }
.reg-question { display: flex; flex-direction: column; gap: 0.4rem; }
.reg-question-prompt { font-weight: 600; color: var(--text-primary); }
.reg-question-required { color: var(--magenta-dim); }
.reg-question-help { color: var(--text-dim); font-size: 0.85rem; }

.reg-input {
    background: var(--bg-secondary);
    border: 1px solid var(--bg-tertiary);
    border-radius: 6px;
    color: var(--text-primary);
    padding: 0.5rem 0.65rem;
    font: inherit;
    max-inline-size: 100%;
}
.reg-textarea { min-height: 5rem; resize: vertical; }

.reg-choice-group { display: flex; flex-direction: column; gap: 0.4rem; }
.reg-choice-row { display: flex; align-items: center; gap: 0.5rem; cursor: pointer; color: var(--text-primary); }

.reg-scale { display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap; }
.reg-scale-label { color: var(--text-dim); font-size: 0.8rem; }
.reg-scale-btn {
    width: 2.1rem; height: 2.1rem; border-radius: 6px;
    border: 1px solid var(--bg-tertiary); background: var(--bg-secondary);
    color: var(--text-primary); cursor: pointer;
}
.reg-scale-btn.active { background: var(--cyan-dim); color: var(--bg-void); border-color: var(--cyan-dim); }

.reg-primary {
    align-self: flex-start;
    background: var(--cyan-dim);
    color: var(--bg-void);
    border: none;
    border-radius: 6px;
    padding: 0.6rem 1.2rem;
    font-weight: 600;
    cursor: pointer;
    margin-block-start: 1.5rem;
}
.reg-primary:disabled { opacity: 0.6; cursor: default; }
.reg-status { display: block; margin-block-start: 0.75rem; color: var(--text-dim); }
