:root{font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;min-height:100vh}:root,[data-theme=light]{--bg-primary: #f2f2f7;--bg-secondary: #ffffff;--bg-elevated: #ffffff;--bg-input: #f2f2f7;--bg-hover: #f2f2f7;--text-primary: #000000;--text-secondary: #6c6c70;--text-muted: #8e8e93;--text-placeholder: #c7c7cc;--border: #e5e5ea;--border-light: #f2f2f7;--divider: #e5e5ea;--accent: #32d2e8;--accent-light: #e5f9fc;--accent-dark: #008aa3;--accent-gradient: linear-gradient(135deg, #5ac8fa, #32d2e8);--accent-shadow: rgba(50, 210, 232, .35);--accent-cyan: #32d2e8;--accent-orange: #ff9f0a;--accent-gold: #ffd60a;--accent-purple: #bf5af2;--accent-green: #30d158;--accent-red: #ff453a;--accent-blue: #0a84ff;--card-bg: #ffffff;--card-shadow: 0 4px 20px rgba(0, 0, 0, .06);--card-shadow-lg: 0 8px 30px rgba(0, 0, 0, .1);--today-card-bg: linear-gradient(135deg, #fff9e6, #e6f9fc);--tag-bg: rgba(0, 0, 0, .05);--chip-bg: #f2f2f7;--chip-active-bg: #e5f9fc;--chip-active-color: #008aa3;--weather-tag-color: #6c6c70;--danger: #ff453a;--danger-light: #ffebeb;--danger-border: #ff453a;--danger-soft: #fff0f0;--success: #30d158;--success-light: #e8f9ec;--info-light: #fff9e6;--info-border: #ffe082;--info-text: #8a6d00;--tab-bar-bg: rgba(255, 255, 255, .92);--tab-bar-border: rgba(0, 0, 0, .05);--tab-bar-shadow: 0 8px 30px rgba(0, 0, 0, .12);--tab-inactive: #8e8e93;--tab-active: #32d2e8;--user-header-bg: rgba(255, 255, 255, .92);--menu-bg: rgba(255, 255, 255, .95);--menu-shadow: 0 8px 30px rgba(0, 0, 0, .12), 0 2px 8px rgba(0, 0, 0, .06);--slider-track: #e5e5ea;--slider-thumb: #ffffff;--day-missed: #ff9f0a;--ms-brand: #0078d4;--ms-badge-bg: #e3f2fd;--google-brand: #4285f4;--google-badge-bg: #fce8e6;--teams-purple: #6264a7;--teams-hover: #ede7f6;--login-bg: linear-gradient(160deg, #f2f2f7 0%, #e6f9fc 50%, #fff9e6 100%);--code-bg: rgba(0, 0, 0, .06);--shared-badge-bg: #e5f9fc;--shared-badge-color: #008aa3;--streak-number: #32d2e8;--badge-sun-bg: #fff9e6;--badge-sun-color: #ff9f0a;--badge-check-bg: #e8f9ec;--badge-check-color: #30d158;--badge-heart-bg: #ffebf0;--badge-heart-color: #ff375f;--badge-trophy-bg: #fff9e6;--badge-trophy-color: #ff9f0a;--badge-flag-bg: #e8f4ff;--badge-flag-color: #0a84ff;--badge-activity-bg: #e5f9fc;--badge-activity-color: #32d2e8;--badge-users-bg: #e8f4ff;--badge-users-color: #0a84ff;--badge-file-bg: #f2f2f7;--badge-file-color: #8e8e93;--badge-bell-bg: #fff9e6;--badge-bell-color: #ff9f0a;--badge-shield-bg: #e8f4ff;--badge-shield-color: #0a84ff;--badge-trash-bg: #ffebeb;--badge-trash-color: #ff453a}[data-theme=dark]{--bg-primary: #000000;--bg-secondary: #1c1c1e;--bg-elevated: #2c2c2e;--bg-input: #2c2c2e;--bg-hover: #2c2c2e;--text-primary: #ffffff;--text-secondary: #8e8e93;--text-muted: #636366;--text-placeholder: #48484a;--border: #38383a;--border-light: #2c2c2e;--divider: #38383a;--accent: #32d2e8;--accent-light: #1a3a40;--accent-dark: #5ac8fa;--accent-gradient: linear-gradient(135deg, #5ac8fa, #32d2e8);--accent-shadow: rgba(50, 210, 232, .35);--accent-cyan: #32d2e8;--accent-orange: #ff9f0a;--accent-gold: #ffd60a;--accent-purple: #bf5af2;--accent-green: #30d158;--accent-red: #ff453a;--accent-blue: #0a84ff;--card-bg: #1c1c1e;--card-shadow: 0 4px 20px rgba(0, 0, 0, .3);--card-shadow-lg: 0 8px 30px rgba(0, 0, 0, .4);--today-card-bg: linear-gradient(135deg, #2c2c1e, #1c2c2e);--tag-bg: rgba(255, 255, 255, .08);--chip-bg: #2c2c2e;--chip-active-bg: #1a3a40;--chip-active-color: #5ac8fa;--weather-tag-color: #8e8e93;--danger: #ff453a;--danger-light: #3a1a1a;--danger-border: #ff453a;--danger-soft: #2a1515;--success: #30d158;--success-light: #1a2e1e;--info-light: #2d2a15;--info-border: #5a5020;--info-text: #d4a820;--tab-bar-bg: rgba(28, 28, 30, .92);--tab-bar-border: rgba(255, 255, 255, .06);--tab-bar-shadow: 0 8px 30px rgba(0, 0, 0, .4);--tab-inactive: #636366;--tab-active: #32d2e8;--user-header-bg: rgba(28, 28, 30, .92);--menu-bg: rgba(44, 44, 46, .95);--menu-shadow: 0 8px 30px rgba(0, 0, 0, .4), 0 2px 8px rgba(0, 0, 0, .2);--slider-track: #38383a;--slider-thumb: #ffffff;--day-missed: #ff9f0a;--ms-brand: #0078d4;--ms-badge-bg: #0d2040;--google-brand: #8ab4f8;--google-badge-bg: #2d1515;--teams-purple: #8b8fd9;--teams-hover: #1a1a2e;--login-bg: linear-gradient(160deg, #000000 0%, #0a1a20 50%, #1a1a00 100%);--code-bg: rgba(255, 255, 255, .08);--shared-badge-bg: #1a3a40;--shared-badge-color: #5ac8fa;--streak-number: #32d2e8;--badge-sun-bg: #3a3310;--badge-sun-color: #ffd60a;--badge-check-bg: #1a2e1e;--badge-check-color: #30d158;--badge-heart-bg: #3a151e;--badge-heart-color: #ff375f;--badge-trophy-bg: #3a3310;--badge-trophy-color: #ffd60a;--badge-flag-bg: #0d2040;--badge-flag-color: #0a84ff;--badge-activity-bg: #1a3a40;--badge-activity-color: #32d2e8;--badge-users-bg: #0d2040;--badge-users-color: #0a84ff;--badge-file-bg: #2c2c2e;--badge-file-color: #8e8e93;--badge-bell-bg: #3a3310;--badge-bell-color: #ffd60a;--badge-shield-bg: #0d2040;--badge-shield-color: #0a84ff;--badge-trash-bg: #3a1a1a;--badge-trash-color: #ff453a}@media (prefers-color-scheme: dark){[data-theme=system]{--bg-primary: #000000;--bg-secondary: #1c1c1e;--bg-elevated: #2c2c2e;--bg-input: #2c2c2e;--bg-hover: #2c2c2e;--text-primary: #ffffff;--text-secondary: #8e8e93;--text-muted: #636366;--text-placeholder: #48484a;--border: #38383a;--border-light: #2c2c2e;--divider: #38383a;--accent: #32d2e8;--accent-light: #1a3a40;--accent-dark: #5ac8fa;--accent-gradient: linear-gradient(135deg, #5ac8fa, #32d2e8);--accent-shadow: rgba(50, 210, 232, .35);--accent-cyan: #32d2e8;--accent-orange: #ff9f0a;--accent-gold: #ffd60a;--accent-purple: #bf5af2;--accent-green: #30d158;--accent-red: #ff453a;--accent-blue: #0a84ff;--card-bg: #1c1c1e;--card-shadow: 0 4px 20px rgba(0, 0, 0, .3);--card-shadow-lg: 0 8px 30px rgba(0, 0, 0, .4);--today-card-bg: linear-gradient(135deg, #2c2c1e, #1c2c2e);--tag-bg: rgba(255, 255, 255, .08);--chip-bg: #2c2c2e;--chip-active-bg: #1a3a40;--chip-active-color: #5ac8fa;--weather-tag-color: #8e8e93;--danger: #ff453a;--danger-light: #3a1a1a;--danger-border: #ff453a;--danger-soft: #2a1515;--success: #30d158;--success-light: #1a2e1e;--info-light: #2d2a15;--info-border: #5a5020;--info-text: #d4a820;--tab-bar-bg: rgba(28, 28, 30, .92);--tab-bar-border: rgba(255, 255, 255, .06);--tab-bar-shadow: 0 8px 30px rgba(0, 0, 0, .4);--tab-inactive: #636366;--tab-active: #32d2e8;--user-header-bg: rgba(28, 28, 30, .92);--menu-bg: rgba(44, 44, 46, .95);--menu-shadow: 0 8px 30px rgba(0, 0, 0, .4), 0 2px 8px rgba(0, 0, 0, .2);--slider-track: #38383a;--slider-thumb: #ffffff;--day-missed: #ff9f0a;--ms-brand: #0078d4;--ms-badge-bg: #0d2040;--google-brand: #8ab4f8;--google-badge-bg: #2d1515;--teams-purple: #8b8fd9;--teams-hover: #1a1a2e;--login-bg: linear-gradient(160deg, #000000 0%, #0a1a20 50%, #1a1a00 100%);--code-bg: rgba(255, 255, 255, .08);--shared-badge-bg: #1a3a40;--shared-badge-color: #5ac8fa;--streak-number: #32d2e8;--badge-sun-bg: #3a3310;--badge-sun-color: #ffd60a;--badge-check-bg: #1a2e1e;--badge-check-color: #30d158;--badge-heart-bg: #3a151e;--badge-heart-color: #ff375f;--badge-trophy-bg: #3a3310;--badge-trophy-color: #ffd60a;--badge-flag-bg: #0d2040;--badge-flag-color: #0a84ff;--badge-activity-bg: #1a3a40;--badge-activity-color: #32d2e8;--badge-users-bg: #0d2040;--badge-users-color: #0a84ff;--badge-file-bg: #2c2c2e;--badge-file-color: #8e8e93;--badge-bell-bg: #3a3310;--badge-bell-color: #ffd60a;--badge-shield-bg: #0d2040;--badge-shield-color: #0a84ff;--badge-trash-bg: #3a1a1a;--badge-trash-color: #ff453a}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem;background:var(--login-bg);transition:background .3s}.login-card{background:var(--card-bg);border-radius:24px;padding:2.5rem 2rem;max-width:380px;width:100%;text-align:center;box-shadow:0 20px 60px #0000001a;animation:loginSlideUp .5s ease-out}@keyframes loginSlideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.login-logo-img{width:88px;height:88px;border-radius:22px;object-fit:cover;margin-bottom:.75rem;box-shadow:0 8px 24px #00000014}.login-title{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0 0 .4rem}.login-subtitle{font-size:.9rem;color:var(--text-secondary);line-height:1.55;margin:0 0 1.75rem}.login-setup-notice{background:var(--info-light);border:1.5px solid var(--info-border);border-radius:12px;padding:.85rem 1rem;margin-bottom:1.25rem;text-align:left}.login-setup-notice p{margin:.2rem 0;font-size:.82rem;color:var(--info-text);line-height:1.5}.login-setup-list{margin:.4rem 0 0;padding-left:1.2rem;font-size:.78rem;color:var(--info-text);line-height:1.6}.login-setup-list code{background:var(--code-bg);padding:.1rem .35rem;border-radius:4px;font-size:.74rem}.local-auth-form{display:flex;flex-direction:column;gap:.75rem;text-align:left;margin-bottom:.25rem}.local-auth-title{font-size:1rem;font-weight:700;color:var(--text-primary);margin:0 0 .25rem;text-align:center}.local-auth-field{display:flex;flex-direction:column;gap:.3rem}.local-auth-field span{font-size:.78rem;font-weight:600;color:var(--text-secondary)}.local-auth-field .field-optional{font-weight:400;opacity:.65}.local-auth-field input{padding:.75rem .9rem;border:1.5px solid var(--border);border-radius:12px;background:var(--bg-input);color:var(--text-primary);font-size:.92rem;outline:none;transition:border-color .2s}.local-auth-field input:focus{border-color:var(--accent)}.local-auth-btn{width:100%;padding:.8rem;border:none;border-radius:12px;background:var(--accent);color:#000;font-size:.95rem;font-weight:700;cursor:pointer;transition:opacity .2s,transform .15s;margin-top:.25rem}.local-auth-btn:hover{opacity:.9;transform:translateY(-1px)}.local-auth-toggle{text-align:center;font-size:.82rem;color:var(--text-secondary);margin:0}.local-auth-toggle button{background:none;border:none;color:var(--accent-dark);font-weight:700;cursor:pointer;padding:0;font-size:inherit}.login-buttons{display:flex;flex-direction:column;gap:.6rem}.ms-signin-btn,.google-signin-btn,.apple-signin-btn{display:inline-flex;align-items:center;gap:.65rem;width:100%;justify-content:center;padding:.8rem 1.25rem;border-radius:12px;font-size:.92rem;font-weight:600;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .15s}.ms-signin-btn{background:var(--bg-secondary);border:1.5px solid var(--border);color:var(--text-primary)}.ms-signin-btn:hover:not(:disabled){border-color:var(--ms-brand);box-shadow:0 4px 16px #0078d426;transform:translateY(-1px)}.ms-signin-btn:disabled{opacity:.5;cursor:not-allowed}.google-signin-btn{background:var(--bg-secondary);border:1.5px solid var(--border);color:var(--text-primary)}.google-signin-btn:hover{border-color:var(--google-brand);box-shadow:0 4px 16px #4285f426;transform:translateY(-1px)}.apple-signin-btn{background:#000;border:1.5px solid #000;color:#fff}.apple-signin-btn:hover:not(:disabled){background:#1a1a1a;box-shadow:0 4px 16px #00000040;transform:translateY(-1px)}.apple-signin-btn:disabled{opacity:.5;cursor:not-allowed}.provider-logo{flex-shrink:0}.login-divider{display:flex;align-items:center;gap:.75rem;margin:.5rem 0;color:var(--text-placeholder);font-size:.78rem}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--border)}.browser-hint{margin-top:.75rem;background:var(--info-light);border:1.5px solid var(--info-border);border-radius:12px;padding:.7rem .9rem;text-align:left}.browser-hint p{margin:0;font-size:.78rem;line-height:1.5;color:var(--info-text)}.login-error{color:var(--danger);font-size:.82rem;margin:.75rem 0 0}.login-privacy{margin-top:1.5rem;background:var(--success-light);border-radius:12px;padding:.7rem 1rem}.login-privacy p{font-size:.75rem;color:var(--text-secondary);margin:0;line-height:1.5}
