*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}.home-container{min-height:100vh;background:#fff}.hero{padding:160px 24px 128px;max-width:800px;margin:0 auto;text-align:center}.hero-title{font-size:48px;font-weight:700;color:#111827;margin-bottom:16px;line-height:1.2}.hero-subtitle{font-size:20px;color:#6b7280;margin-bottom:32px;line-height:1.75}.cta-button{background:#3b82f6;color:#fff;border:none;border-radius:12px;padding:16px 32px;font-size:18px;font-weight:500;cursor:pointer;box-shadow:0 1px 2px #0000000d;transition:all .2s ease}.cta-button:hover{background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 16px #3b82f64d}.section{padding:64px 24px;max-width:1200px;margin:0 auto}.section-title{font-size:36px;font-weight:700;color:#111827;text-align:center;margin-bottom:8px}.section-subtitle{font-size:18px;color:#6b7280;text-align:center;margin-bottom:48px}.philosophy-section{background:#f9fafb}.philosophy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.philosophy-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 2px 8px #00000014;transition:transform .2s ease,box-shadow .2s ease}.philosophy-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.card-title{font-size:20px;font-weight:600;color:#111827;margin-bottom:8px}.card-description{font-size:16px;color:#6b7280;line-height:1.75}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;max-width:1080px;margin:0 auto}.pricing-card{background:#fff;border:1px solid #E5E7EB;border-radius:16px;padding:24px;position:relative;transition:transform .2s ease,box-shadow .2s ease}.pricing-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.pricing-card.featured{border:2px solid #3B82F6;box-shadow:0 4px 16px #3b82f61a}.badge{position:absolute;top:24px;right:24px;background:#3b82f6;color:#fff;padding:4px 8px;border-radius:6px;font-size:12px;font-weight:700}.pricing-tier{font-size:18px;font-weight:600;color:#6b7280;margin-bottom:4px}.pricing-price{font-size:36px;font-weight:700;color:#111827}.pricing-period{font-size:14px;color:#6b7280;margin-bottom:24px}.feature-list{margin-bottom:24px;display:flex;flex-direction:column;gap:8px}.feature{font-size:16px;color:#111827}.pricing-button{width:100%;border:none;border-radius:12px;padding:12px 24px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s ease}.pricing-button.primary{background:#3b82f6;color:#fff}.pricing-button.primary:hover{background:#2563eb}.pricing-button.secondary{background:#f3f4f6;color:#111827;border:1px solid #E5E7EB}.pricing-button.secondary:hover{background:#e5e7eb}.footer{padding:32px 24px;text-align:center;border-top:1px solid #E5E7EB;margin-top:64px}.footer-text{font-size:14px;color:#6b7280}@media(max-width:768px){.hero-title{font-size:36px}.hero-subtitle{font-size:18px}.section-title{font-size:30px}.nav-links{gap:16px}.nav-link{font-size:14px}}.profile-dropdown-container{position:relative}.profile-button{display:flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer;padding:4px 12px;border-radius:8px;transition:background .2s ease}.profile-button:hover{background:#0000000d}.profile-avatar{width:32px;height:32px;border-radius:50%;background:#3b82f6;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;overflow:hidden}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-name{font-size:14px;font-weight:500;color:#111827}.dropdown-arrow{transition:transform .2s ease}.profile-button:hover .dropdown-arrow{transform:translateY(2px)}.profile-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border-radius:12px;box-shadow:0 8px 24px #0000001f;min-width:220px;padding:8px;z-index:1000;animation:dropdownFadeIn .2s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-header{padding:12px}.dropdown-name{font-size:14px;font-weight:600;color:#111827;margin-bottom:2px}.dropdown-email{font-size:12px;color:#6b7280}.dropdown-divider{height:1px;background:#e5e7eb;margin:8px 0}.dropdown-item{width:100%;text-align:left;background:none;border:none;padding:10px 12px;border-radius:6px;font-size:14px;font-weight:500;color:#374151;cursor:pointer;transition:background .15s ease}.dropdown-item:hover{background:#f3f4f6}.dropdown-item.logout{color:#dc2626}.dropdown-item.logout:hover{background:#fee2e2}.dashboard-container{min-height:100vh;background:#f9fafb}.navigation{position:fixed;top:0;left:0;right:0;z-index:1000;background:#fffc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 1px 2px #0000000d;border-bottom:1px solid rgba(229,231,235,.5)}.nav-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:16px 24px}.logo-container{display:flex;align-items:center;gap:8px}.logo-icon{width:32px;height:32px;border-radius:8px;background:#3b82f6;color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700}.logo-text{font-size:18px;font-weight:600;color:#111827}.nav-links{display:flex;align-items:center;gap:24px}.nav-link{background:none;border:none;font-size:16px;font-weight:500;color:#6b7280;cursor:pointer;padding:4px 0;transition:color .2s ease}.nav-link:hover{color:#111827}.dashboard-content{padding:100px 24px 64px;max-width:1200px;margin:0 auto}.dashboard-header{margin-bottom:32px}.greeting{font-size:30px;font-weight:700;color:#111827;margin-bottom:4px}.subtitle{font-size:18px;color:#6b7280}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px}.widget{background:#fff;border-radius:16px;padding:24px;box-shadow:0 2px 8px #00000014}.widget-title{font-size:20px;font-weight:600;color:#111827;margin-bottom:16px}.ai-chat-widget{grid-column:span 1;display:flex;flex-direction:column;min-height:400px}.chat-messages{flex:1;margin-bottom:16px;display:flex;flex-direction:column;gap:8px}.message{max-width:80%;padding:12px 16px;border-radius:12px}.ai-message{align-self:flex-start;background:#f3f4f6;color:#111827}.user-message{align-self:flex-end;background:#3b82f6;color:#fff}.chat-input-container{display:flex;gap:8px}.chat-input{flex:1;border:1px solid #E5E7EB;border-radius:8px;padding:12px 16px;font-size:16px;font-family:inherit}.chat-input:focus{outline:none;border-color:#3b82f6}.send-button{background:#3b82f6;color:#fff;border:none;border-radius:8px;padding:12px 24px;font-size:16px;font-weight:500;cursor:pointer;transition:background .2s ease}.send-button:hover{background:#2563eb}.tasks-widget{min-height:300px}.task-input-container{display:flex;gap:8px;margin-bottom:16px}.task-input{flex:1;border:1px solid #E5E7EB;border-radius:8px;padding:8px 16px;font-size:16px;font-family:inherit}.task-input:focus{outline:none;border-color:#3b82f6}.add-task-button{width:44px;height:44px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.add-task-button:hover{background:#2563eb}.task-list{display:flex;flex-direction:column;gap:8px}.task-item{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid #F3F4F6}.task-checkbox{width:20px;height:20px;cursor:pointer}.task-text{flex:1;font-size:16px;color:#111827}.task-item.completed .task-text{text-decoration:line-through;color:#6b7280}.time-tracker-widget{min-height:280px}.timer-display{text-align:center;margin-bottom:32px}.timer-label{font-size:14px;color:#6b7280;margin-bottom:4px}.timer-time{font-size:36px;font-weight:700;color:#111827;margin-bottom:16px;font-variant-numeric:tabular-nums}.timer-button{background:#3b82f6;color:#fff;border:none;border-radius:12px;padding:12px 24px;font-size:16px;font-weight:500;cursor:pointer;transition:background .2s ease}.timer-button:hover{background:#2563eb}.stats-container{display:flex;gap:24px;padding-top:24px;border-top:1px solid #E5E7EB}.stat{flex:1}.stat-label{font-size:14px;color:#6b7280;margin-bottom:4px}.stat-value{font-size:24px;font-weight:600;color:#111827}@media(max-width:768px){.dashboard-grid{grid-template-columns:1fr}.greeting{font-size:24px}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:24px}.login-card{background:#fff;border-radius:16px;padding:48px;width:100%;max-width:440px;box-shadow:0 20px 60px #0000004d}.login-header{text-align:center;margin-bottom:32px}.logo-icon-large{width:64px;height:64px;border-radius:16px;background:#3b82f6;color:#fff;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;margin:0 auto 16px}.login-title{font-size:28px;font-weight:700;color:#111827;margin-bottom:8px}.login-subtitle{font-size:16px;color:#6b7280}.error-message{background:#fee2e2;border:1px solid #FCA5A5;color:#991b1b;padding:12px 16px;border-radius:8px;margin-bottom:24px;font-size:14px}.login-form{margin-bottom:24px}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:6px}.form-group input{width:100%;padding:12px 16px;border:1px solid #D1D5DB;border-radius:8px;font-size:16px;transition:border-color .2s ease}.form-group input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group input:disabled{background:#f3f4f6;cursor:not-allowed}.submit-button{width:100%;background:#3b82f6;color:#fff;border:none;border-radius:8px;padding:14px;font-size:16px;font-weight:600;cursor:pointer;transition:background .2s ease}.submit-button:hover:not(:disabled){background:#2563eb}.submit-button:disabled{opacity:.6;cursor:not-allowed}.divider{position:relative;text-align:center;margin:24px 0}.divider:before{content:"";position:absolute;left:0;top:50%;width:100%;height:1px;background:#e5e7eb}.divider span{position:relative;background:#fff;padding:0 16px;color:#6b7280;font-size:14px}.google-button{width:100%;background:#fff;border:1px solid #D1D5DB;border-radius:8px;padding:12px;font-size:16px;font-weight:500;color:#374151;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:12px;transition:all .2s ease}.google-button:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.google-button:disabled{opacity:.6;cursor:not-allowed}.google-icon{width:20px;height:20px}.login-footer{text-align:center;margin-top:24px;font-size:14px;color:#6b7280}.login-footer a{color:#3b82f6;text-decoration:none;font-weight:500}.login-footer a:hover{text-decoration:underline}@media(max-width:480px){.login-card{padding:32px 24px}.login-title{font-size:24px}}.signup-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:24px}.signup-card{background:#fff;border-radius:16px;padding:48px;width:100%;max-width:440px;box-shadow:0 20px 60px #0000004d}.signup-header{text-align:center;margin-bottom:32px}.signup-title{font-size:28px;font-weight:700;color:#111827;margin-bottom:8px}.signup-subtitle{font-size:16px;color:#6b7280}.signup-form{margin-bottom:24px}.field-hint{font-size:12px;color:#6b7280;margin-top:4px}.signup-footer{text-align:center;margin-top:24px;font-size:14px;color:#6b7280}.signup-footer a{color:#3b82f6;text-decoration:none;font-weight:500}.signup-footer a:hover{text-decoration:underline}@media(max-width:480px){.signup-card{padding:32px 24px}.signup-title{font-size:24px}}.profile-container{min-height:100vh;background:#f9fafb}.profile-content{padding:100px 24px 64px;max-width:800px;margin:0 auto}.profile-card{background:#fff;border-radius:16px;padding:48px;box-shadow:0 2px 8px #00000014}.profile-title{font-size:30px;font-weight:700;color:#111827;margin-bottom:32px;text-align:center}.profile-message{padding:12px 16px;border-radius:8px;margin-bottom:24px;font-size:14px}.profile-message.success{background:#d1fae5;color:#065f46;border:1px solid #6EE7B7}.profile-message.error{background:#fee2e2;color:#991b1b;border:1px solid #FCA5A5}.profile-avatar-section{display:flex;flex-direction:column;align-items:center;margin-bottom:40px}.profile-avatar-large{width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:48px;font-weight:700;overflow:hidden;box-shadow:0 8px 24px #0000001f;margin-bottom:12px}.profile-avatar-large img{width:100%;height:100%;object-fit:cover}.avatar-source{font-size:12px;color:#6b7280}.profile-info-section{display:flex;flex-direction:column;gap:24px;margin-bottom:32px}.info-group{display:flex;flex-direction:column;gap:6px}.info-label{font-size:14px;font-weight:600;color:#374151}.info-value{font-size:16px;color:#111827;padding:12px 16px;background:#f9fafb;border-radius:8px;border:1px solid #E5E7EB}.info-value-small{font-size:12px;font-family:monospace;word-break:break-all}.info-input{font-size:16px;padding:12px 16px;border:1px solid #D1D5DB;border-radius:8px;transition:border-color .2s ease}.info-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.verified-badge{display:inline-block;font-size:12px;color:#059669;background:#d1fae5;padding:4px 8px;border-radius:4px;font-weight:500;margin-top:4px}.unverified-badge{display:inline-block;font-size:12px;color:#d97706;background:#fef3c7;padding:4px 8px;border-radius:4px;font-weight:500;margin-top:4px}.profile-actions{display:flex;gap:12px;justify-content:center}.profile-button{padding:12px 24px;border-radius:8px;font-size:16px;font-weight:500;border:none;cursor:pointer;transition:all .2s ease}.profile-button:disabled{opacity:.6;cursor:not-allowed}.profile-button.primary{background:#3b82f6;color:#fff}.profile-button.primary:hover:not(:disabled){background:#2563eb}.profile-button.secondary{background:#f3f4f6;color:#374151;border:1px solid #D1D5DB}.profile-button.secondary:hover:not(:disabled){background:#e5e7eb}.profile-button.danger{background:#dc2626;color:#fff}.profile-button.danger:hover:not(:disabled){background:#b91c1c}@media(max-width:768px){.profile-card{padding:32px 24px}.profile-title{font-size:24px}.profile-actions{flex-direction:column}.profile-button{width:100%}}
