:root{--main-green: #2D4A1E;--deep-green: #005212;--mid-green: #74A03E;--lime-green: #A4BD3E;--light-bg: #f8faf7;--white: #ffffff;--gray-text: #666666;--dark-text: #1a1a1a;--transition: all .4s cubic-bezier(.165, .84, .44, 1);--border-radius: 20px;--box-shadow: 0 20px 40px rgba(0, 0, 0, .05);--glass: rgba(255, 255, 255, .9);--primary: var(--main-green);--error: #ef4444;--success: var(--mid-green);--text: var(--dark-text);--bg: var(--light-bg);--bg-hover: var(--deep-green)}body{margin:0;color:var(--text);background:linear-gradient(135deg,var(--light-bg) 0%,#ffffff 100%);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;line-height:1.6}.auth-container{min-height:100vh;display:grid;place-items:center;padding:2rem;background:linear-gradient(135deg,#f0f7ed 0%,var(--light-bg) 100%);position:relative;overflow:hidden}.auth-container:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--lime-green),var(--mid-green),var(--main-green));z-index:1}.auth-card{width:100%;max-width:420px;padding:2.5rem;background:var(--white);border-radius:var(--border-radius);box-shadow:0 10px 40px #2d4a1e1a,0 0 0 2px #a4bd3e1a,inset 0 1px #fffc;border:2px solid rgba(116,160,62,.3);position:relative;z-index:2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:translateY(0);transition:var(--transition)}.auth-card:hover{box-shadow:0 20px 60px #2d4a1e26,0 0 0 2px #a4bd3e33;transform:translateY(-2px)}.auth-card:after{content:"";position:absolute;inset:-2px;border-radius:calc(var(--border-radius) + 2px);background:linear-gradient(45deg,transparent 0%,rgba(164,189,62,.1) 25%,rgba(116,160,62,.2) 50%,rgba(164,189,62,.1) 75%,transparent 100%);z-index:-1;opacity:0;transition:opacity .4s ease}.auth-card:hover:after{opacity:1}h2{margin-top:0;margin-bottom:2rem;text-align:center;color:var(--main-green);font-size:1.75rem;font-weight:700;letter-spacing:-.5px;position:relative;padding-bottom:1rem}h2:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:60px;height:3px;background:linear-gradient(90deg,var(--lime-green),var(--mid-green));border-radius:2px}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:600;color:var(--main-green);text-transform:uppercase;letter-spacing:.5px}.auth-form input{width:100%;padding:.875rem 1rem;border:2px solid rgba(116,160,62,.3);border-radius:12px;font-size:1rem;background-color:var(--white);color:var(--dark-text);transition:var(--transition);box-sizing:border-box}.auth-form input:focus{outline:none;border-color:var(--mid-green);background-color:#74a03e0d;box-shadow:0 0 0 3px #74a03e1a}.auth-form input:hover{border-color:var(--lime-green)}.auth-form>button[type=submit]{width:100%;padding:1rem;background:linear-gradient(135deg,var(--main-green),var(--deep-green));color:var(--white);border:none;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;margin-top:1rem;transition:var(--transition);position:relative;overflow:hidden}.auth-form>button[type=submit]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .7s ease}.auth-form>button[type=submit]:hover{background:linear-gradient(135deg,var(--deep-green),var(--main-green));transform:translateY(-1px);box-shadow:0 10px 20px #2d4a1e33}.auth-form>button[type=submit]:hover:before{left:100%}.auth-form>button[type=submit]:active{transform:translateY(0)}.auth-switch{text-align:center;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(116,160,62,.2)}.auth-switch a{color:var(--mid-green);text-decoration:none;font-weight:600;transition:var(--transition);position:relative}.auth-switch a:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--lime-green);transition:width .3s ease}.auth-switch a:hover{color:var(--deep-green)}.auth-switch a:hover:after{width:100%}#auth-status{padding:1.25rem;border-radius:12px;margin-top:1.5rem;text-align:center;font-weight:500;border:2px solid transparent;box-shadow:0 4px 12px #0000000d;transition:var(--transition);background:var(--white)}#auth-status.success{background-color:#74a03e1a;color:var(--main-green);border-color:var(--mid-green)}#auth-status.error{background-color:#ef44441a;color:var(--error);border-color:var(--error)}#auth-status:hover{transform:translateY(-1px);box-shadow:0 8px 24px #00000014}.spinner{display:inline-block;width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:var(--white);animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.hidden{display:none}.password-wrapper{position:relative}.password-wrapper input[type=password],.password-wrapper input[type=text]{width:100%;padding-right:3rem;box-sizing:border-box}.password-toggle{position:absolute;top:50%;right:1rem;transform:translateY(-50%);background:none;border:none;padding:0;margin:0;cursor:pointer;color:var(--gray-text);line-height:1;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:var(--transition)}.password-toggle:hover{color:var(--mid-green);background:#74a03e1a}.password-toggle:focus{outline:none;box-shadow:0 0 0 2px #74a03e4d}.auth-feedback{padding:1rem;margin:1rem 0;border-radius:8px;border:2px solid;background:var(--white);transition:var(--transition)}.auth-feedback.success{background:#74a03e1a;border-color:var(--mid-green);color:var(--main-green)}.auth-feedback.error{background:#ef44441a;border-color:var(--error);color:var(--error)}.form-alert{padding:1.25rem;margin-bottom:1.5rem;border-radius:12px;font-weight:500;border:2px solid transparent;box-shadow:0 4px 12px #0000000d;transition:var(--transition);background:var(--white)}.form-alert.success{background-color:#74a03e1a;color:var(--main-green);border-color:var(--mid-green)}.form-alert.error{background-color:#ef44441a;color:var(--error);border-color:var(--error)}#signup-product-package{width:100%;padding:.875rem 3rem .875rem 1rem;border:2px solid rgba(116,160,62,.3);border-radius:12px;font-size:1rem;font-weight:500;background-color:var(--white);color:var(--dark-text)!important;cursor:pointer;transition:var(--transition);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%2374A03E' viewBox='0 0 16 16'%3E%3Cpath d='M7.247 11.14 2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:16px}#signup-product-package:focus{outline:none;border-color:var(--mid-green);background-color:#74a03e0d;box-shadow:0 0 0 3px #74a03e1a}#signup-product-package:hover{border-color:var(--lime-green);background-color:#74a03e08}.input-error{color:#dc2626!important;font-size:.875rem;margin-top:.25rem;font-weight:500}.auth-form input:invalid:not(:focus):not(:placeholder-shown){border-color:var(--error);background-color:#ef44440d}@media (max-width: 768px){.auth-container{padding:1rem}.auth-card{padding:2rem;border-radius:16px}h2{font-size:1.5rem}.auth-form input,#signup-product-package{padding:.75rem}}@media (max-width: 480px){.auth-card{padding:1.5rem;max-width:100%}h2{font-size:1.25rem}}.auth-card:before{content:"";position:absolute;top:20px;right:20px;width:40px;height:40px;background:linear-gradient(135deg,#a4bd3e1a,#74a03e33);border-radius:50%;z-index:-1}
