:root{--primary:#e85d2f;--primary-dark:#d14a2a;--bg-surface:#fff;--bg-page:#f8f9fa;--text-primary:#111827;--text-secondary:#6b7280;--border-color:#e5e7eb;--focus-ring:#e85d2f26}@keyframes slideUpFade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseRing{0%{box-shadow:0 0 #e85d2f66}70%{box-shadow:0 0 0 10px #e85d2f00}to{box-shadow:0 0 #e85d2f00}}@keyframes checkmarkPop{0%{transform:scale(0)}80%{transform:scale(1.2)}to{transform:scale(1)}}.cadastre-page{background:linear-gradient(#f8f9fa,#fff);justify-content:center;align-items:center;min-height:calc(100vh - 80px);padding:30px 16px;display:flex}.cadastre-container{width:100%;max-width:720px;margin:0 auto}.cadastre-form-container{background:var(--bg-surface);opacity:0;border-radius:20px;width:100%;padding:40px 48px;animation:.6s cubic-bezier(.2,.8,.2,1) forwards slideUpFade;position:relative;overflow:hidden;box-shadow:0 20px 25px -5px #0000000d,0 10px 10px -5px #00000005,0 0 1px #0000001a}.cadastre-form-container:before{content:"";background:linear-gradient(90deg,#e85d2f,#f97316);width:100%;height:5px;position:absolute;top:0;left:0}.cadastre-page .form-header{text-align:center;margin-bottom:32px}.cadastre-page .form-header h2{color:var(--text-primary);letter-spacing:-.03em;margin-bottom:8px;font-size:1.8rem;font-weight:800;line-height:1.1}.cadastre-page .form-header p{color:var(--text-secondary);max-width:90%;margin:0 auto;font-size:1rem;font-weight:400}.form-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.span-full{grid-column:1/-1}.cadastre-page .form-group{flex-direction:column;gap:6px;display:flex}.cadastre-page .form-group label{color:#374151;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;margin-left:2px;font-size:.75rem;font-weight:600}.cadastre-page .input-wrapper{align-items:center;display:flex;position:relative}.cadastre-page .input-wrapper svg{color:#9ca3af;z-index:10;width:18px;height:18px;transition:color .3s;position:absolute;left:16px}.cadastre-page .input-wrapper input,.cadastre-page .form-select,.cadastre-page .form-textarea{width:100%;color:var(--text-primary);background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;min-height:48px;padding:12px 16px 12px 44px;font-size:.95rem;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1)}.form-textarea{resize:vertical;min-height:100px;padding-left:16px}.form-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 9L12 15L18 9' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;padding-left:16px;padding-right:40px}.cadastre-page .input-wrapper input:focus,.cadastre-page .form-select:focus,.cadastre-page .form-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--focus-ring);background:#fff;outline:none;transform:translateY(-1px)}.cadastre-page .input-wrapper:focus-within svg{color:var(--primary)}.cadastre-page .input-wrapper input::placeholder,.cadastre-page .form-textarea::placeholder{color:#9ca3af;font-weight:400}.cadastre-page .input-wrapper input:hover:not(:focus),.cadastre-page .form-select:hover:not(:focus),.cadastre-page .form-textarea:hover:not(:focus){background:#f3f4f6;border-color:#d1d5db}.cadastre-page .submit-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#e85d2f 0%,#d94f26 100%);border:none;border-radius:12px;justify-content:center;align-items:center;width:100%;margin-top:0;padding:14px;font-size:1rem;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 4px 12px #e85d2f40}.cadastre-page .submit-btn:hover{background:linear-gradient(135deg,#f0693e 0%,#e0562b 100%);transform:translateY(-2px);box-shadow:0 8px 16px #e85d2f59}.cadastre-page .submit-btn:active{transform:translateY(0)}.cadastre-page .submit-btn:disabled{box-shadow:none;background:#d1d5db;transform:none}.cadastre-page .loading-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.step-indicator{justify-content:space-between;align-items:flex-start;width:100%;max-width:400px;margin-bottom:40px;margin-left:auto;margin-right:auto;display:flex;position:relative}.step-item{z-index:2;flex-direction:column;flex:none;align-items:center;gap:8px;display:flex;position:relative}.step-circle{color:#9ca3af;background:#fff;border:2px solid #e5e7eb;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:.95rem;font-weight:700;transition:all .4s cubic-bezier(.34,1.56,.64,1);display:flex;position:relative}.step-circle svg{width:18px;height:18px}.step-label{color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:700;transition:all .3s}.step-item.active .step-circle{background:var(--primary);color:#fff;border-color:var(--primary);animation:2s infinite pulseRing;transform:scale(1.1);box-shadow:0 4px 12px #e85d2f66}.step-item.active .step-label{color:var(--primary)}.step-item.completed .step-circle{background:var(--primary);color:#fff;border-color:var(--primary)}.step-item.completed .step-circle svg{animation:.4s cubic-bezier(.34,1.56,.64,1) forwards checkmarkPop}.step-item.completed .step-label{color:var(--primary)}.step-line{z-index:1;background:#f3f4f6;border-radius:2px;flex:1;height:3px;margin:0 8px;position:relative;top:20px;overflow:hidden}.step-line:after{content:"";background:var(--primary);width:0%;height:100%;transition:width .6s;position:absolute;top:0;left:0}.step-line.active:after{width:100%}.cadastre-page .form-actions{align-items:center;gap:12px;margin-top:32px;display:flex}.cadastre-page .nav-btn{cursor:pointer;border:none;border-radius:12px;flex:1;padding:14px;font-size:.95rem;font-weight:600;transition:all .2s}.cadastre-page .prev-btn{color:#6b7280;background:#fff;border:1px solid #e5e7eb}.cadastre-page .prev-btn:hover{color:#111;background:#f9fafb;border-color:#d1d5db}.cadastre-page .next-btn{background:var(--primary);color:#fff;box-shadow:0 4px 10px #e85d2f33}.cadastre-page .next-btn:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 8px 20px #e85d2f4d}.form-success{color:#365314;text-align:center;background:#ecfccb;border:1px solid #d9f99d;border-radius:16px;margin-top:24px;padding:20px;font-weight:600;animation:.5s forwards slideUpFade}.field-error{color:#dc2626;margin-top:2px;margin-left:4px;font-size:.78rem;font-weight:500;animation:.3s slideUpFade}.password-strength{align-items:center;gap:8px;margin-top:4px;display:flex}.strength-bars{flex:1;gap:3px;display:flex}.strength-bar{background:#e5e7eb;border-radius:2px;flex:1;height:4px;transition:background .3s}.strength-label{white-space:nowrap;font-size:.75rem;font-weight:600}@media (max-width:640px){.cadastre-form-container{box-shadow:none;border-radius:0;padding:32px 20px}.form-grid{grid-template-columns:1fr;gap:16px}.span-md-1,.span-md-2{grid-column:span 1}.input-wrapper input{padding:12px 14px 12px 42px}.step-circle{width:32px;height:32px;font-size:.8rem}.step-circle svg{width:14px;height:14px}.step-line{top:16px}.form-header h2{font-size:1.5rem}}.toast-notification{opacity:0;z-index:1000;background:#fff;border-radius:99px;align-items:center;gap:12px;padding:12px 24px;transition:all .5s cubic-bezier(.34,1.56,.64,1);display:flex;position:fixed;top:24px;left:50%;transform:translate(-50%)translateY(-100px)}.toast-content{align-items:center;gap:10px;font-size:.95rem;font-weight:500;line-height:1;display:flex}.toast-content span{padding-top:2px}.toast-notification.error{color:#c2410c;box-shadow:0 10px 30px #e85d2f26,0 0 0 1px #e85d2f1a}.toast-notification.error svg{color:#e85d2f}.toast-notification.success{color:#047857;box-shadow:0 10px 30px #10b98126,0 0 0 1px #10b9811a}.toast-notification.success svg{color:#10b981}.toast-notification.show{opacity:1;transform:translate(-50%)translateY(0)}
