:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-width:100vw;min-height:100vh}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:100vw;min-height:100vh}#root{min-width:100vw;min-height:100vh;text-align:center}.dashboard-layout{display:flex;flex-direction:column;height:100vh;width:100vw;font-family:sans-serif}.top-bar{height:60px;background-color:#1f2937;color:#fff;display:flex;align-items:center;padding:0 1.5rem;font-size:1.2rem;font-weight:700;box-shadow:0 2px 4px #0000001a}.main-content{flex:1;display:flex;min-height:0}.sidebar{width:220px;background-color:#111827;color:#fff;padding:1rem;box-sizing:border-box}.sidebar nav ul{list-style:none;padding:0;margin:0}.sidebar nav li{margin:1rem 0}.sidebar nav a{color:#cbd5e1;text-decoration:none;font-weight:500;display:block;padding:.5rem 1rem;border-radius:6px;transition:background-color .2s}.sidebar nav a.active{background-color:#2563eb;color:#fff}.sidebar nav a:hover{background-color:#374151}.content{flex:1;padding:2rem;background-color:#f9fafb;overflow-y:auto}.dashboard-container{padding:40px;max-width:1200px;margin:0 auto;color:#000}.dashboard-title{font-size:2.5rem;margin-bottom:10px}.dashboard-subtitle{color:#666;margin-bottom:40px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:40px}.stat-card{padding:20px;border:1px solid #ddd;border-radius:8px;text-align:center}.stat-value{font-size:2rem;margin:10px 0}.stat-value.hours{color:#007bff}.stat-value.earnings{color:#28a745}.stat-value.clients{color:#ffc107}.stat-value.projects{color:#dc3545}.actions{text-align:center}.btn{padding:12px 24px;border-radius:6px;font-size:16px;cursor:pointer;margin-right:10px}.btn.primary{background-color:#007bff;color:#fff;border:none}.btn.secondary{background-color:transparent;color:#007bff;border:2px solid #007bff}.account-container{max-width:600px;margin:2rem auto;padding:2rem;font-family:Arial,sans-serif;color:#333}.subtitle{color:#666;margin-bottom:1.5rem}.account-card{background-color:#fff;padding:1.5rem;border-radius:10px;box-shadow:0 2px 6px #0000000d}.account-card p{margin:.5rem 0}.button-group{margin-top:1.5rem}.edit-btn,.logout-btn{border:none;padding:.6rem 1.2rem;border-radius:5px;cursor:pointer;font-size:.9rem}.edit-btn{background-color:#007bff;color:#fff}.logout-btn{background-color:#ff4d4d;color:#fff;margin-left:1rem}.edit-btn:hover{background-color:#0056b3}.logout-btn:hover{background-color:#c00}body.modal-open{overflow:hidden}.recovery-modal-overlay{position:fixed;inset:0;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:recovery-fade-in .3s ease-out}.recovery-modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 50px #00000040;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;animation:recovery-slide-in .3s ease-out;position:relative}.recovery-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px 15px;border-bottom:1px solid #e9ecef;position:sticky;top:0;background:#fff;border-radius:12px 12px 0 0;z-index:1}.recovery-modal-title{color:#333;margin:0;font-size:1.5rem;font-weight:600}.recovery-close-btn{background:none;border:none;font-size:2rem;cursor:pointer;color:#666;padding:0;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.recovery-close-btn:hover{background-color:#f5f5f5;color:#333;transform:scale(1.1)}.recovery-modal-body{padding:30px}.recovery-modal-description{color:#666;margin:0 0 30px;text-align:center;font-size:.95rem;line-height:1.5}.recovery-codes-grid{display:flex;gap:20px;justify-content:center;margin-bottom:30px;flex-wrap:wrap}.recovery-codes-column{flex:1;min-width:200px;background-color:#f8f9fa;padding:20px;border-radius:8px;border:1px solid #e9ecef}.recovery-code-item{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;padding:8px 0;border-bottom:1px solid #dee2e6;text-align:center;font-weight:500;color:#495057;-webkit-user-select:all;user-select:all;cursor:pointer;transition:all .2s ease}.recovery-code-item:last-child{border-bottom:none}.recovery-code-item:hover{background-color:#007bff1a;color:#007bff;padding-left:8px;padding-right:8px;margin:0 -8px;border-radius:4px}.recovery-actions{display:flex;gap:10px;justify-content:center;margin-bottom:30px;flex-wrap:wrap}.recovery-btn{display:flex;align-items:center;gap:8px;padding:12px 20px;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;min-width:100px;justify-content:center}.recovery-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.recovery-btn:active{transform:translateY(0)}.recovery-btn-primary{background-color:#007bff;color:#fff}.recovery-btn-primary:hover{background-color:#0056b3}.recovery-btn-primary.copied{background-color:#28a745}.recovery-btn-primary.copied:hover{background-color:#1e7e34}.recovery-btn-success{background-color:#28a745;color:#fff}.recovery-btn-success:hover{background-color:#1e7e34}.recovery-btn-secondary{background-color:#6c757d;color:#fff}.recovery-btn-secondary:hover{background-color:#545b62}.recovery-warning{background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;padding:15px;margin-bottom:20px}.recovery-warning p{margin:0;font-size:14px;color:#856404;font-weight:500;line-height:1.4}.recovery-modal-footer{padding:20px 30px;text-align:center;border-top:1px solid #e9ecef;position:sticky;bottom:0;background:#fff;border-radius:0 0 12px 12px}.recovery-done-btn{padding:15px 40px;background-color:#28a745;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:16px;font-weight:600;transition:all .2s ease;min-width:120px}.recovery-done-btn:hover{background-color:#1e7e34;transform:translateY(-1px);box-shadow:0 4px 12px #28a7454d}.recovery-done-btn:active{transform:translateY(0)}@keyframes recovery-fade-in{0%{opacity:0}to{opacity:1}}@keyframes recovery-slide-in{0%{transform:translateY(-50px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@media (max-width: 768px){.recovery-modal-content{width:95%;max-height:95vh;margin:10px}.recovery-modal-header,.recovery-modal-body,.recovery-modal-footer{padding-left:20px;padding-right:20px}.recovery-modal-body{padding-top:20px;padding-bottom:20px}.recovery-codes-grid{flex-direction:column;gap:15px}.recovery-codes-column{min-width:100%}.recovery-actions{flex-direction:column;align-items:center}.recovery-btn,.recovery-done-btn{width:100%;max-width:200px}.recovery-modal-title{font-size:1.25rem}}@media (max-width: 480px){.recovery-modal-header,.recovery-modal-body,.recovery-modal-footer{padding-left:15px;padding-right:15px}.recovery-codes-column{padding:15px}.recovery-code-item{font-size:12px;padding:6px 0}}.page-container{display:flex;flex-direction:column;min-height:100vh;min-width:100vw;font-family:sans-serif}.navbar{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background-color:#1e1e1e;color:#fff}.logo{font-size:1.5rem;font-weight:700}.nav-buttons button{margin-left:1rem;padding:.5rem 1rem;background:#fff;color:#222;border:none;border-radius:4px;cursor:pointer}.hero{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center}.hero h1{font-size:2.5rem;margin-bottom:1rem}.hero p{font-size:1.1rem;max-width:600px;margin-bottom:2rem}.hero-buttons button{padding:.75rem 1.5rem;font-size:1rem;background:#007bff;color:#fff;border:none;border-radius:6px;cursor:pointer}.footer{background-color:#1e1e1e;text-align:center;padding:1rem;font-size:.9rem}.skeleton{background:linear-gradient(90deg,#eee 25%,#f5f5f5 37%,#eee 63%);background-size:400% 100%;animation:shimmer 1.4s ease infinite;border-radius:6px}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton-input{height:2.5rem;width:100%;margin-bottom:.5rem}.skeleton-btn{height:2.5rem;width:100px}.auth-form-container{min-height:100vh;min-width:100vw;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.auth-form{background:#fff;padding:2.5rem;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:100%;max-width:400px}.auth-header{text-align:center;margin-bottom:2rem}.auth-header h2{margin:0 0 .5rem;font-size:1.75rem;font-weight:700;color:#1f2937}.auth-header p{margin:0;color:#6b7280;font-size:.95rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#374151;font-size:.9rem}.form-group input{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;transition:all .2s ease;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled{background-color:#f9fafb;color:#6b7280;cursor:not-allowed}.form-help{display:block;margin-top:.25rem;font-size:.8rem;color:#6b7280}.error-message{background-color:#fef2f2;color:#dc2626;padding:.75rem;border-radius:6px;font-size:.875rem;margin-bottom:1rem;border:1px solid #fecaca}.success-message{background-color:#f0fdf4;color:#16a34a;padding:.75rem;border-radius:6px;font-size:.875rem;margin-bottom:1rem;border:1px solid #bbf7d0}.submit-btn{width:100%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.875rem 1rem;border:none;border-radius:6px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease}.submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #667eea4d}.submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.auth-footer{text-align:center;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.auth-footer p{margin:0;color:#6b7280;font-size:.9rem}.link-btn{background:none;border:none;color:#667eea;cursor:pointer;font-weight:500;text-decoration:underline;padding:0}.link-btn:hover:not(:disabled){color:#4f46e5}.link-btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 480px){.auth-form-container{padding:1rem}.auth-form{padding:2rem}.auth-header h2{font-size:1.5rem}}
