.rgt-cf-form{max-width:720px;margin:0 auto}
.rgt-cf-row{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}
.rgt-cf-row>.rgt-cf-field{flex-grow:1;flex-shrink:1;flex-basis:0;min-width:0}
.rgt-cf-field{display:flex;flex-direction:column;box-sizing:border-box}
.rgt-cf-full{flex:0 0 100%}
.rgt-cf-hidden{display:none !important}
.rgt-cf-field>label{font-weight:600;margin-bottom:.35rem;font-size:.95rem}
.rgt-cf-field input[type=text],
.rgt-cf-field input[type=email],
.rgt-cf-field input[type=tel],
.rgt-cf-field input[type=url],
.rgt-cf-field input[type=number],
.rgt-cf-field input[type=date],
.rgt-cf-field input[type=file],
.rgt-cf-field select,
.rgt-cf-field textarea{
  width:100%;padding:.7rem .85rem;border:1px solid #ccd0d4;border-radius:8px;
  font:inherit;background:#fff;box-sizing:border-box;transition:border-color .15s,box-shadow .15s
}
.rgt-cf-field input:focus,.rgt-cf-field select:focus,.rgt-cf-field textarea:focus{outline:none;border-color:#2271b1;box-shadow:0 0 0 2px rgba(34,113,177,.2)}
.rgt-cf-field textarea{resize:vertical;min-height:120px}
.rgt-cf-subgrid{display:flex;flex-wrap:wrap;gap:.6rem}
.rgt-cf-subgrid>input{flex:1 1 calc(50% - .3rem)}
.rgt-cf-subgrid>input.rgt-cf-full{flex:0 0 100%}
.rgt-cf-choices{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem}
.rgt-cf-choice{font-weight:400 !important;display:inline-flex;align-items:center;gap:.4rem}
.rgt-cf-req{color:#d63638}
.rgt-cf-help{color:#787c82;font-size:.82rem;margin-top:.3rem}
.rgt-cf-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden}
.rgt-cf-error{color:#d63638;font-size:.82rem;margin-top:.3rem;min-height:1em}
.rgt-cf-heading{margin:.5rem 0 0}
.rgt-cf-section{border:none;border-top:1px solid #e0e0e0;margin:.5rem 0;width:100%}
.rgt-cf-html{font-size:.95rem}

/* slider */
.rgt-cf-slider-wrap{display:flex;align-items:center;gap:.75rem}
.rgt-cf-slider-wrap input[type=range]{flex:1}
.rgt-cf-slider-wrap output{min-width:2.5rem;font-weight:600;text-align:right}

/* rating stars */
.rgt-cf-rating{display:inline-flex;flex-direction:row-reverse;justify-content:flex-end}
.rgt-cf-rating input{position:absolute;opacity:0;width:0;height:0}
.rgt-cf-rating label{font-size:1.8rem;color:#d0d0d5;cursor:pointer;padding:0 .05rem;margin:0}
.rgt-cf-rating input:checked ~ label,
.rgt-cf-rating label:hover,
.rgt-cf-rating label:hover ~ label{color:#f5b301}

/* actions */
.rgt-cf-actions{margin-top:1.1rem;display:flex;align-items:center;gap:.75rem}
.rgt-cf-submit{background:#1a1a1a;color:#fff;border:0;border-radius:8px;padding:.8rem 2rem;font:inherit;font-weight:600;cursor:pointer;transition:opacity .15s,transform .05s}
.rgt-cf-submit:hover{opacity:.9}
.rgt-cf-submit:active{transform:translateY(1px)}
.rgt-cf-submit:disabled{opacity:.55;cursor:default}
.rgt-cf-spinner{width:18px;height:18px;border:2px solid #ccc;border-top-color:#1a1a1a;border-radius:50%;display:none}
.rgt-cf-loading .rgt-cf-spinner{display:inline-block;animation:rgt-cf-spin .7s linear infinite}
@keyframes rgt-cf-spin{to{transform:rotate(360deg)}}
.rgt-cf-message{margin-top:1rem;font-weight:500}
.rgt-cf-message.rgt-cf-ok{padding:.85rem 1rem;border-radius:8px;background:#edf7ed;color:#1a7f37;border:1px solid #b7e1c0}
.rgt-cf-message.rgt-cf-err{padding:.85rem 1rem;border-radius:8px;background:#fcebec;color:#b32d2e;border:1px solid #f1c0c2}
.rgt-cf-captcha{margin:.25rem 0}
@media(max-width:600px){.rgt-cf-row>.rgt-cf-field{flex:1 1 100% !important}}
