:root{--color-primary: #5DBBE8;--color-primary-dark: #4AA5CF;--color-primary-light: #7DD3F5;--color-primary-lighter: #A8E4FA;--color-secondary: #4AA5CF;--color-secondary-dark: #2E7A93;--color-success: #10B981;--color-success-light: #D1FAE5;--color-warning: #F59E0B;--color-warning-light: #FEF3C7;--color-error: #EF4444;--color-error-light: #FEE2E2;--color-info: #3B82F6;--color-info-light: #DBEAFE;--color-white: #FFFFFF;--color-gray-50: #F9FAFB;--color-gray-100: #F3F4F6;--color-gray-200: #E5E7EB;--color-gray-300: #D1D5DB;--color-gray-400: #9CA3AF;--color-gray-500: #6B7280;--color-gray-600: #4B5563;--color-gray-700: #374151;--color-gray-800: #1F2937;--color-gray-900: #111827;--color-background: #F8FCFE;--color-background-secondary: #FFFFFF;--color-background-tertiary: #F9FAFB;--color-text: #111827;--color-text-primary: #111827;--color-text-secondary: #4B5563;--color-text-tertiary: #6B7280;--color-text-on-primary: #FFFFFF;--color-border: #E5E7EB;--color-border-dark: #D1D5DB;--color-border-light: #F3F4F6;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.5;color:var(--color-text);background-color:var(--color-background);min-height:100vh;transition:background-color var(--transition-base),color var(--transition-base)}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25;color:var(--color-text-primary)}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark)}button{font-family:inherit;font-size:var(--font-size-sm);font-weight:500;cursor:pointer;border:none;border-radius:var(--radius-md);padding:var(--spacing-2) var(--spacing-4);transition:all var(--transition-fast)}button:disabled{opacity:.5;cursor:not-allowed}input,textarea,select{font-family:inherit;font-size:var(--font-size-base);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-2) var(--spacing-3);background-color:var(--color-background-secondary);color:var(--color-text);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #5dbbe833}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:var(--spacing-4)}@keyframes spin{to{transform:rotate(360deg)}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-background-tertiary)}::-webkit-scrollbar-thumb{background:var(--color-gray-400);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-gray-500)}@media(max-width:768px){html{font-size:14px}input,textarea,select{font-size:16px}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-6);background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460)}.login-container{width:100%;max-width:400px;display:flex;flex-direction:column;gap:var(--spacing-6)}.login-brand{text-align:center;color:var(--color-white)}.login-logo{width:64px;height:64px;margin:0 auto var(--spacing-4);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px #5dbbe84d}.logo-icon{width:36px;height:36px;color:#fff}.login-title{font-size:var(--font-size-2xl);font-weight:700;margin:0 0 var(--spacing-2);background:linear-gradient(135deg,#fff,#a8dadc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-subtitle{font-size:var(--font-size-md);color:#ffffffb3;margin:0}.login-card{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-6);box-shadow:0 20px 60px #0000004d}.login-form{display:flex;flex-direction:column;gap:var(--spacing-4)}.form-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-gray-800);margin:0 0 var(--spacing-2);text-align:center}.form-description{font-size:var(--font-size-sm);color:var(--color-gray-600);text-align:center;margin:0}.form-group{display:flex;flex-direction:column;gap:var(--spacing-1)}.form-group label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-700)}.form-group input{padding:var(--spacing-3);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);font-size:var(--font-size-md);transition:all var(--transition-fast);background:var(--color-white)}.form-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #5dbbe833}.form-group input:disabled{background:var(--color-gray-100);cursor:not-allowed}.form-group input::placeholder{color:var(--color-gray-400)}.btn-block{width:100%;padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-md);font-weight:600;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.btn-block:disabled{opacity:.7;cursor:not-allowed}.login-form .btn-primary{background:linear-gradient(135deg,var(--color-primary) 0%,#3da8d5 100%);color:#fff;box-shadow:0 4px 12px #5dbbe866}.login-form .btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px #5dbbe880}.login-form .btn-primary:active:not(:disabled){transform:translateY(0)}.form-links{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-2);padding-top:var(--spacing-2);border-top:1px solid var(--color-gray-100)}.link-btn{background:none;border:none;padding:var(--spacing-1);font-size:var(--font-size-sm);color:var(--color-primary);cursor:pointer;transition:color var(--transition-fast)}.link-btn:hover{color:var(--color-primary-dark);text-decoration:underline}.login-message{display:flex;align-items:flex-start;gap:var(--spacing-2);padding:var(--spacing-3);border-radius:var(--radius-md);font-size:var(--font-size-sm);margin-bottom:var(--spacing-2)}.message-icon{flex-shrink:0}.login-error{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:#b91c1c}.login-success{background:#22c55e1a;border:1px solid rgba(34,197,94,.2);color:#166534}.login-warning{background:#f59e0b1a;border:1px solid rgba(245,158,11,.2);color:#92400e}.login-info{background:#5dbbe81a;border:1px solid rgba(93,187,232,.2);color:#0369a1;font-weight:500}.form-group input.input-warning{border-color:#f59e0b}.form-group input.input-warning:focus{border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b33}.login-footer{text-align:center;color:#ffffff80;font-size:var(--font-size-sm)}.login-footer strong{color:#fffc}@media(max-width:480px){.login-page,.login-card{padding:var(--spacing-4)}.login-title{font-size:var(--font-size-xl)}.form-links{flex-direction:column;align-items:center}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.btn-block:disabled{animation:pulse 1.5s ease-in-out infinite}:root{--spinner-primary: var(--color-primary, #5DBBE8);--spinner-secondary: rgba(93, 187, 232, .2);--spinner-animation-duration: 1.2s}.loading-spinner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;padding:2rem}.loading-spinner-fullscreen{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;min-height:400px;width:100%}.loading-spinner-text{margin:0;font-size:1rem;color:var(--color-gray-600, #6B7280);font-weight:500;text-align:center}.cloudcafe-spinner{position:relative;display:inline-block}.cloudcafe-spinner-ring{position:absolute;border-radius:50%;border:3px solid transparent;border-top-color:var(--spinner-primary);animation:cloudcafe-spin var(--spinner-animation-duration) cubic-bezier(.68,-.55,.27,1.55) infinite}.cloudcafe-spinner-small{width:32px;height:32px}.cloudcafe-spinner-small .cloudcafe-spinner-ring{width:32px;height:32px;border-width:2px}.cloudcafe-spinner-small .cloudcafe-spinner-ring:nth-child(1){animation-delay:0s}.cloudcafe-spinner-small .cloudcafe-spinner-ring:nth-child(2){width:24px;height:24px;top:4px;left:4px;animation-delay:-.4s;border-top-color:#5dbbe899}.cloudcafe-spinner-small .cloudcafe-spinner-ring:nth-child(3){width:16px;height:16px;top:8px;left:8px;animation-delay:-.8s;border-top-color:#5dbbe84d}.cloudcafe-spinner-medium{width:48px;height:48px}.cloudcafe-spinner-medium .cloudcafe-spinner-ring{width:48px;height:48px;border-width:3px}.cloudcafe-spinner-medium .cloudcafe-spinner-ring:nth-child(1){animation-delay:0s}.cloudcafe-spinner-medium .cloudcafe-spinner-ring:nth-child(2){width:36px;height:36px;top:6px;left:6px;animation-delay:-.4s;border-top-color:#5dbbe899}.cloudcafe-spinner-medium .cloudcafe-spinner-ring:nth-child(3){width:24px;height:24px;top:12px;left:12px;animation-delay:-.8s;border-top-color:#5dbbe84d}.cloudcafe-spinner-large{width:64px;height:64px}.cloudcafe-spinner-large .cloudcafe-spinner-ring{width:64px;height:64px;border-width:4px}.cloudcafe-spinner-large .cloudcafe-spinner-ring:nth-child(1){animation-delay:0s}.cloudcafe-spinner-large .cloudcafe-spinner-ring:nth-child(2){width:48px;height:48px;top:8px;left:8px;animation-delay:-.4s;border-top-color:#5dbbe899}.cloudcafe-spinner-large .cloudcafe-spinner-ring:nth-child(3){width:32px;height:32px;top:16px;left:16px;animation-delay:-.8s;border-top-color:#5dbbe84d}@keyframes cloudcafe-spin{0%{transform:rotate(0);opacity:1}50%{opacity:.8}to{transform:rotate(360deg);opacity:1}}@media(prefers-reduced-motion:reduce){.cloudcafe-spinner-ring{animation-duration:2s}}.inbox-page{display:flex;flex-direction:row;height:calc(100vh - 100px);position:relative;gap:var(--spacing-3);overflow:hidden}.folder-sidebar{width:220px;min-width:180px;flex-shrink:0}.email-list-section{min-width:250px;max-width:600px;flex-shrink:0;display:flex;flex-direction:column;overflow:hidden}.email-preview-section{flex:1;min-width:300px;overflow:hidden;background:var(--color-background-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;border:1px solid var(--color-border);transition:background-color var(--transition-base),border-color var(--transition-base)}.resize-handle{width:12px;flex-shrink:0;cursor:col-resize;display:flex;align-items:center;justify-content:center;background:transparent;z-index:20;position:relative}.resize-handle:before{content:"";width:4px;height:60px;background:var(--color-border-dark);border-radius:4px;opacity:.5;transition:opacity .15s,background .15s,height .15s}.resize-handle:hover:before{opacity:1;background:var(--color-text-tertiary);height:80px}.resize-handle.dragging:before{opacity:1;background:var(--color-primary);height:100px}.inbox-page.resizing{-webkit-user-select:none;user-select:none;cursor:col-resize}.inbox-page.resizing *{cursor:col-resize!important;pointer-events:none}.inbox-page.resizing .resize-handle{pointer-events:auto}.inbox-no-account{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--spacing-12)}.inbox-no-account .empty-icon{font-size:64px;margin-bottom:var(--spacing-4)}.inbox-no-account h2{font-size:var(--font-size-xl);color:var(--color-text-primary);margin:0 0 var(--spacing-2)}.inbox-no-account p{color:var(--color-text-secondary);margin:0 0 var(--spacing-6)}.folder-sidebar{background:var(--color-background-secondary);border-radius:var(--radius-lg);padding:var(--spacing-4);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);display:flex;flex-direction:column;overflow:hidden;transition:background-color var(--transition-base),border-color var(--transition-base)}.compose-btn{display:flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-3);background:linear-gradient(135deg,var(--color-primary) 0%,#3da8d5 100%);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--font-size-md);font-weight:600;cursor:pointer;margin-bottom:var(--spacing-4);transition:all var(--transition-fast)}.compose-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #5dbbe866}.folder-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:var(--spacing-1)}.folder-item{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);background:none;border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);text-align:left;width:100%}.folder-item:hover{background:var(--color-background-tertiary)}.folder-item.active{background:#5dbbe81a;color:var(--color-primary);font-weight:500}.folder-icon{font-size:var(--font-size-md)}.folder-name{flex:1}.folder-badge{background:var(--color-primary);color:#fff;font-size:var(--font-size-xs);font-weight:600;padding:2px 6px;border-radius:var(--radius-full)}.account-selector{margin-top:auto;padding-top:var(--spacing-4);border-top:1px solid var(--color-border)}.account-selector label{display:block;font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:var(--spacing-1);font-weight:500}.account-selector-wrapper{position:relative;display:flex;align-items:center}.account-selector select{width:100%;padding:var(--spacing-2);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);background:var(--color-background-secondary);color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-fast);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right var(--spacing-2) center;background-size:14px;padding-right:var(--spacing-6)}.account-selector select:hover:not(:disabled){border-color:var(--color-primary);background-color:var(--color-background-tertiary)}.account-selector select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #5dbbe81a}.account-selector select:disabled{opacity:.6;cursor:not-allowed;background-color:var(--color-background-tertiary);color:var(--color-text-tertiary)}.account-selector select.switching{color:var(--color-text-secondary)}.account-selector select option{background:var(--color-background-secondary);color:var(--color-text-primary)}.account-switching-spinner{position:absolute;right:var(--spacing-3);display:flex;align-items:center;justify-content:center;pointer-events:none}.account-switching-spinner .spinner-icon{font-size:var(--font-size-md);animation:spin 1s linear infinite}.email-list-section{background:var(--color-background-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);display:flex;flex-direction:column;overflow:hidden;transition:background-color var(--transition-base),border-color var(--transition-base)}.email-list-header{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3);border-bottom:1px solid var(--color-border)}.search-box{flex:1;display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);background:var(--color-background-tertiary);border-radius:var(--radius-md)}.search-icon{color:var(--color-text-tertiary)}.search-box input{flex:1;border:none;background:none;font-size:var(--font-size-sm);outline:none;color:var(--color-text-primary)}.search-box input::placeholder{color:var(--color-text-tertiary)}.refresh-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);color:var(--color-text-secondary)}.refresh-btn:hover:not(:disabled){background:var(--color-background-tertiary);color:var(--color-text-primary)}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.email-list{flex:1;overflow-y:auto}.email-item{display:grid;grid-template-columns:auto 1fr auto;gap:var(--spacing-3);padding:var(--spacing-3);border-bottom:1px solid var(--color-border-light);cursor:pointer;transition:background var(--transition-fast)}.email-item:hover{background:var(--color-background-tertiary)}.email-item.selected{background:#5dbbe81a}.email-item.unread{background:var(--color-background-secondary)}.email-item.unread .sender-name,.email-item.unread .email-subject{font-weight:600}.email-sender{display:flex;align-items:center;gap:var(--spacing-2)}.sender-avatar{width:32px;height:32px;border-radius:var(--radius-full);background:var(--color-border-dark);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-on-primary)}.sender-avatar.large{width:40px;height:40px;font-size:var(--font-size-md);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%)}.sender-name{font-size:var(--font-size-sm);color:var(--color-text-primary);max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email-content{min-width:0}.email-subject{font-size:var(--font-size-sm);color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:var(--spacing-1)}.email-preview{font-size:var(--font-size-xs);color:var(--color-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email-meta{display:flex;flex-direction:column;align-items:flex-end;gap:var(--spacing-1);min-width:60px}.email-date{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.attachment-icon,.flag-icon{font-size:var(--font-size-xs)}.loading-state,.empty-email-list,.no-email-selected{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-12);text-align:center;color:var(--color-text-tertiary)}.loading-state .empty-icon,.empty-email-list .empty-icon,.no-email-selected .empty-icon{font-size:48px;margin-bottom:var(--spacing-4);opacity:.5}.loading-state h3,.empty-email-list h3,.no-email-selected h3{font-size:var(--font-size-md);color:var(--color-text-secondary);margin:0 0 var(--spacing-1)}.loading-state p,.empty-email-list p,.no-email-selected p{font-size:var(--font-size-sm);margin:0}.email-preview{flex:1;display:flex;flex-direction:column;overflow:hidden}.preview-header{display:flex;justify-content:space-between;align-items:flex-start;padding:var(--spacing-4);border-bottom:1px solid var(--color-border)}.preview-subject{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary);margin:0;flex:1;padding-right:var(--spacing-4)}.preview-actions{display:flex;gap:var(--spacing-1)}.action-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);color:var(--color-text-secondary)}.action-btn:hover{background:var(--color-background-tertiary);color:var(--color-text-primary)}.preview-meta{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-3) var(--spacing-4);background:var(--color-background-tertiary);border-bottom:1px solid var(--color-border)}.sender-info{display:flex;align-items:center;gap:var(--spacing-3)}.sender-details{display:flex;flex-direction:column}.sender-details .sender-name{font-weight:600;color:var(--color-text-primary);max-width:none}.sender-email,.email-datetime{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.preview-recipients{padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm);border-bottom:1px solid var(--color-border-light)}.recipient-label{color:var(--color-text-tertiary);margin-right:var(--spacing-2)}.recipient-list{color:var(--color-text-secondary)}.preview-attachments{padding:var(--spacing-3) var(--spacing-4);background:var(--color-background-tertiary);border-bottom:1px solid var(--color-border-light)}.attachment-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-right:var(--spacing-2)}.attachment-list{display:flex;flex-wrap:wrap;gap:var(--spacing-2);margin-top:var(--spacing-2)}.attachment-item{padding:var(--spacing-1) var(--spacing-2);background:var(--color-background-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.preview-body{flex:1;padding:var(--spacing-4);overflow-y:auto}.email-html-body{font-size:var(--font-size-sm);line-height:1.6;color:var(--color-text-primary)}.email-html-body img{max-width:100%;height:auto}.email-text-body{font-family:inherit;font-size:var(--font-size-sm);line-height:1.6;color:var(--color-text-primary);white-space:pre-wrap;margin:0}.loading-body{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-8);color:var(--color-text-tertiary)}.inbox-error{position:absolute;bottom:var(--spacing-4);left:50%;transform:translate(-50%);padding:var(--spacing-3) var(--spacing-4);background:#ef4444f2;color:#fff;border-radius:var(--radius-md);font-size:var(--font-size-sm);box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:var(--spacing-2)}@media(max-width:1024px){.inbox-page{flex-direction:row}.folder-sidebar{width:180px;min-width:150px}.email-list-section{width:280px!important;min-width:200px;max-width:400px}}@media(max-width:768px){.inbox-page{flex-direction:column}.resize-handle{display:none}.folder-sidebar{width:100%;height:auto;max-height:200px}.folder-sidebar.collapsed{display:none}.email-list-section{width:100%!important;max-width:none;flex:1;min-height:200px}.email-preview-section{display:none}.email-preview-section.show-preview{display:flex;position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;border-radius:0}}.signature-editor{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:var(--spacing-6)}.editor-header{margin-bottom:var(--spacing-4);border-bottom:1px solid var(--color-gray-200);padding-bottom:var(--spacing-4)}.editor-header h3{font-size:var(--font-size-lg);font-weight:600;color:var(--color-gray-900);margin:0}.editor-group{margin-bottom:var(--spacing-4)}.editor-group label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-700);margin-bottom:var(--spacing-2)}.editor-group input{width:100%;padding:var(--spacing-3);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);font-size:var(--font-size-md);transition:border-color var(--transition-fast)}.editor-group input:focus{outline:none;border-color:var(--color-primary)}.editor-group input:disabled{background:var(--color-gray-100);cursor:not-allowed}.editor-help{font-size:var(--font-size-xs);color:var(--color-gray-500);margin:var(--spacing-1) 0 0 0}.editor-tabs{display:flex;gap:var(--spacing-2);border-bottom:2px solid var(--color-gray-200);margin-bottom:var(--spacing-4)}.editor-tab{display:flex;align-items:center;gap:var(--spacing-1);padding:var(--spacing-3) var(--spacing-4);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;color:var(--color-gray-600);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.editor-tab:hover:not(:disabled){color:var(--color-primary)}.editor-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.editor-tab:disabled{opacity:.5;cursor:not-allowed}.editor-content{margin-bottom:var(--spacing-4)}.editor-toolbar{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3);background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-md) var(--radius-md) 0 0;margin-bottom:0}.toolbar-btn{width:36px;height:36px;padding:0;background:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);font-size:var(--font-size-md);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.toolbar-btn:hover:not(:disabled){background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.toolbar-btn:disabled{opacity:.5;cursor:not-allowed}.toolbar-separator{width:1px;height:24px;background:var(--color-gray-300);margin:0 var(--spacing-1)}.toolbar-help{font-size:var(--font-size-xs);color:var(--color-gray-500);margin:0 0 0 auto;white-space:nowrap}.editor-textarea{width:100%;min-height:300px;padding:var(--spacing-3);border:1px solid var(--color-gray-200);border-top:none;border-radius:0 0 var(--radius-md) var(--radius-md);font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:var(--font-size-sm);resize:vertical;transition:border-color var(--transition-fast)}.editor-textarea:focus{outline:none;border-color:var(--color-primary)}.editor-textarea:disabled{background:var(--color-gray-100);cursor:not-allowed}.editor-textarea.editor-html{border-radius:var(--radius-md);border:1px solid var(--color-gray-200)}.editor-info{padding:var(--spacing-4);background:var(--color-blue-50);border:1px solid var(--color-blue-200);border-radius:var(--radius-md);margin-bottom:var(--spacing-4)}.editor-info p{font-size:var(--font-size-sm);color:var(--color-gray-700);margin:0 0 var(--spacing-2) 0}.editor-info p:last-child{margin-bottom:0}.info-note{font-size:var(--font-size-xs);color:var(--color-gray-600);font-style:italic}.preview-box{padding:var(--spacing-4);background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);min-height:300px;max-height:600px;overflow-y:auto}.preview-content{font-size:var(--font-size-md);line-height:1.6;color:var(--color-gray-800)}.editor-actions{display:flex;justify-content:flex-end;gap:var(--spacing-3);margin-top:var(--spacing-6);padding-top:var(--spacing-4);border-top:1px solid var(--color-gray-200)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}@media(max-width:640px){.signature-editor{padding:var(--spacing-4)}.editor-toolbar{flex-wrap:wrap}.toolbar-help{width:100%;margin:var(--spacing-2) 0 0 0}.editor-textarea{min-height:200px}.editor-actions{flex-direction:column}.editor-actions .btn{width:100%}}.signatures-container{width:100%}.signatures-container .empty-state{text-align:center;padding:var(--spacing-12);background:var(--color-gray-50);border:2px dashed var(--color-gray-300);border-radius:var(--radius-lg)}.empty-icon{font-size:48px;margin-bottom:var(--spacing-4);display:block}.empty-state h3{font-size:var(--font-size-lg);font-weight:600;color:var(--color-gray-800);margin:0 0 var(--spacing-2)}.empty-state p{color:var(--color-gray-600);margin:0}.signatures-list{display:flex;flex-direction:column;gap:var(--spacing-3)}.signature-card{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);overflow:hidden;transition:box-shadow var(--transition-fast)}.signature-card:hover{box-shadow:var(--shadow-md)}.signature-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-4);cursor:pointer;transition:background-color var(--transition-fast)}.signature-header:hover{background:var(--color-gray-50)}.signature-info{flex:1}.signature-info h4{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-900);margin:0 0 var(--spacing-1) 0}.signature-meta{display:flex;align-items:center;gap:var(--spacing-2);margin:0;font-size:var(--font-size-sm)}.badge{display:inline-block;padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500}.badge-default{background:#5dbbe81a;color:var(--color-primary-dark)}.signature-date{color:var(--color-gray-500)}.signature-details{padding:var(--spacing-4);border-top:1px solid var(--color-gray-200);background:var(--color-gray-50);animation:slideDown .2s ease-out}.signature-preview{margin-bottom:var(--spacing-4)}.preview-label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-700);margin-bottom:var(--spacing-2)}.preview-content{padding:var(--spacing-3);background:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:var(--font-size-md);line-height:1.6;color:var(--color-gray-800)}.preview-content p{margin:0 0 var(--spacing-2) 0}.preview-content p:last-child{margin-bottom:0}.preview-content img{max-width:100%;height:auto;margin:var(--spacing-2) 0;border-radius:var(--radius-sm)}.preview-content a{color:var(--color-primary);text-decoration:underline}.preview-content strong{font-weight:600}.preview-content em{font-style:italic}.signature-actions{display:flex;gap:var(--spacing-2);padding-top:var(--spacing-3);border-top:1px solid var(--color-gray-300)}@media(max-width:640px){.signature-header{padding:var(--spacing-3)}.signature-info h4{font-size:var(--font-size-md)}.signature-details{padding:var(--spacing-3)}.signature-actions{flex-direction:column}.signature-actions .btn{width:100%;text-align:center}.preview-content{font-size:var(--font-size-sm)}}.rule-editor{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:var(--spacing-6);max-width:800px;margin:0 auto}.editor-header{margin-bottom:var(--spacing-6);padding-bottom:var(--spacing-4);border-bottom:2px solid var(--color-gray-100)}.editor-header h3{font-size:var(--font-size-xl);font-weight:600;color:var(--color-gray-900);margin:0}.editor-error{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3);background:#ef44441a;color:#b91c1c;border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-md);margin-bottom:var(--spacing-4);font-size:var(--font-size-sm)}.editor-group{margin-bottom:var(--spacing-6)}.editor-group label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-800);margin-bottom:var(--spacing-2)}.editor-group input[type=text],.editor-group input[type=email],.editor-group select{width:100%;padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-family:inherit;transition:border-color var(--transition-fast)}.editor-group input:focus,.editor-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #5dbbe81a}.editor-group input:disabled,.editor-group select:disabled{background:var(--color-gray-50);color:var(--color-gray-600);cursor:not-allowed}.editor-help{font-size:var(--font-size-xs);color:var(--color-gray-600);margin:var(--spacing-1) 0 0 0}.editor-section{margin-bottom:var(--spacing-6);padding:var(--spacing-4);background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg)}.section-header{margin-bottom:var(--spacing-4)}.section-header h4{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-900);margin:0 0 var(--spacing-1) 0}.section-help{font-size:var(--font-size-sm);color:var(--color-gray-600);margin:0}.condition-logic{display:flex;flex-direction:column;gap:var(--spacing-2);margin-bottom:var(--spacing-4);padding:var(--spacing-3);background:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-md)}.condition-logic label{display:flex;align-items:center;gap:var(--spacing-2);cursor:pointer;margin:0;font-size:var(--font-size-sm);color:var(--color-gray-800)}.condition-logic input[type=radio]{width:18px;height:18px;cursor:pointer}.conditions-list{display:flex;flex-direction:column;gap:var(--spacing-3);margin-bottom:var(--spacing-3)}.condition-item{display:flex;flex-direction:column;gap:var(--spacing-2)}.condition-operator{font-size:var(--font-size-xs);font-weight:600;color:var(--color-gray-600);text-transform:uppercase;text-align:center;padding:var(--spacing-1) 0;margin-top:var(--spacing-1)}.condition-inputs{display:flex;gap:var(--spacing-2);align-items:flex-end}.condition-field,.condition-operator-select,.condition-value{flex:1;padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-family:inherit;background:var(--color-white);transition:border-color var(--transition-fast)}.condition-field:focus,.condition-operator-select:focus,.condition-value:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #5dbbe81a}.condition-field:disabled,.condition-operator-select:disabled,.condition-value:disabled{background:var(--color-gray-100);color:var(--color-gray-600);cursor:not-allowed}.btn-remove{padding:var(--spacing-2);background:#ef44441a;color:#b91c1c;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-sm);font-weight:600;transition:all var(--transition-fast);min-width:40px;height:40px;display:flex;align-items:center;justify-content:center}.btn-remove:hover:not(:disabled){background:#ef444433;border-color:#ef444480}.btn-remove:disabled{opacity:.6;cursor:not-allowed}.actions-list{display:flex;flex-direction:column;gap:var(--spacing-3);margin-bottom:var(--spacing-3)}.action-item{display:flex;flex-direction:column;gap:var(--spacing-2)}.action-inputs{display:flex;gap:var(--spacing-2);align-items:flex-end}.action-type,.action-value{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-family:inherit;background:var(--color-white);transition:border-color var(--transition-fast)}.action-type{flex:1;min-width:200px}.action-value{flex:1}.action-type:focus,.action-value:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #5dbbe81a}.action-type:disabled,.action-value:disabled{background:var(--color-gray-100);color:var(--color-gray-600);cursor:not-allowed}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-2);cursor:pointer;margin:0 0 var(--spacing-2) 0;font-size:var(--font-size-sm);color:var(--color-gray-800)}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-primary)}.checkbox-label input[type=checkbox]:disabled{cursor:not-allowed;opacity:.6}.option-help{font-size:var(--font-size-xs);color:var(--color-gray-600);margin:var(--spacing-1) 0 0 var(--spacing-6)}.editor-actions{display:flex;gap:var(--spacing-3);padding-top:var(--spacing-4);border-top:1px solid var(--color-gray-200);justify-content:flex-end}.editor-actions .btn{padding:var(--spacing-2) var(--spacing-4);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.editor-actions .btn-primary{background:var(--color-primary);color:#fff;min-width:140px}.editor-actions .btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.editor-actions .btn-secondary{background:var(--color-gray-200);color:var(--color-gray-800)}.editor-actions .btn-secondary:hover:not(:disabled){background:var(--color-gray-300)}.editor-actions .btn:disabled{opacity:.6;cursor:not-allowed}.btn-add{width:100%;padding:var(--spacing-2) var(--spacing-3);background:var(--color-gray-200);color:var(--color-gray-800);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast);margin-top:var(--spacing-2)}.btn-add:hover:not(:disabled){background:var(--color-gray-300)}.btn-add:disabled{opacity:.6;cursor:not-allowed}@media(max-width:640px){.rule-editor{padding:var(--spacing-4)}.editor-header h3{font-size:var(--font-size-lg)}.condition-inputs,.action-inputs{flex-direction:column}.condition-field,.condition-operator-select,.condition-value,.action-type,.action-value,.btn-remove{width:100%}.editor-actions{flex-direction:column}.editor-actions .btn{width:100%}.editor-section{padding:var(--spacing-3)}.condition-logic{padding:var(--spacing-2)}}.rules-container{width:100%}.rules-container .empty-state{text-align:center;padding:var(--spacing-12);background:var(--color-gray-50);border:2px dashed var(--color-gray-300);border-radius:var(--radius-lg)}.rules-container .empty-state .empty-icon{font-size:48px;margin-bottom:var(--spacing-4);display:block}.rules-container .empty-state h3{font-size:var(--font-size-lg);font-weight:600;color:var(--color-gray-800);margin:0 0 var(--spacing-2)}.rules-container .empty-state p{color:var(--color-gray-600);margin:0 0 var(--spacing-4)}.rules-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-4);padding:var(--spacing-3) 0;border-bottom:1px solid var(--color-gray-200)}.rules-info{margin:0;font-size:var(--font-size-sm);color:var(--color-gray-600);flex:1;display:flex;align-items:center;gap:var(--spacing-2)}.info-hint{display:inline-block;font-size:var(--font-size-xs);color:var(--color-gray-500);font-style:italic;margin-left:var(--spacing-2)}.rules-list{display:flex;flex-direction:column;gap:var(--spacing-3)}.rule-card{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition-fast);cursor:grab}.rule-card:active{cursor:grabbing}.rule-card.dragging{opacity:.5;box-shadow:0 8px 16px #0000001a;transform:rotate(2deg)}.rule-card:hover{box-shadow:var(--shadow-md)}.rule-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-4);cursor:pointer;transition:background-color var(--transition-fast);-webkit-user-select:none;user-select:none}.rule-header:hover{background:var(--color-gray-50)}.rule-drag-handle{color:var(--color-gray-400);font-size:var(--font-size-xs);margin-right:var(--spacing-2);cursor:grab;-webkit-user-select:none;user-select:none}.rule-drag-handle:active{cursor:grabbing}.rule-info{flex:1}.rule-info h4{font-size:var(--font-size-md);font-weight:600;color:var(--color-gray-900);margin:0 0 var(--spacing-1) 0}.rule-meta{margin:0;font-size:var(--font-size-sm);color:var(--color-gray-600)}.rule-status{display:flex;align-items:center;gap:var(--spacing-3);margin-right:var(--spacing-3)}.badge-warning{background:#f59e0b1a;color:#92400e;padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;white-space:nowrap}.rule-toggle{display:flex;align-items:center;cursor:pointer}.rule-toggle input{display:none}.toggle-slider{display:inline-flex;align-items:center;width:44px;height:24px;background:var(--color-gray-300);border-radius:12px;transition:background-color var(--transition-fast);position:relative;margin:0}.toggle-slider:before{content:"";position:absolute;width:20px;height:20px;background:#fff;border-radius:50%;left:2px;transition:left var(--transition-fast);box-shadow:0 2px 4px #0000001a}.rule-toggle input:checked+.toggle-slider{background:var(--color-primary)}.rule-toggle input:checked+.toggle-slider:before{left:22px}.rule-toggle input:disabled+.toggle-slider{opacity:.6;cursor:not-allowed}.expand-btn{background:none;border:none;font-size:var(--font-size-lg);color:var(--color-gray-600);cursor:pointer;padding:var(--spacing-1);transition:color var(--transition-fast)}.expand-btn:hover{color:var(--color-primary)}.rule-details{padding:var(--spacing-4);border-top:1px solid var(--color-gray-200);background:var(--color-gray-50);animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.rule-section{margin-bottom:var(--spacing-4)}.rule-section:last-child{margin-bottom:0}.rule-section h5{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray-800);margin:0 0 var(--spacing-2) 0;text-transform:uppercase;letter-spacing:.5px}.rule-conditions,.rule-actions{list-style:none;margin:0 0 var(--spacing-3) 0;padding:0;background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);overflow:hidden}.rule-conditions li,.rule-actions li{padding:var(--spacing-2) var(--spacing-3);border-bottom:1px solid var(--color-gray-100);font-size:var(--font-size-sm);color:var(--color-gray-700);display:flex;align-items:center;gap:var(--spacing-2)}.rule-conditions li:last-child,.rule-actions li:last-child{border-bottom:none}.rule-conditions li:before{content:"";display:inline-block;width:6px;height:6px;background:var(--color-primary);border-radius:50%;flex-shrink:0}.rule-actions li:before{content:"→";display:inline-block;color:var(--color-primary);font-weight:600;flex-shrink:0}.rule-meta-info{display:flex;gap:var(--spacing-4);padding:var(--spacing-3);background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);margin-bottom:var(--spacing-3);font-size:var(--font-size-sm);color:var(--color-gray-600)}.meta-item{display:flex;align-items:center;gap:var(--spacing-2)}.meta-item strong{color:var(--color-gray-800)}.rule-card-actions{display:flex;gap:var(--spacing-2);padding-top:var(--spacing-3);border-top:1px solid var(--color-gray-300)}.btn{padding:var(--spacing-2) var(--spacing-3);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-sm{padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-xs)}.btn-add{width:100%;margin-top:var(--spacing-2)}.btn-primary{background:var(--color-primary);color:#fff}.btn-secondary{background:var(--color-gray-200);color:var(--color-gray-800)}.btn-secondary:hover:not(:disabled){background:var(--color-gray-300)}.btn-danger{background:#ef44441a;color:#b91c1c;border:1px solid rgba(239,68,68,.3)}.btn-danger:hover:not(:disabled){background:#ef444433;border-color:#ef444480}.btn:disabled{opacity:.6;cursor:not-allowed}.message-error{background:#ef44441a;color:#b91c1c;border:1px solid rgba(239,68,68,.2)}@media(max-width:768px){.rules-toolbar{flex-direction:column;align-items:flex-start;gap:var(--spacing-2)}.rules-info{width:100%;margin-bottom:var(--spacing-2)}.info-hint{display:none}.rule-header{padding:var(--spacing-3);flex-wrap:wrap}.rule-drag-handle{display:none}.rule-info{width:100%}.rule-status{width:100%;justify-content:space-between;margin-right:0;margin-top:var(--spacing-2)}.expand-btn{margin-left:auto}.rule-details{padding:var(--spacing-3)}.rule-card-actions{flex-direction:column}.rule-card-actions .btn{width:100%;text-align:center}.rule-meta-info{flex-direction:column;gap:var(--spacing-2)}}@media(max-width:640px){.rule-section{margin-bottom:var(--spacing-3)}.rule-section h5{font-size:var(--font-size-xs)}.rule-conditions li,.rule-actions li,.rule-meta-info{padding:var(--spacing-2);font-size:var(--font-size-xs)}}.app-theme-switcher{padding:var(--spacing-4);background:var(--color-background-secondary, #FFFFFF);border-radius:var(--radius-lg);border:1px solid var(--color-border, #E5E7EB)}.theme-switcher-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-4);padding-bottom:var(--spacing-3);border-bottom:1px solid var(--color-border, #E5E7EB)}.theme-switcher-header h4{margin:0;font-size:var(--font-size-base, 1rem);font-weight:600;color:var(--color-text-primary, #111827)}.current-theme-badge{padding:var(--spacing-1, .25rem) var(--spacing-2, .5rem);background:var(--color-primary, #5DBBE8);color:var(--color-text-on-primary, #FFFFFF);border-radius:var(--radius-sm, .25rem);font-size:var(--font-size-xs, .75rem);font-weight:500}.theme-error{padding:var(--spacing-3);background:var(--color-error-light, #FEE2E2);border:1px solid var(--color-error, #EF4444);border-radius:var(--radius-md, .375rem);color:var(--color-error, #EF4444);font-size:var(--font-size-sm, .875rem);margin-bottom:var(--spacing-4)}.theme-options{display:flex;flex-direction:column;gap:var(--spacing-3, .75rem)}.theme-option{display:flex;align-items:center;gap:var(--spacing-3, .75rem);padding:var(--spacing-3, .75rem);background:var(--color-background-secondary, #FFFFFF);border:2px solid var(--color-border, #E5E7EB);border-radius:var(--radius-md, .375rem);cursor:pointer;transition:all .2s ease;position:relative;text-align:left;width:100%}.theme-option:hover{border-color:var(--color-primary, #5DBBE8);background:var(--color-background-tertiary, #F9FAFB);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.theme-option.selected{border-color:var(--color-primary, #5DBBE8);background:var(--color-primary-lighter, #A8E4FA);box-shadow:var(--shadow-md)}.theme-preview{width:48px;height:48px;border-radius:var(--radius-md, .375rem);flex-shrink:0;position:relative;overflow:hidden;box-shadow:var(--shadow-sm)}.theme-preview-secondary{position:absolute;bottom:0;right:0;width:60%;height:60%;border-radius:var(--radius-sm) 0 0 0}.theme-info{flex:1;min-width:0}.theme-name{font-size:var(--font-size-sm, .875rem);font-weight:600;color:var(--color-text-primary, #111827);margin-bottom:var(--spacing-1, .25rem);display:flex;align-items:center;gap:var(--spacing-2)}.theme-description{font-size:var(--font-size-xs, .75rem);color:var(--color-text-secondary, #4B5563)}.selected-indicator{flex-shrink:0;color:var(--color-primary, #5DBBE8);display:flex;align-items:center;justify-content:center}.theme-option.selected .selected-indicator{color:var(--color-primary-dark, #4AA5CF)}.theme-switcher-footer{margin-top:var(--spacing-4);padding-top:var(--spacing-3);border-top:1px solid var(--color-border, #E5E7EB)}.theme-note{margin:0;font-size:var(--font-size-xs, .75rem);color:var(--color-text-tertiary, #6B7280);text-align:center}@media(max-width:768px){.app-theme-switcher{padding:var(--spacing-3, .75rem)}.theme-switcher-header{margin-bottom:var(--spacing-3);padding-bottom:var(--spacing-2)}.theme-options{gap:var(--spacing-2, .5rem)}.theme-option{padding:var(--spacing-2, .5rem);gap:var(--spacing-2)}.theme-preview{width:36px;height:36px}.theme-name{font-size:var(--font-size-xs, .75rem);margin-bottom:0}.theme-description{display:none}.selected-indicator svg{width:16px;height:16px}.theme-switcher-footer{display:none}}.preferences-panel{display:flex;flex-direction:column;gap:var(--spacing-6);padding:var(--spacing-4) 0}.preferences-loading{display:flex;align-items:center;justify-content:center;padding:var(--spacing-12);color:var(--color-text-secondary);font-size:var(--font-size-md)}.message{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3);border-radius:var(--radius-md);margin-bottom:var(--spacing-4);font-size:var(--font-size-sm);animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.preferences-section{display:flex;flex-direction:column;gap:var(--spacing-4);padding:var(--spacing-5);background:var(--color-background-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:box-shadow var(--transition-fast),background-color var(--transition-base),border-color var(--transition-base)}.preferences-section:hover{box-shadow:var(--shadow-sm)}.section-header{border-bottom:1px solid var(--color-border-light);padding-bottom:var(--spacing-3)}.section-header h3{font-size:var(--font-size-md);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--spacing-1)}.section-header p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.preferences-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-4)}.preference-item{display:flex;flex-direction:column;gap:var(--spacing-2)}.preference-item label{display:flex;flex-direction:column;gap:var(--spacing-1);font-weight:500}.label-text{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:600}.label-description{font-size:var(--font-size-xs);color:var(--color-text-tertiary);font-weight:400}.preference-item select{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-background-secondary);color:var(--color-text-primary);font-size:var(--font-size-sm);font-family:inherit;cursor:pointer;transition:all var(--transition-fast);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right var(--spacing-2) center;background-size:16px;padding-right:var(--spacing-8)}.preference-item select:hover:not(:disabled){border-color:var(--color-primary)}.preference-item select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #5dbbe81a}.preference-item select:disabled{background-color:var(--color-background-tertiary);color:var(--color-text-tertiary);cursor:not-allowed;opacity:.6}.cache-management{margin-top:var(--spacing-4);padding-top:var(--spacing-4);border-top:1px solid var(--color-border-light)}.cache-management h4{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--spacing-1)}.cache-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0 0 var(--spacing-3);line-height:1.5}.preferences-actions{display:flex;justify-content:flex-end;gap:var(--spacing-3);padding:var(--spacing-4);background:var(--color-background-tertiary);border:1px solid var(--color-border);border-top:none;border-radius:0 0 var(--radius-lg) var(--radius-lg);margin:0 -var(--spacing-5) -var(--spacing-6) -var(--spacing-5)}.preferences-actions .btn{min-width:120px}.preferences-info{padding:var(--spacing-3);background:#5dbbe80d;border:1px solid rgba(93,187,232,.2);border-radius:var(--radius-md)}.info-text{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin:0;line-height:1.5}.btn{padding:var(--spacing-2) var(--spacing-4);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast);font-family:inherit}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark);box-shadow:var(--shadow-md)}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-secondary{background:var(--color-background-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-border)}@media(max-width:768px){.preferences-panel{gap:var(--spacing-4)}.preferences-section{padding:var(--spacing-4)}.preferences-grid{grid-template-columns:1fr}.preferences-actions{margin:0 -var(--spacing-4) -var(--spacing-4) -var(--spacing-4);flex-direction:column}.preferences-actions .btn{width:100%}.section-header{padding-bottom:var(--spacing-2)}.section-header h3{font-size:var(--font-size-sm)}.preference-item select{padding:var(--spacing-2) var(--spacing-3);font-size:16px}}@media(max-width:480px){.preferences-section{padding:var(--spacing-3)}.section-header h3{font-size:var(--font-size-sm);margin:0}.section-header p{font-size:var(--font-size-xs)}.cache-management{margin-top:var(--spacing-2);padding-top:var(--spacing-2)}}.settings-page{max-width:900px;margin:0 auto}.settings-header{margin-bottom:var(--spacing-6)}.settings-header h1{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--spacing-1)}.settings-subtitle{color:var(--color-text-secondary);margin:0}.settings-tabs{display:flex;gap:var(--spacing-2);border-bottom:2px solid var(--color-border);margin-bottom:var(--spacing-6)}.tab-btn{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4);background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.tab-btn:hover{color:var(--color-primary)}.tab-btn.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tab-icon{font-size:var(--font-size-md)}.settings-content{min-height:400px}.tab-panel{animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.panel-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-4)}.panel-header h2{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--spacing-1)}.panel-header p{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0}.message{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3);border-radius:var(--radius-md);margin-bottom:var(--spacing-4);font-size:var(--font-size-sm)}.message-success{background:var(--color-success-light);color:var(--color-success);border:1px solid var(--color-success)}.message-error{background:var(--color-error-light);color:var(--color-error);border:1px solid var(--color-error)}.link-account-form{padding:var(--spacing-5);margin-bottom:var(--spacing-4);background:var(--color-background-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.link-account-form h3{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--spacing-1)}.link-account-form .form-description{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0 0 var(--spacing-4)}.link-account-form .form-group{margin-bottom:var(--spacing-3)}.link-account-form label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary);margin-bottom:var(--spacing-1)}.link-account-form input{width:100%;padding:var(--spacing-3);border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-md);background:var(--color-background-secondary);color:var(--color-text-primary);transition:border-color var(--transition-fast)}.link-account-form input:focus{outline:none;border-color:var(--color-primary)}.link-account-form input:disabled{background:var(--color-background-tertiary);color:var(--color-text-tertiary);cursor:not-allowed}.link-account-form input::placeholder{color:var(--color-text-tertiary)}.form-actions{display:flex;justify-content:flex-end;gap:var(--spacing-3);margin-top:var(--spacing-4)}.accounts-list{display:flex;flex-direction:column;gap:var(--spacing-3);margin-bottom:var(--spacing-6)}.account-card{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-4);background:var(--color-background-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:box-shadow var(--transition-fast),background-color var(--transition-base)}.account-card:hover{box-shadow:var(--shadow-md)}.account-info{display:flex;align-items:center;gap:var(--spacing-3)}.account-avatar{width:48px;height:48px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:var(--color-text-on-primary);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);font-weight:600}.account-details h4{font-size:var(--font-size-md);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--spacing-1)}.account-email{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0 0 var(--spacing-2)}.account-meta{display:flex;gap:var(--spacing-2)}.badge{padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500}.badge-primary{background:#5dbbe81a;color:var(--color-primary-dark)}.badge-success{background:var(--color-success-light);color:var(--color-success)}.account-actions{display:flex;gap:var(--spacing-2)}.btn-sm{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm)}.info-card{padding:var(--spacing-4);background:var(--color-background-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.info-card h4{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);margin:0 0 var(--spacing-2)}.info-card p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0 0 var(--spacing-1)}.info-note{font-size:var(--font-size-xs)!important;color:var(--color-text-tertiary)!important;margin-top:var(--spacing-2)!important}.empty-state{text-align:center;padding:var(--spacing-12)}.empty-icon{font-size:48px;margin-bottom:var(--spacing-4);color:var(--color-text-tertiary)}.empty-state h3{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--spacing-2)}.empty-state p{color:var(--color-text-secondary);margin:0 0 var(--spacing-4)}@media(max-width:640px){.settings-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.tab-btn{padding:var(--spacing-2) var(--spacing-3);white-space:nowrap}.panel-header{flex-direction:column;gap:var(--spacing-3)}.account-card{flex-direction:column;align-items:flex-start;gap:var(--spacing-3)}.account-actions{width:100%;justify-content:flex-end}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}.compose-page{display:flex;flex-direction:column;height:100%;background:var(--color-background);padding:1rem}.compose-container{display:flex;flex-direction:column;max-width:900px;width:100%;margin:0 auto;background:var(--color-background-secondary);border-radius:8px;box-shadow:0 2px 8px #0000001a;border:1px solid var(--color-border);overflow:hidden;transition:background-color var(--transition-base),border-color var(--transition-base)}.compose-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--color-border);background:var(--color-background-secondary)}.compose-title{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text-primary)}.compose-actions{display:flex;gap:.75rem}.compose-error{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;background:var(--color-error-light);color:var(--color-error);font-size:.875rem}.error-dismiss{background:none;border:none;color:var(--color-error);font-size:1.25rem;cursor:pointer;padding:0 .5rem;line-height:1}.error-dismiss:hover{opacity:.8}.compose-form{display:flex;flex-direction:column;flex:1;padding:1rem 1.5rem}.from-field{display:flex;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--color-border-light)}.from-label{width:60px;font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.from-value{font-size:.875rem;color:var(--color-text-primary)}.recipient-field{display:flex;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--color-border-light)}.recipient-label{width:60px;font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.recipient-input{flex:1;border:none;padding:.5rem;font-size:.875rem;background:transparent;outline:none;color:var(--color-text-primary)}.recipient-input::placeholder{color:var(--color-text-tertiary)}.cc-bcc-toggle{display:flex;gap:1rem;padding:.5rem 0}.subject-field{display:flex;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--color-border-light)}.subject-label{width:60px;font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.subject-input{flex:1;border:none;padding:.5rem;font-size:.875rem;font-weight:500;background:transparent;outline:none;color:var(--color-text-primary)}.subject-input::placeholder{color:var(--color-text-tertiary);font-weight:400}.body-options{display:flex;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--color-border-light)}.body-type-select,.importance-select,.signature-select{padding:.375rem .75rem;font-size:.75rem;border:1px solid var(--color-border);border-radius:4px;background:var(--color-background-secondary);color:var(--color-text-primary);cursor:pointer}.body-type-select:focus,.importance-select:focus,.signature-select:focus{outline:none;border-color:var(--color-primary)}.body-field{flex:1;display:flex;flex-direction:column;padding:1rem 0}.body-textarea{flex:1;width:100%;min-height:300px;padding:1rem;border:1px solid var(--color-border);border-radius:4px;font-family:inherit;font-size:.9375rem;line-height:1.6;resize:vertical;outline:none;background:var(--color-background-secondary);color:var(--color-text-primary)}.body-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #5dbbe81a}.body-textarea::placeholder{color:var(--color-text-tertiary)}.attachments-field{padding:1rem 0;border-top:1px solid var(--color-border-light)}.attachment-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.attachment-info{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--color-text-secondary)}.attachment-size-warning{color:var(--color-error);font-weight:500}.attachment-size-ok{color:var(--color-text-secondary)}.btn-attachment{position:relative;display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;color:var(--color-text-secondary);background:transparent;border:1px dashed var(--color-border);border-radius:4px;cursor:pointer;transition:all .2s ease}.btn-attachment:hover{background:var(--color-background-tertiary);border-color:var(--color-primary);color:var(--color-primary)}.btn-attachment:disabled{opacity:.5;cursor:not-allowed}.attachment-input{position:absolute;opacity:0;pointer-events:none}.attachment-list{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.attachment-item{display:flex;align-items:center;justify-content:space-between;padding:.625rem .875rem;background:var(--color-background-tertiary);border:1px solid var(--color-border);border-radius:6px;transition:background .2s ease}.attachment-item:hover{background:var(--color-gray-200)}.attachment-item-info{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.attachment-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--color-background-secondary);border:1px solid var(--color-border);border-radius:4px;font-size:1rem;flex-shrink:0}.attachment-details{display:flex;flex-direction:column;min-width:0}.attachment-name-container{display:flex;align-items:center;gap:.5rem;min-width:0}.attachment-name{font-size:.875rem;font-weight:500;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attachment-badge-forwarded{display:inline-flex;align-items:center;padding:.125rem .5rem;background:var(--color-info-light);color:var(--color-info);font-size:.65rem;font-weight:600;border-radius:3px;white-space:nowrap;flex-shrink:0;text-transform:uppercase;letter-spacing:.5px}.attachment-forwarded{border-color:var(--color-info-light);background:var(--color-info-light)}.attachment-meta{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--color-text-secondary)}.attachment-size{font-weight:500}.attachment-type{text-transform:uppercase}.attachment-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.btn-remove-attachment{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;border-radius:4px;transition:all .2s ease;font-size:1.125rem}.btn-remove-attachment:hover{background:var(--color-error-light);color:var(--color-error)}.attachment-progress{margin-top:.75rem;padding:.625rem .875rem;background:var(--color-info-light);border:1px solid var(--color-info);border-radius:6px;font-size:.875rem;color:var(--color-info);display:flex;align-items:center;gap:.5rem}.attachment-drag-drop{margin-top:.75rem;padding:2rem;border:2px dashed var(--color-border);border-radius:8px;text-align:center;color:var(--color-text-secondary);font-size:.875rem;cursor:pointer;transition:all .2s ease}.attachment-drag-drop:hover,.attachment-drag-drop.dragging{border-color:var(--color-primary);background:var(--color-primary-lighter);color:var(--color-primary)}.compose-page .btn-primary{padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;color:var(--color-text-on-primary);background:var(--color-primary);border:none;border-radius:6px;cursor:pointer;transition:background .2s ease}.compose-page .btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.compose-page .btn-primary:disabled{opacity:.6;cursor:not-allowed}.compose-page .btn-secondary{padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;color:var(--color-text-primary);background:var(--color-background-tertiary);border:1px solid var(--color-border);border-radius:6px;cursor:pointer;transition:all .2s ease}.compose-page .btn-secondary:hover:not(:disabled){background:var(--color-gray-200)}.compose-page .btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn-text{padding:.25rem .5rem;font-size:.8125rem;color:var(--color-primary);background:transparent;border:none;cursor:pointer;text-decoration:underline}.btn-text:hover{color:var(--color-primary-dark)}.compose-no-account{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:2rem}.compose-no-account h2{margin:0 0 .5rem;color:var(--color-text-primary)}.compose-no-account p{margin:0 0 1.5rem;color:var(--color-text-secondary)}@media(max-width:640px){.compose-page{padding:0}.compose-container{border-radius:0;height:100%}.compose-header,.compose-form{padding:.75rem 1rem}.from-label,.recipient-label,.subject-label{width:50px}.compose-actions{gap:.5rem}.compose-page .btn-primary,.compose-page .btn-secondary{padding:.5rem .875rem;font-size:.8125rem}}.calendar-page{display:flex;flex-direction:column;height:calc(100vh - 100px);background:var(--color-background);padding:var(--spacing-4);gap:var(--spacing-4);transition:background-color var(--transition-base)}.calendar-no-account{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:var(--spacing-12)}.calendar-no-account .empty-icon{font-size:64px;margin-bottom:var(--spacing-4)}.calendar-no-account h2{font-size:var(--font-size-xl);color:var(--color-text-primary);margin:0 0 var(--spacing-2)}.calendar-no-account p{color:var(--color-text-secondary);margin:0 0 var(--spacing-6)}.calendar-header{display:flex;justify-content:space-between;align-items:center;background:var(--color-background-secondary);border-radius:var(--radius-lg);padding:var(--spacing-4);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);transition:background-color var(--transition-base),border-color var(--transition-base)}.calendar-nav{display:flex;align-items:center;gap:var(--spacing-2)}.nav-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--color-background-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-lg);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.nav-btn:hover{background:var(--color-background-tertiary);border-color:var(--color-border-dark);color:var(--color-text-primary)}.today-btn{width:auto;padding:0 var(--spacing-3);font-size:var(--font-size-sm);font-weight:500}.calendar-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary);margin:0 0 0 var(--spacing-4)}.calendar-actions{display:flex;align-items:center;gap:var(--spacing-3)}.view-selector{display:flex;gap:var(--spacing-1);background:var(--color-background-tertiary);border-radius:var(--radius-md);padding:var(--spacing-1);border:1px solid var(--color-border)}.view-btn{padding:var(--spacing-2) var(--spacing-3);background:none;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.view-btn:hover{color:var(--color-text-primary)}.view-btn.active{background:var(--color-background-secondary);color:var(--color-primary);box-shadow:var(--shadow-sm)}.btn-create-event{padding:var(--spacing-2) var(--spacing-4);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:var(--color-text-on-primary);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.btn-create-event:hover{transform:translateY(-1px);box-shadow:0 4px 12px #5dbbe866}.calendar-content{flex:1;background:var(--color-background-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);overflow:hidden;display:flex;flex-direction:column;transition:background-color var(--transition-base),border-color var(--transition-base)}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-12);color:var(--color-text-tertiary)}.month-view{flex:1;overflow:hidden;padding:var(--spacing-2)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);height:100%;gap:1px;background:var(--color-border);border:1px solid var(--color-border)}.day-header{background:var(--color-background-tertiary);padding:var(--spacing-2);text-align:center;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary)}.calendar-day{background:var(--color-background-secondary);padding:var(--spacing-2);cursor:pointer;transition:background var(--transition-fast);min-height:100px;display:flex;flex-direction:column}.calendar-day:hover{background:var(--color-background-tertiary)}.calendar-day.today{background:#5dbbe80d}.calendar-day.other-month{opacity:.4}.day-number{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--spacing-2)}.calendar-day.today .day-number{color:var(--color-primary);background:var(--color-primary);color:var(--color-text-on-primary);width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center}.day-events{flex:1;display:flex;flex-direction:column;gap:2px;overflow:hidden}.event-chip{background:var(--color-primary);color:var(--color-text-on-primary);padding:2px 6px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:all var(--transition-fast)}.event-chip:hover{background:var(--color-primary-dark);transform:translate(2px)}.event-more{font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin-top:2px}.week-view{flex:1;overflow:auto}.week-grid{display:grid;grid-template-columns:60px repeat(7,1fr);min-width:800px}.time-column{background:var(--color-background-tertiary);border-right:1px solid var(--color-border)}.time-header{height:60px;border-bottom:1px solid var(--color-border)}.week-grid .time-slot{height:60px;border-bottom:1px solid var(--color-border-light);padding:var(--spacing-1);font-size:var(--font-size-xs);color:var(--color-text-tertiary);text-align:right;padding-right:var(--spacing-2)}.day-column{border-right:1px solid var(--color-border)}.day-column .day-header{height:60px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-bottom:2px solid var(--color-border);background:var(--color-background-secondary)}.day-column .day-header.today{background:#5dbbe81a;border-bottom-color:var(--color-primary)}.day-name{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:uppercase}.day-date{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary)}.day-column .time-slot{height:60px;border-bottom:1px solid var(--color-border-light);position:relative;cursor:pointer;transition:background var(--transition-fast)}.day-column .time-slot:hover{background:var(--color-background-tertiary)}.event-block{position:absolute;left:2px;right:2px;top:2px;background:var(--color-primary);color:var(--color-text-on-primary);border-radius:var(--radius-sm);padding:var(--spacing-1);cursor:pointer;z-index:10;transition:all var(--transition-fast);overflow:hidden}.event-block:hover{transform:scale(1.02);box-shadow:var(--shadow-md);z-index:20}.event-time{font-size:var(--font-size-xs);opacity:.9;margin-bottom:2px}.event-title{font-size:var(--font-size-sm);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-location{font-size:var(--font-size-xs);opacity:.8;margin-top:2px}.day-view{flex:1;overflow:auto}.day-grid{display:grid;grid-template-columns:80px 1fr;min-height:100%}.day-view .time-column{background:var(--color-background-tertiary);border-right:1px solid var(--color-border)}.time-label{height:80px;border-bottom:1px solid var(--color-border-light);padding:var(--spacing-2);font-size:var(--font-size-sm);color:var(--color-text-tertiary);text-align:right}.events-column{flex:1}.events-column .time-slot{height:80px;border-bottom:1px solid var(--color-border-light);position:relative;cursor:pointer;transition:background var(--transition-fast)}.events-column .time-slot:hover{background:var(--color-background-tertiary)}.events-column .event-block{margin:var(--spacing-1);position:relative;padding:var(--spacing-2)}.agenda-view{flex:1;overflow:auto;padding:var(--spacing-4)}.agenda-view.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--color-text-tertiary)}.agenda-view.empty .empty-icon{font-size:48px;margin-bottom:var(--spacing-4);opacity:.5}.agenda-view.empty h3{font-size:var(--font-size-md);color:var(--color-text-secondary);margin:0 0 var(--spacing-1)}.agenda-view.empty p{font-size:var(--font-size-sm);margin:0}.agenda-day{margin-bottom:var(--spacing-6)}.agenda-date{display:flex;justify-content:space-between;align-items:center;padding-bottom:var(--spacing-2);border-bottom:2px solid var(--color-border);margin-bottom:var(--spacing-3)}.date-label{font-size:var(--font-size-md);font-weight:600;color:var(--color-text-primary)}.event-count{font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.agenda-events{display:flex;flex-direction:column;gap:var(--spacing-2)}.agenda-event{display:flex;gap:var(--spacing-4);padding:var(--spacing-3);background:var(--color-background-tertiary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.agenda-event:hover{background:var(--color-border);transform:translate(2px)}.event-time-range{min-width:120px;font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:500}.event-details{flex:1}.event-details .event-title{font-size:var(--font-size-md);font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-1)}.event-details .event-location,.event-details .event-attendees{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--spacing-1)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-4)}.modal-content{background:var(--color-background-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);max-width:600px;width:100%;max-height:90vh;overflow:auto;border:1px solid var(--color-border)}.event-modal{max-width:700px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-4);border-bottom:1px solid var(--color-border)}.modal-header h2{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary);margin:0}.modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:var(--radius-md);font-size:24px;color:var(--color-text-tertiary);cursor:pointer;transition:all var(--transition-fast)}.modal-close:hover{background:var(--color-background-tertiary);color:var(--color-text-secondary)}.event-form{padding:var(--spacing-4)}.form-group{margin-bottom:var(--spacing-4)}.form-group label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary);margin-bottom:var(--spacing-1)}.form-group input[type=text],.form-group input[type=datetime-local],.form-group textarea{width:100%;padding:var(--spacing-2);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-family:inherit;background:var(--color-background-secondary);color:var(--color-text-primary);transition:all var(--transition-fast)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #5dbbe81a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-3)}.form-group.checkbox{display:flex;align-items:center;gap:var(--spacing-2)}.form-group.checkbox input{width:auto}.event-details-view{padding:var(--spacing-4)}.event-details-view h3{font-size:var(--font-size-xl);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--spacing-4)}.detail-row{margin-bottom:var(--spacing-3);display:flex;gap:var(--spacing-2)}.detail-label{font-weight:600;color:var(--color-text-secondary);min-width:100px}.attendee-list{flex:1}.attendee{padding:var(--spacing-1) 0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.event-body{flex:1;padding:var(--spacing-3);background:var(--color-background-tertiary);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.6;white-space:pre-wrap}.modal-actions{display:flex;gap:var(--spacing-2);justify-content:flex-end;padding:var(--spacing-4);border-top:1px solid var(--color-border)}.btn{padding:var(--spacing-2) var(--spacing-4);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-primary{background:var(--color-primary);color:var(--color-text-on-primary)}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.btn-secondary{background:var(--color-background-tertiary);color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-border);color:var(--color-text-primary)}.btn-danger{background:var(--color-error);color:var(--color-text-on-primary)}.btn-danger:hover:not(:disabled){background:#dc2626}.btn:disabled{opacity:.5;cursor:not-allowed}.calendar-error{position:absolute;bottom:var(--spacing-4);left:50%;transform:translate(-50%);padding:var(--spacing-3) var(--spacing-4);background:#ef4444f2;color:#fff;border-radius:var(--radius-md);font-size:var(--font-size-sm);box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:var(--spacing-2);z-index:100}@media(max-width:768px){.calendar-header{flex-direction:column;gap:var(--spacing-3)}.calendar-nav{width:100%;justify-content:space-between}.calendar-actions{width:100%;flex-direction:column}.view-selector{width:100%}.view-btn{flex:1}.week-grid{grid-template-columns:50px repeat(7,120px)}.form-row{grid-template-columns:1fr}}.pwa-update-prompt{position:fixed;bottom:1rem;right:1rem;background:var(--bg-primary, #fff);border:1px solid var(--border-color, #e0e0e0);border-radius:8px;box-shadow:0 4px 12px #00000026;padding:1rem;z-index:9999;animation:slideIn .3s ease;max-width:350px}@keyframes slideIn{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.pwa-update-content{display:flex;flex-direction:column;gap:.75rem;font-size:.9375rem}.pwa-update-actions{display:flex;gap:.5rem}.pwa-btn-update{background:var(--primary-color, #5dbbe8);color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-weight:500;flex:1;transition:background-color .2s ease}.pwa-btn-update:hover{background:var(--primary-color-dark, #4da8d4)}.pwa-btn-update:active{transform:scale(.98)}.pwa-btn-dismiss{background:transparent;border:1px solid var(--border-color, #e0e0e0);padding:.5rem 1rem;border-radius:4px;cursor:pointer;flex:1;transition:background-color .2s ease}.pwa-btn-dismiss:hover{background:var(--bg-secondary, #f5f5f5)}.pwa-btn-dismiss:active{transform:scale(.98)}@media(max-width:600px){.pwa-update-prompt{bottom:.5rem;right:.5rem;left:.5rem;max-width:none}}.offline-indicator{position:fixed;top:0;left:0;right:0;background:#f59e0b;color:#fff;padding:.5rem 1rem;display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:.875rem;font-weight:500;z-index:9998;animation:slideDown .3s ease;box-shadow:0 2px 8px #0000001a}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.offline-icon{font-size:1rem;display:inline-flex;align-items:center}@media(max-width:600px){.offline-indicator{padding:.5rem .75rem;font-size:.8125rem}}.sync-status{position:relative;display:inline-block}.sync-badge{display:flex;align-items:center;gap:.5rem;background:var(--bg-secondary, #f5f5f5);border:1px solid var(--border-color, #e0e0e0);padding:.375rem .75rem;border-radius:20px;cursor:pointer;font-size:.75rem;font-weight:500;transition:all .2s ease;white-space:nowrap}.sync-badge:hover:not(:disabled){border-color:var(--primary-color, #5dbbe8);background:var(--bg-primary, #fff)}.sync-badge:active:not(:disabled){transform:scale(.98)}.sync-badge.syncing{background:#e0f2fe;border-color:#38bdf8}.sync-spinner{animation:spin 1s linear infinite;display:inline-flex;align-items:center;justify-content:center}.sync-count{background:#f59e0b;color:#fff;width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:.7rem}.sync-label{display:none}@media(min-width:640px){.sync-label{display:inline}}.sync-dropdown{position:absolute;top:calc(100% + .5rem);right:0;background:#fff;border:1px solid var(--border-color, #e0e0e0);border-radius:8px;box-shadow:0 4px 12px #0000001a;min-width:200px;z-index:100;overflow:hidden}.sync-dropdown-header{padding:.75rem 1rem;border-bottom:1px solid var(--border-color, #e0e0e0);font-weight:500;font-size:.875rem;color:var(--text-primary, #000)}.sync-dropdown-actions{padding:.5rem;display:flex;gap:.5rem}.sync-dropdown-actions button{flex:1;padding:.5rem;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;background:#fff;cursor:pointer;font-size:.8125rem;font-weight:500;transition:all .2s ease}.sync-dropdown-actions button:hover:not(:disabled){background:var(--bg-secondary, #f5f5f5);border-color:var(--primary-color, #5dbbe8)}.sync-dropdown-actions button:active:not(:disabled){transform:scale(.98)}.sync-dropdown-actions button:disabled{opacity:.6;cursor:not-allowed}@media(max-width:600px){.sync-dropdown{position:fixed;top:auto;bottom:1rem;right:1rem;left:1rem;min-width:auto}}.hero-icon{width:1.25rem;height:1.25rem;flex-shrink:0}.hero-icon.sm{width:1rem;height:1rem}.hero-icon.lg{width:1.5rem;height:1.5rem}.hero-icon.xl{width:2rem;height:2rem}.empty-icon{width:3rem;height:3rem;color:var(--color-gray-400);margin-bottom:var(--spacing-3)}.app-layout{display:flex;flex-direction:column;min-height:100vh}.app-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-3) var(--spacing-6);background-color:var(--color-background-secondary);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:100;transition:background-color var(--transition-base),border-color var(--transition-base)}.header-brand h1{font-size:var(--font-size-xl);color:var(--color-primary);margin:0}.header-nav{display:flex;gap:var(--spacing-4)}.nav-link{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);border-radius:var(--radius-md);color:var(--color-text-secondary);font-weight:500;transition:all var(--transition-fast)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hero-icon.spin{animation:spin 1s linear infinite}button .hero-icon,.btn .hero-icon,a .hero-icon{flex-shrink:0}.nav-link:hover{color:var(--color-primary);background-color:var(--color-background-tertiary)}.nav-link.active{color:var(--color-primary);background-color:#5dbbe81a}.header-user{display:flex;align-items:center;gap:var(--spacing-3)}.user-email{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.btn-signout{background-color:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn-signout:hover{background-color:var(--color-background-tertiary);color:var(--color-text-primary)}.app-main{flex:1;padding:var(--spacing-6);background-color:var(--color-background);transition:background-color var(--transition-base)}.page{max-width:1400px;margin:0 auto}.login-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:var(--spacing-6);text-align:center}.login-page h1{color:var(--color-primary);margin-bottom:var(--spacing-4)}.compose-page{max-width:800px;margin:0 auto}.calendar-page{height:calc(100vh - 140px)}.settings-page{max-width:800px;margin:0 auto}@media(max-width:768px){.app-header{flex-wrap:wrap;gap:var(--spacing-3);padding:var(--spacing-3)}.header-nav{order:3;width:100%;justify-content:space-around;border-top:1px solid var(--color-border);padding-top:var(--spacing-3);margin-top:var(--spacing-2)}.nav-link{padding:var(--spacing-2);font-size:var(--font-size-sm)}.header-user{flex-direction:column;align-items:flex-end;gap:var(--spacing-1)}.user-email{font-size:var(--font-size-xs)}.btn-signout{padding:var(--spacing-1) var(--spacing-2);font-size:var(--font-size-xs)}.app-main{padding:var(--spacing-3)}}.btn-primary{background-color:var(--color-primary);color:var(--color-text-on-primary)}.btn-primary:hover{background-color:var(--color-primary-dark)}.btn-secondary{background-color:var(--color-background-tertiary);color:var(--color-text-primary)}.btn-secondary:hover{background-color:var(--color-gray-200)}.btn-danger{background-color:var(--color-error);color:var(--color-white)}.btn-danger:hover{background-color:#dc2626}.card{background-color:var(--color-background-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);transition:background-color var(--transition-base),border-color var(--transition-base)}.card-header{padding:var(--spacing-4);border-bottom:1px solid var(--color-border)}.card-body{padding:var(--spacing-4)}.card-footer{padding:var(--spacing-4);border-top:1px solid var(--color-border);background-color:var(--color-background-tertiary);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-12);text-align:center;color:var(--color-text-tertiary)}.empty-state-icon{font-size:48px;margin-bottom:var(--spacing-4);opacity:.5}.empty-state-title{font-size:var(--font-size-lg);font-weight:600;margin-bottom:var(--spacing-2);color:var(--color-text-primary)}.empty-state-description{font-size:var(--font-size-sm);max-width:300px}
