/* Match admin dashboard toast style — supports light + dark (html.dark) */

.toastify.portfolio-toastify {
    display: inline-flex !important;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: nowrap;
    background: #fff !important;
    color: #1f2937;
    border-radius: 0.25rem;
    border-bottom-width: 3px;
    border-bottom-style: solid;
    box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.08);
    padding: 0.875rem 2.5rem 0.875rem 1.25rem;
    min-width: 280px;
    max-width: min(420px, calc(100vw - 2rem));
}

html.dark .toastify.portfolio-toastify {
    background: #1e2430 !important;
    color: #e5e7eb;
    box-shadow: 0 0.35rem 1.25rem rgba(0, 0, 0, 0.45);
}

.toastify.portfolio-toastify .toast-close {
    position: absolute;
    top: 0.625rem;
    inset-inline-end: 0.75rem;
    color: #6b7280;
    opacity: 0.7;
    line-height: 1;
    padding: 0;
    margin: 0;
}

html.dark .toastify.portfolio-toastify .toast-close {
    color: #9ca3af;
}

.toastify.portfolio-toastify .toast-close:hover {
    opacity: 1;
}

.toastify.portfolio-toastify--success {
    border-bottom-color: #5caf90;
}

.toastify.portfolio-toastify--warning {
    border-bottom-color: #f59e0b;
}

.toastify.portfolio-toastify--danger {
    border-bottom-color: #e35d6a;
}

.toastify.portfolio-toastify--info {
    border-bottom-color: #3b82f6;
}

.portfolio-toast {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    flex: 1;
    min-width: 0;
    font-family: inherit;
    font-size: 0.9375rem;
    font-weight: 500;
    line-height: 1.4;
}

.portfolio-toast-icon {
    font-size: 1.25rem;
    line-height: 1;
    flex-shrink: 0;
}

.portfolio-toastify--success .portfolio-toast-icon {
    color: #5caf90;
}

.portfolio-toastify--warning .portfolio-toast-icon {
    color: #f59e0b;
}

.portfolio-toastify--danger .portfolio-toast-icon {
    color: #e35d6a;
}

.portfolio-toastify--info .portfolio-toast-icon {
    color: #3b82f6;
}

.form-field-error {
    display: none;
    margin-top: 6px;
    font-size: 12px;
    font-weight: 600;
    color: #e35d6a;
}

.form-field-error.is-visible {
    display: block;
}

.form-field-wrapper.is-invalid,
.phone-input-wrapper.is-invalid {
    border-color: #e35d6a !important;
    box-shadow: 0 0 0 1px rgba(227, 93, 106, 0.25);
}
