:root{--primary: #1a56db;--primary-dark: #1341a0;--primary-light: #ebf0fd;--secondary: #7c3aed;--success: #10b981;--danger: #ef4444;--warning: #f59e0b;--dark: #0f172a;--text: #1e293b;--muted: #64748b;--border: #e2e8f0;--light-bg: #f8fafc;--white: #ffffff;--sidebar-width: 260px;--success-bg: #dcfce7;--success-text: #166534;--danger-bg: #fee2e2;--danger-text: #b91c1c;--warning-bg: #fef3c7;--warning-text: #92400e;--info-bg: #dbeafe;--info-text: #1d4ed8;--neutral-bg: #f1f5f9;--neutral-text: #475569;--skeleton-a: #f0f4f8;--skeleton-b: #e2e8f0;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 48px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-full: 999px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06);--shadow-md: 0 4px 16px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .16);--text-xs: 12px;--text-sm: 13px;--text-base: 14px;--text-md: 16px;--text-lg: 18px;--text-xl: 22px;--text-2xl: 28px;--duration-fast: .12s;--duration-base: .18s;--duration-slow: .25s;--ease-standard: cubic-bezier(.2, 0, 0, 1)}*,*:before,*:after{box-sizing:border-box}html,body{height:100%;margin:0;padding:0;overflow:hidden}body{font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;color:var(--text);background:var(--light-bg);-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:Poppins,sans-serif;font-weight:700;color:var(--dark)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#dadce0;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#bdc1c6}.text-primary{color:var(--primary)!important}.bg-primary-light{background:var(--primary-light)!important}.btn-primary,.btn-secondary{border:none;border-radius:var(--radius-sm);padding:8px 14px;font-size:.85rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:transparent;color:var(--muted);border:1px solid var(--border)}.btn-secondary:hover{background:var(--light-bg)}.btn-compose{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 16px;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:var(--white);border:none;border-radius:var(--radius-md);font-family:Poppins,sans-serif;font-size:.88rem;font-weight:600;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 12px #1a56db4d;text-decoration:none}.btn-compose:hover{transform:translateY(-1px);box-shadow:0 6px 20px #1a56db66;color:var(--white)}.btn-compose i{font-size:1rem}.btn-compose .nav-icon{width:17px;height:17px;flex-shrink:0}.modal:not(.show){display:none!important}#compose-modal,#reply-modal{pointer-events:none}#compose-modal .modal-dialog,#reply-modal .modal-dialog{pointer-events:all}.modal-dialog-bottom,.reply-modal-dialog{position:fixed;bottom:0;margin:0;width:540px;max-width:540px;z-index:1060}.modal-dialog-bottom,.reply-modal-dialog{right:24px}.compose-card{border:none;border-radius:12px 12px 0 0;box-shadow:0 -4px 30px #0000001f;max-height:70vh;display:flex;flex-direction:column}.compose-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--dark);color:var(--white);flex-shrink:0;border-radius:12px 12px 0 0}.compose-header .compose-title{font-family:Poppins,sans-serif;font-size:.9rem;font-weight:600;display:flex;align-items:center;min-width:0;overflow:hidden}.compose-header .compose-actions{display:flex;gap:4px}.compose-header .compose-action-btn{background:none;border:none;color:#ffffffb3;padding:4px 8px;border-radius:4px;cursor:pointer;font-size:.85rem;transition:all .15s}.compose-header .compose-action-btn:hover{background:#ffffff1a;color:var(--white)}.compose-header .compose-action-btn.compose-close-btn:hover{background:#ef4444cc;color:var(--white)}.compose-fields{flex-shrink:0;background:var(--white)}.compose-fields .compose-field{border-bottom:1px solid var(--border);padding:0 16px}.compose-fields .compose-field.compose-field-border{border-bottom:2px solid var(--border)}.compose-fields .compose-field.compose-field-to{display:flex;align-items:center;gap:var(--space-2)}.compose-fields .compose-field.compose-field-to .compose-input{flex:1;min-width:0}.compose-fields .compose-ccbcc-toggle{position:relative;flex-shrink:0;display:inline-flex;align-items:center;background:none;border:none;color:var(--muted);font-size:.78rem;font-weight:600;cursor:pointer;padding:4px 6px;border-radius:var(--radius-sm);transition:background var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard)}.compose-fields .compose-ccbcc-toggle:hover{background:var(--light-bg);color:var(--primary)}.compose-fields .compose-ccbcc-toggle.active{background:var(--primary-light);color:var(--primary-dark)}.compose-fields .compose-ccbcc-badge{width:6px;height:6px;border-radius:50%;background:var(--primary);margin-left:5px}.compose-fields .compose-input{width:100%;border:none;outline:none;padding:10px 0;font-size:.875rem;color:var(--text);background:transparent;font-family:Roboto,sans-serif}.compose-fields .compose-input::placeholder{color:var(--muted)}.compose-fields .compose-input.compose-subject{font-weight:600;font-size:.9rem}.compose-body{background:var(--white);flex:1;min-height:0;overflow-y:auto}.compose-body .compose-editor{min-height:120px;padding:14px 16px;font-size:.875rem;color:var(--text);line-height:1.7;outline:none;font-family:Roboto,sans-serif}.compose-body .compose-editor:empty:before{content:attr(placeholder);color:var(--muted);pointer-events:none}.compose-footer{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--white);border-top:1px solid var(--border);flex-shrink:0}.compose-footer .btn-compose-send{display:inline-flex;align-items:center;padding:8px 20px;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:var(--white);border:none;border-radius:8px;font-family:Poppins,sans-serif;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #1a56db4d}.compose-footer .btn-compose-send:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 14px #1a56db66}.compose-footer .btn-compose-send:disabled{opacity:.65;cursor:not-allowed}.compose-footer .compose-tools{display:flex;gap:2px}.compose-footer .compose-tool-btn{background:none;border:none;color:var(--muted);padding:6px 8px;border-radius:6px;font-size:.9rem;cursor:pointer;transition:all .15s}.compose-footer .compose-tool-btn:hover{background:var(--light-bg);color:var(--primary)}.compose-attachments{padding:6px 16px;border-top:1px solid var(--border);flex-shrink:0}.compose-att-item{position:relative;display:flex;align-items:center;gap:4px;font-size:.78rem;padding:4px 0;color:var(--text)}.compose-att-item.compose-att-uploading{opacity:.75}.compose-att-item .compose-att-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compose-att-item .compose-att-size{color:var(--muted);flex-shrink:0}.compose-att-item .compose-att-progress{position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--border);border-radius:var(--radius-full);overflow:hidden}.compose-att-item .compose-att-progress-bar{height:100%;background:var(--primary);transition:width var(--duration-fast) var(--ease-standard)}.compose-att-item .compose-att-remove{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;border-radius:4px;background:none;color:var(--muted);cursor:pointer;flex-shrink:0}.compose-att-item .compose-att-remove:hover{background:var(--light-bg);color:var(--danger)}.compose-status{font-size:.78rem;font-weight:500;padding:6px 14px;display:flex;align-items:center;flex-shrink:0}.compose-status.compose-success{background:#dcfce7;color:#15803d}.compose-status.compose-error{background:#fee2e2;color:#b91c1c}.compose-autosave-hint{font-size:.72rem;color:var(--muted);display:flex;align-items:center;gap:4px}.compose-autosave-hint.compose-autosave-saved{color:#15803d}.modal-dialog-bottom.compose-fullscreen,.reply-modal-dialog.compose-fullscreen{position:fixed!important;top:5vh!important;left:50%!important;right:auto!important;bottom:0!important;transform:translate(-50%)!important;width:860px!important;max-width:calc(100vw - 40px)!important;margin:0!important}.modal-dialog-bottom.compose-fullscreen .compose-card,.reply-modal-dialog.compose-fullscreen .compose-card{height:95vh!important;max-height:95vh!important;border-radius:12px 12px 0 0!important;box-shadow:0 -8px 40px #00000038!important}.reply-format-toolbar{display:flex;align-items:center;padding:2px 6px;border-top:1px solid var(--border);background:var(--light-bg);flex-shrink:0;overflow-x:auto;white-space:nowrap;scrollbar-width:none}.reply-format-toolbar::-webkit-scrollbar{display:none}.reply-fmt-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;border-radius:3px;cursor:pointer;font-size:.72rem;color:var(--muted);flex-shrink:0;transition:background .1s,color .1s}.reply-fmt-btn:hover{background:#dadce0;color:var(--text)}.reply-fmt-sep{width:1px;height:16px;background:#dadce0;margin:0 2px;flex-shrink:0}.reply-fmt-select{height:22px;border:1px solid transparent;border-radius:3px;background:transparent;color:var(--text);font-size:.68rem;padding:0 2px;cursor:pointer;outline:none;max-width:88px;flex-shrink:0}.reply-fmt-select:hover{background:#dadce0}.reply-fmt-select:focus{border-color:var(--primary)}.reply-fmt-select-sm{max-width:52px}.fmt-color-bar{display:block;width:12px;height:2px;background:var(--danger);border-radius:1px;margin-top:-1px}.link-popover-wrap{position:relative;display:inline-flex}.link-popover{position:fixed;z-index:9999;background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:8px;width:320px;display:flex;flex-direction:column;gap:6px;animation:linkPopIn .12s ease}@keyframes linkPopIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.link-popover-field{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 10px;background:var(--light-bg)}.link-popover-field:focus-within{border-color:var(--primary);background:var(--white)}.link-popover-field i{font-size:.72rem;color:var(--muted);flex-shrink:0}.link-popover-input{flex:1;border:none;outline:none;background:transparent;font-size:.8rem;color:var(--text);font-family:Roboto,sans-serif}.link-popover-input::placeholder{color:var(--muted)}.link-popover-apply{flex-shrink:0;border:none;background:none;color:var(--muted);font-size:.78rem;font-weight:600;cursor:pointer;padding:2px 6px;border-radius:4px;transition:color .12s}.link-popover-apply:hover:not(:disabled){color:var(--primary)}.link-popover-apply:disabled{opacity:.4;cursor:default}.compose-drop-zone{position:relative}.compose-drag-over .compose-editor{opacity:.3}.compose-drop-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:#1a56db0f;border:2px dashed var(--primary);border-radius:var(--radius-md);z-index:10;pointer-events:none}.compose-drop-overlay i{font-size:1.8rem;color:var(--primary)}.compose-drop-overlay span{font-size:.82rem;font-weight:600;color:var(--primary)}.folder-page{display:flex;flex-direction:column;height:calc(100vh - 58px);background:var(--white);overflow:hidden}.folder-header{display:flex;align-items:center;gap:14px;padding:20px 28px;border-bottom:1px solid var(--border);flex-shrink:0}.folder-header .folder-icon{font-size:1.4rem}.folder-header .folder-title{font-size:1rem;font-weight:700;color:var(--dark);margin:0 0 2px}.folder-header .folder-subtitle{font-size:.8rem;color:var(--muted);margin:0}.folder-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--muted);text-align:center;padding:40px}.folder-empty i{font-size:3rem;color:#cbd5e1;margin-bottom:8px}.folder-empty h5{font-size:1rem;color:var(--text);margin:0}.folder-empty p{font-size:.85rem;margin:0;max-width:340px}.avatar-circle{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-family:Poppins,sans-serif;font-weight:700;color:var(--white);flex-shrink:0}.avatar-circle.av-blue{background:#3b82f6}.avatar-circle.av-green{background:#10b981}.avatar-circle.av-orange{background:#f59e0b}.avatar-circle.av-purple{background:#8b5cf6}.avatar-circle.av-red{background:#ef4444}.avatar-circle.av-teal{background:#14b8a6}.avatar-circle.av-pink{background:#ec4899}.avatar-circle.av-indigo{background:#6366f1}:root.dark{--primary: #3b82f6;--primary-dark: #2563eb;--primary-light: #1e3a5f;--secondary: #8b5cf6;--dark: #f1f5f9;--text: #e2e8f0;--muted: #94a3b8;--border: #334155;--light-bg: #1e293b;--white: #0f172a;--danger: #f87171;--warning: #fbbf24;--success-bg: #14532d;--success-text: #86efac;--danger-bg: #7f1d1d;--danger-text: #fca5a5;--warning-bg: #78350f;--warning-text: #fcd34d;--info-bg: #1e3a5f;--info-text: #93c5fd;--neutral-bg: #334155;--neutral-text: #cbd5e1;--skeleton-a: #1e293b;--skeleton-b: #334155;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .24);--shadow-md: 0 4px 16px rgba(0, 0, 0, .32);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .45);background:#0f172a;color:#e2e8f0}:root.dark body{background:#0f172a;color:#e2e8f0}:root.dark .email-row:hover{background:#1e293b!important}:root.dark .email-row.active{background:#1e3a5f!important}:root.dark .email-row.selected{background:#1a2d4a!important}:root.dark .email-row.unread{background:#16213a!important}:root.dark .email-row{border-bottom-color:#334155!important}:root.dark .email-row.skeleton .skeleton-box,:root.dark .email-row.skeleton .skeleton-circle,:root.dark .email-row.skeleton .skeleton-text,:root.dark .skeleton-circle,:root.dark .skeleton-text{background:linear-gradient(90deg,var(--skeleton-a) 25%,var(--skeleton-b) 50%,var(--skeleton-a) 75%)!important}:root.dark .ctx-menu{background:#1e293b!important;border-color:#334155!important}:root.dark .ctx-item:hover{background:#334155!important}:root.dark .compose-card{background:#1e293b!important}:root.dark .compose-body{background:#1e293b!important}:root.dark .compose-footer{background:#1e293b!important;border-top-color:#334155!important}:root.dark .compose-input{color:#e2e8f0!important}:root.dark .compose-editor{color:#e2e8f0!important}:root.dark .modal-content{background:#1e293b!important}:root.dark ::-webkit-scrollbar-thumb{background:#475569}:root.density-compact .email-row{height:34px!important}:root.density-compact .email-sender-avatar{width:24px!important;height:24px!important;font-size:.56rem!important}:root.density-compact .fv-row{padding-top:7px!important;padding-bottom:7px!important}:root.density-compact .fv-avatar{width:28px!important;height:28px!important;font-size:.6rem!important}@media (max-width: 768px){.modal-dialog-bottom,.reply-modal-dialog{position:fixed!important;inset:auto 0 0!important;width:100%!important;max-width:100%!important;max-height:90dvh!important;margin:0!important}.compose-card{border-radius:16px 16px 0 0!important;max-height:90dvh;display:flex;flex-direction:column;overflow:hidden}.compose-body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.compose-body .compose-editor{min-height:140px}.compose-footer{flex-shrink:0;padding-bottom:max(12px,env(safe-area-inset-bottom))}.compose-fullscreen{top:0!important;left:0!important;right:0!important;width:100%!important;max-width:100%!important;transform:none!important}.reply-format-toolbar{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}}
