:root{--bg-page: #ffffff;--bg-panel: #f4f2ec;--bg-card: #ffffff;--bg-field: #ffffff;--bg-textarea: #f4f3ee;--border-card: #ece9e1;--border-field: #e4e1d8;--border-hover: #cfccc4;--border-strong: #161616;--text-strong: #141414;--text-body: #4b4b46;--text-muted: #6e6d66;--text-placeholder: #7e7d76;--track: #e7e4dc;--fill: #161616;--accent: #7c5cfc;--green: #34c47c;--danger: #d9544a;--danger-text: #c0392f;--radius-panel: 30px;--radius-card: 24px;--radius-pill: 999px;--shadow-panel: 0 50px 110px -60px rgba(46, 42, 33, .45);--shadow-card: 0 26px 60px -34px rgba(46, 42, 33, .28);--font: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);background:var(--bg-page);color:var(--text-strong);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{min-height:100%;display:flex;align-items:center;justify-content:center;padding:40px 24px}.panel{position:relative;width:100%;max-width:1080px;min-height:660px;display:flex;flex-direction:column;background:var(--bg-panel);border-radius:var(--radius-panel);padding:44px 56px 40px;box-shadow:var(--shadow-panel);animation:panelIn .45s ease both}.panel--success{justify-content:center}.progress__meta{display:flex;justify-content:space-between;align-items:baseline;font-size:15px;font-weight:500;color:var(--text-strong);margin-bottom:14px}.progress__track{height:4px;border-radius:var(--radius-pill);background:var(--track);overflow:hidden}.progress__fill{height:100%;border-radius:var(--radius-pill);background:var(--fill);transition:width .55s cubic-bezier(.4,0,.2,1)}.progress__steps{position:relative;height:30px;margin-top:24px}.step-dot{position:absolute;top:0;transform:translate(-50%);width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;transition:background .3s ease,color .3s ease}.step-dot--done{background:var(--track);color:var(--text-strong)}.step-dot--active{background:var(--fill);color:#fff}.step-dot--todo{background:#e9e6de;color:#6b6a63}.stage{flex:1;display:flex;flex-direction:column;align-items:center;padding-top:34px;animation:stepIn .4s ease both}.stage__title{margin:0;text-align:center;font-size:clamp(2.1rem,4.6vw,3.25rem);font-weight:700;letter-spacing:-.022em;line-height:1.05}.stage__subtitle{margin:12px 0 0;text-align:center;font-size:clamp(1rem,1.4vw,1.15rem);font-weight:400;color:var(--text-muted)}.stage__title:focus,.success__title:focus{outline:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.card{width:100%;max-width:900px;margin-top:38px;background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-card);padding:36px 40px;box-shadow:var(--shadow-card)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:22px 28px}.field{display:flex;flex-direction:column;gap:10px}.field__label{font-size:15px;font-weight:600;color:var(--text-strong)}.input{height:54px;padding:0 22px;border:1px solid var(--border-field);border-radius:var(--radius-pill);background:var(--bg-field);font-family:inherit;font-size:16px;color:var(--text-strong);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.input::placeholder{color:var(--text-placeholder)}.input:hover{border-color:var(--border-hover)}.input:focus{border-color:var(--border-strong);box-shadow:0 0 0 3px #14141412}.input--error,.textarea--error{border-color:var(--danger)}.field__error{font-size:13px;font-weight:500;color:var(--danger-text)}.sections{display:flex;flex-direction:column}.option-group{margin:0;padding:0;border:0;display:flex;flex-direction:column;gap:16px}.option-group__label{padding:0;font-size:15px;font-weight:600;color:var(--text-strong)}.section__divider{height:1px;background:var(--border-card);margin:26px 0}.options{display:grid;gap:16px}.options--2{grid-template-columns:repeat(2,1fr)}.options--3{grid-template-columns:repeat(3,1fr)}.option{display:flex;align-items:center;justify-content:space-between;gap:12px;height:58px;padding:0 24px;border:1px solid var(--border-field);border-radius:var(--radius-pill);background:#fff;font-family:inherit;font-size:16px;font-weight:500;color:var(--text-strong);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.option:hover{border-color:var(--border-hover)}.option--selected{border-color:var(--border-strong);box-shadow:0 0 0 1px var(--border-strong)}.option__text{text-align:left}.option__radio{flex:none;width:22px;height:22px;border-radius:50%;border:1.5px solid #d6d3cb;display:flex;align-items:center;justify-content:center;color:#fff;transition:background .15s ease,border-color .15s ease}.option--selected .option__radio{background:var(--fill);border-color:var(--fill)}.questions{display:flex;flex-direction:column;gap:26px}.qfield__label{display:block;margin-bottom:14px;font-size:15px;font-weight:600;color:var(--text-strong)}.textarea{width:100%;min-height:148px;padding:18px 20px;border:1px solid var(--border-field);border-radius:18px;background:var(--bg-textarea);font-family:inherit;font-size:16px;line-height:1.5;color:var(--text-strong);outline:none;resize:vertical;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.textarea::placeholder{color:var(--text-placeholder)}.textarea:focus{border-color:var(--border-strong);background:#fff;box-shadow:0 0 0 3px #1414140f}.qfield__meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}.char-count{margin-left:auto;font-size:13px;color:var(--text-muted)}.footer{display:flex;align-items:center;justify-content:space-between;margin-top:38px}.submit-error{margin:18px 0 0;text-align:center;font-size:14px;font-weight:500;color:var(--danger-text)}.submit-error+.footer{margin-top:16px}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:56px;padding:0 30px;border:1px solid transparent;border-radius:var(--radius-pill);font-family:inherit;font-size:16px;font-weight:600;cursor:pointer;transition:transform .1s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}.btn__icon{display:inline-flex}.btn:active{transform:translateY(1px)}.btn:focus-visible{outline:3px solid rgba(124,92,252,.5);outline-offset:2px}.btn:disabled{opacity:.6;cursor:not-allowed}.btn:disabled:active{transform:none}.btn__spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:btn-spin .7s linear infinite}@keyframes btn-spin{to{transform:rotate(360deg)}}@property --btn-angle{syntax: "<angle>"; inherits: false; initial-value: 0deg;}.btn--primary{--btn-angle: 0deg;color:#fff;isolation:isolate;background-color:var(--fill);background-image:conic-gradient(from var(--btn-angle),#4c1d95 0deg,#7c5cfc 70deg,#c4b5fd 135deg,#7c5cfc 205deg,#4c1d95 300deg,#4c1d95 360deg);box-shadow:0 6px 22px -8px #7c5cfc8c;animation:btn-border-spin 6s linear infinite}.btn--primary:before{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;z-index:-1;border-radius:inherit;background:var(--fill)}.btn--primary:hover{box-shadow:0 6px 28px -6px #7c5cfcb8}@keyframes btn-border-spin{to{--btn-angle: 360deg}}.btn--secondary{background:#fff;color:var(--text-strong);border-color:var(--border-field)}.btn--secondary:hover{border-color:var(--border-hover)}.success{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 0;animation:stepIn .45s ease both}.success__icon{width:84px;height:84px;border-radius:22px;display:flex;align-items:center;justify-content:center;background:var(--green);color:#fff;box-shadow:0 22px 44px -16px #34c47cbf;margin-bottom:30px}.success__title{margin:0;font-size:clamp(2.1rem,4.6vw,3.1rem);font-weight:700;letter-spacing:-.022em}.success__text{margin:16px 0 0;max-width:560px;font-size:clamp(1rem,1.4vw,1.15rem);line-height:1.55;color:var(--text-muted)}.success__actions{display:flex;gap:16px;margin-top:36px}@keyframes panelIn{0%{opacity:0;transform:translateY(16px) scale(.99)}to{opacity:1;transform:none}}@keyframes stepIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}@media (max-width: 760px){.app{padding:20px 14px}.panel{min-height:0;padding:28px 22px 26px;border-radius:22px}.stage{padding-top:24px}.card{margin-top:28px;padding:24px 20px}.grid-2,.options--2,.options--3{grid-template-columns:1fr}.footer{gap:12px}.btn{flex:1;padding:0 18px;font-size:15px}.success__actions{flex-direction:column;width:100%}.success__actions .btn{width:100%}}
