/** * NotificationX Elementor Form widget — baseline styles. * All visual properties are overridable via Elementor controls. */ .nx-form-wrapper { width: 100%; } .nx-form-title { margin: 0 0 16px; font-size: 22px; line-height: 1.3; } .nx-form { display: block; } .nx-form-rows { display: flex; flex-wrap: wrap; row-gap: 14px; column-gap: 14px; width: 100%; } /* Each row is a flex item; min-width:0 lets inputs shrink correctly. */ .nx-form-row { box-sizing: border-box; flex: 0 0 100%; max-width: 100%; min-width: 0; } /* Compute the flex-basis as: column% MINUS the gap that should sit beside it. Using calc with var() lets a single ruleset cover any column-gap value. */ .nx-form-rows { --nx-gap: 14px; } .nx-form-row.nx-w-100 { flex-basis: 100%; max-width: 100%; } .nx-form-row.nx-w-75 { flex-basis: calc(75% - var(--nx-gap) * 0.25); max-width: calc(75% - var(--nx-gap) * 0.25); } .nx-form-row.nx-w-66 { flex-basis: calc(66.6666% - var(--nx-gap) * 0.3333); max-width: calc(66.6666% - var(--nx-gap) * 0.3333); } .nx-form-row.nx-w-50 { flex-basis: calc(50% - var(--nx-gap) * 0.5); max-width: calc(50% - var(--nx-gap) * 0.5); } .nx-form-row.nx-w-33 { flex-basis: calc(33.3333% - var(--nx-gap) * 0.6666); max-width: calc(33.3333% - var(--nx-gap) * 0.6666); } .nx-form-row.nx-w-25 { flex-basis: calc(25% - var(--nx-gap) * 0.75); max-width: calc(25% - var(--nx-gap) * 0.75); } /* Elementor tablet/mobile breakpoints (1024 / 767 mirror Elementor defaults). */ @media ( max-width: 1024px ) { .nx-form-row.nx-w-tablet-100 { flex-basis: 100%; max-width: 100%; } .nx-form-row.nx-w-tablet-75 { flex-basis: calc(75% - var(--nx-gap) * 0.25); max-width: calc(75% - var(--nx-gap) * 0.25); } .nx-form-row.nx-w-tablet-66 { flex-basis: calc(66.6666% - var(--nx-gap) * 0.3333); max-width: calc(66.6666% - var(--nx-gap) * 0.3333); } .nx-form-row.nx-w-tablet-50 { flex-basis: calc(50% - var(--nx-gap) * 0.5); max-width: calc(50% - var(--nx-gap) * 0.5); } .nx-form-row.nx-w-tablet-33 { flex-basis: calc(33.3333% - var(--nx-gap) * 0.6666); max-width: calc(33.3333% - var(--nx-gap) * 0.6666); } .nx-form-row.nx-w-tablet-25 { flex-basis: calc(25% - var(--nx-gap) * 0.75); max-width: calc(25% - var(--nx-gap) * 0.75); } } @media ( max-width: 767px ) { .nx-form-row.nx-w-mobile-100 { flex-basis: 100%; max-width: 100%; } .nx-form-row.nx-w-mobile-75 { flex-basis: calc(75% - var(--nx-gap) * 0.25); max-width: calc(75% - var(--nx-gap) * 0.25); } .nx-form-row.nx-w-mobile-66 { flex-basis: calc(66.6666% - var(--nx-gap) * 0.3333); max-width: calc(66.6666% - var(--nx-gap) * 0.3333); } .nx-form-row.nx-w-mobile-50 { flex-basis: calc(50% - var(--nx-gap) * 0.5); max-width: calc(50% - var(--nx-gap) * 0.5); } .nx-form-row.nx-w-mobile-33 { flex-basis: calc(33.3333% - var(--nx-gap) * 0.6666); max-width: calc(33.3333% - var(--nx-gap) * 0.6666); } .nx-form-row.nx-w-mobile-25 { flex-basis: calc(25% - var(--nx-gap) * 0.75); max-width: calc(25% - var(--nx-gap) * 0.75); } } .nx-form-label { display: block; margin-bottom: 6px; font-size: 14px; font-weight: 500; } .nx-form-required { color: #d63638; } .nx-form-input { box-sizing: border-box; display: block; width: 100%; padding: 10px 12px; font-size: 14px; line-height: 1.5; color: #1d2327; background: #ffffff; border: 1px solid #c3c4c7; border-radius: 4px; transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out; } .nx-form-input:focus { border-color: #2271b1; outline: 0; box-shadow: 0 0 0 2px rgba( 34, 113, 177, .2 ); } .nx-form-textarea { resize: vertical; min-height: 90px; } .nx-form-actions { display: flex; align-items: center; margin-top: 4px; } .nx-form-actions > .nx-form-submit { flex: 0 0 auto; } .nx-form-actions[style*="stretch"] > .nx-form-submit, .nx-form-actions:not([style]) > .nx-form-submit { flex: 1 1 auto; } .nx-form-submit { display: inline-block; padding: 12px 20px; font-size: 14px; font-weight: 600; line-height: 1; color: #ffffff; background-color: #2271b1; border: 0; border-radius: 4px; cursor: pointer; transition: background-color .15s ease-in-out; } .nx-form-submit:hover:not(:disabled) { background-color: #135e96; } .nx-form-submit:disabled { opacity: .6; cursor: not-allowed; } .nx-form-message { margin-top: 12px; min-height: 1em; font-size: 14px; } .nx-form-message.is-success { color: #007a5a; } .nx-form-message.is-error { color: #d63638; } .nx-form-notice { padding: 16px; border: 1px dashed #c3c4c7; border-radius: 4px; background: #f6f7f7; color: #50575e; font-size: 13px; text-align: center; } .elementor-widget-nx-form { width: 100%; }