*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #16a34a;--primary-hover: #15803d;--primary-light: #dcfce7;--primary-muted: #bbf7d0;--bg-main: #f9f9f9;--bg-sidebar: #f4f4f5;--bg-content: #ffffff;--bg-hover: #f4f4f5;--bg-active: #e4e4e7;--bg-selected: #dcfce7;--bg-elevated: #ffffff;--border: #e4e4e7;--border-light: #f4f4f5;--border-color: #e4e4e7;--text-primary: #18181b;--text-secondary: #52525b;--text-tertiary: #a1a1aa;--text-muted: #d4d4d8;--success: #16a34a;--danger: #dc2626;--error: #dc2626;--warning: #d97706;--blue-dot: #2563eb;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .02);--shadow-md: 0 2px 4px 0 rgba(0, 0, 0, .03);--shadow-lg: 0 4px 8px 0 rgba(0, 0, 0, .04);--text-xs: 11px;--text-sm: 12px;--text-base: 13px;--text-md: 14px;--text-lg: 15px;--text-xl: 16px;--text-2xl: 18px;--text-3xl: 20px;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.625;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--transition-fast: .1s ease;--transition-base: .15s ease;--transition-slow: .2s ease}[data-theme=dark]{--primary: #22c55e;--primary-hover: #4ade80;--primary-light: #14532d;--primary-muted: #166534;--bg-main: #09090b;--bg-sidebar: #09090b;--bg-content: #18181b;--bg-hover: #27272a;--bg-active: #3f3f46;--bg-selected: #14532d;--bg-elevated: #27272a;--border: #27272a;--border-light: #18181b;--border-color: #27272a;--text-primary: #fafafa;--text-secondary: #a1a1aa;--text-tertiary: #71717a;--text-muted: #52525b;--success: #22c55e;--danger: #f87171;--error: #f87171;--warning: #fbbf24;--blue-dot: #60a5fa;--shadow-sm: none;--shadow-md: none;--shadow-lg: none}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--primary: #22c55e;--primary-hover: #4ade80;--primary-light: #14532d;--primary-muted: #166534;--bg-main: #09090b;--bg-sidebar: #09090b;--bg-content: #18181b;--bg-hover: #27272a;--bg-active: #3f3f46;--bg-selected: #14532d;--bg-elevated: #27272a;--border: #27272a;--border-light: #18181b;--border-color: #27272a;--text-primary: #fafafa;--text-secondary: #a1a1aa;--text-tertiary: #71717a;--text-muted: #52525b;--success: #22c55e;--danger: #f87171;--error: #f87171;--warning: #fbbf24;--blue-dot: #60a5fa;--shadow-sm: none;--shadow-md: none;--shadow-lg: none}}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,SF Pro Display,Helvetica Neue,Arial,sans-serif;background:var(--bg-main);color:var(--text-primary);overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:var(--text-md);line-height:var(--leading-normal);letter-spacing:-.01em}.app{display:flex;height:100vh;width:100vw;background:var(--bg-main);overflow:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.sidebar{width:220px;min-width:220px;max-width:220px;flex-shrink:0;background:var(--bg-sidebar);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:var(--space-2) 0;height:100vh;overflow:hidden}.sidebar-content{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0;padding:0 var(--space-2)}.sidebar-content::-webkit-scrollbar{width:4px}.sidebar-content::-webkit-scrollbar-track{background:transparent}.sidebar-content::-webkit-scrollbar-thumb{background:transparent;border-radius:var(--radius-sm)}.sidebar-content:hover::-webkit-scrollbar-thumb{background:var(--border)}.sidebar-content::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.sidebar-header{flex-shrink:0}.sidebar-logo{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);margin-bottom:var(--space-2)}.sidebar-logo-icon{width:24px;height:24px;background:var(--primary);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:var(--font-semibold);font-size:11px}.sidebar-user{display:flex;align-items:center;gap:var(--space-2);padding:6px var(--space-2);margin:0 var(--space-2) var(--space-2);border-radius:var(--radius-md);transition:background var(--transition-fast)}.sidebar-user:hover{background:var(--bg-hover)}.sidebar-user-avatar{width:22px;height:22px;border-radius:50%;background:var(--primary-light);display:flex;align-items:center;justify-content:center;color:var(--primary);font-weight:var(--font-medium);font-size:10px}.sidebar-user-info{flex:1;min-width:0}.sidebar-user-name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user-email{font-size:10px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-search{margin:0 var(--space-2) var(--space-2);position:relative}.sidebar-search input{width:100%;padding:6px 6px 6px 28px;background:transparent;border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-primary);transition:border-color var(--transition-fast)}.sidebar-search input:focus{outline:none;border-color:var(--text-tertiary)}.sidebar-search input::placeholder{color:var(--text-muted)}.sidebar-search-icon{position:absolute;left:8px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none;width:14px;height:14px}.compose-btn{width:calc(100% - 16px);margin:0 var(--space-2) var(--space-3);padding:6px var(--space-3);background:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-medium);transition:background var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:6px}.compose-btn:hover{background:var(--primary-hover)}.compose-btn:active{opacity:.9}.sidebar-section{margin-bottom:var(--space-3)}.sidebar-section-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-1) var(--space-2) 6px}.sidebar-section-title{font-size:11px;font-weight:var(--font-medium);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em}.sidebar-add-folder-btn{background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-sm);transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.sidebar-add-folder-btn:hover{background:var(--bg-hover);color:var(--primary)}.sidebar-new-folder{display:flex;gap:var(--space-2);padding:var(--space-2) var(--space-3);align-items:center;margin:0 var(--space-2);background:var(--bg-hover);border-radius:var(--radius-md);margin-bottom:var(--space-2)}.sidebar-new-folder input{flex:1;min-width:0;padding:var(--space-1) var(--space-2);background:var(--bg-content);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-primary)}.sidebar-new-folder input:focus{outline:none;border-color:var(--primary)}.sidebar-new-folder button{flex-shrink:0;width:24px;height:24px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.sidebar-new-folder button:hover{background:var(--bg-active);color:var(--primary)}.sidebar-new-folder button:last-child:hover{color:var(--danger)}.folder-item-wrapper{position:relative;display:flex;align-items:center;gap:var(--space-1)}.folder-item-wrapper .folder-item{flex:1}.folder-delete-btn{background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-sm);transition:all var(--transition-fast);display:none;align-items:center;justify-content:center;opacity:0}.folder-item-wrapper:hover .folder-delete-btn{display:flex;opacity:1}.folder-delete-btn:hover{background:var(--bg-hover);color:var(--danger)}.folder-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-5) var(--space-3);color:var(--text-tertiary);font-size:var(--text-sm);text-align:center}.folder-list{display:flex;flex-direction:column;gap:0}.folder-item{display:flex;align-items:center;gap:var(--space-2);padding:6px var(--space-2);background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-normal);transition:background var(--transition-fast),color var(--transition-fast);text-align:left;position:relative;margin:0 var(--space-1)}.folder-item:hover{background:var(--bg-hover);color:var(--text-primary)}.folder-item.active{background:var(--bg-hover);color:var(--text-primary);font-weight:var(--font-medium)}.folder-item.active:before{display:none}.folder-icon{display:flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;color:var(--text-tertiary)}.folder-item:hover .folder-icon,.folder-item.active .folder-icon{color:var(--text-secondary)}.folder-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-count{font-size:11px;color:var(--text-muted);font-weight:var(--font-normal);min-width:16px;text-align:right}.folder-item.active .folder-count{color:var(--text-tertiary)}.sidebar-footer{margin-top:auto;padding:var(--space-2);border-top:1px solid var(--border);flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:var(--space-1)}.storage-info,.storage-header,.storage-label,.storage-text,.storage-bar,.storage-bar-fill,.storage-upgrade{display:none}.sidebar-status{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-muted)}.sidebar-status-dot{width:6px;height:6px;border-radius:50%;background:var(--primary)}.sidebar-status-text{display:none}.sidebar-footer-icons{display:flex;align-items:center;gap:2px}.settings-btn{display:none}.settings-btn-icon,.sidebar-icon-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.settings-btn-icon:hover,.sidebar-icon-btn:hover{background:var(--bg-hover);color:var(--text-secondary)}.inbox-view{width:320px;min-width:320px;max-width:320px;flex-shrink:0;display:flex;flex-direction:column;background:var(--bg-content);border-right:1px solid var(--border)}.inbox-header{display:flex;justify-content:space-between;align-items:center;padding:0 var(--space-3);border-bottom:1px solid var(--border);background:var(--bg-content);height:44px;flex-shrink:0}.inbox-header-left{display:flex;align-items:center;gap:var(--space-2)}.inbox-header h2{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary);line-height:1}.inbox-count{font-size:var(--text-xs);color:var(--text-tertiary);font-weight:var(--font-normal);line-height:1}.inbox-header-actions{display:flex;gap:0}.inbox-header button{background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;padding:6px;border-radius:var(--radius-md);transition:background var(--transition-fast);display:flex;align-items:center;justify-content:center}.inbox-header button:hover{background:var(--bg-hover);color:var(--text-secondary)}.inbox-tabs{display:flex;gap:0;padding:0 var(--space-3);border-bottom:1px solid var(--border);background:var(--bg-content)}.inbox-tab{padding:var(--space-2) var(--space-3);background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-tertiary);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-medium);transition:color var(--transition-fast);border-radius:0;margin-bottom:-1px}.inbox-tab:hover{color:var(--text-primary)}.inbox-tab.active{color:var(--text-primary);border-bottom-color:var(--text-primary)}.email-list{flex:1;overflow-y:auto}.email-item{padding:10px var(--space-4);border-bottom:1px solid var(--border-light);cursor:pointer;transition:background var(--transition-fast);display:grid;grid-template-columns:6px 1fr auto;gap:var(--space-3);position:relative;min-height:64px;align-items:start}.email-item:hover{background:var(--bg-hover)}.email-item.selected{background:var(--bg-selected)}.email-item.selected:before{display:none}.email-unread-dot{width:6px;height:6px;border-radius:50%;background:transparent;margin-top:7px;flex-shrink:0}.email-item.unread .email-unread-dot{background:var(--primary)}.email-avatar{display:none}.email-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;overflow:hidden}.email-header{display:flex;align-items:baseline;gap:var(--space-2)}.email-sender{font-size:var(--text-sm);font-weight:var(--font-normal);color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.email-item.unread .email-sender{font-weight:var(--font-semibold);color:var(--text-primary)}.email-time{font-size:var(--text-xs);color:var(--text-tertiary);flex-shrink:0;margin-left:auto}.email-subject{font-size:var(--text-sm);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:var(--font-normal);line-height:1.4;display:flex;align-items:center;gap:6px}.email-item.unread .email-subject{font-weight:var(--font-medium)}.email-preview{font-size:var(--text-xs);color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4;margin-top:1px}.email-meta{display:none}.email-attachment-badge,.email-tag-badge{display:inline-flex;align-items:center;color:var(--text-muted);flex-shrink:0}.email-attachment-badge svg,.email-tag-badge svg{width:12px;height:12px}.email-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px var(--space-2);background:var(--warning);color:#fff;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-medium)}.email-badge.important{background:var(--danger)}.email-attachments-indicator{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--text-tertiary)}.empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-10) var(--space-5);text-align:center;color:var(--text-tertiary);gap:var(--space-3)}.empty-state svg{width:48px;height:48px;opacity:.4;color:var(--text-muted)}.empty-state-title{font-size:var(--text-lg);font-weight:var(--font-medium);color:var(--text-secondary)}.empty-state-text{font-size:var(--text-base);color:var(--text-tertiary)}.loading{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);gap:var(--space-2);font-size:var(--text-base)}.message-view{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--bg-content);overflow:hidden}.message-header{padding:0 var(--space-4);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);background:var(--bg-content);height:44px;flex-shrink:0}.message-header-left{display:flex;align-items:center;gap:var(--space-1)}.message-nav{display:flex;align-items:center;gap:0}.message-nav button{background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;padding:6px;border-radius:var(--radius-md);transition:background var(--transition-fast);display:flex;align-items:center;justify-content:center}.message-nav button:hover{background:var(--bg-hover);color:var(--text-secondary)}.message-nav button:disabled{opacity:.3;cursor:not-allowed}.message-pagination{font-size:var(--text-xs);color:var(--text-muted);font-weight:var(--font-normal)}.message-actions{display:flex;gap:0}.message-action-btn{background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;padding:6px;border-radius:var(--radius-md);transition:background var(--transition-fast);display:flex;align-items:center;justify-content:center}.message-action-btn:hover{background:var(--bg-hover);color:var(--text-secondary)}.message-action-btn.danger:hover{background:#f871711a;color:var(--danger)}.message-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--space-6) var(--space-8);min-width:0;display:flex;flex-direction:column;align-items:center}.message-content-inner{width:100%;max-width:720px}.message-subject-line{font-size:var(--text-2xl);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-5);line-height:1.4;word-wrap:break-word;overflow-wrap:break-word}.message-from-section{display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-light)}.message-from-avatar{width:32px;height:32px;border-radius:50%;background:var(--bg-active);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);font-weight:var(--font-medium);font-size:var(--text-sm);flex-shrink:0}.message-from-info{flex:1;min-width:0}.message-from-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:2px;gap:var(--space-3)}.message-from-name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.message-from-email{font-size:var(--text-sm);color:var(--text-tertiary)}.message-date{font-size:11px;color:var(--text-muted);flex-shrink:0}.message-to{display:flex;gap:var(--space-1);font-size:var(--text-sm);min-width:0;margin-top:2px}.message-to-label{color:var(--text-tertiary);flex-shrink:0}.message-to-value{color:var(--text-secondary);word-wrap:break-word;overflow-wrap:break-word;min-width:0}.message-badge-important{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);background:var(--primary-light);color:var(--primary);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-medium);margin-bottom:var(--space-4)}.message-body{font-size:var(--text-sm);line-height:1.6;color:var(--text-primary);word-wrap:break-word;margin-bottom:var(--space-4);overflow-x:auto;max-width:640px}[data-theme=dark] .message-body,[data-theme=dark] .message-body *{color:var(--text-primary)!important;background-color:transparent!important}[data-theme=dark] .message-body a,[data-theme=dark] .message-body a *{color:var(--primary)!important}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .message-body,:root:not([data-theme=light]) .message-body *{color:var(--text-primary)!important;background-color:transparent!important}:root:not([data-theme=light]) .message-body a,:root:not([data-theme=light]) .message-body a *{color:var(--primary)!important}}.message-body b,.message-body strong{font-weight:700}.message-body i,.message-body em{font-style:italic}.message-body ul{margin-left:20px;margin-top:8px;margin-bottom:8px;list-style-type:disc}.message-body ol{margin-left:20px;margin-top:8px;margin-bottom:8px;list-style-type:decimal}.message-body a{color:var(--primary);text-decoration:underline}.message-body a:hover{color:var(--primary-hover)}.message-body p{margin-bottom:8px}.message-body h1,.message-body h2,.message-body h3,.message-body h4,.message-body h5,.message-body h6{margin-top:16px;margin-bottom:8px;font-weight:600;color:var(--text-primary)}.message-body h1{font-size:20px}.message-body h2{font-size:18px}.message-body h3{font-size:16px}.message-body h4{font-size:14px}.message-body table{border-collapse:collapse;width:100%;max-width:100%;margin:12px 0;background:var(--bg-content);border:1px solid var(--border);border-radius:8px;overflow:hidden;table-layout:auto;word-wrap:break-word}.message-body table td,.message-body table th{padding:10px 12px;border:1px solid var(--border-light);text-align:left;vertical-align:top}.message-body table th{background:var(--bg-hover);font-weight:600;color:var(--text-primary)}.message-body table tr:hover{background:var(--bg-hover)}.message-body blockquote{margin:12px 0;padding:8px 16px;border-left:3px solid var(--primary);background:var(--bg-hover);border-radius:4px;color:var(--text-secondary)}.message-body hr{border:none;border-top:1px solid var(--border);margin:16px 0}.message-body img{max-width:100%;height:auto;border-radius:8px;margin:8px 0}.message-body div{margin-bottom:4px}.message-body [style*=background]{border-radius:8px;padding:2px}.message-body [role=button],.message-body button{display:inline-block;padding:8px 16px;background:var(--primary);color:#fff!important;border:none;border-radius:6px;text-decoration:none!important;font-weight:600;cursor:pointer;margin:8px 4px;transition:all .2s}.message-body [role=button]:hover,.message-body button:hover{background:var(--primary-hover);transform:translateY(-1px)}.message-attachments{padding:12px;background:var(--bg-hover);border-radius:8px;margin-top:16px;max-width:100%;overflow:hidden}.message-attachments-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.message-attachments-title{font-size:13px;font-weight:600;color:var(--text-secondary)}.message-attachments-count{font-size:12px;color:var(--text-tertiary)}.attachment-list{display:flex;flex-direction:column;gap:8px}.attachment-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--bg-content);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.attachment-item:hover{border-color:var(--primary);box-shadow:var(--shadow-sm)}.attachment-icon{width:32px;height:32px;background:var(--primary-light);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--primary);flex-shrink:0}.attachment-info{flex:1;min-width:0}.attachment-name{font-size:14px;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:2px}.attachment-size{font-size:12px;color:var(--text-tertiary)}.attachment-download{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:6px;transition:all .2s;display:flex;align-items:center;justify-content:center}.attachment-download:hover{background:var(--bg-hover);color:var(--primary)}.compose-view{flex:1;display:flex;flex-direction:column;background:var(--bg-content)}.compose-header{display:flex;justify-content:space-between;align-items:center;padding:0 var(--space-5);border-bottom:1px solid var(--border);background:var(--bg-content);height:52px;flex-shrink:0}.compose-header h2{font-size:var(--text-md);font-weight:var(--font-semibold);color:var(--text-primary);letter-spacing:-.01em}.compose-header-actions{display:flex;align-items:center;gap:var(--space-2)}.compose-header button{padding:6px var(--space-3);border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-medium);transition:all var(--transition-fast);display:flex;align-items:center;gap:6px}.compose-header button.secondary{background:transparent;color:var(--text-tertiary);border:none}.compose-header button.secondary:hover{color:var(--text-primary);background:var(--bg-hover)}.compose-header button.secondary svg{width:16px;height:16px}.compose-header button.primary{background:var(--primary);color:#fff;padding:8px 16px;font-weight:var(--font-medium)}.compose-header button.primary:hover{background:var(--primary-hover)}.compose-header button.primary svg{width:14px;height:14px}.compose-header button:disabled{opacity:.4;cursor:not-allowed}.compose-form{flex:1;display:flex;flex-direction:column;overflow:hidden}.compose-fields{background:var(--bg-content)}.compose-field{display:flex;align-items:center;border-bottom:1px solid var(--border-light);padding:0 var(--space-5);min-height:44px}.compose-field:last-child{border-bottom:1px solid var(--border)}.compose-field label{width:48px;font-size:var(--text-sm);font-weight:var(--font-normal);color:var(--text-tertiary);flex-shrink:0}.compose-field input{flex:1;background:transparent;border:none;padding:12px 0;color:var(--text-primary);font-family:inherit;font-size:var(--text-sm)}.compose-field input:focus{outline:none}.compose-field input::placeholder{color:var(--text-muted)}.compose-body{flex:1;padding:var(--space-5);overflow-y:auto;display:flex;flex-direction:column}.compose-editor{width:100%;min-height:100%;background:transparent;border:none;color:var(--text-primary);font-family:inherit;font-size:var(--text-sm);line-height:1.6;outline:none;padding:0;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word}.compose-editor:empty:before{content:attr(data-placeholder);color:var(--text-muted);pointer-events:none;position:absolute}.compose-editor-textarea{width:100%;min-height:100%;background:transparent;border:none;color:var(--text-primary);font-family:inherit;font-size:var(--text-sm);line-height:1.6;outline:none!important;padding:0;resize:none;overflow-y:auto;box-shadow:none!important;-webkit-appearance:none;-moz-appearance:none;appearance:none}.compose-editor-textarea:focus{outline:none!important;border:none!important;box-shadow:none!important}.compose-editor-textarea::placeholder{color:var(--text-muted)}.compose-editor b,.compose-editor strong{font-weight:var(--font-semibold)}.compose-editor i,.compose-editor em{font-style:italic}.compose-editor ul{margin-left:var(--space-5);margin-top:var(--space-1);margin-bottom:var(--space-1);list-style-type:disc;padding-left:0}.compose-editor li{margin-bottom:2px}.compose-editor a{color:var(--primary);text-decoration:underline}.compose-editor p{margin:0;padding:0}.compose-editor br{display:block;content:"";margin:4px 0}.compose-attachments{padding:var(--space-3) var(--space-5);border-top:1px solid var(--border-light);background:var(--bg-content);display:flex;flex-wrap:wrap;gap:6px;align-items:center}.attachments-label{font-size:var(--text-xs);color:var(--text-tertiary);font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:.02em;margin-right:var(--space-2)}.attachment-chip{display:flex;align-items:center;gap:6px;padding:4px 10px;background:var(--bg-hover);border:none;border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--text-secondary)}.attachment-name{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-remove{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:0;transition:color var(--transition-fast);display:flex;align-items:center;justify-content:center;width:14px;height:14px}.attachment-remove:hover{color:var(--danger)}.compose-toolbar{padding:var(--space-2) var(--space-5);background:var(--bg-content);display:flex;align-items:center;gap:2px;border-bottom:1px solid var(--border-light)}.toolbar-btn{width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-tertiary);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-medium);transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.toolbar-btn svg{width:16px;height:16px}.toolbar-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.toolbar-btn:disabled{opacity:.3;cursor:not-allowed}.toolbar-btn.active,.toolbar-btn.active:hover{background:var(--bg-active);color:var(--primary)}.toolbar-btn.attach-btn{width:auto;padding:0 var(--space-3);gap:6px}.toolbar-divider{width:1px;height:20px;background:var(--border-light);margin:0 var(--space-2)}.compose-editor-rich{flex:1;width:100%;min-height:300px;max-width:680px;padding:0;background:transparent;border:none;color:var(--text-primary);font-size:var(--text-md);line-height:1.7;outline:none;overflow-y:auto;white-space:pre-wrap;word-wrap:break-word}.compose-editor-rich:focus{outline:none}.compose-editor-rich:empty:before{content:attr(data-placeholder);color:var(--text-muted);pointer-events:none}.compose-editor-rich b,.compose-editor-rich strong{font-weight:700}.compose-editor-rich i,.compose-editor-rich em{font-style:italic}.compose-editor-rich ul{margin:8px 0;padding-left:24px;list-style-type:disc}.compose-editor-rich li{margin:4px 0}.compose-editor-rich a{color:var(--primary);text-decoration:underline}.notification-bell-container{position:relative}.notification-bell-btn{background:transparent;border:none;padding:8px;border-radius:8px;cursor:pointer;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;transition:all .2s;position:relative}.notification-bell-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.notification-bell-btn.has-unread{color:var(--primary)}.notification-badge{position:absolute;top:2px;right:2px;background:var(--error);color:#fff;font-size:10px;font-weight:600;padding:2px 5px;border-radius:10px;min-width:16px;text-align:center}.notification-dropdown{position:absolute;top:100%;right:0;width:340px;max-height:400px;background:var(--bg-content);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1000;overflow:hidden}.notification-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3);border-bottom:1px solid var(--border)}.notification-dropdown-header h3{margin:0;font-size:var(--text-sm);font-weight:var(--font-semibold)}.notification-close-btn{background:transparent;border:none;padding:4px;cursor:pointer;color:var(--text-tertiary);border-radius:4px}.notification-close-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.notification-list{max-height:400px;overflow-y:auto}.notification-empty,.notification-loading{padding:40px 20px;text-align:center;color:var(--text-tertiary)}.notification-empty p{margin:12px 0 0}.notification-item{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);cursor:pointer;transition:background var(--transition-fast);border-bottom:1px solid var(--border-light);position:relative}.notification-item:last-child{border-bottom:none}.notification-item:hover{background:var(--bg-hover)}.notification-item.unread{background:var(--bg-elevated)}.notification-icon{width:28px;height:28px;border-radius:var(--radius-md);background:var(--primary-light);color:var(--primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.notification-content{flex:1;min-width:0}.notification-title{font-weight:500;font-size:13px;color:var(--text-primary);margin-bottom:2px}.notification-message{font-size:12px;color:var(--text-secondary);margin-bottom:4px}.notification-event-time{font-size:11px;color:var(--primary);font-weight:500;margin-bottom:4px}.notification-time{font-size:11px;color:var(--text-tertiary)}.notification-unread-dot{width:8px;height:8px;border-radius:50%;background:var(--primary);flex-shrink:0;margin-top:4px}.settings-modal{position:fixed;top:0;left:240px;right:0;bottom:0;background:var(--bg-main);z-index:1000;display:flex;flex-direction:column}.settings-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border);background:var(--bg-content);height:44px;flex-shrink:0}.settings-header h2{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary)}.settings-header button{background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;padding:var(--space-2);border-radius:var(--radius-md);transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.settings-header button:hover{background:var(--bg-hover);color:var(--text-primary)}.settings-content{flex:1;overflow-y:auto;padding:var(--space-6);display:flex;justify-content:center}.settings-content-inner{width:100%;max-width:640px}.settings-section{background:var(--bg-content);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-5);border:1px solid var(--border)}.settings-section h3{font-size:var(--text-lg);font-weight:var(--font-semibold);margin-bottom:var(--space-1);color:var(--text-primary)}.settings-section p{font-size:var(--text-base);color:var(--text-tertiary);margin-bottom:var(--space-5);line-height:var(--leading-normal)}.form-group{margin-bottom:var(--space-5)}.form-group label{display:block;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);margin-bottom:var(--space-2)}.form-group input,.form-group textarea{width:100%;background:var(--bg-main);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);color:var(--text-primary);font-family:inherit;font-size:var(--text-base);transition:all var(--transition-fast)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light);background:var(--bg-content)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-tertiary)}.form-group textarea{resize:vertical;min-height:80px;line-height:var(--leading-normal)}.form-group small{display:block;margin-top:var(--space-1);font-size:var(--text-sm);color:var(--text-tertiary);line-height:var(--leading-normal)}.settings-footer{padding:var(--space-3) var(--space-6);border-top:1px solid var(--border);background:var(--bg-content);display:flex;justify-content:flex-end;gap:var(--space-3)}.settings-footer button{padding:var(--space-2) var(--space-4);border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-base);font-weight:var(--font-medium);transition:all var(--transition-fast);display:flex;align-items:center;gap:var(--space-2)}.settings-footer button.secondary{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.settings-footer button.secondary:hover{background:var(--bg-hover);color:var(--text-primary)}.settings-footer button.primary{background:var(--primary);color:#fff}.settings-footer button.primary:hover{background:var(--primary-hover)}.success-message{padding:var(--space-3);background:var(--primary-light);border:1px solid var(--primary);border-radius:var(--radius-md);color:var(--primary);font-size:var(--text-base);margin-bottom:var(--space-5);display:flex;align-items:center;gap:var(--space-2)}.settings-button-group{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.settings-button{padding:var(--space-2) var(--space-3);border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-medium);transition:all var(--transition-fast);display:flex;align-items:center;gap:var(--space-1)}.settings-button.primary{background:var(--primary);color:#fff}.settings-button.primary:hover{background:var(--primary-hover)}.settings-button.success{background:var(--success);color:#fff}.settings-button.success:hover{opacity:.9}.settings-button.danger{background:var(--danger);color:#fff}.settings-button.danger:hover{opacity:.9}.settings-button:disabled{opacity:.5;cursor:not-allowed}.settings-status-box{margin-top:var(--space-4);padding:var(--space-4);background:var(--bg-main);border:1px solid var(--border);border-radius:var(--radius-md)}.settings-status-success{border-color:var(--success);background:var(--primary-light)}.settings-status-title{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--success);margin-bottom:var(--space-2);display:flex;align-items:center;gap:var(--space-1)}.settings-status-info{font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-normal)}.settings-help-text{display:block;margin-top:var(--space-4);padding:var(--space-3);background:var(--bg-hover);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--text-tertiary)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.loading svg{animation:spin 1s linear infinite}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--primary);outline-offset:2px}*{transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}input,textarea{transition:none}body{text-rendering:optimizeLegibility;font-feature-settings:"kern" 1;font-kerning:normal}.empty-message-view{flex:1;display:flex;align-items:center;justify-content:center;background:var(--bg-content);padding:60px}.empty-message-content{max-width:600px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:32px}.empty-message-icon{color:var(--primary);opacity:.85;animation:fadeInScale .8s ease-out}.empty-message-text{font-size:22px;line-height:1.8;color:var(--text-primary);font-weight:300;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:.3px;animation:fadeIn 1s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.85)}to{opacity:.85;transform:scale(1)}}.message-action-dropdown{position:relative}.message-dropdown-menu{position:absolute;top:100%;right:0;margin-top:var(--space-1);background:var(--bg-content);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);min-width:180px;z-index:100;overflow:hidden}.message-dropdown-header{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border-light)}.message-dropdown-menu button{width:100%;padding:var(--space-2) var(--space-3);background:transparent;border:none;text-align:left;font-size:var(--text-sm);color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast)}.message-dropdown-menu button:hover{background:var(--bg-hover)}.message-dropdown-divider{height:1px;background:var(--border-light);margin:4px 0}.compose-field-with-actions input{flex:1}.compose-field-actions{display:flex;gap:4px;padding-top:6px}.compose-field-toggle{padding:4px 8px;background:var(--bg-hover);border:1px solid var(--border);border-radius:4px;font-size:12px;color:var(--text-secondary);cursor:pointer;transition:all .2s}.compose-field-toggle:hover{background:var(--primary-light);color:var(--primary);border-color:var(--primary)}.compose-autosave-status{font-size:12px;color:var(--text-tertiary);margin-right:12px}.compose-toolbar{display:flex;gap:2px;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);background:var(--bg-content)}.toolbar-btn{padding:var(--space-1) var(--space-2);background:transparent;border:1px solid var(--border);border-radius:var(--radius-md);display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast)}.toolbar-btn:hover{background:var(--bg-hover);border-color:var(--primary);color:var(--primary)}.toolbar-btn:disabled{opacity:.5;cursor:not-allowed}.toolbar-divider{width:1px;background:var(--border);margin:0 4px}.email-tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:4px}.email-tag{display:flex;align-items:center;gap:2px;padding:1px var(--space-1);background:var(--primary-light);color:var(--primary);border-radius:var(--radius-sm);font-size:10px;font-weight:var(--font-medium)}.email-tag-more{padding:2px 6px;background:var(--bg-hover);color:var(--text-tertiary);border-radius:4px;font-size:11px}.email-draft-badge{display:inline-block;padding:2px 6px;background:var(--warning);color:#fff;border-radius:4px;font-size:11px;font-weight:500;margin-left:8px}.message-tags-display{display:flex;gap:6px;flex-wrap:wrap;padding:12px 24px;border-bottom:1px solid var(--border-light)}.message-tag-badge{display:flex;align-items:center;gap:4px;padding:4px 10px;background:var(--primary-light);color:var(--primary);border-radius:6px;font-size:12px;font-weight:500}.message-tag-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--bg-hover);border-radius:6px;margin-bottom:4px}.message-tag-item button{background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;font-size:18px;padding:0 4px}.message-tag-item button:hover{color:var(--danger)}.message-new-tag{display:flex;gap:4px;padding:4px}.message-new-tag input{flex:1;padding:6px 8px;border:1px solid var(--border);border-radius:4px;font-size:12px}.message-new-tag button{padding:6px 12px;background:var(--primary);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:600}.message-new-tag button:hover{background:var(--primary-hover)}.message-thread{margin-top:var(--space-6);border-top:1px solid var(--border);padding-top:var(--space-5)}.message-thread-header{display:flex;align-items:center;gap:var(--space-2);font-weight:var(--font-medium);color:var(--text-secondary);margin-bottom:var(--space-4);font-size:var(--text-sm)}.message-thread-header svg{color:var(--text-tertiary)}.message-thread-list{display:flex;flex-direction:column;gap:0}.message-thread-item{display:grid;grid-template-columns:32px 1fr;gap:var(--space-3);padding:var(--space-3) 0;cursor:pointer;transition:background var(--transition-fast);border-radius:var(--radius-md);margin:0 calc(var(--space-2) * -1);padding-left:var(--space-2);padding-right:var(--space-2);position:relative}.message-thread-item:before{content:"";position:absolute;left:15px;top:44px;bottom:0;width:2px;background:var(--border-light)}.message-thread-item:last-child:before{display:none}.message-thread-item:hover{background:var(--bg-hover)}.message-thread-item.active{background:var(--bg-selected)}.message-thread-avatar{width:32px;height:32px;border-radius:50%;background:var(--bg-active);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);font-weight:var(--font-medium);font-size:var(--text-xs);flex-shrink:0;z-index:1}.message-thread-content{min-width:0;flex:1}.message-thread-meta{display:flex;align-items:baseline;gap:var(--space-2);margin-bottom:2px}.message-thread-sender{font-weight:var(--font-medium);color:var(--text-primary);font-size:var(--text-sm)}.message-thread-date{font-size:var(--text-xs);color:var(--text-tertiary);margin-left:auto}.message-thread-preview{font-size:var(--text-sm);color:var(--text-tertiary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inbox-dropdown-menu{position:absolute;top:100%;right:0;margin-top:var(--space-1);background:var(--bg-content);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);min-width:180px;z-index:1000;padding:var(--space-1)}.inbox-dropdown-header{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em}.inbox-dropdown-menu button{width:100%;padding:var(--space-2) var(--space-3);background:transparent;border:none;text-align:left;font-size:var(--text-sm);color:var(--text-primary);cursor:pointer;border-radius:var(--radius-md);transition:background var(--transition-fast)}.inbox-dropdown-menu button:hover{background:var(--bg-hover)}.inbox-dropdown-divider{height:1px;background:var(--border);margin:4px 0}.email-item.draft{border-left:3px solid var(--warning)}.settings-select{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-content);color:var(--text-primary);font-size:var(--text-sm);cursor:pointer;transition:border-color var(--transition-fast)}.settings-select:hover{border-color:var(--primary)}.settings-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.inbox-pagination{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-top:1px solid var(--border);background:var(--bg-content)}.pagination-btn{padding:8px 16px;background:var(--bg-hover);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-size:13px;cursor:pointer;transition:all .2s}.pagination-btn:hover:not(:disabled){background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-info{font-size:13px;color:var(--text-secondary)}.calendar-view{flex:1;display:flex;flex-direction:column;background:var(--bg-content);overflow:hidden}.calendar-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border);background:var(--bg-content);height:44px}.calendar-header-left{display:flex;align-items:center;gap:var(--space-2)}.calendar-back-btn{padding:var(--space-1);background:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;color:var(--text-secondary);transition:background var(--transition-fast)}.calendar-back-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.calendar-header-actions{display:flex;align-items:center;gap:var(--space-2)}.calendar-today-btn{padding:var(--space-1) var(--space-3);background:var(--bg-hover);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast)}.calendar-today-btn:hover{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.calendar-nav{display:flex;align-items:center;gap:var(--space-1)}.calendar-nav button{padding:var(--space-1);background:transparent;border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;color:var(--text-secondary);transition:background var(--transition-fast)}.calendar-nav button:hover{background:var(--bg-hover);color:var(--text-primary)}.calendar-month-name{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary);min-width:130px;text-align:center;text-transform:capitalize}.calendar-create-btn{padding:var(--space-1) var(--space-3);background:var(--primary);border:none;border-radius:var(--radius-md);color:#fff;font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;display:flex;align-items:center;gap:var(--space-1);transition:background var(--transition-fast)}.calendar-create-btn:hover{background:var(--primary-hover)}.calendar-content{flex:1;overflow-y:auto;padding:var(--space-4)}.calendar-grid{max-width:1200px;margin:0 auto}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;margin-bottom:1px}.calendar-weekday{padding:var(--space-2);text-align:center;font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--border);border:1px solid var(--border)}.calendar-day{min-height:100px;padding:var(--space-2);background:var(--bg-content);position:relative;cursor:pointer;transition:background var(--transition-fast)}.calendar-day:hover{background:var(--bg-hover)}.calendar-day.empty{background:var(--bg-main);cursor:default}.calendar-day.today{background:var(--primary-light)}.calendar-day-number{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.calendar-day.today .calendar-day-number{color:var(--primary)}.calendar-day-events{display:flex;flex-direction:column;gap:2px}.calendar-event-chip{padding:2px 6px;border-radius:4px;font-size:11px;color:#fff;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:all .2s}.calendar-event-chip:hover{opacity:.8;transform:translate(2px)}.calendar-event-time{font-weight:600;margin-right:4px}.calendar-event-title{font-weight:400}.calendar-event-more{padding:2px 6px;font-size:11px;color:var(--text-tertiary);font-weight:500}.calendar-form-hint{display:block;font-size:11px;color:var(--text-tertiary);margin-top:4px;font-style:italic}.calendar-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}[data-theme=dark] .calendar-modal-overlay{background:#0009}.calendar-modal{background:var(--bg-content);border-radius:var(--radius-xl);width:90%;max-width:520px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);border:1px solid var(--border)}.calendar-modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}.calendar-modal-header h3{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.calendar-modal-header button{padding:var(--space-1);background:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;color:var(--text-tertiary);transition:all var(--transition-fast)}.calendar-modal-header button:hover{background:var(--bg-hover);color:var(--text-primary)}.calendar-modal-content{flex:1;overflow-y:auto;padding:var(--space-4)}.calendar-form-group{margin-bottom:var(--space-4)}.calendar-form-group label{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);margin-bottom:var(--space-2)}.calendar-form-group input[type=text],.calendar-form-group input[type=datetime-local],.calendar-form-group input[type=color],.calendar-form-group textarea,.calendar-form-group select{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-main);color:var(--text-primary);font-size:var(--text-base);transition:all var(--transition-fast)}.calendar-form-group input:focus,.calendar-form-group textarea:focus,.calendar-form-group select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light);background:var(--bg-content)}.calendar-form-group textarea{resize:vertical;font-family:inherit}.calendar-form-group input[type=checkbox]{width:auto;margin-right:var(--space-2)}.calendar-form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.calendar-modal-footer{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-6);border-top:1px solid var(--border)}.calendar-modal-actions{display:flex;gap:var(--space-2)}.calendar-btn-primary,.calendar-btn-secondary,.calendar-btn-danger{padding:var(--space-2) var(--space-4);border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast)}.calendar-btn-primary{background:var(--primary);color:#fff}.calendar-btn-primary:hover{background:var(--primary-hover)}.calendar-btn-secondary{background:var(--bg-hover);color:var(--text-primary);border:1px solid var(--border)}.calendar-btn-secondary:hover{background:var(--border)}.calendar-btn-danger{background:var(--danger);color:#fff;display:flex;align-items:center;gap:6px}.calendar-btn-danger:hover{background:#dc2626}.calendar-item{border-top:1px solid var(--border);margin-top:8px;padding-top:8px}.inbox-header-actions button{transition:all .2s ease}.email-checkbox{display:flex;align-items:center;justify-content:center;margin-right:12px;color:var(--text-secondary);flex-shrink:0}.email-item.multi-selected{background-color:var(--primary-light);border-left:3px solid var(--primary)}.inbox-header-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.inbox-header-actions button{transition:all .2s ease;padding:8px 14px;min-width:40px;height:40px;display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.inbox-header-actions button:hover{transform:scale(1.05)}.inbox-action-dropdown{position:relative}.inbox-header-actions .button-separator{width:1px;height:28px;background-color:var(--border);margin:0 8px;flex-shrink:0}[data-theme=dark] .email-item.multi-selected{background-color:#3b82f626}.inbox-header-actions button.active{background-color:transparent;color:var(--primary);border:1px solid var(--primary)}.input-with-actions{position:relative;display:flex;align-items:center;gap:0}.input-with-actions input{flex:1;padding-right:80px!important}.input-action-button{position:absolute;right:4px;background:transparent;border:none;padding:8px;border-radius:6px;color:var(--text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:1}.input-action-button:hover{background:var(--bg-hover);color:var(--text-primary)}.input-action-button:active{transform:scale(.95)}.input-action-button:first-of-type{right:40px}.input-action-button:last-of-type{right:4px}.offline-banner,.syncing-banner{position:fixed;top:0;left:0;right:0;padding:8px 16px;text-align:center;font-size:13px;font-weight:500;z-index:9999;animation:slideDown .3s ease-out}.offline-banner{background:#fef3c7;color:#92400e;border-bottom:1px solid #fbbf24}[data-theme=dark] .offline-banner{background:#78350f;color:#fef3c7;border-bottom:1px solid #92400e}.syncing-banner{background:#dbeafe;color:#1e40af;border-bottom:1px solid #60a5fa}[data-theme=dark] .syncing-banner{background:#1e3a8a;color:#dbeafe;border-bottom:1px solid #3b82f6}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.connection-status{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-hover);border-radius:6px;font-size:12px;color:var(--text-secondary)}.connection-status .status-text{flex:1}.sync-icon-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s}.sync-icon-btn:hover:not(:disabled){background:var(--bg-selected);color:var(--primary)}.sync-icon-btn:disabled{opacity:.5;cursor:not-allowed}.sync-icon-btn svg.spinning{animation:spin 1s linear infinite}.status-indicator{width:8px;height:8px;border-radius:50%;animation:pulse 2s ease-in-out infinite}.status-indicator.online{background:var(--success)}.status-indicator.offline{background:var(--danger);animation:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.status-text{font-weight:500}.compose-editor[contenteditable=true]::-webkit-spelling-error{text-decoration:underline wavy #ef4444}.compose-editor[contenteditable=true]::-moz-spelling-error{text-decoration:underline wavy #ef4444}.calendar-header-center{flex:1;display:flex;justify-content:center;align-items:center}.calendar-view-switcher{display:flex;gap:4px;background:var(--bg-hover);padding:4px;border-radius:8px}.calendar-view-switcher button{display:flex;align-items:center;gap:6px;padding:6px 12px;background:transparent;border:none;border-radius:6px;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.calendar-view-switcher button:hover{background:var(--bg-content);color:var(--text-primary)}.calendar-view-switcher button.active{background:var(--primary);color:#fff}.calendar-event-chip.event-start{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:0}.calendar-event-chip.event-middle{border-radius:0;margin-left:0;margin-right:0}.calendar-event-chip.event-end{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:0}.calendar-day:not(.empty){cursor:pointer;transition:background-color .2s}.calendar-day:not(.empty):hover{background-color:var(--bg-hover)}.calendar-week-view{display:flex;flex-direction:column;height:100%;overflow:hidden}.calendar-week-header{display:grid;grid-template-columns:80px repeat(7,1fr);border-bottom:2px solid var(--border);background:var(--bg-content);flex-shrink:0;gap:0;width:100%}.calendar-week-header-spacer{background:var(--bg-sidebar);border-right:1px solid var(--border)}.calendar-week-header-days{display:contents}.calendar-week-day-header{background:var(--bg-content);padding:12px;text-align:center;position:relative}.calendar-week-day-header:after{content:"";position:absolute;right:0;top:0;bottom:0;width:1px;background:var(--border-light)}.calendar-week-day-header:last-child:after{display:none}.calendar-week-day-header.today{background:var(--primary-light)}.week-day-name{font-size:12px;color:var(--text-secondary);font-weight:500;text-transform:uppercase}.week-day-number{font-size:20px;font-weight:600;color:var(--text-primary);margin-top:4px}.calendar-week-grid{display:grid;grid-template-columns:80px repeat(7,1fr);flex:1;overflow-y:auto;overflow-x:hidden;gap:0;scrollbar-width:none;-ms-overflow-style:none}.calendar-week-grid::-webkit-scrollbar{display:none}.calendar-week-hours{background:var(--bg-sidebar);border-right:1px solid var(--border)}.calendar-week-hour-label{height:60px;display:flex;align-items:flex-start;justify-content:flex-end;padding:4px 8px;font-size:11px;color:var(--text-tertiary);border-bottom:1px solid var(--border-light);background:var(--bg-sidebar)}.calendar-week-days{display:contents}.calendar-week-day-column{background:var(--bg-content);min-width:0;position:relative}.calendar-week-day-column:after{content:"";position:absolute;right:0;top:0;bottom:0;width:1px;background:var(--border-light);pointer-events:none}.calendar-week-day-column:last-child:after{display:none}.calendar-week-hour-cell{height:60px;border-bottom:1px solid var(--border-light);position:relative;padding:2px;cursor:pointer;transition:background-color .15s;background-color:var(--bg-content)}.calendar-week-hour-cell:hover{background-color:var(--bg-hover)!important}.calendar-week-event{background:var(--primary);color:#fff;padding:4px 6px;border-radius:4px;font-size:11px;margin-bottom:2px;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-week-event:hover{opacity:.9}.week-event-title{font-weight:600;margin-bottom:2px}.week-event-time{font-size:10px;opacity:.9}.calendar-list-view{padding:24px;overflow-y:auto;max-height:calc(100vh - 200px)}.calendar-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-tertiary)}.calendar-list-empty p{margin-top:16px;font-size:14px}.calendar-list-date-group{margin-bottom:32px}.calendar-list-date-header{display:flex;align-items:center;gap:8px;padding:12px 0;border-bottom:2px solid var(--border);margin-bottom:12px;font-weight:600;color:var(--text-primary)}.calendar-list-date-full{margin-left:auto;font-size:13px;color:var(--text-secondary);font-weight:400}.calendar-list-events{display:flex;flex-direction:column;gap:8px}.calendar-list-event{display:flex;gap:12px;padding:12px;background:var(--bg-content);border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:all .2s}.calendar-list-event:hover{background:var(--bg-hover);transform:translate(4px);box-shadow:var(--shadow-sm)}.calendar-list-event-color{width:4px;border-radius:2px;flex-shrink:0}.calendar-list-event-content{flex:1}.calendar-list-event-title{font-weight:600;color:var(--text-primary);margin-bottom:4px}.calendar-list-event-details{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary)}.calendar-list-separator{color:var(--text-tertiary)}.calendar-list-event-location{display:flex;align-items:center;gap:4px}.calendar-color-presets{display:flex;gap:8px;margin-bottom:8px}.calendar-color-preset{width:36px;height:36px;border-radius:8px;border:2px solid transparent;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:16px}.calendar-color-preset:hover{transform:scale(1.1);box-shadow:var(--shadow-md)}.calendar-color-preset.active{border-color:var(--text-primary);box-shadow:var(--shadow-md)}.calendar-color-categories{display:flex;flex-wrap:wrap;gap:6px}.calendar-color-category{padding:4px 10px;background:var(--bg-hover);border-radius:12px;font-size:11px;color:var(--text-secondary);cursor:pointer;transition:all .2s}.calendar-color-category:hover{background:var(--bg-selected);color:var(--primary)}.calendar-color-category.active{background:var(--primary);color:#fff;font-weight:600}.calendar-validation-error{padding:10px 12px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#991b1b;font-size:13px;margin-bottom:12px}[data-theme=dark] .calendar-validation-error{background:#450a0a;border-color:#991b1b;color:#fecaca}.calendar-duration-info{display:flex;align-items:center;gap:6px;padding:8px 12px;background:var(--primary-light);border-radius:6px;color:var(--primary);font-size:12px;font-weight:500;margin-bottom:12px}.calendar-invitation-card{margin:16px 0;padding:16px;background:var(--bg-hover);border:2px solid var(--primary);border-radius:8px;display:flex;flex-direction:column;gap:12px}.calendar-invitation-card.accepted{border-color:var(--success);background:#d1fae5}[data-theme=dark] .calendar-invitation-card.accepted{background:#10b9811a}.calendar-invitation-card.declined{border-color:var(--text-tertiary);background:var(--bg-hover);opacity:.7}.invitation-header{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--primary);font-size:14px}.invitation-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--success);color:#fff;border-radius:50%;flex-shrink:0}.invitation-content{flex:1}.invitation-content h3{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.invitation-content p{font-size:13px;color:var(--text-secondary);margin:0}.invitation-body{display:flex;flex-direction:column;gap:12px}.invitation-body p{font-size:13px;color:var(--text-secondary);margin:0}.invitation-actions{display:flex;gap:8px}.invitation-btn{flex:1;padding:10px 16px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .2s}.invitation-btn.accept{background:var(--success);color:#fff}.invitation-btn.accept:hover{background:#059669;transform:translateY(-1px)}.invitation-btn.decline{background:var(--bg-content);color:var(--text-secondary);border:1px solid var(--border)}.invitation-btn.decline:hover{background:var(--bg-hover);border-color:var(--text-tertiary)}.invitation-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.invitation-preview{display:flex;flex-direction:column;gap:8px}.invitation-title{font-size:16px;font-weight:600;color:var(--text-primary);margin:0}.invitation-detail{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.invitation-detail svg{flex-shrink:0;opacity:.7}.invitation-error{padding:8px 12px;background:#ef44441a;border:1px solid var(--error);border-radius:6px;color:var(--error);font-size:13px}.calendar-duration-info{display:flex;align-items:center;gap:6px;padding:8px 12px;background:var(--primary-light);border-radius:6px;font-size:13px;color:var(--primary);font-weight:500}.email-chip-input-container{flex:1;display:flex;flex-direction:column;gap:4px}.email-chip-input{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 8px;background:transparent;border:none;border-radius:6px;min-height:38px;transition:all .2s}.email-chip{display:flex;align-items:center;gap:4px;padding:4px 8px;background:var(--primary);color:#fff;border-radius:4px;font-size:13px;font-weight:500;animation:chipAppear .2s ease-out}@keyframes chipAppear{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.email-chip-text{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.email-chip-remove{display:flex;align-items:center;justify-content:center;padding:2px;background:transparent;border:none;color:#fff;cursor:pointer;border-radius:3px;transition:all .2s}.email-chip-remove:hover{background:#fff3}.email-chip-input-field{flex:1;min-width:150px;border:none;background:transparent;outline:none;font-size:14px;color:var(--text-primary);padding:4px}.email-chip-input-field::placeholder{color:var(--text-tertiary)}.email-chip-error{font-size:12px;color:var(--danger);padding:2px 4px;animation:errorShake .3s ease-out}@keyframes errorShake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.compose-field-with-actions{display:flex;align-items:flex-start;gap:8px;flex:1}.compose-field-with-actions .email-chip-input-container{flex:1}.auth-screen{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--bg-main);padding:24px;overflow-y:auto}.auth-loading{display:flex;flex-direction:column;align-items:center;gap:16px;color:var(--text-secondary)}.auth-loading .spinning{animation:spin 2s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-container{width:100%;max-width:420px;background:var(--bg-content);border-radius:16px;padding:40px;box-shadow:var(--shadow-lg);border:1px solid var(--border)}.auth-header{text-align:center;margin-bottom:32px}.auth-logo{color:var(--primary);margin-bottom:16px}.auth-header h1{font-size:28px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.auth-subtitle{font-size:14px;color:var(--text-secondary)}.auth-info-box{display:flex;gap:12px;padding:16px;background:var(--primary-light);border-radius:12px;margin-bottom:24px;color:var(--primary)}.auth-info-box p{font-size:13px;line-height:1.5;margin:0}.auth-error{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:8px;color:var(--danger);font-size:13px;margin-bottom:20px}.auth-field{margin-bottom:20px}.auth-field label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.auth-field input{width:100%;padding:12px 16px;background:var(--bg-main);border:1px solid var(--border);border-radius:10px;color:var(--text-primary);font-size:14px;transition:all .2s}.auth-field input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light);background:var(--bg-content)}.auth-field input::placeholder{color:var(--text-tertiary)}.auth-field input:disabled{opacity:.6;cursor:not-allowed}.auth-field small{display:block;margin-top:6px;font-size:12px;color:var(--text-tertiary)}.auth-section-divider{display:flex;align-items:center;margin:24px 0 20px;gap:12px}.auth-section-divider:before,.auth-section-divider:after{content:"";flex:1;height:1px;background:var(--border)}.auth-section-divider span{font-size:12px;color:var(--text-tertiary);font-weight:500;white-space:nowrap}.auth-submit{width:100%;padding:14px 24px;background:var(--primary);color:#fff;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:8px}.auth-submit:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px)}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-switch{text-align:center;margin-top:24px;padding-top:24px;border-top:1px solid var(--border)}.auth-switch p{font-size:14px;color:var(--text-secondary);margin:0}.auth-switch button{background:transparent;border:none;color:var(--primary);font-weight:600;cursor:pointer;padding:0;font-size:14px}.auth-switch button:hover{text-decoration:underline}.settings-button.danger{background:var(--danger);color:#fff;border:none}.settings-button.danger:hover{background:#dc2626}@media (max-height: 700px){.sidebar{padding:12px 10px}.sidebar-user{padding:6px 10px;margin-bottom:8px}.sidebar-user-avatar{width:28px;height:28px;font-size:12px}.compose-btn{padding:10px 14px;margin-bottom:16px;font-size:13px}.sidebar-section{margin-bottom:16px}.folder-item{padding:8px 10px;font-size:13px}.storage-info{padding:10px;margin-bottom:8px}.connection-status{padding:6px 10px}.inbox-header{padding:6px 16px;height:44px}.email-item{padding:12px 16px}.message-header{padding:16px 24px}.settings-modal{max-height:90vh}.settings-content{max-height:calc(90vh - 140px)}.auth-container{padding:24px}.auth-header{margin-bottom:20px}.auth-field{margin-bottom:14px}}@media (max-height: 550px){.sidebar-user{padding:4px 8px;margin-bottom:6px}.sidebar-user-avatar{width:24px;height:24px;font-size:10px}.sidebar-user-name{font-size:12px}.sidebar-user-email{font-size:10px}.compose-btn{padding:8px 12px;margin-bottom:12px;font-size:12px}.sidebar-section{margin-bottom:12px}.sidebar-section-title{font-size:10px;padding:0 10px 6px}.folder-item{padding:6px 8px;font-size:12px;gap:8px}.folder-icon{width:16px;height:16px}.folder-icon svg{width:14px;height:14px}.storage-info{padding:8px;margin-bottom:6px}.storage-label,.storage-text{font-size:10px}.sidebar-footer{padding-top:10px}.connection-status{padding:4px 8px;font-size:11px}}@media (max-width: 1100px){.sidebar{width:220px;min-width:220px;max-width:220px}.inbox-view{width:320px;min-width:320px;max-width:320px}.email-item-sender{max-width:150px}}@media (max-width: 900px){.sidebar{width:200px;min-width:200px;max-width:200px;padding:12px 8px}.inbox-view{width:280px;min-width:280px;max-width:280px}.inbox-header{padding:8px 16px}.email-item{padding:12px 14px}.email-item-sender{max-width:120px;font-size:13px}.email-item-subject{font-size:13px}.email-item-preview{font-size:12px}.message-header{padding:16px 20px}.message-body{padding:20px}}@media (max-width: 750px){.sidebar{width:180px;min-width:180px;max-width:180px}.sidebar-user-info{display:none}.sidebar-user{justify-content:center;padding:8px}.sidebar-user-avatar{width:36px;height:36px}.compose-btn span:not(.compose-btn svg){display:none}.compose-btn{justify-content:center;padding:12px}.folder-name{font-size:12px}.inbox-view{width:260px;min-width:260px;max-width:260px}.email-item-meta{flex-direction:column;align-items:flex-start;gap:2px}.settings-modal{width:95%;max-width:none;margin:10px}.settings-header h2{font-size:18px}.settings-section h3{font-size:14px}.compose-view .compose-header{padding:12px 16px}.compose-view .compose-field input{font-size:13px}.calendar-container{padding:16px}.calendar-header h2{font-size:18px}.calendar-nav button{padding:6px 12px;font-size:12px}}@media (max-width: 640px){.sidebar{width:60px;min-width:60px;max-width:60px;padding:12px 6px}.sidebar-search,.sidebar-section-title{display:none}.sidebar-section-header{justify-content:center;padding:0 0 8px}.folder-item{justify-content:center;padding:10px}.folder-name,.folder-count{display:none}.folder-icon{width:24px;height:24px}.storage-info,.connection-status .status-text{display:none}.connection-status{justify-content:center;padding:8px}.inbox-view{width:220px;min-width:220px;max-width:220px}.inbox-title{font-size:16px}.email-item{padding:10px 12px}.email-item-sender{max-width:100px;font-size:12px}.email-item-subject{font-size:12px}.email-item-preview{display:none}.auth-container{width:95%;padding:20px}.auth-header h1{font-size:24px}.auth-logo{width:40px;height:40px}}@media (max-width: 900px) and (max-height: 600px){.compose-view .compose-body textarea{min-height:150px}.settings-content{max-height:calc(100vh - 120px)}.calendar-grid{gap:2px}.calendar-day{min-height:60px;padding:4px}}
