.rc-platform-form { --form-ink: var(--rc-ink, #11152b); --form-soft: var(--rc-ink-soft, #62687c); --form-surface: var(--rc-surface, #fff); --form-muted: var(--rc-surface-2, #f4f2ff); --form-line: var(--rc-line, rgba(17,21,43,.14)); color: var(--form-ink); }
.rc-platform-form label { position: relative; display: grid; gap: 7px; margin-bottom: 18px; }
.rc-platform-form label > span:first-child { font-size: .78rem; font-weight: 800; }
.rc-platform-form input[type="text"], .rc-platform-form input[type="email"], .rc-platform-form input[type="url"], .rc-platform-form textarea, .rc-platform-form select { width: 100%; min-height: 50px; padding: 12px 14px; color: var(--form-ink); background: var(--form-muted); border: 1.5px solid transparent; border-radius: 12px; outline: none; transition: border-color .2s, box-shadow .2s, background .2s; }
.rc-platform-form textarea { resize: vertical; line-height: 1.55; }
.rc-platform-form input:focus, .rc-platform-form textarea:focus, .rc-platform-form select:focus { background: var(--form-surface); border-color: var(--rc-violet, #7657ff); box-shadow: 0 0 0 4px rgba(118,87,255,.12); }
.rc-platform-form .has-error { border-color: var(--rc-coral, #ff5a45) !important; box-shadow: 0 0 0 4px rgba(255,90,69,.1) !important; }
.rc-platform-form label > small { color: var(--form-soft); font-size: .7rem; }.rc-platform-form label > small:has([data-rc-count]) { position: absolute; right: 9px; bottom: 7px; padding: 2px 5px; background: var(--form-surface); border-radius: 6px; }
.rc-form-heading { display: grid; grid-template-columns: 38px 1fr; gap: 10px; margin-bottom: 24px; }.rc-form-heading > span { display: grid; width: 34px; height: 34px; place-items: center; color: #fff; background: var(--rc-violet, #7657ff); border-radius: 50%; font-size: .67rem; font-weight: 850; }.rc-form-heading h2 { margin: 0 0 6px; font-size: clamp(1.35rem,5vw,2rem); }.rc-form-heading p { margin: 0; color: var(--form-soft); font-size: .85rem; }
.rc-form-grid { display: grid; gap: 0; }
.rc-form-consent { grid-template-columns: 22px 1fr; align-items: start; }.rc-form-consent input { width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--rc-violet, #7657ff); }.rc-form-consent span { color: var(--form-soft); font-size: .76rem; font-weight: 500 !important; line-height: 1.45; }
.rc-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.rc-form-submit { display: flex; flex-direction: column; gap: 10px; }.rc-form-submit button, .rc-step-next { display: inline-flex; gap: 10px; align-items: center; justify-content: center; min-height: 52px; padding: 0 22px; color: #fff; background: var(--rc-ink, #11152b); border: 0; border-radius: 999px; font-weight: 850; transition: transform .25s, box-shadow .25s; }.rc-form-submit button:hover, .rc-step-next:hover { transform: translateY(-2px); box-shadow: 0 12px 25px rgba(17,21,43,.2); }.rc-form-submit button[disabled], .rc-step-next[disabled] { cursor: wait; opacity: .6; }
[data-rc-form-status] { margin: 0; color: var(--form-soft); font-size: .82rem; }.is-success[data-rc-form-status] { padding: 12px 14px; color: #126842; background: #e6f8ef; border-radius: 10px; }.is-error[data-rc-form-status] { padding: 12px 14px; color: #a52e20; background: #fff0ed; border-radius: 10px; }
.rc-report-steps { display: flex; align-items: center; justify-content: center; gap: 5px; margin-bottom: 30px; }.rc-report-steps > span { display: grid; width: 32px; height: 32px; place-items: center; color: var(--form-soft); background: var(--form-muted); border-radius: 50%; font-size: .7rem; font-weight: 850; transition: .3s; }.rc-report-steps > span b { display: none; }.rc-report-steps > span.is-active { color: #fff; background: var(--rc-coral, #ff5a45); transform: scale(1.08); }.rc-report-steps > span.is-done { color: #fff; background: var(--rc-green, #39b982); }.rc-report-steps > i { width: 26px; height: 2px; background: var(--form-line); }
.rc-form-step[hidden] { display: none; }.rc-form-step.is-active { animation: rc-step-in .4s cubic-bezier(.2,.8,.2,1) both; }
.rc-reason-grid { display: grid; gap: 9px; margin-bottom: 20px; }.rc-reason-grid label { margin: 0; }.rc-reason-grid input { position: absolute; opacity: 0; pointer-events: none; }.rc-reason-grid label > span { display: grid; gap: 3px; min-height: 78px; padding: 14px 15px 14px 50px; background: var(--form-muted); border: 1.5px solid transparent; border-radius: 13px; cursor: pointer; transition: .25s; }.rc-reason-grid label > span::before { position: absolute; top: 28px; left: 17px; width: 18px; height: 18px; content: ""; border: 2px solid var(--form-soft); border-radius: 50%; }.rc-reason-grid label > span::after { position: absolute; top: 34px; left: 23px; width: 10px; height: 10px; content: ""; background: var(--rc-violet, #7657ff); border-radius: 50%; opacity: 0; transform: scale(.4); transition: .2s; }.rc-reason-grid input:checked + span { background: var(--form-surface); border-color: var(--rc-violet, #7657ff); box-shadow: 0 8px 24px rgba(118,87,255,.1); }.rc-reason-grid input:checked + span::before { border-color: var(--rc-violet, #7657ff); }.rc-reason-grid input:checked + span::after { opacity: 1; transform: scale(1); }.rc-reason-grid b { font-size: .88rem; }.rc-reason-grid small { color: var(--form-soft); font-size: .72rem; line-height: 1.35; }
.rc-step-actions { display: flex; gap: 8px; justify-content: space-between; margin-top: 10px; }.rc-step-actions > button:not(.rc-step-next) { padding: 10px 5px; color: var(--form-soft); background: transparent; border: 0; }.rc-step-actions .rc-step-next { margin-left: auto; }
@keyframes rc-step-in { from { opacity: 0; transform: translateX(16px); } }
@media (min-width: 560px) { .rc-form-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }.rc-reason-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }.rc-report-steps { gap: 8px; justify-content: space-between; }.rc-report-steps > span { display: flex; width: auto; padding: 0 10px; border-radius: 99px; }.rc-report-steps > span b { display: inline; margin-left: 5px; }.rc-report-steps > i { flex: 1; } }
@media (prefers-reduced-motion: reduce) { .rc-form-step.is-active { animation: none; } }

