.alert-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-in-out}.alert-modal-content{background:var(--bg-primary, #ffffff);border-radius:8px;box-shadow:0 4px 20px #00000026;max-width:500px;width:90%;max-height:90vh;overflow:hidden;animation:slideUp .2s ease-out;display:flex;flex-direction:column}[data-theme=dark] .alert-modal-content{background:var(--bg-primary, #1e1e1e);box-shadow:0 4px 20px #00000080}.alert-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--border, #e0e0e0)}[data-theme=dark] .alert-modal-header{border-bottom-color:var(--border, #333)}.alert-modal-icon-title{display:flex;align-items:center;gap:.75rem}.alert-icon{flex-shrink:0}.alert-icon-info{color:var(--primary, #007bff)}.alert-icon-success{color:#28a745}.alert-icon-warning{color:#ffc107}.alert-icon-error{color:#dc3545}.alert-modal-title{margin:0;font-size:1.125rem;font-weight:600;color:var(--text, #000000)}[data-theme=dark] .alert-modal-title{color:var(--text, #ffffff)}.alert-modal-close{background:none;border:none;color:var(--text-secondary, #666);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.alert-modal-close:hover{background:var(--bg-hover, #f0f0f0)}[data-theme=dark] .alert-modal-close{color:var(--text-secondary, #999)}[data-theme=dark] .alert-modal-close:hover{background:var(--bg-hover, #333)}.alert-modal-body{padding:1.5rem;flex:1;overflow-y:auto}.alert-modal-message{margin:0;color:var(--text, #000000);line-height:1.5;white-space:pre-wrap;word-wrap:break-word}[data-theme=dark] .alert-modal-message{color:var(--text, #ffffff)}.alert-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--border, #e0e0e0)}[data-theme=dark] .alert-modal-footer{border-top-color:var(--border, #333)}.alert-btn-info{background:var(--primary, #007bff)}.alert-btn-success{background:#28a745}.alert-btn-warning{background:#ffc107;color:#000}.alert-btn-error{background:#dc3545}@media (max-width: 640px){.alert-modal-content{width:95%;max-width:none}.alert-modal-header,.alert-modal-body,.alert-modal-footer{padding:1rem}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-background) 0%,var(--color-background-secondary) 100%);padding:var(--spacing-md);position:relative}.theme-toggle{position:absolute;top:var(--spacing-md);right:var(--spacing-md)}.login-container{width:100%;max-width:420px;background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:var(--spacing-2xl)}.login-header{text-align:center;margin-bottom:var(--spacing-xl)}.login-logo{width:80px;height:80px;margin:0 auto var(--spacing-md);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;color:var(--color-text-inverse)}.login-header h1{margin-bottom:var(--spacing-xs);color:var(--color-text)}.login-subtitle{color:var(--color-text-secondary);font-size:.9375rem}.login-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-group label{font-weight:500;font-size:.875rem;color:var(--color-text)}.password-input{position:relative}.password-input input{padding-right:48px}.password-toggle{position:absolute;right:var(--spacing-sm);top:50%;transform:translateY(-50%);color:var(--color-text-tertiary);padding:var(--spacing-xs);border-radius:var(--radius-sm)}.password-toggle:hover{color:var(--color-text-secondary);background:var(--color-background-secondary)}.btn-full{width:100%;padding:var(--spacing-md);font-size:1rem;margin-top:var(--spacing-sm)}.login-footer{margin-top:var(--spacing-lg);text-align:center;color:var(--color-text-secondary);font-size:.875rem}.login-footer p{margin-top:var(--spacing-sm)}.link-button{color:var(--color-primary);font-weight:500;background:none;border:none;cursor:pointer;font-size:inherit}.link-button:hover{text-decoration:underline}.alert{padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);font-size:.875rem}.alert-error{background:#ef44441a;color:var(--color-error);border:1px solid rgba(239,68,68,.2)}.alert-success{background:#10b9811a;color:var(--color-success);border:1px solid rgba(16,185,129,.2)}.alert-info{background:#3b82f61a;color:var(--color-primary);border:1px solid rgba(59,130,246,.2)}.form-hint{font-size:.75rem;color:var(--color-text-tertiary);margin-top:var(--spacing-xs)}.email-input-wrapper{position:relative}.help-button{display:inline-flex;align-items:center;gap:var(--spacing-xs);margin-top:var(--spacing-sm)}.help-panel{margin-top:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-background-secondary);border-radius:var(--radius-md);font-size:.875rem}.help-panel h3{font-size:.9375rem;font-weight:600;margin-bottom:var(--spacing-sm);color:var(--color-text)}.help-panel ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.help-panel li{color:var(--color-text-secondary);line-height:1.5}.help-panel li strong{color:var(--color-text);font-weight:500}@media (max-width: 480px){.login-container{padding:var(--spacing-lg)}.login-logo{width:64px;height:64px}.login-logo svg{width:32px;height:32px}}.message-item{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);border-bottom:1px solid var(--color-border-light);cursor:pointer;transition:background var(--transition-fast);position:relative}.message-item:hover{background:var(--color-background-secondary)}.message-item.selected{background:var(--color-background-tertiary)}.message-item.unread{background:var(--color-background)}.message-item.unread .message-sender,.message-item.unread .message-subject{font-weight:600}.message-item.unread:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--color-primary)}.star-button{flex-shrink:0;padding:var(--spacing-xs);border-radius:var(--radius-sm);color:var(--color-text-tertiary);transition:color var(--transition-fast);background:none;border:none;cursor:pointer}.star-button:hover,.star-button.starred{color:var(--color-warning)}.message-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.message-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm)}.message-header-left{display:flex;align-items:center;gap:var(--spacing-xs);flex:1;min-width:0}.message-header-right{display:flex;align-items:center;gap:var(--spacing-xs);flex-shrink:0}.message-sender{font-size:.9375rem;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-flags{display:flex;align-items:center;gap:4px;flex-shrink:0;flex-wrap:wrap}.flag-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:3px;padding:2px;flex-shrink:0}.flag-badge.flag-label{background:#0000000d}.flag-badge.flag-generic{color:var(--color-text-secondary);background:#0000000d}.flag-badge.flag-answered{color:#10b981;background:#10b9811a}.flag-badge.flag-forwarded{color:#3b82f6;background:#3b82f61a}.flag-badge.flag-starred{color:#f59e0b;background:#f59e0b1a}.flag-badge.flag-draft{color:#6b7280;background:#6b72801a}.flag-badge.flag-junk{color:#ef4444;background:#ef44441a}.flag-badge.flag-deleted{color:#dc2626;background:#dc26261a}.flag-label{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:4px;font-size:.75rem;font-weight:500;border:1px solid transparent;white-space:nowrap}.flag-label.flag-label-text{padding:2px 8px;font-size:.6875rem}.flag-label.flag-generic{color:var(--color-text-secondary);background:#0000000d;border-color:var(--color-border)}.flag-label span{line-height:1}.flag-label.flag-copy{color:#10b981;border-color:#10b981;background-color:#10b9811a}.flag-label.flag-reference{color:#3b82f6;border-color:#3b82f6;background-color:#3b82f61a}.message-date{flex-shrink:0;font-size:.75rem;color:var(--color-text-tertiary)}.message-subject{font-size:.875rem;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-preview{font-size:.8125rem;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-icon{color:var(--color-text-tertiary);flex-shrink:0}.delete-button{flex-shrink:0;padding:var(--spacing-xs);border-radius:var(--radius-sm);color:var(--color-text-tertiary);opacity:0;transition:all var(--transition-fast)}.message-item:hover .delete-button{opacity:1}.delete-button:hover{color:var(--color-error);background:#ef44441a}.message-list{flex:1;overflow-y:auto;display:flex;flex-direction:column}.message-list-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-background);border-bottom:2px solid var(--color-border);position:sticky;top:0;z-index:10}.message-list-header-cell{display:flex;align-items:center;font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--color-text-tertiary);letter-spacing:.5px}.checkbox-cell{width:40px;justify-content:center;flex-shrink:0}.from-cell{flex:1;min-width:150px}.subject-cell{flex:2;min-width:200px}.date-cell{width:120px;flex-shrink:0}.size-cell{width:80px;flex-shrink:0;text-align:right}.select-all-button,.message-checkbox{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;padding:var(--spacing-xs);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.select-all-button:hover,.message-checkbox:hover{background:var(--color-background-secondary);color:var(--color-text)}.sort-button{background:none;border:none;color:inherit;cursor:pointer;padding:var(--spacing-xs);text-align:left;width:100%;transition:all var(--transition-fast);border-radius:var(--radius-sm)}.sort-button:hover{background:var(--color-background-secondary);color:var(--color-text)}.sort-button.active{color:var(--color-primary)}.bulk-actions-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary);color:#fff;border-bottom:1px solid var(--color-border)}.bulk-actions-count{font-size:.875rem;font-weight:500}.bulk-actions-buttons{display:flex;gap:var(--spacing-xs)}.bulk-action-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:#fff3;border:none;border-radius:var(--radius-sm);color:#fff;font-size:.875rem;cursor:pointer;transition:all var(--transition-fast)}.bulk-action-btn:hover{background:#ffffff4d}.message-list-items{display:flex;flex-direction:column}.message-list-item{display:grid;grid-template-columns:40px 1fr;gap:var(--spacing-sm);align-items:stretch}.message-list-item.bulk-selected{background:#0ea5e91a}.message-list-item .message-item{border-bottom:none}.message-list-checkbox{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xs)}.message-list-error,.message-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);color:var(--color-text-secondary);text-align:center}.error-detail{font-size:.875rem;color:var(--color-error);margin-top:var(--spacing-sm)}.message-list-loading{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-lg);color:var(--color-text-secondary)}.message-list-loading .loading-spinner{width:20px;height:20px}.attachment-selection-modal{max-width:600px;max-height:80vh;display:flex;flex-direction:column}.attachment-selection-info{margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:var(--color-surface-secondary);border-radius:var(--radius-md)}.attachment-selection-info p{margin:0 0 var(--spacing-sm) 0;color:var(--color-text-secondary);font-size:.9rem}.attachment-selection-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.attachment-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-sm) 0}.attachment-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;background:var(--color-surface)}.attachment-item:hover{background:var(--color-surface-secondary);border-color:var(--color-primary)}.attachment-item.selected{background:var(--color-primary-light);border-color:var(--color-primary)}.attachment-checkbox{flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary)}.attachment-checkbox .checked{color:var(--color-primary)}.attachment-info{flex:1;min-width:0}.attachment-name{font-weight:500;color:var(--color-text);margin-bottom:var(--spacing-xs);word-break:break-word}.attachment-meta{display:flex;gap:var(--spacing-md);font-size:.85rem;color:var(--color-text-secondary)}.attachment-type{text-transform:capitalize}.attachment-size{font-weight:500}.folder-picker-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.folder-picker-modal{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:90%;max-width:400px;max-height:80vh;display:flex;flex-direction:column;animation:slideUp .2s ease-out}.folder-picker-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.folder-picker-header h3{margin:0;font-size:1.125rem;font-weight:600;color:var(--color-text)}.folder-picker-close{background:none;border:none;font-size:1.5rem;color:var(--color-text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background-color var(--transition-fast)}.folder-picker-close:hover{background:var(--color-surface-hover);color:var(--color-text)}.folder-picker-list{padding:var(--spacing-sm);overflow-y:auto;flex:1}.folder-picker-item{padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;border-radius:var(--radius-sm);transition:background-color var(--transition-fast);-webkit-user-select:none;user-select:none}.folder-picker-item:hover{background:var(--color-surface-hover)}.folder-picker-item.current{background:var(--color-primary-light);color:var(--color-primary)}.folder-picker-item-content{display:flex;align-items:center;gap:var(--spacing-sm)}.folder-picker-chevron{color:var(--color-text-secondary);flex-shrink:0}.folder-picker-spacer{width:16px;flex-shrink:0}.folder-picker-icon{color:var(--color-text-secondary);flex-shrink:0}.folder-picker-name{flex:1;color:var(--color-text);font-size:.9375rem}.folder-picker-current-badge{font-size:.75rem;color:var(--color-primary);font-weight:500;padding:2px 8px;background:var(--color-primary-light);border-radius:var(--radius-sm)}.folder-picker-children{margin-left:0}.folder-picker-empty{padding:var(--spacing-xl);text-align:center;color:var(--color-text-secondary)}.flag-menu-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.flag-menu-modal{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:90%;max-width:300px;display:flex;flex-direction:column;animation:slideUp .2s ease-out}.flag-menu-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border)}.flag-menu-title{display:flex;align-items:center;gap:var(--spacing-sm);font-size:1rem;font-weight:600;color:var(--color-text)}.flag-menu-close{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:background-color var(--transition-fast);display:flex;align-items:center;justify-content:center}.flag-menu-close:hover{background:var(--color-surface-hover);color:var(--color-text)}.flag-menu-list{padding:var(--spacing-sm);display:flex;flex-direction:column;gap:var(--spacing-xs)}.flag-menu-item{background:none;border:none;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast);text-align:left}.flag-menu-item:hover{background:var(--color-surface-hover)}.flag-menu-item.active{background:var(--color-primary-light)}.flag-menu-item-content{display:flex;align-items:center;gap:var(--spacing-sm)}.flag-menu-item-color{width:16px;height:16px;border-radius:50%;flex-shrink:0}.flag-menu-item-label{flex:1;color:var(--color-text);font-size:.9375rem}.flag-menu-item.active .flag-menu-item-label{color:var(--color-primary);font-weight:500}.flag-menu-item-check{color:var(--color-primary);font-weight:600;font-size:1rem}.message-view{display:flex;flex-direction:column;height:100%;overflow:hidden}.message-view-loading,.message-view-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--color-text-secondary);gap:var(--spacing-md)}.message-view-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border);background:var(--color-surface)}.back-button{display:none}@media (max-width: 768px){.back-button{display:flex}}.message-view-actions{display:flex;align-items:center;gap:var(--spacing-md);margin-left:auto}.message-flags-indicators{display:flex;align-items:center;gap:var(--spacing-xs);padding-right:var(--spacing-sm);border-right:1px solid var(--color-border)}.flag-indicator{display:inline-flex;align-items:center;justify-content:center;padding:4px;border-radius:var(--radius-sm)}.flag-indicator.flag-answered{color:#10b981}.flag-indicator.flag-forwarded{color:#3b82f6}.flag-indicator.flag-draft{color:#6b7280}.flag-indicator.flag-junk{color:#ef4444}.flag-indicator.flag-deleted{color:#dc2626}.message-view-actions-buttons{display:flex;align-items:center;gap:var(--spacing-xs)}.message-view-actions .starred{color:var(--color-warning)}.message-view-content{flex:1;overflow-y:auto;padding:var(--spacing-lg)}.message-subject{font-size:1.5rem;font-weight:600;color:var(--color-text);margin-bottom:var(--spacing-lg);line-height:1.3}.message-meta{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.sender-avatar{width:48px;height:48px;border-radius:var(--radius-full);background:var(--color-primary);color:var(--color-text-inverse);display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:600;flex-shrink:0;overflow:hidden}.sender-avatar-image{width:100%;height:100%;object-fit:cover}.sender-info{flex:1;min-width:0}.sender-name{font-weight:600;color:var(--color-text)}.sender-email{font-size:.875rem;color:var(--color-text-secondary)}.message-date{font-size:.875rem;color:var(--color-text-tertiary);flex-shrink:0}.message-recipients{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);font-size:.875rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.recipient-label{font-weight:500;color:var(--color-text-tertiary)}.message-attachments{margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-background-secondary);border-radius:var(--radius-md)}.attachments-header{display:flex;align-items:center;gap:var(--spacing-sm);font-size:.875rem;font-weight:500;color:var(--color-text-secondary);margin-bottom:var(--spacing-sm)}.extracting-indicator{display:flex;align-items:center;gap:.25rem;font-size:.75rem;color:var(--color-text-secondary);margin-left:auto}.spinning{animation:spin 1s linear infinite}.view-in-files-link{display:flex;align-items:center;gap:.25rem;font-size:.75rem;color:var(--color-primary);text-decoration:none;margin-left:auto;padding:.25rem .5rem;border-radius:4px;transition:background .2s}.view-in-files-link:hover{background:var(--color-background-secondary);text-decoration:underline}.attachments-list{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.attachment-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-fast)}.attachment-item:hover{border-color:var(--color-primary);background:var(--color-background)}.attachment-icon{color:var(--color-text-tertiary)}.attachment-info{display:flex;flex-direction:column}.attachment-name{font-size:.875rem;color:var(--color-text);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-size{font-size:.75rem;color:var(--color-text-tertiary)}.download-icon{color:var(--color-primary);opacity:0;transition:opacity var(--transition-fast)}.attachment-item:hover .download-icon{opacity:1}.message-body{line-height:1.6}.message-text{white-space:pre-wrap;font-family:var(--font-mono);font-size:.875rem;color:var(--color-text);background:var(--color-background-secondary);padding:var(--spacing-md);border-radius:var(--radius-md);overflow-x:auto}.message-html{color:var(--color-text)}.message-html a{color:var(--color-primary)}.message-html img{max-width:100%;height:auto}.message-html blockquote{margin:var(--spacing-md) 0;padding-left:var(--spacing-md);border-left:3px solid var(--color-border);color:var(--color-text-secondary)}.toggle-view-button{display:inline-block;margin-top:var(--spacing-md);font-size:.875rem;color:var(--color-primary);background:none;border:none;cursor:pointer}.toggle-view-button:hover{text-decoration:underline}.compose-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#00000080;padding:var(--spacing-md)}.compose-container{width:100%;max-width:700px;max-height:90vh;background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;position:relative}.compose-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);background:var(--color-background-secondary);position:relative;z-index:20}.compose-header h2{font-size:1rem;font-weight:600;color:var(--color-text)}.compose-header-actions{display:flex;gap:var(--spacing-xs)}.compose-form{display:flex;flex-direction:column;flex:1;overflow:hidden}.compose-field{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-lg);border-bottom:1px solid var(--color-border-light)}.compose-field label{width:60px;font-size:.875rem;color:var(--color-text-secondary);flex-shrink:0}.compose-field input{flex:1;border:none;background:transparent;padding:var(--spacing-sm) 0}.compose-field input:focus{outline:none}.compose-field-input{flex:1;display:flex;align-items:center;gap:var(--spacing-sm)}.compose-field-input input{flex:1}.compose-field-actions{display:flex;gap:var(--spacing-xs)}.compose-field-actions button{font-size:.8125rem;color:var(--color-primary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm)}.compose-field-actions button:hover{background:var(--color-background-secondary)}.compose-body{flex:1;padding:var(--spacing-md) var(--spacing-lg);overflow:auto}.compose-body textarea{width:100%;height:100%;min-height:200px;border:none;background:transparent;resize:none;font-family:inherit;font-size:.9375rem;line-height:1.6}.compose-body textarea:focus{outline:none}.compose-attachments{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-border-light)}.attachment-chip{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-background-secondary);border-radius:var(--radius-md);font-size:.8125rem}.attachment-chip .attachment-name{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-chip .attachment-size{color:var(--color-text-tertiary)}.attachment-chip button{color:var(--color-text-tertiary);padding:2px;border-radius:var(--radius-sm)}.attachment-chip button:hover{color:var(--color-error);background:#ef44441a}.compose-error{padding:var(--spacing-sm) var(--spacing-lg);background:#ef44441a;color:var(--color-error);font-size:.875rem}.compose-footer{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-border);background:var(--color-background-secondary)}.compose-footer .btn-primary{gap:var(--spacing-sm)}.compose-footer-actions{display:flex;gap:var(--spacing-xs)}.compose-minimized{position:fixed;bottom:var(--spacing-md);right:var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary);color:var(--color-text-inverse);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);cursor:pointer;z-index:100}.compose-minimized:hover{background:var(--color-primary-dark)}.compose-minimized-title{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem}.compose-minimized .btn{color:var(--color-text-inverse)}.compose-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#fffffff2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:15;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-xl);pointer-events:auto}[data-theme=dark] .compose-loading-overlay{background:#000000f2}.compose-loading-content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.compose-loading-spinner{color:var(--color-primary);animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.compose-loading-text{font-size:1rem;font-weight:500;color:var(--color-text)}.compose-send-spinner{animation:spin 1s linear infinite}.compose-success-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#fffffffa;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:15;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-xl);animation:fadeIn .3s ease-in;cursor:pointer;pointer-events:auto}[data-theme=dark] .compose-success-overlay{background:#000000fa}.compose-success-content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.compose-success-icon{color:var(--color-success, #10b981);animation:scaleIn .3s ease-out}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.compose-success-text{font-size:1.125rem;font-weight:600;color:var(--color-text)}.compose-confirm-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:25;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-xl);animation:fadeIn .2s ease-in;pointer-events:auto}.compose-confirm-modal{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:90%;max-width:400px;overflow:hidden;animation:scaleIn .2s ease-out}.compose-confirm-header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.compose-confirm-header h3{font-size:1.125rem;font-weight:600;color:var(--color-text);margin:0}.compose-confirm-body{padding:var(--spacing-lg)}.compose-confirm-body p{font-size:.9375rem;color:var(--color-text-secondary);margin:0;line-height:1.5}.compose-confirm-actions{display:flex;gap:var(--spacing-sm);padding:var(--spacing-lg);border-top:1px solid var(--color-border);justify-content:flex-end}.compose-confirm-actions .btn{min-width:100px}.compose-form input:disabled,.compose-form textarea:disabled,.compose-form button:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 640px){.compose-modal{padding:0}.compose-container{max-width:none;max-height:none;height:100%;border-radius:0}}.filter-bar{position:relative;display:inline-block}.filter-bar-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;transition:all var(--transition-fast);font-size:.875rem}.filter-bar-button:hover{background:var(--color-surface-hover);border-color:var(--color-primary)}.filter-bar-button.active{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.filter-bar-label{font-weight:500}.filter-bar-icon{opacity:.6;margin-left:auto}.filter-bar-dropdown{position:absolute;top:calc(100% + var(--spacing-xs));left:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:180px;z-index:100;overflow:hidden;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.filter-bar-option{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:none;border:none;text-align:left;color:var(--color-text);cursor:pointer;transition:background-color var(--transition-fast);font-size:.875rem}.filter-bar-option:hover{background:var(--color-surface-hover)}.filter-bar-option.active{background:var(--color-primary-light);color:var(--color-primary);font-weight:500}.filter-bar-check{margin-left:auto;color:var(--color-primary)}.inbox-page{height:calc(100vh - 64px);overflow:hidden}.inbox-container{display:flex;height:100%}.message-list-panel{width:100%;max-width:650px;border-right:1px solid var(--color-border);background:var(--color-surface);display:flex;flex-direction:column;transition:width var(--transition-normal)}.message-list-panel.has-selection{width:550px}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);gap:var(--spacing-md)}.panel-header-left{display:flex;align-items:center;gap:var(--spacing-md);flex:1}.panel-header h2{font-size:1.25rem;font-weight:600;color:var(--color-text)}.message-count{font-size:.875rem;color:var(--color-text-secondary)}.empty-trash-btn{padding:var(--spacing-xs) var(--spacing-sm);background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:var(--color-error);cursor:pointer;display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;font-weight:500;margin-right:var(--spacing-sm);transition:all var(--transition-fast)}.empty-trash-btn:hover{background:#ef444433;border-color:#ef444480}.message-view-panel{flex:1;max-width:700px;background:var(--color-surface);overflow:hidden;transition:max-width var(--transition-normal)}.message-view-panel.full-width{max-width:100%}.message-view-header-expand{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);background:var(--color-surface)}.expand-collapse-btn{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xs);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;transition:all var(--transition-fast)}.expand-collapse-btn:hover{background:var(--color-surface-hover);border-color:var(--color-primary);color:var(--color-primary)}.panel-header-right{display:flex;align-items:center;gap:var(--spacing-sm)}.inbox-container.list-collapsed .message-list-panel{display:none}@media (max-width: 1024px){.message-list-panel{max-width:500px}.message-list-panel.has-selection{width:450px}.message-view-panel{max-width:500px}}@media (max-width: 768px){.inbox-container{flex-direction:column}.message-list-panel{max-width:none;width:100%;height:100%}.message-list-panel.has-selection{display:none}.message-view-panel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;height:100vh}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:99999;padding:var(--spacing-md);isolation:isolate}.modal-content{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:0 10px 40px #0003;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;position:relative;z-index:100000;isolation:isolate}.folder-modal{display:flex;flex-direction:column}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.modal-header-left{display:flex;align-items:center;gap:var(--spacing-sm)}.modal-header h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text)}.modal-close{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.modal-close:hover{background:var(--color-background-secondary);color:var(--color-text)}.folder-form{padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label{font-size:.875rem;font-weight:500;color:var(--color-text)}.form-group input,.form-group select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.9375rem;color:var(--color-text);background:var(--color-surface);transition:all var(--transition-fast)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0ea5e91a}.form-group input:disabled,.form-group select:disabled{opacity:.6;cursor:not-allowed}.form-group small{font-size:.75rem;color:var(--color-text-tertiary)}.form-error{padding:var(--spacing-sm) var(--spacing-md);background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:var(--color-error);font-size:.875rem}.modal-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end;margin-top:var(--spacing-sm)}.modal-actions .btn{padding:var(--spacing-sm) var(--spacing-lg);font-size:.9375rem;font-weight:500;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:none}.modal-actions .btn:disabled{opacity:.6;cursor:not-allowed}.modal-actions .btn-primary{background:var(--color-primary);color:#fff}.modal-actions .btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.modal-actions .btn-secondary{background:var(--color-background-secondary);color:var(--color-text)}.modal-actions .btn-secondary:hover:not(:disabled){background:var(--color-background-tertiary)}.folder-share-info{padding:var(--spacing-md) var(--spacing-lg);background:var(--color-background-secondary);border-bottom:1px solid var(--color-border)}.folder-share-info p{margin:0;font-size:.9375rem;color:var(--color-text-secondary)}.shared-folder-details{display:flex;flex-direction:column;gap:var(--spacing-md)}.detail-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.detail-label{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.detail-value{font-size:.9375rem;color:var(--color-text);font-weight:500}.preferences-page{display:flex;flex-direction:column;height:100%;background:var(--color-surface)}.preferences-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--color-border);background:var(--color-surface)}.preferences-header-left{display:flex;align-items:center;gap:var(--spacing-sm)}.preferences-header h1{margin:0;font-size:1.5rem;font-weight:600;color:var(--color-text)}.preferences-actions{display:flex;align-items:center;gap:var(--spacing-sm)}.unsaved-indicator{font-size:.875rem;color:var(--color-warning);font-weight:500}.preferences-error-banner{padding:var(--spacing-md) var(--spacing-lg);background:#ef44441a;border-bottom:1px solid rgba(239,68,68,.3);color:var(--color-error);font-size:.875rem}.preferences-content{display:flex;flex:1;overflow:hidden}.preferences-tabs{display:flex;flex-direction:column;width:200px;border-right:1px solid var(--color-border);background:var(--color-background);padding:var(--spacing-md) 0}.preferences-tab{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border:none;background:transparent;color:var(--color-text-secondary);font-size:.9375rem;cursor:pointer;transition:all var(--transition-fast);text-align:left;width:100%}.preferences-tab:hover{background:var(--color-background-secondary);color:var(--color-text)}.preferences-tab.active{background:var(--color-primary);color:#fff;font-weight:500}.preferences-panel{flex:1;overflow-y:auto;padding:var(--spacing-lg)}.preferences-section{max-width:800px}.preferences-section h2{margin:0 0 var(--spacing-lg) 0;font-size:1.25rem;font-weight:600;color:var(--color-text)}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-size:.875rem;font-weight:500;color:var(--color-text)}.form-group input[type=text],.form-group input[type=number],.form-group select,.form-group textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.9375rem;color:var(--color-text);background:var(--color-surface);transition:all var(--transition-fast);font-family:inherit}.form-group input[type=text]:focus,.form-group input[type=number]:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0ea5e91a}.form-group textarea{resize:vertical;min-height:100px}.form-group small{display:block;margin-top:var(--spacing-xs);font-size:.75rem;color:var(--color-text-tertiary)}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-weight:400}.checkbox-label input[type=checkbox]{width:auto;margin:0;cursor:pointer}.preferences-loading,.preferences-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:var(--spacing-md);color:var(--color-text-secondary)}.loading-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}.btn{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--radius-md);font-size:.9375rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.btn-secondary{background:var(--color-background-secondary);color:var(--color-text)}.btn-secondary:hover:not(:disabled){background:var(--color-background-tertiary)}.folder-management-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.folder-management-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-fast);position:relative;-webkit-user-select:none;user-select:none;min-height:48px;overflow:visible;width:100%;box-sizing:border-box;box-shadow:0 1px 2px #0000000d}.folder-management-item:hover{background:var(--color-background-secondary);border-color:var(--color-primary)}.folder-management-item.dragging{opacity:.5}.folder-management-item[draggable=true]{cursor:grab}.folder-management-item[draggable=true]:active{cursor:grabbing}.folder-drag-handle{color:var(--color-text-tertiary);cursor:grab;pointer-events:none;flex-shrink:0}.folder-drag-handle:active{cursor:grabbing}.folder-color-preview{width:20px;height:20px;border-radius:50%;border:2px solid var(--color-border);cursor:pointer;flex-shrink:0}.folder-info{display:flex;align-items:center;flex:1;min-width:0;max-width:calc(100% - 180px);overflow:hidden}.folder-name-display{font-size:.9375rem;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-system-badge{font-size:.75rem;color:var(--color-text-tertiary);margin-left:var(--spacing-xs)}.folder-actions{display:flex!important;gap:var(--spacing-xs);align-items:center;flex-shrink:0;opacity:1!important;visibility:visible!important;margin-left:auto;z-index:10;position:relative}.folder-action-btn{display:flex!important;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:2px solid var(--color-border);background:var(--color-surface)!important;color:var(--color-text)!important;cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);flex-shrink:0;visibility:visible!important;opacity:1!important;position:relative;z-index:10;box-shadow:0 2px 4px #0000001a}.folder-action-btn:hover{background:var(--color-primary)!important;color:#fff!important;border-color:var(--color-primary);transform:scale(1.1);box-shadow:0 4px 8px #0003}.folder-color-picker-popup{position:absolute;top:100%;right:0;z-index:100;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);box-shadow:var(--shadow-lg);margin-top:4px;display:flex;flex-direction:column;align-items:center}.folder-color-picker-popup input[type=color]{width:60px;height:60px;border:none;border-radius:var(--radius-sm);cursor:pointer}.file-actions-menu-wrapper{position:relative;display:inline-block}.file-actions-menu-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;background:transparent;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all .2s}.file-actions-menu-button:hover{background:var(--color-bg-hover);color:var(--color-text)}.file-actions-menu{position:absolute;top:100%;right:0;margin-top:4px;min-width:200px;background:var(--color-bg);background-color:var(--color-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 20px #00000040,0 2px 8px #00000026;z-index:1000;overflow:hidden;opacity:1}.file-menu-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px 16px;border:none;background:transparent;color:var(--color-text);text-align:left;cursor:pointer;font-size:14px;transition:background .15s}.file-menu-item:hover{background:var(--color-bg-hover)}.file-menu-item-danger{color:var(--color-error)}.file-menu-item-danger:hover{background:var(--color-error-light);color:var(--color-error)}.file-menu-divider{height:1px;background:var(--color-border);margin:4px 0}.move-file-modal{max-width:500px}.move-file-form{display:flex;flex-direction:column;gap:1rem}.file-folder-modal{max-width:500px}.file-folder-form{display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:500;font-size:.875rem}.form-group input,.form-group select{padding:.5rem;border:1px solid var(--border);border-radius:var(--radius-md);font-size:.875rem}.form-group small{font-size:.75rem;color:var(--text-secondary)}.form-error{padding:.75rem;background:var(--error-light);color:var(--error);border-radius:var(--radius-md);font-size:.875rem}.modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem}.rename-file-folder-modal{max-width:500px}.rename-file-folder-form{display:flex;flex-direction:column;gap:1rem}.form-input-disabled{opacity:.6;cursor:not-allowed}.file-folder-share-modal{max-width:600px}.file-folder-share-form{display:flex;flex-direction:column;gap:1rem}.folder-share-info{padding:.75rem;background:var(--bg-hover);border-radius:var(--radius-md);margin-bottom:1rem}.folder-share-info p{margin:0;font-size:.875rem}.sharing-mode-options{display:flex;flex-direction:column;gap:.75rem}.radio-option{display:flex;align-items:flex-start;cursor:pointer;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-md);transition:background .2s}.radio-option:hover{background:var(--bg-hover)}.radio-option input[type=radio]{margin-right:.75rem;margin-top:.125rem;cursor:pointer}.radio-option div{flex:1}.radio-option strong{display:block;margin-bottom:.25rem}.radio-option small{color:var(--text-secondary);font-size:.75rem;line-height:1.4}.file-folder-share-details-modal{max-width:700px}.share-details-content{max-height:400px;overflow-y:auto}.shares-list{display:flex;flex-direction:column;gap:1rem}.share-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-secondary)}.share-info{flex:1;display:flex;flex-direction:column;gap:.5rem}.share-user{display:flex;align-items:center;gap:.75rem}.share-meta{display:flex;gap:.5rem;margin-top:.25rem}.access-badge,.mode-badge{padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500}.access-read{background:#e3f2fd;color:#1976d2}.access-write{background:#fff3e0;color:#f57c00}.access-all{background:#e8f5e9;color:#2e7d32}.mode-standard{background:#f3e5f5;color:#7b1fa2}.mode-secure{background:#fff9c4;color:#f57f17}.share-date{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--text-secondary)}.share-actions{display:flex;gap:.5rem}.btn-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all .2s}.btn-icon-danger{color:var(--error)}.btn-icon-danger:hover{background:var(--error-light);color:var(--error)}.share-edit-form{width:100%;display:flex;flex-direction:column;gap:.75rem}.edit-actions{display:flex;gap:.5rem}.btn-sm{padding:.375rem .75rem;font-size:.875rem}.revoke-confirm-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);z-index:10}.revoke-confirm-dialog{background:var(--bg);padding:1.5rem;border-radius:var(--radius-md);max-width:400px;box-shadow:0 4px 12px #0000004d}.revoke-confirm-dialog h3{margin:0 0 .75rem}.revoke-confirm-dialog p{margin:0 0 1rem;color:var(--text-secondary)}.revoke-actions{display:flex;gap:.5rem;justify-content:flex-end}.btn-danger{background:var(--error);color:#fff}.btn-danger:hover{background:var(--error-dark)}.empty-state{text-align:center;padding:2rem;color:var(--text-secondary)}.empty-state svg{margin-bottom:1rem;opacity:.5}.coming-soon-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000}.coming-soon-modal{background:var(--bg-primary, #fff);border-radius:8px;box-shadow:0 4px 20px #00000026;max-width:400px;width:90%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.coming-soon-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color, #e0e0e0)}.coming-soon-header h3{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary, #333)}.coming-soon-close{background:transparent;border:none;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;color:var(--text-secondary, #666);transition:color .2s}.coming-soon-close:hover{color:var(--text-primary, #333)}.coming-soon-body{padding:1.5rem;color:var(--text-primary, #333)}.coming-soon-body p{margin:0;line-height:1.5}.coming-soon-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-color, #e0e0e0);display:flex;justify-content:flex-end;gap:.5rem}[data-theme=dark] .coming-soon-modal,.dark .coming-soon-modal{background:var(--bg-secondary, #1e1e1e);border:1px solid var(--border-color, #333)}[data-theme=dark] .coming-soon-header,.dark .coming-soon-header{border-bottom-color:var(--border-color, #333)}[data-theme=dark] .coming-soon-footer,.dark .coming-soon-footer{border-top-color:var(--border-color, #333)}[data-theme=dark] .coming-soon-header h3,.dark .coming-soon-header h3,[data-theme=dark] .coming-soon-body,.dark .coming-soon-body{color:var(--text-primary, #e0e0e0)}.files-page{display:flex;flex-direction:column;height:100%;padding:1rem}.files-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.files-header h1{margin:0;font-size:1.5rem}.files-layout{display:flex;gap:1rem;flex:1;overflow:hidden}.files-sidebar{width:250px;background:var(--bg-secondary);border-radius:8px;padding:1rem;overflow-y:auto}.sidebar-section{margin-bottom:2rem}.sidebar-section h3{font-size:.875rem;font-weight:600;margin-bottom:.5rem;color:var(--text-secondary);text-transform:uppercase;display:flex;align-items:center;gap:.5rem}.sidebar-section-header.expandable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s}.sidebar-section-header.expandable:hover{color:var(--text)}.folder-list,.source-list,.filter-list{list-style:none;padding:0;margin:0}.folder-list li,.source-list li,.filter-list li{padding:.5rem;cursor:pointer;border-radius:4px;display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.folder-list li:hover,.source-list li:hover,.filter-list li:hover{background:var(--bg-hover)}.folder-list li.active,.source-list li.active,.filter-list li.active{background:var(--primary);color:#fff}.filter-group{margin-bottom:1.5rem}.filter-label{display:block;font-size:.75rem;font-weight:600;color:var(--text-secondary);margin-bottom:.5rem;text-transform:uppercase}.filter-label.expandable{cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:.375rem;transition:color .2s}.filter-label.expandable:hover{color:var(--text)}.filter-buttons{display:flex;flex-direction:column;gap:.5rem}.filter-button{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-size:.875rem;cursor:pointer;transition:all .2s ease;text-align:left;width:100%}.filter-button:hover{background:var(--bg-hover);border-color:var(--primary)}.filter-button.active{background:var(--primary);color:#fff;border-color:var(--primary)}.filter-button.active-partial{background:var(--primary-light, rgba(var(--primary-rgb, 59, 130, 246), .15));color:var(--primary);border-color:var(--primary);font-weight:500}.filter-button.disabled{opacity:.5;cursor:not-allowed;background:var(--bg-hover)}.filter-button.disabled:hover{background:var(--bg-hover);border-color:var(--border)}.filter-badge{margin-left:auto;font-size:.75rem;font-weight:700;opacity:.9}.filter-input{width:100%;padding:.5rem;border:1px solid var(--border);border-radius:4px;background:var(--bg);color:var(--text);font-size:.875rem;margin-top:.25rem}.filter-input:focus{outline:none;border-color:var(--primary)}.filter-clear{margin-top:.5rem;padding:.25rem .5rem;background:var(--bg-hover);border:1px solid var(--border);border-radius:4px;cursor:pointer;display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem;color:var(--text-secondary)}.filter-clear:hover{background:var(--bg)}.file-email-info{display:flex;flex-direction:column;gap:.25rem;margin-top:.5rem;font-size:.75rem;color:var(--text-secondary)}.email-info-item{display:flex;align-items:center;gap:.375rem;padding:.25rem .5rem;background:var(--bg-hover);border-radius:4px;line-height:1.4}.email-info-item svg{flex-shrink:0;opacity:.7}.file-email{color:var(--primary);font-weight:500}.empty-state-hint{font-size:.875rem;color:var(--text-secondary);margin-top:.5rem}.files-content{flex:1;overflow-y:auto}.files-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.file-card{background:var(--bg-secondary);border-radius:8px;padding:1rem;display:flex;flex-direction:column;gap:.5rem;transition:transform .2s,box-shadow .2s}.file-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.file-card-clickable{cursor:pointer}.file-icon{display:flex;justify-content:center;align-items:center;height:64px;color:var(--text-secondary)}.file-info{flex:1}.file-name{font-size:.875rem;font-weight:600;margin:0 0 .25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-meta{font-size:.75rem;color:var(--text-secondary);margin:0}.file-badges{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.5rem}.badge{font-size:.625rem;padding:.125rem .5rem;border-radius:12px;font-weight:500}.badge-email{background:#e3f2fd;color:#1976d2}.badge-upload{background:#f3e5f5;color:#7b1fa2}.badge-verified{background:#e8f5e9;color:#388e3c}.badge-copy{background:#fff3e0;color:#f57c00}.badge-reference{background:#fce4ec;color:#c2185b}.badge-verified-doc{background:#e8f5e9;color:#2e7d32;font-weight:600}.badge-shared{background:#e3f2fd;color:#1976d2;display:flex;align-items:center;gap:.25rem}.folder-shared-icon{color:var(--primary)}.shared-folder-badge{margin-left:auto;font-size:.75rem;color:var(--primary);font-weight:500;padding:.125rem .5rem;background:var(--primary-light);border-radius:12px}.shared-folder-badge.badge-shared-by-me{background:rgba(var(--primary-rgb),.1)}.shared-folders-loading{margin-left:8px;font-size:12px;opacity:.6}.shared-with-me-header{margin-top:1rem;margin-bottom:.5rem}.upload-folder-section{margin-top:1rem}.upload-folder-label{display:block;margin-bottom:.5rem;font-weight:500}.upload-folder-select{width:100%;padding:.5rem;border-radius:var(--radius-md);border:1px solid var(--border)}.file-actions{display:flex;gap:.5rem;justify-content:flex-end}.btn-icon{background:none;border:none;cursor:pointer;padding:.25rem;color:var(--text-secondary);border-radius:4px}.btn-icon:hover{background:var(--bg-hover);color:var(--text)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;color:var(--text-secondary)}.empty-state p{margin-top:1rem;font-size:1.125rem}.loading{text-align:center;padding:2rem;color:var(--text-secondary)}.error-message{background:#ffebee;color:#c62828;padding:1rem;border-radius:4px;margin-bottom:1rem}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:2rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:var(--bg);border-radius:8px;padding:2rem;max-width:500px;width:90%;box-shadow:0 20px 60px #00000080}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem}.btn{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-weight:500;display:flex;align-items:center;gap:.5rem}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{opacity:.9}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--bg-secondary);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:var(--bg-hover)}.modal-preview{max-width:95vw;max-height:95vh;width:95vw;height:95vh;padding:0;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #0009;background:var(--bg);opacity:1;border:1px solid var(--border)}@media (min-width: 1200px){.modal-preview{max-width:1400px;width:1400px}}@media (max-width: 768px){.modal-preview{max-width:100vw;max-height:100vh;width:100vw;height:100vh;border-radius:0}}.preview-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);background:var(--bg-secondary);flex-shrink:0;opacity:1}.preview-header h3{margin:0;font-size:1.125rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;margin-right:1rem;color:var(--text);opacity:1}.modal-close{background:none;border:none;cursor:pointer;padding:.5rem;color:var(--text-secondary);border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.modal-close:hover{background:var(--bg-hover);color:var(--text);transform:scale(1.1)}.preview-body{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;overflow:hidden;background:var(--bg);padding:0;position:relative}.preview-image{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain;display:block}.preview-video{max-width:100%;max-height:100%;width:100%;height:auto;display:block}.preview-pdf,.preview-text{width:100%;height:100%;min-height:0;border:none;background:#fff;display:block}.preview-body object{width:100%;height:100%;min-height:0;display:block}.preview-pdf-object{width:100%;height:100%;min-height:0;border:none;display:block;position:relative}.preview-body object iframe,.preview-pdf-object iframe{width:100%;height:100%;min-height:0;border:none;display:block}.preview-pdf-object embed,.preview-pdf-object iframe{pointer-events:auto}.preview-body{position:relative;overflow:hidden;background:var(--bg)}.preview-body:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:1;background:transparent}.preview-pdf-object *,.preview-pdf-object,.preview-pdf-wrapper{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.preview-pdf-wrapper{width:100%;height:100%;position:relative;overflow:hidden}.preview-pdf-wrapper object,.preview-pdf-wrapper iframe{width:100%;height:100%}.preview-unavailable,.preview-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;text-align:center;color:var(--text-secondary)}.preview-unavailable p,.preview-error p{margin:0;font-size:1rem}.preview-footer{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-top:1px solid var(--border);background:var(--bg-secondary);flex-shrink:0;opacity:1}.preview-info{display:flex;align-items:center;gap:.75rem;font-size:.875rem;color:var(--text);flex:1;opacity:1;font-weight:500}.preview-info span{white-space:nowrap;opacity:1}.preview-actions{display:flex;gap:.75rem;flex-shrink:0;opacity:1}.preview-actions .btn{opacity:1;font-weight:500}@media (max-width: 768px){.preview-footer{flex-direction:column;gap:1rem;align-items:stretch}.preview-info{justify-content:center;flex-wrap:wrap}.preview-actions{justify-content:center}}.folders-list{display:flex;flex-direction:column;gap:.25rem}.folder-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;border-radius:var(--radius-sm);cursor:pointer;transition:background .2s;position:relative}.folder-item:hover{background:var(--bg-hover)}.folder-item.active{background:var(--color-primary-light);color:var(--color-primary)}.folder-item.shared{opacity:.8}.folder-name{flex:1;font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-menu-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);opacity:0;transition:all .2s}.folder-item:hover .folder-menu-btn{opacity:1}.folder-menu-btn:hover{background:var(--bg-hover);color:var(--text)}.btn-icon-small{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all .2s;margin-left:auto}.btn-icon-small:hover{background:var(--bg-hover);color:var(--text)}.sidebar-section-header{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;margin-bottom:.5rem;color:var(--text-secondary);text-transform:uppercase}.loading-small{padding:.5rem;text-align:center;font-size:.875rem;color:var(--text-secondary)}.context-menu{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;padding:.25rem;min-width:180px;display:flex;flex-direction:column}.context-menu button{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:none;background:transparent;color:var(--text);cursor:pointer;border-radius:var(--radius-sm);font-size:.875rem;text-align:left;transition:background .2s}.context-menu button:hover{background:var(--bg-hover)}.context-menu button.danger{color:var(--error)}.context-menu button.danger:hover{background:var(--error-light);color:var(--error)}.calendar-container{position:relative;padding:24px;background:var(--color-surface, #fff);border-radius:var(--radius-lg, 12px);box-shadow:var(--shadow-md, 0 4px 6px rgba(0, 0, 0, .1));border:1px solid var(--color-border, #e0e0e0)}.calendar-loading{position:absolute;top:0;left:0;right:0;bottom:0;background:#fffffff2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;z-index:10;border-radius:var(--radius-lg, 12px)}[data-theme=dark] .calendar-loading{background:#121212f2}.calendar-loading-spinner{width:40px;height:40px;border:3px solid var(--color-border, #e0e0e0);border-top-color:var(--color-primary, #095FB5);border-radius:50%;animation:spin 1s linear infinite}.calendar-container :global(.fc){font-family:var(--font-family, sans-serif)}.calendar-container :global(.fc-header-toolbar){margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid var(--color-border, #e0e0e0)}.calendar-container :global(.fc-toolbar-title){font-size:24px;font-weight:700;color:var(--color-text, #1a1a1a)}[data-theme=dark] .calendar-container :global(.fc-toolbar-title){color:#fff}.calendar-container :global(.fc-button){background:#095fb5;border:none;border-radius:var(--radius-md, 8px);padding:8px 16px;font-weight:500;transition:all var(--transition-fast, .15s ease);box-shadow:var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, .05));color:#fff}[data-theme=dark] .calendar-container :global(.fc-button){background:#51b64a}.calendar-container :global(.fc-button:hover){background:#074a91;transform:translateY(-1px);box-shadow:var(--shadow-md, 0 4px 6px rgba(0, 0, 0, .1))}[data-theme=dark] .calendar-container :global(.fc-button:hover){background:#3d9137}.calendar-container :global(.fc-button:active){transform:translateY(0)}.calendar-container :global(.fc-button-primary:not(:disabled):active),.calendar-container :global(.fc-button-primary:not(:disabled).fc-button-active){background:#074a91}[data-theme=dark] .calendar-container :global(.fc-button-primary:not(:disabled):active),[data-theme=dark] .calendar-container :global(.fc-button-primary:not(:disabled).fc-button-active){background:#3d9137}.calendar-container :global(.fc-daygrid-day){border-color:var(--color-border-light, #f0f0f0);transition:background-color var(--transition-fast, .15s ease)}.calendar-container :global(.fc-daygrid-day:hover){background-color:var(--color-background-secondary, #f5f7fa)}[data-theme=dark] .calendar-container :global(.fc-daygrid-day:hover){background-color:var(--color-background-secondary, #1e1e1e)}.calendar-container :global(.fc-daygrid-day.fc-day-today){background-color:#095fb514!important;position:relative}[data-theme=dark] .calendar-container :global(.fc-daygrid-day.fc-day-today){background-color:#51b64a1f!important}.calendar-container :global(.fc-daygrid-day-number){padding:8px;font-weight:500;color:var(--color-text, #1a1a1a);transition:all var(--transition-fast, .15s ease)}[data-theme=dark] .calendar-container :global(.fc-daygrid-day-number){color:#fff}.calendar-container :global(.fc-daygrid-day.fc-day-today .fc-daygrid-day-number){color:#095fb5!important;font-weight:700;font-size:1.1em;background:transparent}[data-theme=dark] .calendar-container :global(.fc-daygrid-day.fc-day-today .fc-daygrid-day-number){color:#51b64a!important;background:transparent!important}.calendar-container :global(.fc-col-header-cell){padding:12px 8px;background:var(--color-background-secondary, #f5f7fa);border-color:var(--color-border, #e0e0e0);font-weight:600;text-transform:uppercase;font-size:12px;letter-spacing:.5px;color:var(--color-text-secondary, #666)}[data-theme=dark] .calendar-container :global(.fc-col-header-cell){background:var(--color-background-tertiary, #2a2a2a);color:#51b64a}.calendar-container :global(.fc-daygrid-day.fc-day-other){opacity:.4}.fc-event-content-wrapper{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:var(--radius-sm, 4px);font-size:12px;font-weight:500;transition:all var(--transition-fast, .15s ease);width:100%}.fc-event-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fc-event-lock-icon{flex-shrink:0;opacity:.9;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.fc-event-task-checkbox{flex-shrink:0;display:flex;align-items:center;margin-left:auto;opacity:.9;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.fc-event-checkbox-completed{color:#fff;opacity:1}.fc-event-checkbox-pending{color:#ffffffb3}.fc-event-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;line-height:1.4}.fc-event.worksession-event{cursor:pointer;border-left:3px solid;box-shadow:var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, .1))}.fc-event.worksession-event:hover{transform:translateY(-1px);box-shadow:var(--shadow-md, 0 4px 6px rgba(0, 0, 0, .15));z-index:5}.fc-event.user-event{cursor:pointer;border-left:3px solid;box-shadow:var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, .1));transition:all var(--transition-fast, .15s ease)}.fc-event.user-event:hover{transform:translateY(-1px);box-shadow:var(--shadow-md, 0 4px 6px rgba(0, 0, 0, .15));z-index:5;opacity:.95}.fc-event.task-completed{opacity:.65;text-decoration:line-through}.fc-event.task-completed .fc-event-title{text-decoration:line-through}.fc-event.event-shared{border-left-width:4px;border-left-style:double}.fc-event.event-shared .fc-event-title{font-weight:600}.fc-event.worksession-event.fc-event-draggable{cursor:not-allowed}.fc-event.worksession-event.fc-event-draggable:hover{opacity:1;transform:none}.calendar-container :global(.fc-event){border-radius:var(--radius-sm, 4px);border:none;padding:0;margin:2px 0;font-weight:500}.calendar-container :global(.fc-daygrid-event){margin:2px 4px}.calendar-container :global(.fc-event.worksession-configured){background:linear-gradient(135deg,#10b981,#059669)!important;box-shadow:0 2px 4px #10b9814d}.calendar-container :global(.fc-event.worksession-not-configured){background:linear-gradient(135deg,#f59e0b,#d97706)!important;box-shadow:0 2px 4px #f59e0b4d}.calendar-container :global(.fc-event.user-event-meeting){background:linear-gradient(135deg,#095fb5,#074a91)!important;box-shadow:0 2px 4px #095fb54d}[data-theme=dark] .calendar-container :global(.fc-event.user-event-meeting){background:linear-gradient(135deg,#51b64a,#3d9137)!important;box-shadow:0 2px 4px #51b64a4d}.calendar-container :global(.fc-event.user-event-task){background:linear-gradient(135deg,#3b82f6,#2563eb)!important;box-shadow:0 2px 4px #3b82f64d}.calendar-container :global(.fc-more-link){font-weight:600;color:var(--color-primary, #095FB5);padding:4px 8px;border-radius:var(--radius-sm, 4px);transition:all var(--transition-fast, .15s ease)}.calendar-container :global(.fc-more-link:hover){background:var(--color-background-secondary, #f5f7fa);text-decoration:none}[data-theme=dark] .calendar-container :global(.fc-more-link:hover){background:var(--color-background-tertiary, #2a2a2a)}.calendar-container :global(.fc-scrollgrid){border-color:var(--color-border, #e0e0e0)}.calendar-container :global(.fc-scrollgrid-section-header){border-color:var(--color-border, #e0e0e0)}.calendar-container :global(.fc-daygrid-day-frame){min-height:100px}.calendar-container :global(.fc-daygrid-day-events){margin:4px}.calendar-container :global(.fc-button-group){display:flex;gap:4px}.calendar-container :global(.fc-button-group .fc-button){margin:0}.calendar-loading span{color:var(--color-text-secondary, #666);font-size:14px;font-weight:500}.calendar-filters{padding:20px;background:var(--color-surface, #fff);border-radius:var(--radius-lg, 12px);margin-bottom:20px;box-shadow:var(--shadow-md, 0 4px 6px rgba(0, 0, 0, .1));border:1px solid var(--color-border, #e0e0e0);transition:all var(--transition-normal, .25s ease)}.calendar-filters:hover{box-shadow:var(--shadow-lg, 0 10px 15px rgba(0, 0, 0, .15))}.calendar-filters-title{font-weight:700;font-size:16px;margin-bottom:16px;color:var(--color-text, #1a1a1a);display:flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.5px;font-size:12px}.calendar-filters-title:before{content:"";width:4px;height:16px;background:var(--color-primary, #095FB5);border-radius:2px}[data-theme=dark] .calendar-filters-title:before{background:var(--color-primary, #51B64A)}.calendar-filters-list{display:flex;flex-direction:column;gap:12px}.calendar-filter-item{display:flex;align-items:center;gap:12px;cursor:pointer;font-size:14px;color:var(--color-text, #1a1a1a);padding:8px;border-radius:var(--radius-md, 8px);transition:all var(--transition-fast, .15s ease);-webkit-user-select:none;user-select:none}.calendar-filter-item:hover{background:var(--color-background-secondary, #f5f7fa);transform:translate(4px)}[data-theme=dark] .calendar-filter-item:hover{background:var(--color-background-tertiary, #2a2a2a)}.calendar-filter-item input[type=checkbox]{cursor:pointer;width:20px;height:20px;accent-color:var(--color-primary, #095FB5);border-radius:var(--radius-sm, 4px);transition:all var(--transition-fast, .15s ease)}[data-theme=dark] .calendar-filter-item input[type=checkbox]{accent-color:var(--color-primary, #51B64A)}.calendar-filter-item input[type=checkbox]:checked{transform:scale(1.1)}.calendar-filter-item span{flex:1;font-weight:500;transition:color var(--transition-fast, .15s ease)}.calendar-filter-item:has(input:checked) span{color:var(--color-primary, #095FB5);font-weight:600}[data-theme=dark] .calendar-filter-item:has(input:checked) span{color:var(--color-primary, #51B64A)}.event-list-container{margin-top:24px;background:var(--color-surface, #fff);border-radius:var(--radius-lg, 12px);border:2px solid var(--color-border, #e0e0e0);overflow:hidden}[data-theme=dark] .event-list-container{background:var(--color-background, #1a1a1a);border-color:var(--color-border, #333)}.event-list-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--color-background-secondary, #f5f7fa);border-bottom:2px solid var(--color-border, #e0e0e0)}[data-theme=dark] .event-list-header{background:var(--color-background-tertiary, #2a2a2a)}.event-list-header h3{margin:0;font-size:18px;font-weight:700;color:var(--color-text, #1a1a1a)}.event-list-sort{display:flex;align-items:center;gap:8px}.event-list-sort-label{font-size:12px;color:var(--color-text-secondary, #666);font-weight:500}.event-list-sort-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--color-surface, #fff);border:2px solid var(--color-border, #e0e0e0);border-radius:var(--radius-md, 8px);cursor:pointer;font-size:13px;font-weight:500;color:var(--color-text, #1a1a1a);transition:all var(--transition-fast, .15s ease)}[data-theme=dark] .event-list-sort-btn{background:var(--color-background, #1a1a1a);color:var(--color-text, #ffffff)}.event-list-sort-btn:hover{background:var(--color-background-tertiary, #e8edf3);border-color:var(--color-primary, #095FB5);transform:translateY(-1px)}[data-theme=dark] .event-list-sort-btn:hover{background:var(--color-background-secondary, #1e1e1e);border-color:var(--color-primary, #51B64A)}.event-list-empty{padding:40px 20px;text-align:center;color:var(--color-text-secondary, #666);font-size:14px}.event-list-items{display:flex;flex-direction:column;gap:12px;padding:16px;max-height:600px;overflow-y:auto}.event-list-items::-webkit-scrollbar{width:6px}.event-list-items::-webkit-scrollbar-track{background:var(--color-background-secondary, #f5f7fa);border-radius:3px}.event-list-items::-webkit-scrollbar-thumb{background:var(--color-border, #e0e0e0);border-radius:3px}.event-list-items::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary, #999)}.event-list-card{display:flex;background:var(--color-background-secondary, #f5f7fa);border:2px solid var(--color-border, #e0e0e0);border-radius:var(--radius-md, 8px);cursor:pointer;transition:all var(--transition-fast, .15s ease);overflow:hidden}[data-theme=dark] .event-list-card{background:var(--color-background-tertiary, #2a2a2a)}.event-list-card:hover{border-color:var(--color-primary, #095FB5);transform:translate(4px);box-shadow:var(--shadow-md, 0 4px 6px rgba(0, 0, 0, .1))}[data-theme=dark] .event-list-card:hover{border-color:var(--color-primary, #51B64A)}.event-list-card-color{width:6px;flex-shrink:0}.event-list-card-content{flex:1;padding:16px}.event-list-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:12px}.event-list-card-title{font-size:16px;font-weight:700;color:var(--color-text, #1a1a1a);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-list-card-badges{display:flex;align-items:center;gap:6px;flex-shrink:0;margin-left:auto}.event-list-card-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:var(--radius-sm, 4px);font-size:11px;font-weight:600;text-transform:uppercase}.worksession-badge{background:#10b9811a;color:#10b981}.task-badge{background:#3b82f61a;color:#3b82f6}.meeting-badge{background:#095fb51a;color:#095fb5}[data-theme=dark] .meeting-badge{background:#51b64a33;color:#51b64a}.share-badge{background:#8b5cf61a;color:#8b5cf6}.completed-badge{background:#10b9811a;color:#10b981}.event-list-card-checkbox{display:flex;align-items:center;margin-left:auto;margin-right:0}.event-checkbox-completed{color:#10b981}.event-checkbox-pending{color:var(--color-text-secondary, #666)}[data-theme=dark] .event-checkbox-pending{color:var(--color-text-secondary, #b3b3b3)}.event-list-card-details{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:8px}.event-list-card-detail{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--color-text-secondary, #666)}.event-list-card-description{font-size:13px;color:var(--color-text-secondary, #666);margin-top:8px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.event-list-card-status{margin-top:8px}.status-badge{display:inline-block;padding:4px 10px;border-radius:var(--radius-sm, 4px);font-size:11px;font-weight:600;text-transform:uppercase}.status-badge.configured{background:#10b9811a;color:#10b981}.status-badge.not-configured{background:#f59e0b1a;color:#f59e0b}.event-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease;padding:20px}.event-modal{background:var(--color-surface, #fff);border-radius:var(--radius-lg, 12px);width:90%;max-width:550px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000004d,0 10px 10px -5px #0003;border:1px solid var(--color-border, #e0e0e0);animation:modalSlideIn .3s ease}@keyframes modalSlideIn{0%{transform:translateY(-20px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.event-modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px;border-bottom:2px solid var(--color-border, #e0e0e0);background:var(--color-background-secondary, #f5f7fa)}[data-theme=dark] .event-modal-header{background:var(--color-background-tertiary, #2a2a2a)}.event-modal-header h2{margin:0;font-size:22px;font-weight:700;color:var(--color-text, #1a1a1a);display:flex;align-items:center;gap:10px}.event-modal-close{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:var(--color-text, #1a1a1a);border-radius:var(--radius-md, 8px);transition:all var(--transition-fast, .15s ease)}.event-modal-close:hover{background:var(--color-background-secondary, #f5f7fa);opacity:1;transform:rotate(90deg)}[data-theme=dark] .event-modal-close:hover{background:var(--color-background-tertiary, #2a2a2a)}.event-modal-form{padding:24px}.event-modal-field{margin-bottom:20px}.event-modal-field label{display:block;margin-bottom:8px;font-size:14px;font-weight:600;color:var(--color-text, #1a1a1a)}.event-modal-field .required{color:var(--color-error, #EF4444);margin-left:2px}.event-modal-field input[type=text],.event-modal-field input[type=datetime-local],.event-modal-field select,.event-modal-field textarea{width:100%;padding:12px;border:2px solid var(--color-border, #e0e0e0);border-radius:var(--radius-md, 8px);font-size:14px;font-family:inherit;background:var(--color-surface, #fff);color:var(--color-text, #1a1a1a);transition:all var(--transition-fast, .15s ease)}.event-modal-field input[type=text]:focus,.event-modal-field input[type=datetime-local]:focus,.event-modal-field select:focus,.event-modal-field textarea:focus{outline:none;border-color:var(--color-primary, #095FB5);box-shadow:0 0 0 3px #095fb51a}[data-theme=dark] .event-modal-field input[type=text]:focus,[data-theme=dark] .event-modal-field input[type=datetime-local]:focus,[data-theme=dark] .event-modal-field select:focus,[data-theme=dark] .event-modal-field textarea:focus{border-color:var(--color-primary, #51B64A);box-shadow:0 0 0 3px #51b64a33}.event-modal-field textarea{resize:vertical}.event-modal-color-picker{display:flex;align-items:center;gap:8px}.event-modal-color-input{width:60px;height:40px;border:2px solid var(--color-border, #e0e0e0);border-radius:var(--radius-md, 8px);cursor:pointer;padding:2px;background:none}.event-modal-color-text{flex:1;font-family:var(--font-mono, monospace);text-transform:uppercase}.event-modal-color-clear{padding:8px 12px;background:var(--color-background-secondary, #f5f7fa);border:1px solid var(--color-border, #e0e0e0);border-radius:var(--radius-md, 8px);cursor:pointer;font-size:12px;color:var(--color-text-secondary, #666);transition:all var(--transition-fast, .15s ease)}.event-modal-color-clear:hover{background:var(--color-background-tertiary, #e8edf3);color:var(--color-text, #1a1a1a)}[data-theme=dark] .event-modal-color-clear{background:var(--color-background-tertiary, #2a2a2a);color:var(--color-text-secondary, #b3b3b3)}[data-theme=dark] .event-modal-color-clear:hover{background:var(--color-background-secondary, #1e1e1e);color:var(--color-text, #ffffff)}.event-modal-color-preview{margin-top:8px;padding:8px 12px;border-radius:var(--radius-md, 8px);color:#fff;font-weight:500;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.2)}.event-modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:24px}.event-modal-actions button{padding:10px 20px;border:none;border-radius:var(--radius-md, 8px);font-size:14px;font-weight:500;cursor:pointer;min-width:80px}.event-modal-actions button[type=button]{background:var(--color-surface, #fff);color:var(--color-text, #1a1a1a);border:2px solid var(--color-border, #e0e0e0);font-weight:500;transition:all var(--transition-fast, .15s ease)}.event-modal-actions button[type=button]:hover:not(:disabled){background:var(--color-background-secondary, #f5f7fa);border-color:var(--color-text-tertiary, #999);transform:translateY(-1px)}[data-theme=dark] .event-modal-actions button[type=button]:hover:not(:disabled){background:var(--color-background-tertiary, #2a2a2a)}.event-modal-actions button[type=submit]{background:var(--color-primary, #095FB5);color:#fff;font-weight:600;transition:all var(--transition-fast, .15s ease)}[data-theme=dark] .event-modal-actions button[type=submit]{background:var(--color-primary, #51B64A)}.event-modal-actions button[type=submit]:hover:not(:disabled){background:var(--color-primary-dark, #074A91);transform:translateY(-1px);box-shadow:var(--shadow-md, 0 4px 6px rgba(0, 0, 0, .1))}[data-theme=dark] .event-modal-actions button[type=submit]:hover:not(:disabled){background:var(--color-primary-dark, #3D9137)}.event-modal-delete{background:var(--color-error, #EF4444)!important;color:#fff!important;margin-right:auto;font-weight:600;transition:all var(--transition-fast, .15s ease)}.event-modal-delete:hover:not(:disabled){background:#dc2626!important;transform:translateY(-1px);box-shadow:var(--shadow-md, 0 4px 6px rgba(0, 0, 0, .1))}.event-modal-actions button:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.event-details-panel-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:flex-end;z-index:1000;animation:fadeIn .2s ease}.event-details-panel{background:var(--color-surface, #fff);width:420px;max-width:90vw;height:100vh;box-shadow:-4px 0 20px #0000004d;display:flex;flex-direction:column;animation:slideIn .3s ease}.event-details-panel-header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:2px solid var(--color-border, #e0e0e0);background:var(--color-background-secondary, #f5f7fa)}[data-theme=dark] .event-details-panel-header{background:var(--color-background-tertiary, #2a2a2a)}.event-details-panel-title{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:700;color:var(--color-text, #1a1a1a)}.event-details-panel-title .share-icon{color:var(--color-primary, #095FB5)}[data-theme=dark] .event-details-panel-title .share-icon{color:var(--color-primary, #51B64A)}.event-details-panel-close{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:var(--color-text, #1a1a1a);border-radius:var(--radius-md, 8px);transition:all var(--transition-fast, .15s ease)}.event-details-panel-close:hover{background:var(--color-background-secondary, #f5f7fa);opacity:1;transform:rotate(90deg)}[data-theme=dark] .event-details-panel-close:hover{background:var(--color-background-tertiary, #2a2a2a)}.event-details-panel-content{flex:1;overflow-y:auto;padding:20px}.event-details-panel-content::-webkit-scrollbar{width:6px}.event-details-panel-content::-webkit-scrollbar-track{background:var(--color-background-secondary, #f5f7fa);border-radius:3px}.event-details-panel-content::-webkit-scrollbar-thumb{background:var(--color-border, #e0e0e0);border-radius:3px}.event-details-panel-content::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary, #999)}.event-details-panel-section{margin-bottom:24px;padding:16px;background:var(--color-background-secondary, #f5f7fa);border-radius:var(--radius-md, 8px);border-left:3px solid var(--color-primary, #095FB5);transition:all var(--transition-fast, .15s ease)}[data-theme=dark] .event-details-panel-section{background:var(--color-background-tertiary, #2a2a2a);border-left-color:var(--color-primary, #51B64A)}.event-details-panel-section:hover{transform:translate(4px);box-shadow:var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, .05))}.event-details-panel-label{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--color-text-secondary, #666);margin-bottom:8px;letter-spacing:.5px}.event-details-panel-value{font-size:15px;color:var(--color-text, #1a1a1a);margin-bottom:4px;font-weight:500;line-height:1.5;display:flex;align-items:center;gap:8px}.event-details-panel-meta{font-size:12px;color:var(--color-text-secondary, #666);font-family:var(--font-mono, monospace);word-break:break-all;background:var(--color-background-tertiary, #e8edf3);padding:6px 10px;border-radius:var(--radius-sm, 4px);margin-top:4px}[data-theme=dark] .event-details-panel-meta{background:var(--color-background, #121212)}.event-type-badge{display:inline-block;padding:4px 10px;border-radius:var(--radius-sm, 4px);font-size:12px;font-weight:600;text-transform:capitalize}.event-type-badge[data-type=meeting]{background:#095fb51a;color:#095fb5}[data-theme=dark] .event-type-badge[data-type=meeting]{background:#51b64a33;color:#51b64a}.event-type-badge[data-type=task]{background:#3b82f61a;color:#3b82f6}.completed-icon{color:var(--color-success, #10B981)}.event-description-text{white-space:pre-wrap;word-wrap:break-word;margin-top:4px}.event-details-color-indicator{display:inline-block;padding:8px 16px;border-radius:var(--radius-md, 8px);color:#fff;font-weight:600;font-family:var(--font-mono, monospace);text-shadow:0 1px 2px rgba(0,0,0,.2);min-width:100px;text-align:center}.event-details-panel-actions{display:flex;gap:12px;margin-top:24px;padding-top:24px;border-top:2px solid var(--color-border, #e0e0e0)}.event-details-panel-actions .btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border:none;border-radius:var(--radius-md, 8px);font-size:14px;font-weight:600;cursor:pointer;transition:all var(--transition-fast, .15s ease)}.event-details-panel-actions .btn-primary{background:var(--color-primary, #095FB5);color:#fff}[data-theme=dark] .event-details-panel-actions .btn-primary{background:var(--color-primary, #51B64A)}.event-details-panel-actions .btn-primary:hover{background:var(--color-primary-dark, #074A91);transform:translateY(-1px);box-shadow:var(--shadow-md, 0 4px 6px rgba(0, 0, 0, .1))}[data-theme=dark] .event-details-panel-actions .btn-primary:hover{background:var(--color-primary-dark, #3D9137)}.event-details-panel-actions .btn-secondary{background:var(--color-background-secondary, #f5f7fa);color:var(--color-text, #1a1a1a);border:2px solid var(--color-border, #e0e0e0)}[data-theme=dark] .event-details-panel-actions .btn-secondary{background:var(--color-background-tertiary, #2a2a2a);color:var(--color-text, #ffffff)}.event-details-panel-actions .btn-secondary:hover{background:var(--color-background-tertiary, #e8edf3);border-color:var(--color-primary, #095FB5);transform:translateY(-1px)}[data-theme=dark] .event-details-panel-actions .btn-secondary:hover{background:var(--color-background-secondary, #1e1e1e);border-color:var(--color-primary, #51B64A)}.event-details-panel-actions .btn-danger{background:#dc2626;color:#fff}.event-details-panel-actions .btn-danger:hover{background:#b91c1c;transform:translateY(-1px);box-shadow:var(--shadow-md, 0 4px 6px rgba(0, 0, 0, .1))}.event-share-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.event-share-modal{background:var(--color-surface, #fff);border-radius:var(--radius-lg, 12px);width:90%;max-width:600px;max-height:90vh;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;animation:slideUp .3s ease;overflow:hidden}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}[data-theme=dark] .event-share-modal{background:var(--color-background, #1a1a1a)}.event-share-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:2px solid var(--color-border, #e0e0e0);background:var(--color-background-secondary, #f5f7fa)}[data-theme=dark] .event-share-modal-header{background:var(--color-background-tertiary, #2a2a2a)}.event-share-modal-header-left{display:flex;align-items:center;gap:12px}.event-share-modal-header-left h2{margin:0;font-size:20px;font-weight:700;color:var(--color-text, #1a1a1a)}.event-share-modal-close{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:var(--color-text, #1a1a1a);border-radius:var(--radius-md, 8px);transition:all var(--transition-fast, .15s ease)}.event-share-modal-close:hover{background:var(--color-background-secondary, #f5f7fa);transform:rotate(90deg)}[data-theme=dark] .event-share-modal-close:hover{background:var(--color-background-tertiary, #2a2a2a)}.event-share-info{padding:16px 24px;background:var(--color-background-secondary, #f5f7fa);border-bottom:1px solid var(--color-border, #e0e0e0)}[data-theme=dark] .event-share-info{background:var(--color-background-tertiary, #2a2a2a)}.event-share-info p{margin:0;color:var(--color-text, #1a1a1a);font-size:14px}.event-share-content{flex:1;overflow-y:auto;padding:24px}.event-share-content::-webkit-scrollbar{width:6px}.event-share-content::-webkit-scrollbar-track{background:var(--color-background-secondary, #f5f7fa);border-radius:3px}.event-share-content::-webkit-scrollbar-thumb{background:var(--color-border, #e0e0e0);border-radius:3px}.event-share-form{margin-bottom:32px;padding-bottom:24px;border-bottom:2px solid var(--color-border, #e0e0e0)}.event-share-form-group{margin-bottom:20px}.event-share-form-group label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--color-text, #1a1a1a);margin-bottom:8px}.event-share-form-group input,.event-share-form-group select{width:100%;padding:12px;border:2px solid var(--color-border, #e0e0e0);border-radius:var(--radius-md, 8px);font-size:14px;background:var(--color-surface, #fff);color:var(--color-text, #1a1a1a);transition:all var(--transition-fast, .15s ease)}.event-share-form-group input:focus,.event-share-form-group select:focus{outline:none;border-color:var(--color-primary, #095FB5);box-shadow:0 0 0 3px #095fb51a}[data-theme=dark] .event-share-form-group input:focus,[data-theme=dark] .event-share-form-group select:focus{border-color:var(--color-primary, #51B64A);box-shadow:0 0 0 3px #51b64a33}.event-share-form-group small{display:block;margin-top:6px;font-size:12px;color:var(--color-text-secondary, #666)}.event-share-error{padding:12px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md, 8px);color:#dc2626;font-size:14px;margin-bottom:16px}.event-share-form-actions{display:flex;justify-content:flex-end;gap:12px}.event-share-details h3{margin:0 0 16px;font-size:16px;font-weight:700;color:var(--color-text, #1a1a1a)}.event-share-loading,.event-share-empty{padding:20px;text-align:center;color:var(--color-text-secondary, #666);font-size:14px}.event-share-list{display:flex;flex-direction:column;gap:12px}.event-share-item{display:flex;align-items:center;justify-content:space-between;padding:16px;background:var(--color-background-secondary, #f5f7fa);border-radius:var(--radius-md, 8px);border:1px solid var(--color-border, #e0e0e0);transition:all var(--transition-fast, .15s ease)}[data-theme=dark] .event-share-item{background:var(--color-background-tertiary, #2a2a2a)}.event-share-item:hover{border-color:var(--color-primary, #095FB5);transform:translate(4px)}.event-share-item-info{flex:1}.event-share-item-email{font-weight:600;color:var(--color-text, #1a1a1a);margin-bottom:6px}.event-share-item-meta{display:flex;align-items:center;gap:12px;margin-bottom:4px}.event-share-item-access{font-size:12px;padding:4px 8px;background:var(--color-background-tertiary, #e8edf3);border-radius:var(--radius-sm, 4px);color:var(--color-text-secondary, #666);font-weight:500}[data-theme=dark] .event-share-item-access{background:var(--color-background, #121212)}.share-status-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;padding:4px 8px;border-radius:var(--radius-sm, 4px);font-weight:600;text-transform:uppercase}.share-status-badge.accepted{background:#10b9811a;color:#10b981}.share-status-badge.pending{background:#f59e0b1a;color:#f59e0b}.share-status-badge.declined{background:#ef44441a;color:#dc2626}.event-share-item-date{font-size:11px;color:var(--color-text-tertiary, #999);margin-top:4px}.event-share-revoke-btn{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary, #666);border-radius:var(--radius-md, 8px);transition:all var(--transition-fast, .15s ease)}.event-share-revoke-btn:hover:not(:disabled){background:#ef44441a;color:#dc2626}.event-share-revoke-confirm{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10}.event-share-revoke-confirm-content{background:var(--color-surface, #fff);padding:24px;border-radius:var(--radius-lg, 12px);max-width:400px;width:90%;box-shadow:0 10px 40px #0000004d}[data-theme=dark] .event-share-revoke-confirm-content{background:var(--color-background, #1a1a1a)}.event-share-revoke-confirm-content p{margin:0 0 20px;color:var(--color-text, #1a1a1a);font-size:15px}.event-share-revoke-confirm-actions{display:flex;gap:12px;justify-content:flex-end}.btn{padding:10px 20px;border:none;border-radius:var(--radius-md, 8px);font-size:14px;font-weight:600;cursor:pointer;transition:all var(--transition-fast, .15s ease)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary, #095FB5);color:#fff}[data-theme=dark] .btn-primary{background:var(--color-primary, #51B64A)}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark, #074A91);transform:translateY(-1px)}[data-theme=dark] .btn-primary:hover:not(:disabled){background:var(--color-primary-dark, #3D9137)}.btn-secondary{background:var(--color-background-secondary, #f5f7fa);color:var(--color-text, #1a1a1a);border:2px solid var(--color-border, #e0e0e0)}[data-theme=dark] .btn-secondary{background:var(--color-background-tertiary, #2a2a2a);color:var(--color-text, #ffffff)}.btn-secondary:hover:not(:disabled){background:var(--color-background-tertiary, #e8edf3)}[data-theme=dark] .btn-secondary:hover:not(:disabled){background:var(--color-background-secondary, #1e1e1e)}.btn-danger{background:#dc2626;color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c;transform:translateY(-1px)}.share-invitations-container{margin-bottom:16px;background:var(--color-background-secondary, #f5f7fa);border:2px solid var(--color-border, #e0e0e0);border-radius:var(--radius-md, 8px);padding:12px}[data-theme=dark] .share-invitations-container{background:var(--color-background-tertiary, #2a2a2a)}.share-invitations-loading{padding:12px;text-align:center;color:var(--color-text-secondary, #666);font-size:13px}.share-invitations-header{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--color-text, #1a1a1a);margin-bottom:12px}.share-invitations-list{display:flex;flex-direction:column;gap:8px}.share-invitation-item{display:flex;align-items:center;justify-content:space-between;padding:10px;background:var(--color-surface, #fff);border-radius:var(--radius-sm, 4px);border:1px solid var(--color-border, #e0e0e0)}[data-theme=dark] .share-invitation-item{background:var(--color-background, #1a1a1a)}.share-invitation-content{display:flex;align-items:center;gap:10px;flex:1}.share-invitation-details{flex:1}.share-invitation-from{font-size:13px;font-weight:500;color:var(--color-text, #1a1a1a);margin-bottom:2px}.share-invitation-access{font-size:11px;color:var(--color-text-secondary, #666)}.share-invitation-actions{display:flex;gap:6px}.share-invitation-btn{padding:6px;border:none;border-radius:var(--radius-sm, 4px);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast, .15s ease)}.share-invitation-btn:disabled{opacity:.5;cursor:not-allowed}.share-invitation-btn.accept{background:#10b9811a;color:#10b981}.share-invitation-btn.accept:hover:not(:disabled){background:#10b98133;transform:scale(1.1)}.share-invitation-btn.decline{background:#ef44441a;color:#dc2626}.share-invitation-btn.decline:hover:not(:disabled){background:#ef444433;transform:scale(1.1)}.worksession-panel-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:flex-end;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.worksession-panel{background:var(--color-surface, #fff);width:420px;max-width:90vw;height:100vh;box-shadow:-4px 0 20px #0000004d;display:flex;flex-direction:column;animation:slideIn .3s ease}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.worksession-panel-header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:2px solid var(--color-border, #e0e0e0);background:var(--color-background-secondary, #f5f7fa)}[data-theme=dark] .worksession-panel-header{background:var(--color-background-tertiary, #2a2a2a)}.worksession-panel-title{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:700;color:var(--color-text, #1a1a1a)}.worksession-panel-close{background:none;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;color:var(--color-text, #1a1a1a);border-radius:var(--radius-md, 8px);transition:all var(--transition-fast, .15s ease)}.worksession-panel-close:hover{background:var(--color-background-secondary, #f5f7fa);opacity:1;transform:rotate(90deg)}[data-theme=dark] .worksession-panel-close:hover{background:var(--color-background-tertiary, #2a2a2a)}.worksession-panel-content{flex:1;overflow-y:auto;padding:20px}.worksession-panel-content::-webkit-scrollbar{width:6px}.worksession-panel-content::-webkit-scrollbar-track{background:var(--color-background-secondary, #f5f7fa);border-radius:3px}.worksession-panel-content::-webkit-scrollbar-thumb{background:var(--color-border, #e0e0e0);border-radius:3px}.worksession-panel-content::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary, #999)}.worksession-panel-section{margin-bottom:24px;padding:16px;background:var(--color-background-secondary, #f5f7fa);border-radius:var(--radius-md, 8px);border-left:3px solid var(--color-primary, #095FB5);transition:all var(--transition-fast, .15s ease)}[data-theme=dark] .worksession-panel-section{background:var(--color-background-tertiary, #2a2a2a);border-left-color:var(--color-primary, #51B64A)}.worksession-panel-section:hover{transform:translate(4px);box-shadow:var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, .05))}.worksession-panel-label{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--color-text-secondary, #666);margin-bottom:8px;letter-spacing:.5px}.worksession-panel-value{font-size:15px;color:var(--color-text, #1a1a1a);margin-bottom:4px;font-weight:500;line-height:1.5}.worksession-panel-meta{font-size:12px;color:var(--color-text-secondary, #666);font-family:var(--font-mono, monospace);word-break:break-all;background:var(--color-background-tertiary, #e8edf3);padding:6px 10px;border-radius:var(--radius-sm, 4px);margin-top:4px}[data-theme=dark] .worksession-panel-meta{background:var(--color-background, #121212)}.worksession-panel-badge{display:inline-block;padding:6px 12px;border-radius:var(--radius-md, 8px);font-size:12px;font-weight:600;letter-spacing:.3px;box-shadow:var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, .05))}.worksession-panel-note{display:flex;align-items:center;gap:10px;padding:16px;background:var(--color-background-tertiary, #e8edf3);border-radius:var(--radius-md, 8px);font-size:13px;color:var(--color-text-secondary, #666);margin-top:24px;border-left:3px solid var(--color-warning, #F59E0B);line-height:1.5}[data-theme=dark] .worksession-panel-note{background:var(--color-background-secondary, #1e1e1e);border-left-color:var(--color-warning, #F59E0B)}.calendar-page{display:flex;flex-direction:column;height:100%;padding:var(--spacing-lg, 24px);background:var(--color-background, #fff);min-height:calc(100vh - 80px)}.calendar-page-header{margin-bottom:var(--spacing-lg, 24px);padding-bottom:var(--spacing-md, 16px);border-bottom:2px solid var(--color-border, #e0e0e0)}.calendar-page-header h1{margin:0;font-size:32px;font-weight:700;color:var(--color-text, #1a1a1a);display:flex;align-items:center;gap:12px}.calendar-page-header h1:before{content:"";width:6px;height:32px;background:var(--color-primary, #095FB5);border-radius:3px}[data-theme=dark] .calendar-page-header h1:before{background:var(--color-primary, #51B64A)}.calendar-page-content{display:flex;gap:var(--spacing-lg, 24px);flex:1;min-height:0;align-items:flex-start}.calendar-page-sidebar{width:280px;flex-shrink:0;position:sticky;top:var(--spacing-md, 16px);max-height:calc(100vh - 120px);overflow-y:auto}.calendar-page-sidebar::-webkit-scrollbar{width:6px}.calendar-page-sidebar::-webkit-scrollbar-track{background:var(--color-background-secondary, #f5f7fa);border-radius:3px}.calendar-page-sidebar::-webkit-scrollbar-thumb{background:var(--color-border, #e0e0e0);border-radius:3px}.calendar-page-sidebar::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary, #999)}.calendar-page-main{flex:1;min-width:0;background:var(--color-surface, #fff);border-radius:var(--radius-lg, 12px);box-shadow:var(--shadow-md, 0 4px 6px rgba(0, 0, 0, .1));border:1px solid var(--color-border, #e0e0e0);overflow:hidden}@media (max-width: 1024px){.calendar-page-content{flex-direction:column}.calendar-page-sidebar{width:100%;position:static;max-height:none}.calendar-page-main{min-height:600px}}@media (max-width: 768px){.calendar-page{padding:var(--spacing-md, 16px)}.calendar-page-header h1{font-size:24px}.calendar-page-content{gap:var(--spacing-md, 16px)}}.sidebar{width:260px;background:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;height:100vh;position:sticky;top:0;overflow:hidden}.sidebar-logo-header{padding:var(--spacing-lg);display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--color-border);background:var(--color-surface)}.sidebar-logo-button{background:none;border:none;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:opacity var(--transition-fast);width:100%;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.sidebar-logo-button:hover{opacity:.9}.sidebar-logo-image{max-width:100%;height:auto;max-height:100px;width:auto;object-fit:contain;transition:transform .2s ease-out}.sidebar-logo-button.pressed .sidebar-logo-image{transform:scale(1.3)}.account-menu-divider{height:1px;background:var(--color-border);margin:var(--spacing-xs) 0}.sidebar-header{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);display:none}.sidebar-logo{display:flex;align-items:center;gap:var(--spacing-sm);font-weight:600;font-size:1.125rem;color:var(--color-primary)}.compose-button{margin:var(--spacing-md);padding:var(--spacing-md);font-size:1rem;gap:var(--spacing-sm);border-radius:var(--radius-lg)}.sidebar-nav{flex:1;overflow-y:auto;padding:var(--spacing-sm);display:flex;flex-direction:column}.sidebar-nav:not(.files-media-nav){min-height:0}.folder-section{margin-bottom:var(--spacing-sm)}.folder-section:last-of-type{margin-bottom:0}.folder-section-header{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);width:100%;font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--color-text-tertiary);letter-spacing:.5px}.folder-section-header:hover{color:var(--color-text-secondary)}.folder-section-content{padding-left:var(--spacing-sm)}.folder-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);width:100%;border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:.9375rem;transition:all var(--transition-fast);text-decoration:none;position:relative;z-index:1;margin-bottom:1px;box-sizing:border-box}.folder-item:hover{background:var(--color-background-secondary);color:var(--color-text);z-index:2}.folder-item.active{background:var(--color-primary);color:var(--color-text-inverse);z-index:2}.folder-item.active .folder-badge{background:#fff3}.folder-share-badge{color:var(--color-primary);opacity:.8;transition:color var(--transition-fast),opacity var(--transition-fast)}.folder-item.active .folder-share-badge{color:#ffffffe6;opacity:1}.folder-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-badge{background:var(--color-primary);color:var(--color-text-inverse);font-size:.75rem;font-weight:600;padding:2px 8px;border-radius:var(--radius-full);min-width:20px;text-align:center}.add-folder-section{margin-top:var(--spacing-md);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border);position:relative;z-index:1}.add-folder{color:var(--color-text-tertiary);border:none;background:transparent;cursor:pointer;position:relative;z-index:1;margin:0}.add-folder:hover{color:var(--color-primary);background:var(--color-background-secondary);z-index:2}.sidebar-loading{padding:var(--spacing-md);color:var(--color-text-tertiary);font-size:.875rem;text-align:center}.folder-item-wrapper{position:relative;display:flex;flex-direction:column;width:100%}.folder-item-wrapper:hover .folder-actions{opacity:1}.folder-color-indicator{width:12px;height:12px;border-radius:50%;flex-shrink:0}.folder-actions{display:flex;gap:2px;opacity:0;transition:opacity var(--transition-fast)}.folder-action-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:transparent;color:var(--color-text-tertiary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.folder-action-btn:hover{background:var(--color-background-secondary);color:var(--color-text)}.folder-color-picker{position:absolute;top:100%;left:0;z-index:100;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-sm);box-shadow:var(--shadow-md);margin-top:4px}.folder-color-picker input[type=color]{width:100%;height:40px;border:none;border-radius:var(--radius-sm);cursor:pointer}.folder-expand-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;background:transparent;cursor:pointer;flex-shrink:0}.folder-expand-btn:hover{background:var(--color-background-tertiary);border-radius:var(--radius-sm)}.folder-children{margin-left:0}.folder-menu-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:transparent;color:var(--color-text-tertiary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);flex-shrink:0;opacity:0;margin-right:var(--spacing-xs)}.folder-item-wrapper:hover .folder-menu-btn{opacity:1}.folder-menu-btn:hover{background:var(--color-background-secondary);color:var(--color-text)}.folder-item.active .folder-menu-btn{color:var(--color-text-inverse);opacity:.8}.folder-item.active .folder-menu-btn:hover{background:#fff3;color:var(--color-text-inverse);opacity:1}.folder-menu-dropdown{position:absolute;top:100%;left:0;z-index:1000;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:200px;margin-top:4px;overflow:hidden}.folder-menu-item{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);border:none;background:transparent;color:var(--color-text);font-size:.875rem;cursor:pointer;text-align:left;transition:all var(--transition-fast)}.folder-menu-item:hover{background:var(--color-background-secondary);color:var(--color-text)}.folder-menu-item svg{flex-shrink:0;color:var(--color-text-secondary)}.color-picker-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:2000}.color-picker-popup{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);box-shadow:var(--shadow-lg);min-width:280px;max-width:320px}.files-media-nav{flex:0 0 auto;padding:var(--spacing-sm);border-top:1px solid var(--color-border);background:var(--color-surface);margin-top:auto}.files-media-nav .nav-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);width:100%;border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:.9375rem;transition:all var(--transition-fast);text-decoration:none;position:relative;margin-bottom:2px;box-sizing:border-box;background:transparent;border:none;cursor:pointer}.files-media-nav .nav-item:hover{background:var(--color-background-secondary);color:var(--color-text)}.files-media-nav .nav-item.active{background:var(--color-primary);color:var(--color-text-inverse)}.files-media-nav .nav-item svg{flex-shrink:0;width:20px;height:20px}.files-media-nav .nav-item span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-footer{padding:var(--spacing-sm) var(--spacing-md);border-top:1px solid var(--color-border);background:var(--color-surface);flex-shrink:0}.sidebar-signature{font-size:.75rem;color:var(--color-text-tertiary);text-align:center;font-weight:500}@media (max-width: 768px){.sidebar{width:100%;height:auto;position:relative}.files-media-nav{margin-top:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-sm)}.files-media-nav .nav-item{padding:var(--spacing-xs) var(--spacing-sm);font-size:.875rem}.files-media-nav .nav-item svg{width:18px;height:18px}}.folder-context-menu{position:fixed;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;padding:var(--spacing-xs);z-index:1000;min-width:180px;max-width:250px}.context-menu-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);cursor:pointer;font-size:.875rem;color:var(--color-text);transition:all var(--transition-fast)}.context-menu-item:hover{background:var(--color-background-secondary)}.context-menu-item.danger{color:var(--color-error)}.context-menu-item.danger:hover{background:#ef44441a}.context-menu-divider{height:1px;background:var(--color-border);margin:var(--spacing-xs) 0}.header{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-surface);border-bottom:1px solid var(--color-border);height:64px}.search-form{flex:1;max-width:600px;position:relative}.search-icon{position:absolute;left:var(--spacing-md);top:50%;transform:translateY(-50%);color:var(--color-text-tertiary);pointer-events:none}.search-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);padding-left:44px;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-background-secondary)}.search-input:focus{background:var(--color-surface);border-color:var(--color-primary)}.header-actions{display:flex;align-items:center;gap:var(--spacing-xs)}.header-datetime{display:flex;flex-direction:column;align-items:flex-end;padding:0 var(--spacing-md);border-right:1px solid var(--color-border);margin-right:var(--spacing-xs);min-width:120px}.header-date{font-size:.8125rem;color:var(--color-text-secondary);line-height:1.2}.header-time{font-size:.9375rem;font-weight:600;color:var(--color-text);line-height:1.2}.user-menu-container{position:relative}.user-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);transition:background var(--transition-fast)}.user-button:hover{background:var(--color-background-secondary)}.user-avatar{width:36px;height:36px;border-radius:var(--radius-full);background:var(--color-primary);color:var(--color-text-inverse);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.user-avatar-image{width:100%;height:100%;object-fit:cover}.user-avatar.large{width:48px;height:48px}.user-email{font-size:.875rem;color:var(--color-text);max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:49}.user-menu{position:absolute;right:0;top:calc(100% + var(--spacing-xs));width:280px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:50;overflow:hidden}.user-menu-header{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md)}.user-info{display:flex;flex-direction:column;min-width:0;gap:4px}.user-name-clickable,.user-email-clickable{display:flex;align-items:center;gap:6px;cursor:pointer;padding:2px 4px;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.user-name-clickable:hover,.user-email-clickable:hover{background:var(--color-background-secondary)}.user-name{font-weight:600;color:var(--color-text)}.user-email-small{font-size:.8125rem;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.copy-icon{color:var(--color-text-tertiary);flex-shrink:0;opacity:.6;transition:opacity var(--transition-fast)}.user-name-clickable:hover .copy-icon,.user-email-clickable:hover .copy-icon{opacity:1}.user-menu-divider{height:1px;background:var(--color-border)}.user-menu-item{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-md);color:var(--color-text);font-size:.9375rem;transition:background var(--transition-fast)}.user-menu-item:hover{background:var(--color-background-secondary)}.user-menu-item.danger{color:var(--color-error)}.user-menu-item.danger:hover{background:#ef44441a}@media (max-width: 640px){.user-email{display:none}.search-form{max-width:none}.header-datetime{min-width:80px;padding:0 var(--spacing-sm);margin-right:0}.header-date{font-size:.75rem}.header-time{font-size:.8125rem}}.layout{display:flex;min-height:100vh}.layout-main{flex:1;display:flex;flex-direction:column;min-width:0}.layout-content{flex:1;overflow:auto;background:var(--color-background-secondary)}@media (max-width: 768px){.layout{flex-direction:column}.sidebar{position:fixed;left:-280px;top:0;bottom:0;z-index:100;transition:left var(--transition-normal)}.sidebar.open{left:0}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:99;opacity:0;pointer-events:none;transition:opacity var(--transition-normal)}.sidebar-overlay.visible{opacity:1;pointer-events:auto}}:root{--color-primary: #095FB5;--color-primary-light: #3D8DD9;--color-primary-dark: #074A91;--color-background: #FFFFFF;--color-background-secondary: #F5F7FA;--color-background-tertiary: #E8EDF3;--color-surface: #FFFFFF;--color-surface-elevated: #FFFFFF;--color-text: #1A1A1A;--color-text-secondary: #666666;--color-text-tertiary: #999999;--color-text-inverse: #FFFFFF;--color-border: #E0E0E0;--color-border-light: #F0F0F0;--color-success: #10B981;--color-warning: #F59E0B;--color-error: #EF4444;--color-info: #3B82F6;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 40px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .15);--font-family: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "Space Mono", "SF Mono", Monaco, "Courier New", monospace;--transition-fast: .15s ease;--transition-normal: .25s ease}[data-theme=dark]{--color-primary: #51B64A;--color-primary-light: #6FD166;--color-primary-dark: #3D9137;--color-background: #121212;--color-background-secondary: #1E1E1E;--color-background-tertiary: #2A2A2A;--color-surface: #1E1E1E;--color-surface-elevated: #2A2A2A;--color-text: #FFFFFF;--color-text-secondary: #B3B3B3;--color-text-tertiary: #808080;--color-text-inverse: #1A1A1A;--color-border: #333333;--color-border-light: #404040}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html.font-size-small{font-size:14px}html.font-size-medium{font-size:16px}html.font-size-large{font-size:18px}html.compact-mode .message-item{padding:var(--spacing-xs) var(--spacing-sm);min-height:auto}html.compact-mode .message-preview{font-size:.75rem;margin-top:2px}html.compact-mode .message-header{margin-bottom:0}body{font-family:var(--font-family);background-color:var(--color-background);color:var(--color-text);line-height:1.5;min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2}h1{font-size:2.25rem}h2{font-size:1.875rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;font-size:inherit;cursor:pointer;border:none;background:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-weight:500;transition:all var(--transition-fast)}.btn-primary{background-color:var(--color-primary);color:var(--color-text-inverse)}.btn-primary:hover{background-color:var(--color-primary-dark)}.btn-secondary{background-color:var(--color-background-secondary);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{background-color:var(--color-background-tertiary)}.btn-ghost{color:var(--color-text-secondary)}.btn-ghost:hover{background-color:var(--color-background-secondary);color:var(--color-text)}.btn-icon{padding:var(--spacing-sm);border-radius:var(--radius-md)}input,textarea,select{font-family:inherit;font-size:inherit;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-surface);color:var(--color-text);width:100%;transition:border-color var(--transition-fast)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary)}input::placeholder,textarea::placeholder{color:var(--color-text-tertiary)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;gap:var(--spacing-md)}.loading-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-background-secondary)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}
