.ff-root{background:var(--white);border:1.5px solid var(--rule);border-radius:14px;max-width:680px;margin:0 auto;overflow:hidden}.ff-compact{max-width:100%}.ff-steps{background:var(--surface);border-bottom:1.5px solid var(--rule);align-items:center;gap:0;padding:20px 28px;display:flex}.ff-step{opacity:.4;transition:opacity var(--dur-base) var(--ease-io);flex-shrink:0;align-items:center;gap:8px;display:flex}.ff-step.active{opacity:1}.ff-step.done{opacity:.7}.ff-step-n{background:var(--rule);width:26px;height:26px;font-family:var(--font-display);color:var(--ink-3);transition:background var(--dur-base) var(--ease-io), color var(--dur-base) var(--ease-io);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:900;display:flex}.ff-step.active .ff-step-n{background:var(--green);color:var(--on-green)}.ff-step.done .ff-step-n{background:var(--green-lt);color:var(--green-dk)}.ff-step-lbl{font-family:var(--font-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap;font-size:10px}.ff-step.active .ff-step-lbl{color:var(--ink)}.ff-step-line{background:var(--rule);flex:1;min-width:12px;height:1.5px;margin:0 10px}.ff-body{position:relative}.ff-panel{padding:28px;display:none}.ff-panel.active{display:block}.ff-q{font-family:var(--font-display);color:var(--ink);margin-bottom:20px;font-size:20px;font-weight:800;line-height:1.2}.ff-hint{font-family:var(--font-sans);color:var(--ink-4);font-size:13px;font-weight:400}.ff-formats{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:4px;display:grid}.ff-format-btn{border:2px solid var(--rule);background:var(--white);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-snap);border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:20px 16px;display:flex}.ff-format-btn:hover{border-color:var(--green);background:var(--green-xlt);transform:translateY(-2px)}.ff-format-btn.selected{border-color:var(--green);background:var(--green-lt)}.ff-format-num{font-family:var(--font-display);color:var(--ink);font-size:32px;font-weight:900;line-height:1}.ff-format-btn.selected .ff-format-num{color:var(--green-dk)}.ff-format-sub{color:var(--ink-4);font-size:11px;font-family:var(--font-sans)}.ff-checks{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:24px;display:grid}.ff-check-lbl{border:1.5px solid var(--rule);cursor:pointer;color:var(--ink-2);transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);user-select:none;border-radius:8px;align-items:center;gap:10px;padding:11px 14px;font-size:13px;display:flex}.ff-check-lbl:hover{border-color:var(--green);background:var(--green-xlt)}.ff-check-inp{display:none}.ff-check-box{border:2px solid var(--rule);width:18px;height:18px;transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);border-radius:4px;flex-shrink:0;position:relative}.ff-check-inp:checked+.ff-check-box{border-color:var(--green);background:var(--green)}.ff-check-inp:checked+.ff-check-box:after{content:"";background:url("data:image/svg+xml,%3Csvg viewBox='0 0 10 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 4l3 3 5-6' stroke='%23080D17' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/contain no-repeat;position:absolute;inset:2px}.ff-check-lbl:has(.ff-check-inp:checked){border-color:var(--green);background:var(--green-lt);color:var(--ink)}.ff-radios{flex-direction:column;gap:8px;margin-bottom:24px;display:flex}.ff-radio-lbl{cursor:pointer;user-select:none;align-items:center;display:flex}.ff-radio-inp{display:none}.ff-radio-box{border:1.5px solid var(--rule);width:100%;transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);border-radius:8px;flex-direction:column;padding:12px 16px;display:flex;position:relative}.ff-radio-box:before{content:"";border:2px solid var(--rule);width:18px;height:18px;transition:border-color var(--dur-fast) var(--ease-out);border-radius:50%;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.ff-radio-inp:checked+.ff-radio-box{border-color:var(--green);background:var(--green-lt)}.ff-radio-inp:checked+.ff-radio-box:before{border-color:var(--green);border-width:5px}.ff-radio-lbl:hover .ff-radio-box{border-color:var(--green);background:var(--green-xlt)}.ff-radio-label{color:var(--ink);font-size:14px;font-weight:600}.ff-radio-sub{color:var(--ink-4);margin-top:2px;font-size:11px}.ff-textarea{border:1.5px solid var(--rule);width:100%;font-family:var(--font-sans);color:var(--ink);resize:vertical;transition:border-color var(--dur-fast) var(--ease-out);border-radius:8px;outline:none;margin-bottom:4px;padding:12px 14px;font-size:14px}.ff-textarea:focus{border-color:var(--green)}.ff-nav{justify-content:space-between;align-items:center;gap:10px;margin-top:20px;display:flex}.ff-back-btn{border:1.5px solid var(--rule);font-family:var(--font-display);color:var(--ink-3);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out), color .15s;background:0 0;border-radius:8px;padding:10px 18px;font-size:13px;font-weight:700}.ff-back-btn:hover{border-color:var(--ink-3);color:var(--ink)}.ff-next-btn,.ff-submit-btn{background:var(--green);font-family:var(--font-display);letter-spacing:.07em;text-transform:uppercase;color:var(--on-green);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), transform .1s;border:none;border-radius:8px;margin-left:auto;padding:11px 22px;font-size:13px;font-weight:800}.ff-next-btn:hover,.ff-submit-btn:hover{background:var(--green-dk);transform:translateY(-1px)}.ff-submit-btn{background:var(--night);color:var(--white);padding:13px 26px;font-size:14px}.ff-submit-btn:hover{background:#0a1020}.ff-loading{flex-direction:column;align-items:center;gap:20px;padding:40px 0;display:flex}.ff-spinner{border:3px solid var(--rule);border-top-color:var(--green);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite ff-spin}@keyframes ff-spin{to{transform:rotate(360deg)}}.ff-loading-txt{color:var(--ink-3);font-size:15px;font-family:var(--font-sans);letter-spacing:.05em}.ff-result-card{border:1.5px solid var(--rule);background:var(--white);border-radius:10px;margin-bottom:14px;padding:20px 22px}.ff-result-card.top{border-color:var(--green);background:var(--green-xlt)}.ff-result-top-badge{background:var(--green);color:var(--on-green);font-family:var(--font-sans);letter-spacing:.14em;text-transform:uppercase;border-radius:99px;align-items:center;gap:5px;margin-bottom:12px;padding:3px 10px;font-size:9px;font-weight:600;display:inline-flex}.ff-result-name{font-family:var(--font-display);color:var(--ink);margin-bottom:4px;font-size:36px;font-weight:900;line-height:1}.ff-result-headline{color:var(--green-dk);font-size:13px;font-weight:600;font-family:var(--font-display);letter-spacing:.02em;margin-bottom:10px}.ff-result-reason{color:var(--ink-2);margin-bottom:14px;font-size:14px;line-height:1.65}.ff-result-list{flex-direction:column;gap:5px;margin-bottom:14px;list-style:none;display:flex}.ff-result-list li{color:var(--ink-2);align-items:flex-start;gap:8px;font-size:13px;display:flex}.ff-result-list li:before{content:"✓";color:var(--green);flex-shrink:0;margin-top:1px;font-weight:700}.ff-result-tips{background:var(--surface);border-radius:8px;margin-bottom:14px;padding:12px 14px}.ff-result-tips-label{font-family:var(--font-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4);margin-bottom:8px;font-size:9px}.ff-result-tips ul{flex-direction:column;gap:4px;list-style:none;display:flex}.ff-result-tips li{color:var(--ink-3);gap:7px;font-size:12px;display:flex}.ff-result-tips li:before{content:"→";color:var(--green);flex-shrink:0;font-weight:700}.ff-result-link{background:var(--green);color:var(--on-green);font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;transition:background var(--dur-fast) var(--ease-out);border-radius:8px;align-items:center;gap:6px;padding:9px 18px;font-size:12px;font-weight:800;display:inline-flex}.ff-result-link:hover{background:var(--green-dk)}.ff-result-link-alt{color:var(--ink-3);font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;border:1.5px solid var(--rule);transition:border-color var(--dur-fast) var(--ease-out), color .15s;background:0 0;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:12px;font-weight:700;display:inline-flex}.ff-result-link-alt:hover{border-color:var(--ink-3);color:var(--ink)}.ff-result-actions{flex-wrap:wrap;gap:8px;display:flex}.ff-error{text-align:center;color:var(--ink-3);padding:32px;font-size:14px}.ff-error strong{color:var(--ink);margin-bottom:8px;font-size:16px;display:block}.ff-restart-row{border-top:1.5px solid var(--rule);margin-top:16px;padding-top:16px}.ff-restart-btn{border:1.5px solid var(--rule);font-family:var(--font-display);color:var(--ink-3);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out), color .15s;background:0 0;border-radius:8px;padding:9px 18px;font-size:12px;font-weight:700}.ff-restart-btn:hover{border-color:var(--ink-3);color:var(--ink)}.ff-error-box{color:#c53030;text-align:center;background:#fff5f5;border:1.5px solid #fed7d7;border-radius:8px;padding:16px;font-size:14px}@media (width<=600px){.ff-formats{grid-template-columns:repeat(2,1fr)}.ff-checks{grid-template-columns:1fr}.ff-steps{gap:0;padding:14px 16px}.ff-step-lbl{display:none}.ff-step-line{min-width:8px}.ff-panel{padding:20px 16px}}
