.formlayer-form label{display:block;margin-bottom:8px;font-weight:600;color:#1e293b;font-size:14px;}
.formlayer-form input[type="text"],
.formlayer-form input[type="email"],
.formlayer-form input[type="number"],
.formlayer-form input[type="tel"],
.formlayer-form input[type="date"],
.formlayer-form input[type="password"],
.formlayer-form input[type="url"],
.formlayer-form textarea{width:100%;padding:12px 16px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:15px;color:#1d2327;background:#fff;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);box-sizing:border-box;box-shadow:0 1px 2px rgba(0,0,0,0.02);}
.formlayer-form select{width:100%;height:48px;padding:0 40px 0 16px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:15px;color:#1d2327;background:#fff;transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);box-sizing:border-box;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:16px;cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,0.02);}
.formlayer-form input:focus, .formlayer-form textarea:focus, .formlayer-form select:focus{outline:none;border-color:#5525d6;box-shadow:0 0 0 4px rgba(85, 37, 214, 0.12);transform:translateY(-1px);}
.formlayer-form textarea{min-height:120px;resize:vertical;line-height:1.6;}
.formlayer-submit-btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;padding:0 24px;height:46px;background:#5525d6;color:#fff;border:none;border-radius:10px;font-weight:700;font-size:15px;cursor:pointer;transition:all 0.3s ease;box-shadow:0 4px 10px rgba(85, 37, 214, 0.2);box-sizing:border-box;text-decoration:none;line-height:1;}
.formlayer-submit-btn:hover{background:#441eb1;transform:translateY(-1px);box-shadow:0 6px 15px rgba(85, 37, 214, 0.3);}
.formlayer-submit-btn.loading{color:transparent !important;position:relative;pointer-events:none;opacity:0.8;}
.formlayer-submit-btn.loading::after{content:"";position:absolute;width:20px;height:20px;top:50%;left:50%;margin:-10px 0 0 -10px;border:3px solid rgba(255, 255, 255, 0.3);border-top-color:#fff;border-radius:50%;animation:fl-button-spin 0.8s ease-in-out infinite;}
@keyframes fl-button-spin {
to{transform:rotate(360deg);}
}
.formlayer-form .required-indicator{color:#ef4444;margin-left:4px;}
.formlayer-radio-group, .formlayer-check-wrap{display:flex;flex-direction:column;gap:12px;}
.formlayer-radio-group label, .formlayer-check-wrap label{display:flex;align-items:center;gap:10px;font-weight:400;cursor:pointer;}
.formlayer-form-fields-wrapper{display:flex;flex-wrap:wrap;}
.formlayer-field-wrap{margin-bottom:24px;display:flex;flex-direction:column;width:100%;box-sizing:border-box;}
.formlayer-field-wrap.formlayer-width-50{width:calc(50% - 8px);}
@media(max-width:600px){
.formlayer-field-wrap.formlayer-width-50{width:100%;}
}
.formlayer-field-wrap.label-top{flex-direction:column;}
.formlayer-field-wrap.label-left, .formlayer-field-wrap.label-right{flex-direction:row;align-items:center;gap:20px;flex-wrap:nowrap;}
.formlayer-field-wrap.label-left .formlayer-label, .formlayer-field-wrap.label-right .formlayer-label{width:30%;min-width:120px;margin-bottom:0;padding-top:0;}
.formlayer-field-wrap.label-right .formlayer-label{order:2;}
.formlayer-field-wrap.label-right .formlayer-input{order:1;}
.formlayer-field-wrap.label-hidden .formlayer-label{display:none;}
.formlayer-help-text{width:100%;font-size:12px;color:#94a3b8;margin-top:8px;font-style:italic;}
.formlayer-field-wrap.label-left .formlayer-help-text, .formlayer-field-wrap.label-right .formlayer-help-text{margin-left:calc(30% + 20px);}
.formlayer-submit-wrap{margin-top:20px;}
.formlayer-success-message{background:#ffffff;color:#1e293b;padding:20px 24px;border-radius:8px;margin-bottom:24px;border:1px solid #e2e8f0;font-size:16px;font-weight:400;line-height:1.6;box-shadow:0 1px 3px rgba(0, 0, 0, 0.02);animation:flFadeInSlide 0.3s cubic-bezier(0.16, 1, 0.3, 1) forwards;}
.formlayer-error-message{background:#fef2f2;color:#991b1b;padding:16px 20px;border-radius:10px;margin-bottom:24px;border:1px solid rgba(239, 68, 68, 0.2);border-left:4px solid #ef4444;font-size:14px;font-weight:500;line-height:1.5;box-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -2px rgba(0, 0, 0, 0.05);animation:flFadeInSlide 0.3s cubic-bezier(0.16, 1, 0.3, 1) forwards;}
.formlayer-error{background:#fef2f2;color:#991b1b;padding:18px 20px;border-radius:10px;border:1px solid rgba(239, 68, 68, 0.2);border-left:4px solid #ef4444;margin:24px 0;text-align:left;font-size:14px;font-weight:500;line-height:1.5;box-shadow:0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -2px rgba(0, 0, 0, 0.05);animation:flFadeInSlide 0.3s cubic-bezier(0.16, 1, 0.3, 1) forwards;}
@keyframes flFadeInSlide {
from{opacity:0;transform:translateY(6px);}
to{opacity:1;transform:translateY(0);}
} .formlayer-submit-wrap.align-center{display:flex;justify-content:center;}
.formlayer-submit-wrap.align-right{display:flex;justify-content:flex-end;}
.formlayer-submit-wrap.align-full .formlayer-submit-btn{width:100%;}
.formlayer-submit-btn.btn-sm{height:38px;padding:0 16px;font-size:13px;}
.formlayer-submit-btn.btn-md{height:46px;padding:0 24px;font-size:15px;}
.formlayer-submit-btn.btn-lg{height:56px;padding:0 32px;font-size:17px;}
.formlayer-submit-btn{width:auto !important;max-width:100% !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;}
.align-full .formlayer-submit-btn{width:100% !important;display:flex !important;}
.formlayer-container{display:grid;gap:20px;margin-bottom:24px;width:100%;}
.formlayer-container.grid-cols-1{grid-template-columns:1fr;}
.formlayer-container.grid-cols-2{grid-template-columns:1fr 1fr;}
.formlayer-container.grid-cols-3{grid-template-columns:1fr 1fr 1fr;}
.formlayer-container.grid-cols-4{grid-template-columns:repeat(4, 1fr);}
@media(max-width:768px){
.formlayer-container.grid-cols-2, .formlayer-container.grid-cols-3, .formlayer-container.grid-cols-4{grid-template-columns:1fr;}
}
.formlayer-html-content{margin-bottom:24px;}
.formlayer-name-fields-wrap{display:flex;flex-direction:column;gap:15px;}
.formlayer-grid{display:grid;gap:20px;width:100%;}
.formlayer-grid-2{grid-template-columns:1fr 1fr;}
.formlayer-grid-3{grid-template-columns:1fr 1fr 1fr;}
.formlayer-sub-field{display:flex;flex-direction:column;}
.formlayer-sub-field.full-width{grid-column:1 / -1;}
.formlayer-sub-label{font-size:11px;color:#64748b;margin-top:4px;text-transform:uppercase;letter-spacing:0.5px;font-weight:600;}
.formlayer-address-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;}
.formlayer-address-grid .full-width{grid-column:1 / -1;margin-bottom:5px;}
.formlayer-address-grid .formlayer-sub-field:not(.full-width){margin-bottom:5px;}
.formlayer-field-wrap{margin-bottom:28px;}
.formlayer-form input[type="number"],
.formlayer-form input[type="date"],
.formlayer-form input[type="tel"]{height:48px;}
.formlayer-date-wrap, .formlayer-select-wrap{position:relative;width:100%;}
.formlayer-date-wrap .dashicons, .formlayer-select-wrap .dashicons{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#64748b;pointer-events:none;font-size:18px;z-index:10;}
.formlayer-form input[type="date"],
.formlayer-form select{padding-left:45px !important;}
.formlayer-options-list{display:flex;flex-direction:column;gap:10px;}
.formlayer-option-label, .formlayer-terms-wrap, .formlayer-gdpr-wrap{display:flex !important;align-items:flex-start !important;gap:12px !important;margin-bottom:10px !important;}
.formlayer-option-label input[type="radio"],
.formlayer-option-label input[type="checkbox"],
.formlayer-terms-wrap input[type="checkbox"],
.formlayer-gdpr-wrap input[type="checkbox"]{width:20px !important;height:20px !important;margin:2px 10px 0 0 !important;cursor:pointer;accent-color:#5525d6 !important;flex-shrink:0 !important;vertical-align:middle !important;display:inline-block !important;opacity:1 !important;visibility:visible !important;-webkit-appearance:auto !important;-moz-appearance:auto !important;appearance:auto !important;}
.formlayer-option-label span, .formlayer-terms-label, .formlayer-gdpr-label, .formlayer-gdpr-wrap .formlayer-gdpr-info span{line-height:1.5 !important;display:inline-block !important;font-size:14px !important;font-weight:400 !important;color:#334155;}
.formlayer-rating{display:flex;gap:8px;}
.formlayer-rating .dashicons{font-size:32px;width:32px;height:32px;color:#e2e8f0;cursor:pointer;transition:color 0.2s;}
.formlayer-rating .dashicons.active, .formlayer-rating .dashicons:hover, .formlayer-rating .dashicons:hover ~ .dashicons{color:#f59e0b;}
.formlayer-section-break{margin:32px 0 20px 0;padding-bottom:10px;border-bottom:2px solid #e2e8f0;}
.formlayer-section-break h3{margin:0 0 5px 0 !important;font-size:18px !important;color:#1e293b !important;font-weight:700 !important;line-height:1.3 !important;padding:0 !important;border:none !important;background:none !important;}
.formlayer-section-break p{margin:5px 0 0 0 !important;color:#64748b !important;font-size:13px !important;font-weight:400 !important;}
.formlayer-file-upload-box{display:flex;align-items:center;gap:15px;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;padding:10px 15px;width:100%;box-sizing:border-box;transition:all 0.2s;}
.formlayer-file-upload-box:hover{border-color:#5525d6;background:#f1f5f9;}
.formlayer-file-fake-btn{background:#5525d6;color:#fff;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.2s;display:inline-block;white-space:nowrap;}
.formlayer-file-fake-btn:hover{background:#441eb1;}
.formlayer-file-chosen-name{font-size:14px;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
@media(max-width:600px){
.formlayer-grid-2, .formlayer-address-grid, .formlayer-grid{grid-template-columns:1fr !important;}
}
.formlayer-gdpr-info{line-height:1.4;}
.formlayer-gdpr-label{font-size:14px;color:#475569;}
.formlayer-gdpr-desc { 
font-size: 12px; 
color: #64748b; 
margin-top: 4px; 
}