@import"https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800;900&display=swap";@import"https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--green: #0eb882;--green-dark: #0a9468;--green-light: #e6f9f3;--dark: #2d3748;--muted: #718096;--border: #e8edf3;--bg: #f0f4f8;--white: #ffffff;--radius: 20px;--shadow: 0 20px 60px rgba(0,0,0,.12)}html,body{height:100%;font-family:Outfit,sans-serif;background-color:var(--bg);display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem}body:before,body:after{content:"";position:fixed;border-radius:50%;pointer-events:none;z-index:0}body:before{width:180px;height:180px;background:#0eb882;top:-60px;right:-40px;opacity:.5;border-radius:40% 60% 55% 45%/50% 45% 55% 50%}body:after{width:200px;height:200px;background:#0aa872;bottom:-70px;left:-50px;opacity:.35;border-radius:55% 45% 40% 60%/45% 55% 50% 50%}.auth-card{position:relative;z-index:1;display:flex;width:90%;max-width:1100px;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;background:var(--white);animation:cardIn .5s cubic-bezier(.22,1,.36,1) both}@keyframes cardIn{0%{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:none}}.auth-panel{width:45%;flex-shrink:0;background:linear-gradient(145deg,#11c98e,#0aa872);color:var(--white);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2.5rem;position:relative;overflow:hidden;text-align:center}.auth-panel:before,.auth-panel:after{content:"";position:absolute;border:2px solid rgba(255,255,255,.25);transform:rotate(45deg);border-radius:4px}.auth-panel:before{width:70px;height:70px;top:40px;right:30px}.auth-panel:after{width:40px;height:40px;bottom:80px;left:25px}.auth-panel__circle{position:absolute;bottom:-60px;left:-60px;width:200px;height:200px;border-radius:50%;background:#ffffff1f}.auth-panel__logo{font-size:1.1rem;font-weight:900;letter-spacing:-.5px;margin-bottom:3rem;align-self:flex-start;color:var(--white);text-decoration:none;display:flex;align-items:center;gap:.4rem}.auth-panel__logo-box{width:32px;height:32px;border:2px solid rgba(255,255,255,.7);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:900}.auth-panel h2{font-size:1.85rem;font-weight:900;line-height:1.2;margin-bottom:1rem}.auth-panel p{font-size:.875rem;opacity:.88;line-height:1.65;margin-bottom:2.5rem}.auth-panel__btn{display:inline-block;padding:.7rem 2.2rem;border:2px solid rgba(255,255,255,.9);border-radius:999px;color:var(--white);font-size:.8rem;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;text-decoration:none;transition:background .2s,color .2s}.auth-panel__btn:hover{background:var(--white);color:var(--green)}.auth-form-panel{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 3.5rem}.auth-form-panel h1{font-size:1.75rem;font-weight:900;color:var(--green);margin-bottom:.35rem;letter-spacing:-.5px}.auth-subtitle{font-size:.825rem;color:var(--muted);margin-bottom:1.75rem}.auth-alert{width:100%;background:#fff5f5;border:1px solid #feb2b2;color:#c53030;padding:.7rem 1rem;border-radius:10px;font-size:.8rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.auth-form{width:100%;display:flex;flex-direction:column;gap:.85rem}.auth-field{position:relative}.auth-field>i{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#b0bec8;font-size:.85rem;pointer-events:none;z-index:1}.auth-field input{width:100%;padding:.85rem 1rem .85rem 2.7rem;border:1.5px solid var(--border);border-radius:10px;font-family:Nunito,sans-serif;font-size:.875rem;color:var(--dark);background:#f7f9fc;outline:none;transition:border-color .2s,background .2s;display:block}.auth-field input:focus{border-color:var(--green);background:var(--white)}.auth-field input::placeholder{color:#b0bec8}.auth-field--password input{padding-right:3rem}.auth-eye{position:absolute;right:.85rem;top:50%;transform:translateY(-50%);color:#b0bec8;font-size:.9rem;cursor:pointer;background:none;border:none;padding:0;line-height:1;display:flex;align-items:center;justify-content:center;z-index:2;transition:color .2s}.auth-eye:hover{color:var(--green)}.auth-eye i{pointer-events:none}.auth-roles{display:flex;gap:.75rem;width:100%}.auth-role{flex:1}.auth-role input[type=radio]{display:none}.auth-role-lbl{display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.7rem;border:1.5px solid var(--border);border-radius:10px;font-size:.8rem;font-weight:700;color:var(--muted);cursor:pointer;background:#f7f9fc;transition:all .2s}.auth-role input:checked+.auth-role-lbl{border-color:var(--green);background:var(--green-light);color:var(--green-dark)}.auth-row{display:flex;align-items:center;justify-content:space-between;font-size:.78rem}.auth-row label{display:flex;align-items:center;gap:.4rem;color:var(--muted);cursor:pointer}.auth-row a{color:var(--green);font-weight:700;text-decoration:none}.auth-row a:hover{text-decoration:underline}.auth-submit{width:100%;padding:.9rem;background:linear-gradient(135deg,#11c98e,#0aa872);color:var(--white);border:none;border-radius:999px;font-family:Nunito,sans-serif;font-size:.85rem;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:opacity .2s,transform .15s;margin-top:.5rem;box-shadow:0 6px 20px #0eb88259}.auth-submit:hover{opacity:.92;transform:translateY(-1px)}.auth-link{font-size:.8rem;color:var(--muted);margin-top:1.25rem;text-align:center}.auth-link a{color:var(--green);font-weight:800;text-decoration:none}.auth-link a:hover{text-decoration:underline}@media(max-width:680px){body{padding:2rem 0rem 0rem;align-items:flex-start}.auth-card{flex-direction:column;max-width:100%;min-height:unset}.auth-panel{width:100%;padding:2rem;min-height:180px;flex-direction:row;flex-wrap:wrap;justify-content:space-between;text-align:left}.auth-panel p{display:none}.auth-panel h2{font-size:1.3rem;margin-bottom:0}.auth-panel__circle{display:none}.auth-form-panel{padding:2rem 1.5rem}}@media(max-width:400px)and (min-width:220px){.auth-card{width:100%;padding:.1rem}}
