:root{--brand-copper: #C7844D;--brand-copper-light: #FFF8F0;--brand-copper-dark: #9E5A2A;--brand-copper-gradient: linear-gradient(135deg, #C7844D 0%, #D4995F 100%);--brand-gold: #D4995F;--color-success: #10B981;--color-success-bg: #D1FAE5;--color-warning: #F59E0B;--color-warning-bg: #FEF3C7;--color-error: #EF4444;--color-error-bg: #FEE2E2;--color-info: #3B82F6;--color-gray-50: #F9FAFB;--color-gray-100: #F3F4F6;--color-gray-200: #E5E7EB;--color-gray-300: #D1D5DB;--color-gray-400: #9CA3AF;--color-gray-500: #6B7280;--color-gray-600: #4B5563;--color-gray-700: #374151;--color-gray-800: #1F2937;--color-gray-900: #111827;--transition-fast: .15s;--transition-normal: .25s;--transition-slow: .4s;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-glow: 0 0 20px rgba(199, 132, 77, .15)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.6;color:var(--color-gray-900);background:var(--color-gray-50);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.auth-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background:linear-gradient(135deg,#fff5eb,#ffe4cc,#ffd4b3,#ffe4cc,#fff5eb);background-size:400% 400%;animation:gradientShift 15s ease infinite;position:relative;overflow:hidden}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.auth-container:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 20% 50%,rgba(199,132,77,.03) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(212,153,95,.03) 0%,transparent 50%);pointer-events:none}.auth-card{position:relative;width:100%;max-width:460px;background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:20px;border:1px solid rgba(255,255,255,.6);box-shadow:var(--shadow-xl),var(--shadow-glow);padding:48px;animation:slideInUp var(--transition-slow) ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.auth-card{padding:36px 28px;border-radius:16px}}.auth-header{text-align:center;margin-bottom:36px}.auth-header h1{font-family:Oswald,system-ui,sans-serif;font-size:36px;font-weight:700;background:var(--brand-copper-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:10px;letter-spacing:-.8px;animation:fadeIn var(--transition-normal) ease-out}.auth-subtitle{font-size:15px;color:var(--color-gray-600);font-weight:400;letter-spacing:.01em;animation:fadeIn var(--transition-normal) ease-out .1s backwards}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}form{width:100%}.form-group{margin-bottom:24px}.form-group label{display:block;font-size:14px;font-weight:600;color:var(--color-gray-700);margin-bottom:8px;letter-spacing:.01em}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password]{width:100%;padding:12px 16px;font-size:15px;border:2px solid var(--color-gray-200);border-radius:10px;background:#fff;color:var(--color-gray-900);transition:all var(--transition-normal) ease;font-weight:400}.form-group input:hover{border-color:var(--color-gray-300)}.form-group input:focus{outline:none;border-color:var(--brand-copper);box-shadow:0 0 0 4px #c7844d1a,0 1px 3px #0000001a;transform:translateY(-1px)}.form-group input::placeholder{color:var(--color-gray-400);font-weight:400}.password-wrapper{position:relative}.password-wrapper input{padding-right:52px}.toggle-password{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:8px;color:var(--color-gray-400);transition:all var(--transition-fast) ease;display:flex;align-items:center;justify-content:center;border-radius:6px}.toggle-password:hover{color:var(--brand-copper);background:var(--color-gray-50)}.toggle-password:active{transform:translateY(-50%) scale(.95)}.toggle-password .eye-icon{width:20px;height:20px}.password-strength{margin-top:10px}.strength-bar{height:6px;background:var(--color-gray-200);border-radius:10px;overflow:hidden;margin-bottom:10px;position:relative}.strength-bar:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#ffffff4d,#fff0,#ffffff4d);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.strength-fill{height:100%;width:0;transition:width var(--transition-normal) cubic-bezier(.4,0,.2,1),background-color var(--transition-normal) ease;background:var(--color-gray-300);border-radius:10px;position:relative}.strength-fill[data-strength="1"]{width:33%;background:linear-gradient(90deg,#ef4444,#f87171);box-shadow:0 0 8px #ef444466}.strength-fill[data-strength="2"]{width:66%;background:linear-gradient(90deg,#f59e0b,#fbbf24);box-shadow:0 0 8px #f59e0b66}.strength-fill[data-strength="3"]{width:100%;background:linear-gradient(90deg,#10b981,#34d399);box-shadow:0 0 8px #10b98166}.password-requirements{list-style:none;padding:0;margin:0}.password-requirements li{font-size:13px;color:var(--color-gray-600);padding-left:22px;position:relative;margin-bottom:6px;transition:all var(--transition-fast) ease}.password-requirements li:before{content:"○";position:absolute;left:4px;color:var(--color-gray-400);font-size:12px;transition:all var(--transition-fast) ease}.password-requirements li.met{color:var(--color-success);font-weight:500}.password-requirements li.met:before{content:"✓";color:var(--color-success);font-weight:700;transform:scale(1.1)}.form-group-inline{margin-bottom:28px}.checkbox-label{display:flex;align-items:flex-start;font-size:14px;color:var(--color-gray-700);cursor:pointer;user-select:none;transition:all var(--transition-fast) ease;padding:4px 0}.checkbox-label:hover{color:var(--color-gray-900)}.checkbox-label input[type=checkbox]{margin-right:10px;margin-top:3px;cursor:pointer;width:18px;height:18px;flex-shrink:0;accent-color:var(--brand-copper);border-radius:4px;transition:all var(--transition-fast) ease}.checkbox-label input[type=checkbox]:focus{outline:2px solid rgba(199,132,77,.3);outline-offset:2px}.checkbox-label span{flex:1;line-height:1.5}.inline-link{color:var(--brand-copper);text-decoration:none;font-weight:600;transition:all var(--transition-fast) ease;border-bottom:1px solid transparent}.inline-link:hover{color:var(--brand-copper-dark);border-bottom-color:var(--brand-copper-dark)}.inline-link:focus{outline:2px solid rgba(199,132,77,.3);outline-offset:2px;border-radius:2px}.btn-primary{width:100%;padding:14px 24px;font-size:16px;font-weight:600;color:#fff;background:var(--brand-copper-gradient);border:none;border-radius:10px;cursor:pointer;transition:all var(--transition-normal) cubic-bezier(.4,0,.2,1);margin-bottom:16px;box-shadow:0 4px 12px #c7844d40;position:relative;overflow:hidden;letter-spacing:.02em}.btn-primary: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 .5s ease}.btn-primary:hover{background:linear-gradient(135deg,#9e5a2a,#c7844d);box-shadow:0 6px 20px #c7844d59;transform:translateY(-2px)}.btn-primary:hover:before{left:100%}.btn-primary:active{transform:translateY(0);box-shadow:0 2px 8px #c7844d40}.btn-primary:focus{outline:none;box-shadow:0 4px 12px #c7844d40,0 0 0 4px #c7844d26}.btn-primary:disabled{background:var(--color-gray-300);cursor:not-allowed;transform:none;box-shadow:none;opacity:.6}.btn-primary:disabled:before{display:none}.error-message{display:flex;align-items:flex-start;gap:12px;padding:14px 18px;background:var(--color-error-bg);border:2px solid var(--color-error);border-left-width:4px;border-radius:10px;color:var(--color-error);font-size:14px;font-weight:500;margin-bottom:24px;animation:slideInDown var(--transition-normal) ease-out,shake .5s ease-in-out;box-shadow:0 4px 12px #ef444426}@keyframes slideInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}.error-icon{width:22px;height:22px;flex-shrink:0;margin-top:1px}.success-message{display:flex;align-items:flex-start;gap:12px;padding:14px 18px;background:var(--color-success-bg);border:2px solid var(--color-success);border-left-width:4px;border-radius:10px;color:var(--color-success);font-size:14px;font-weight:500;margin-bottom:24px;animation:slideInDown var(--transition-normal) ease-out;box-shadow:0 4px 12px #10b98126}.loading-spinner{display:flex;align-items:center;justify-content:center;gap:12px;padding:14px;color:var(--color-gray-600);font-size:15px;font-weight:500;animation:pulse 1.5s ease-in-out infinite}.spinner{width:22px;height:22px;animation:spin .8s linear infinite;color:var(--brand-copper)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.auth-footer{text-align:center;font-size:14px;color:var(--color-gray-600);margin-top:28px;padding-top:28px;border-top:2px solid var(--color-gray-200);animation:fadeIn var(--transition-normal) ease-out .3s backwards}.auth-link{color:var(--brand-copper);text-decoration:none;font-weight:600;transition:all var(--transition-fast) ease;padding:2px 4px;border-radius:4px;position:relative}.auth-link:after{content:"";position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--brand-copper);transition:all var(--transition-normal) ease;transform:translate(-50%)}.auth-link:hover{color:var(--brand-copper-dark)}.auth-link:hover:after{width:100%}.auth-link:focus{outline:2px solid rgba(199,132,77,.3);outline-offset:2px}form.submitting .btn-primary{display:none}form.submitting .loading-spinner{display:flex}form:not(.submitting) .loading-spinner{display:none}input:invalid:not(:placeholder-shown):not(:focus){border-color:var(--color-error);background:#ef444405}input:valid:not(:placeholder-shown):not(:focus){border-color:var(--color-success);background:#10b98105}input:disabled{opacity:.6;cursor:not-allowed;background:var(--color-gray-100)}@media(max-width:480px){.auth-header h1{font-size:28px}.auth-subtitle{font-size:14px}.form-group label{font-size:13px}.form-group input{font-size:16px}}
