.new-map-modal { width: 440px; max-width: 92vw; } .new-map-form-modal { display: flex; flex-direction: column; gap: 1.25rem; padding-top: 0.25rem; } .field-label { display: flex; flex-direction: column; gap: 0.4rem; font-size: 0.82rem; color: #9ca3af; font-weight: 500; } .field-label input { background: #111827; border: 1px solid #4b5563; border-radius: 6px; color: #e5e7eb; padding: 0.4rem 0.65rem; font-size: 0.9rem; outline: none; transition: border-color 0.12s; } .field-label input:focus { border-color: #6366f1; } /* ── Visibility fieldset ── */ .public-access-fieldset { border: 1px solid #374151; border-radius: 8px; padding: 0.75rem 1rem; display: flex; flex-direction: column; gap: 0.6rem; } .public-access-fieldset legend { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.07em; color: #6b7280; padding: 0 0.3rem; } .radio-option { display: flex; align-items: flex-start; gap: 0.6rem; cursor: pointer; } .radio-option input[type="radio"] { accent-color: #6366f1; margin-top: 3px; flex-shrink: 0; cursor: pointer; } .radio-label { display: flex; flex-direction: column; gap: 0.1rem; } .radio-label strong { font-size: 0.85rem; color: #e2e8f0; font-weight: 500; } .radio-hint { font-size: 0.75rem; color: #6b7280; } /* ── Shared form error ── */ .form-error { margin: 0; font-size: 0.82rem; color: #f87171; background: rgba(239, 68, 68, 0.08); border: 1px solid rgba(239, 68, 68, 0.25); border-radius: 6px; padding: 0.4rem 0.7rem; } /* ── Modal actions row ── */ .modal-actions { display: flex; justify-content: flex-end; gap: 0.6rem; padding-top: 0.25rem; }