:root{--color-primary:#002c50;--color-primary-dark:#001a2e;--color-primary-light:#003d6b;--color-accent-teal:#56a7b2;--color-accent-brown:#b28a56;--color-bg-light:#edf0f3;--color-bg-white:#fff;--color-text-light:#f5f5f5;--color-text-primary:#002c50;--color-text-secondary:#666;--color-text-muted:#999;--color-error:#dc3545;--color-success:#28a745;--color-warning:#ffc107;--color-border:#d4d4d8;--color-border-light:#e8e8eb;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.5rem;--font-size-2xl:2rem;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-relaxed:1.75;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a}body{background-color:var(--color-bg-light);color:var(--color-text-primary);line-height:var(--line-height-normal);justify-content:center;align-items:center;min-height:100vh;display:flex}.container{width:100%;max-width:600px;padding:var(--spacing-sm)}.auth-wrapper{width:100%}.auth-card{background-color:var(--color-bg-white);border-radius:var(--radius-lg);padding:var(--spacing-lg) var(--spacing-md);box-shadow:var(--shadow-lg)}.form-header{margin-bottom:var(--spacing-sm)}.logo-container{margin-bottom:var(--spacing-md);padding:var(--spacing-md);background-color:var(--color-bg-light);border-radius:var(--radius-lg);justify-content:center;display:flex}.logo{width:650px;max-width:100%;height:auto;display:block}.form-title{color:var(--color-primary);margin-bottom:var(--spacing-lg);text-align:center;font-size:3rem}.form-toggle{gap:var(--spacing-sm);border-bottom:2px solid var(--color-border-light);background-color:var(--color-text-light);border-radius:var(--radius-md);padding:var(--spacing-xs);display:flex}.toggle-btn{padding:var(--spacing-md) var(--spacing-lg);color:var(--color-text-secondary);font-size:var(--font-size-base);cursor:pointer;border-radius:var(--radius-md);background-color:#0000;border:none;flex:1;font-weight:600;transition:all .3s}.toggle-btn.active{background-color:var(--color-bg-white);color:var(--color-primary);box-shadow:var(--shadow-sm)}.toggle-btn:hover:not(.active){color:var(--color-text-primary)}.form-container{display:none}.form-container.active{animation:.3s slideIn;display:block}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.form-group{margin-bottom:var(--spacing-md)}.form-group label{color:var(--color-text-primary);margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.5px;font-size:.875rem;font-weight:600;display:block}.form-group input{width:100%;padding:var(--spacing-md) var(--spacing-lg);border:2px solid var(--color-border-light);border-radius:var(--radius-md);color:var(--color-text-primary);background-color:var(--color-bg-white);font-size:1rem;transition:all .2s}.form-group input::placeholder{color:var(--color-text-muted)}.form-group input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #002c501a}.form-group input:invalid:not(:placeholder-shown){border-color:var(--color-error)}.form-group input:valid:not(:placeholder-shown){border-color:var(--color-accent-teal)}.error-message{margin-top:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-error);min-height:1.2rem;display:block}.password-requirements{margin-top:var(--spacing-md);padding:var(--spacing-md);background-color:var(--color-bg-light);border-radius:var(--radius-md);border-left:3px solid var(--color-accent-teal)}.password-requirements p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.password-requirements ul{list-style:none}.password-requirements li{font-size:var(--font-size-sm);color:var(--color-text-secondary);padding:var(--spacing-xs) 0;padding-left:var(--spacing-lg);position:relative}.password-requirements li:before{content:"○";color:var(--color-accent-teal);position:absolute;left:0}.password-requirements li.met{color:var(--color-success)}.password-requirements li.met:before{content:"✓";color:var(--color-success)}.btn{width:100%;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);cursor:pointer;text-transform:uppercase;letter-spacing:.5px;border:none;font-size:1rem;font-weight:600;transition:all .3s}.btn-primary{background-color:var(--color-primary);color:var(--color-bg-white);box-shadow:var(--shadow-md)}.btn-primary:hover{background-color:var(--color-primary-dark);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn-primary:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.btn-primary:disabled{background-color:var(--color-text-muted);cursor:not-allowed;box-shadow:var(--shadow-sm)}.success-message{margin-top:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg);color:#155724;border-radius:var(--radius-md);border-left:3px solid var(--color-success);font-size:var(--font-size-sm);background-color:#d4edda;animation:.3s slideIn;display:none}.success-message.show{display:block}@media (width<=640px){.auth-card{padding:var(--spacing-xl) var(--spacing-lg)}.form-title{font-size:var(--font-size-xl)}.toggle-btn{padding:var(--spacing-md);font-size:var(--font-size-sm)}}
