*{box-sizing:border-box;margin:0;padding:0}.captive-portal{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;justify-content:center;min-height:100vh;padding:20px}.portal-container{animation:slideIn .5s ease-out;background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-width:600px;overflow:hidden;width:100%}@keyframes slideIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.portal-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:30px;text-align:center}.logo h1{font-size:2.5rem;font-weight:700;margin-bottom:10px}.welcome-text{font-size:1.1rem;font-weight:300;opacity:.95}.progress-indicator{display:flex;justify-content:space-between;padding:30px 40px 20px;position:relative}.progress-indicator:before{background:#e0e0e0;content:"";height:2px;left:40px;position:absolute;right:40px;top:50px;z-index:0}.step{flex:1 1;flex-direction:column;position:relative;z-index:1}.step,.step-number{align-items:center;display:flex}.step-number{background:#e0e0e0;border-radius:50%;color:#999;font-weight:700;height:40px;justify-content:center;margin-bottom:8px;transition:all .3s ease;width:40px}.step.active .step-number{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 12px #667eea66;color:#fff}.step-label{color:#666;font-size:.85rem;margin-top:5px;text-align:center}.step.active .step-label{color:#667eea;font-weight:600}.alert{animation:fadeIn .3s ease-out;border-radius:10px;font-size:.95rem;margin:20px 30px;padding:15px 20px}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.alert-error{background:#fee;border-left:4px solid #c33;color:#c33}.alert-success{background:#efe;border-left:4px solid #3c3;color:#3c3}.portal-form{padding:30px 40px 40px}.form-step{animation:fadeInStep .4s ease-out}@keyframes fadeInStep{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.form-step h2{color:#333;font-size:1.8rem;font-weight:600;margin-bottom:25px}.form-step h3{color:#555;font-size:1.3rem;font-weight:600;margin:25px 0 15px}.form-group{margin-bottom:20px}.form-group label{color:#555;display:block;font-size:.95rem;font-weight:500;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{border:2px solid #e0e0e0;border-radius:10px;font-family:inherit;font-size:1rem;padding:12px 15px;transition:all .3s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input::placeholder{color:#999}.form-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.checkbox-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin-top:10px}.checkbox-label{align-items:center;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;font-size:.9rem;gap:8px;padding:10px;transition:all .2s ease}.checkbox-label:hover{background:#f8f9ff;border-color:#667eea}.checkbox-label input[type=checkbox]{accent-color:#667eea;cursor:pointer;width:auto}.checkbox-label input[type=checkbox]:checked+span{color:#667eea;font-weight:600}.consent-section{background:#f8f9fa;border-radius:12px;margin-bottom:20px;padding:20px}.consent-section h3{color:#333;margin-bottom:15px;margin-top:0}.consent-section .checkbox-label{background:#fff;border:2px solid #e0e0e0;margin-bottom:10px}.consent-section .checkbox-label:hover{border-color:#667eea}.terms-section{background:#f8f9ff;border:2px solid #667eea;border-radius:12px;margin:20px 0;padding:20px}.terms-section .checkbox-label{background:#0000;border:none;padding:0}.terms-section .checkbox-label.required{font-weight:500}.terms-section a{color:#667eea;font-weight:600;text-decoration:none}.terms-section a:hover{text-decoration:underline}.info-box{background:#fff3cd;border-left:4px solid #ffc107;border-radius:8px;color:#856404;font-size:.9rem;margin:20px 0;padding:15px}.info-box strong{color:#533f03}.btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-family:inherit;font-size:1rem;font-weight:600;gap:8px;justify-content:center;padding:14px 30px;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 15px #667eea66;color:#fff}.btn-primary:hover:not(:disabled){box-shadow:0 6px 20px #667eea80;transform:translateY(-2px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.btn-secondary{background:#fff;border:2px solid #667eea;color:#667eea}.btn-secondary:hover:not(:disabled){background:#667eea;color:#fff}.btn-large{font-size:1.1rem;padding:16px 40px;width:100%}.button-group{display:flex;gap:15px;margin-top:30px}.button-group .btn{flex:1 1}.debug-info{background:#f5f5f5;border-radius:8px;font-family:Courier New,monospace;margin:20px 0;padding:15px}.debug-info details{cursor:pointer}.debug-info summary{color:#667eea;font-weight:700;margin-bottom:10px}.debug-info pre{background:#fff;border:1px solid #ddd;border-radius:5px;font-size:.85rem;overflow-x:auto;padding:10px}.portal-footer{background:#f8f9fa;border-top:1px solid #e0e0e0;color:#666;font-size:.9rem;padding:20px 30px;text-align:center}.portal-footer p{margin:8px 0}.portal-footer a{color:#667eea;font-weight:600;text-decoration:none}.portal-footer a:hover{text-decoration:underline}.small-text{color:#999;font-size:.8rem}@media (max-width:768px){.portal-container{border-radius:15px;margin:10px}.portal-header{padding:20px}.logo h1{font-size:2rem}.welcome-text{font-size:1rem}.progress-indicator{padding:20px 20px 15px}.step-label{font-size:.75rem}.portal-form{padding:20px}.form-step h2{font-size:1.5rem}.checkbox-grid,.form-row{grid-template-columns:1fr}.button-group{flex-direction:column}.button-group .btn{width:100%}.portal-footer{padding:15px 20px}}@media (max-width:480px){.captive-portal{padding:10px}.logo h1{font-size:1.8rem}.step-number{font-size:.9rem;height:35px;width:35px}.step-label{display:none}.form-group input,.form-group select{font-size:16px}.btn{font-size:.95rem;padding:12px 20px}}.pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.shake{animation:shake .5s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake{10%,90%{transform:translateX(-1px)}20%,80%{transform:translateX(2px)}30%,50%,70%{transform:translateX(-4px)}40%,60%{transform:translateX(4px)}}.btn-primary:disabled{overflow:hidden;position:relative}.btn-primary:disabled:after{animation:loading 1.5s infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;width:100%}@keyframes loading{to{left:100%}}.text-center{text-align:center}.mt-10{margin-top:10px}.mt-20{margin-top:20px}.mb-10{margin-bottom:10px}.mb-20{margin-bottom:20px}.hidden{display:none}.visible{display:block}
/*# sourceMappingURL=main.b015fff6.css.map*/