*{box-sizing:border-box;margin:0;padding:0}body{background:linear-gradient(135deg,#223759 0%,#1f3f65 50%,#1b4878 100%);min-height:100vh;font-family:Inter,sans-serif}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.card-hover:hover{transform:translateY(-4px);box-shadow:0 20px 40px #d4af3726}@keyframes toastIn{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}@keyframes toastOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100px)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:16px;width:95%;max-width:500px;max-height:90vh;padding:32px;animation:.2s slideUp;overflow-y:auto}.btn-gold{color:#fff;cursor:pointer;background:linear-gradient(135deg,#d4af37 0%,#b8972f 100%);border:none;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:opacity .2s}.btn-gold:hover{opacity:.9}.btn-gold:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{color:#333;cursor:pointer;background:#f0f0f0;border:1px solid #ddd;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:500;transition:background .2s}.btn-secondary:hover{background:#e0e0e0}.dark-bg .btn-secondary{color:#fff;background:#ffffff26;border:1px solid #fff3}.dark-bg .btn-secondary:hover{background:#ffffff40}.btn-danger{color:#fff;cursor:pointer;background:#dc3545;border:none;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:500;transition:opacity .2s}.btn-danger:hover{opacity:.9}.toggle-switch{cursor:pointer;background:#ccc;border-radius:13px;width:48px;height:26px;transition:background .2s;position:relative}.toggle-switch.active{background:#28a745}.toggle-switch:after{content:"";background:#fff;border-radius:50%;width:22px;height:22px;transition:left .2s;position:absolute;top:2px;left:2px;box-shadow:0 2px 4px #0003}.toggle-switch.active:after{left:24px}.badge{text-transform:uppercase;border-radius:12px;padding:2px 10px;font-size:11px;font-weight:600;display:inline-block}.badge-admin{color:#1a1a2e;background:#d4af37}.badge-agente{color:#fff;background:#0d6efd}.badge-collaboratore{color:#fff;background:#6c757d}@media (width<=768px){.modal{width:95%;margin:10px;padding:24px}.landing-nav{padding:16px 20px!important}.landing-nav h1{font-size:22px!important}.landing-hero{padding:48px 20px!important}.landing-hero p{font-size:16px!important}h3.landing-title{font-size:26px!important}.landing-section{padding:72px 20px!important}.landing-stats-grid,.landing-features-grid,.landing-cta-grid{grid-template-columns:1fr!important}.landing-steps-grid{grid-template-columns:1fr 1fr!important}.landing-hero-buttons{flex-direction:column;align-items:center}.landing-hero-buttons a,.landing-hero-buttons button{text-align:center;width:100%;max-width:300px}.landing-badges{gap:12px!important}.landing-badges>div{padding:8px 14px!important}.landing-badges span{font-size:12px!important}.landing-badges svg{width:18px!important;height:18px!important}.login-card{padding:36px 32px!important}}@media (width<=480px){.modal{border-radius:12px;padding:20px}.btn-gold,.btn-secondary,.btn-danger{padding:8px 16px;font-size:13px}.landing-nav{padding:14px 16px!important}.landing-nav h1{font-size:18px!important}.landing-hero{padding:36px 16px!important}h3.landing-title{font-size:22px!important}.landing-section{padding:56px 16px!important}.landing-steps-grid{grid-template-columns:1fr!important}.landing-impact-text{font-size:16px!important}.landing-impact-number{font-size:22px!important}.landing-badges{gap:8px!important}.landing-badges>div{padding:6px 10px!important}.landing-badges span{font-size:11px!important}.landing-badges svg{width:16px!important;height:16px!important}.login-card{border-radius:16px!important;padding:28px 24px!important}.login-card h1{font-size:24px!important}.login-tagline h2{font-size:18px!important}.login-tagline p{font-size:13px!important}}
