| | |
| | | [type=radio].featured:checked + label .star + .star { |
| | | display: inline-block; |
| | | } |
| | | .restore.item, |
| | | .upload.item { |
| | | .restore.restore.item, |
| | | .upload.upload.item { |
| | | border-radius: var(--innerRadius); |
| | | aspect-ratio: unset; |
| | | overflow: hidden; |
| | | background: var(--base); |
| | | border: 1px solid var(--base-200); |
| | | } |
| | | .restore-item [for="select-item"], |
| | | .upload.item [for="select-item"] { |
| | | aspect-ratio: 1; |
| | | } |
| | | |
| | | .upload.item:has(details[open]) { |
| | | grid-column: 1 / -1; |
| | | } |
| | | .restore.item img, |
| | | .upload.item img { |
| | | transition: transform var(--transition-base); |
| | |
| | | .repeater-row:last-child { |
| | | margin-bottom: 0; |
| | | } |
| | | |
| | | .ql-toolbar button { |
| | | --height: fit-content; |
| | | padding: .5rem; |
| | | } |
| | | |
| | | .success-message { |
| | | color: var(--success, #16a34a); |
| | | background-color: var(--success-bg, #f0fdf4); |
| | | border: 1px solid var(--success, #16a34a); |
| | | padding: 0.75rem 1rem; |
| | | border-radius: var(--radius); |
| | | margin-bottom: 1rem; |
| | | display: flex; |
| | | align-items: center; |
| | | gap: 0.5rem; |
| | | } |
| | | |
| | | .success-message .success-icon { |
| | | width: 1.25rem; |
| | | height: 1.25rem; |
| | | flex-shrink: 0; |
| | | } |
| | | |
| | | .success-box { |
| | | background-color: var(--success-bg, #f0fdf4); |
| | | border: 2px solid var(--success, #16a34a); |
| | | padding: 1.5rem; |
| | | border-radius: var(--outerRadius); |
| | | margin-bottom: 1rem; |
| | | text-align: center; |
| | | } |
| | | |
| | | .success-box h3 { |
| | | color: var(--success, #16a34a); |
| | | margin-bottom: 0.5rem; |
| | | } |
| | | |
| | | .success-box p { |
| | | margin: 0.5rem 0; |
| | | } |
| | | |
| | | /* Form success state */ |
| | | .form-success { |
| | | opacity: 0.9; |
| | | } |
| | | |
| | | /* Hide form fields after success (optional) */ |
| | | .form-success .field:not(.form-success-message):not(.success-box) { |
| | | display: none; |
| | | } |
| | | |
| | | /* Keep submit button visible but disabled */ |
| | | .form-success button[type="submit"] { |
| | | opacity: 0.6; |
| | | pointer-events: none; |
| | | } |
| | | |
| | | /* Error states */ |
| | | .field-error input, |
| | | .field-error textarea, |
| | | .field-error select { |
| | | border-color: var(--error, #dc2626); |
| | | } |
| | | |
| | | .error-message { |
| | | color: var(--error, #dc2626); |
| | | font-size: var(--small); |
| | | margin-top: 0.25rem; |
| | | display: block; |
| | | } |
| | | |
| | | .form-error { |
| | | background-color: var(--error-bg, #fee); |
| | | border: 1px solid var(--error, #dc2626); |
| | | padding: 0.75rem; |
| | | border-radius: var(--radius); |
| | | margin-bottom: 1rem; |
| | | } |
| | | |
| | | /* Success states */ |
| | | .has-success input, |
| | | .has-success textarea, |
| | | .has-success select { |
| | | border-color: var(--success, #16a34a); |
| | | } |
| | | .form-error { |
| | | display: flex; |
| | | align-items: center; |
| | | gap: 0.5rem; |
| | | } |
| | | |
| | | .form-error .error-icon { |
| | | width: 1.25rem; |
| | | height: 1.25rem; |
| | | flex-shrink: 0; |
| | | } |
| | | |
| | | .autocomplete-dropdown { |
| | | width: 100%; |
| | | background-color: var(--base-100); |
| | | padding: .5rem; |
| | | box-shadow: var(--shadow); |
| | | } |