@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";
*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;tab-size:4}body{-webkit-font-smoothing:antialiased;line-height:1.5}img,svg,video{max-width:100%;display:block}input,button,textarea,select{font:inherit}:root{--bg:#0d1117;--bg-card:#161b22;--bg-hover:#1c2128;--border:#30363d;--border-focus:#388bfd;--text-primary:#e6edf3;--text-secondary:#8b949e;--text-muted:#484f58;--accent:#388bfd;--accent-hover:#58a6ff;--accent-dim:#388bfd1f;--success:#3fb950;--success-dim:#3fb9501f;--warning:#d29922;--warning-dim:#d299221f;--danger:#f85149;--danger-hover:#ff7b72;--danger-dim:#f851491f;--radius:8px;--radius-lg:12px;--shadow:0 1px 3px #0006, 0 1px 2px #0000003d;--shadow-lg:0 4px 12px #00000080}html,body{background:var(--bg);height:100%;color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.5}a{color:var(--accent-hover);text-decoration:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:24px}.btn{border-radius:var(--radius);cursor:pointer;white-space:nowrap;border:1px solid #0000;align-items:center;gap:6px;padding:7px 14px;font-family:inherit;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-ghost{color:var(--text-secondary);border-color:var(--border);background:0 0}.btn-ghost:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-danger{background:var(--danger-dim);color:var(--danger);border-color:var(--danger)}.btn-danger:hover{background:var(--danger);color:#fff}.btn-success{background:var(--success-dim);color:var(--success);border-color:var(--success)}.btn-success:hover{background:var(--success);color:#fff}.btn-sm{padding:4px 10px;font-size:12px}.btn:disabled{opacity:.5;cursor:not-allowed}.input{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text-primary);outline:none;padding:8px 12px;font-family:inherit;font-size:13px;transition:border-color .15s,box-shadow .15s}.input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-dim)}.input::placeholder{color:var(--text-muted)}select.input{cursor:pointer}.label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;font-size:12px;font-weight:500;display:block}.form-group{flex-direction:column;gap:16px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:600px){.form-row{grid-template-columns:1fr}}.table-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);overflow-x:auto}table{border-collapse:collapse;width:100%}thead{background:var(--bg-hover)}th{text-align:left;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 16px;font-size:11px;font-weight:600}td{color:var(--text-primary);border-bottom:1px solid var(--border);padding:12px 16px;font-size:13px}tr:last-child td{border-bottom:none}tr:hover td{background:var(--bg-hover)}.badge{border-radius:20px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.badge-green{background:var(--success-dim);color:var(--success)}.badge-red{background:var(--danger-dim);color:var(--danger)}.badge-yellow{background:var(--warning-dim);color:var(--warning)}.badge-blue{background:var(--accent-dim);color:var(--accent-hover)}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;gap:8px;padding:20px;transition:border-color .15s;display:flex}.stat-card:hover{border-color:var(--accent)}.stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:600}.stat-value{color:var(--text-primary);font-size:28px;font-weight:700;line-height:1}.stat-icon{border-radius:var(--radius);justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:4px;display:flex}.sidebar{background:var(--bg-card);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:240px;min-height:100vh;display:flex}.sidebar-logo{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:20px 24px;display:flex}.sidebar-logo-icon{background:linear-gradient(135deg, var(--accent), #7c3aed);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.sidebar-logo-text{color:var(--text-primary);font-size:15px;font-weight:700}.sidebar-logo-sub{color:var(--text-secondary);font-size:11px;line-height:1.2}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:12px;display:flex}.sidebar-section{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-top:8px;padding:8px 12px 4px;font-size:10px;font-weight:700}.nav-item{border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:8px 12px;font-size:13px;font-weight:500;text-decoration:none;transition:all .15s;display:flex}.nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-item.active{background:var(--accent-dim);color:var(--accent-hover)}.sidebar-footer{border-top:1px solid var(--border);padding:16px}.user-info{align-items:center;gap:10px;display:flex}.user-avatar{background:linear-gradient(135deg, var(--accent), #7c3aed);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:12px;font-weight:700;display:flex}.user-name{color:var(--text-primary);font-size:13px;font-weight:500}.user-role{color:var(--text-secondary);font-size:11px}.app-layout{min-height:100vh;display:flex}.main-content{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.main-content>.mail-layout{flex:1}.page-header{border-bottom:1px solid var(--border);background:var(--bg-card);justify-content:space-between;align-items:center;gap:16px;padding:24px 32px;display:flex}.page-title{color:var(--text-primary);font-size:20px;font-weight:700}.page-subtitle{color:var(--text-secondary);margin-top:2px;font-size:13px}.page-body{flex-direction:column;flex:1;gap:24px;padding:32px;display:flex}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#000000b3;justify-content:center;align-items:center;padding:16px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:480px;box-shadow:var(--shadow-lg);animation:.2s slideUp}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 24px 16px;display:flex}.modal-title{color:var(--text-primary);font-size:16px;font-weight:700}.modal-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:color .15s;display:flex}.modal-close:hover{color:var(--text-primary)}.modal-body{padding:24px}.modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;padding:16px 24px;display:flex}.login-page{background:var(--bg);background-image:radial-gradient(at 50% 0,#388bfd14 0%,#0000 60%);justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex}.login-box{width:100%;max-width:400px}.login-header{text-align:center;margin-bottom:32px}.login-logo{background:linear-gradient(135deg, var(--accent), #7c3aed);border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;margin:0 auto 16px;display:flex;box-shadow:0 8px 24px #388bfd4d}.login-title{color:var(--text-primary);font-size:22px;font-weight:700}.login-sub{color:var(--text-secondary);margin-top:6px;font-size:13px}.error-msg{background:var(--danger-dim);border:1px solid var(--danger);border-radius:var(--radius);color:var(--danger);padding:10px 14px;font-size:13px}.search-bar{align-items:center;gap:10px;display:flex}.search-input-wrap{flex:1;position:relative}.search-icon{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.search-input{padding-left:34px}.empty-state{color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px 20px;display:flex}.empty-icon{background:var(--bg-hover);width:48px;height:48px;color:var(--text-muted);border-radius:12px;justify-content:center;align-items:center;display:flex}.progress-bar{background:var(--border);border-radius:2px;flex:1;height:4px;overflow:hidden}.progress-fill{background:var(--accent);border-radius:2px;height:100%;transition:width .3s}.progress-fill.danger{background:var(--danger)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.spinner{border:2px solid #0000;border-top-color:currentColor;border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:.6s linear infinite spin}.mail-layout{grid-template-columns:220px 360px 1fr;height:100%;display:grid;overflow:hidden}.mail-sidebar{background:var(--bg);border-right:1px solid var(--border);flex-direction:column;gap:6px;padding:16px 10px;display:flex;overflow-y:auto}.mail-sidebar .btn-primary{border-radius:20px;gap:6px;padding:10px 16px;font-size:13px;font-weight:600;box-shadow:0 2px 8px #58a6ff40}.mail-account{border-top:1px solid var(--border);flex-direction:column;align-items:center;gap:6px;margin-top:auto;padding:12px 8px;display:flex}.mail-account-email{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:11px;overflow:hidden}.folder-list{flex-direction:column;gap:2px;margin-top:4px;display:flex}.folder-item{cursor:pointer;color:var(--text-secondary);text-align:left;background:0 0;border:none;border-radius:20px;align-items:center;gap:10px;width:100%;padding:9px 12px;font-family:inherit;font-size:13px;transition:all .15s;display:flex}.folder-item:hover{background:var(--bg-hover);color:var(--text-primary)}.folder-item.active{background:var(--accent-dim);color:var(--accent-hover);font-weight:600}.folder-icon{text-align:center;flex-shrink:0;width:20px;font-size:15px}.folder-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.folder-badge{background:var(--accent);color:#fff;letter-spacing:.02em;border-radius:10px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:10px;font-weight:700;display:flex}.mail-list{border-right:1px solid var(--border);background:var(--bg);flex-direction:column;display:flex;overflow:hidden}.mail-list-header{border-bottom:1px solid var(--border);background:var(--bg-card);justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.mail-list-header h2{color:var(--text-primary);margin:0;font-size:15px;font-weight:700}.message-list-inner{flex:1;overflow-y:auto}.message-row{cursor:pointer;border-bottom:1px solid #30363d80;align-items:flex-start;gap:12px;padding:14px 20px;transition:all .12s;display:flex;position:relative}.message-row:hover{background:var(--bg-hover)}.message-row.selected{background:var(--accent-dim);border-left:3px solid var(--accent);padding-left:17px}.message-row.unread:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;position:absolute;top:50%;left:8px;transform:translateY(-50%)}.message-row.unread{padding-left:22px}.message-row.unread.selected{padding-left:19px}.message-row.unread .message-sender{color:var(--text-primary);font-weight:700}.message-row.unread .message-subject{color:var(--text-secondary);font-weight:500}.message-avatar{background:linear-gradient(135deg, var(--accent-dim), var(--bg-hover));width:36px;height:36px;color:var(--accent-hover);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;font-size:14px;font-weight:700;display:flex}.message-content{flex:1;min-width:0}.message-top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:3px;display:flex}.message-sender{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;overflow:hidden}.message-time{color:var(--text-muted);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:11px}.message-subject{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.5;overflow:hidden}.message-attach{opacity:.6;flex-shrink:0;margin-top:2px;font-size:13px}.mail-detail{background:var(--bg-card);overflow-y:auto}.message-view{max-width:900px;padding:28px 32px}.message-view-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.message-view-subject{color:var(--text-primary);letter-spacing:-.01em;font-size:20px;font-weight:700;line-height:1.35}.message-view-actions{flex-shrink:0;gap:8px;display:flex}.message-view-meta{border-bottom:1px solid var(--border);align-items:center;gap:14px;margin-bottom:20px;padding:16px 0;display:flex}.message-view-avatar{background:linear-gradient(135deg, var(--accent-dim), var(--bg-hover));width:40px;height:40px;color:var(--accent-hover);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:flex}.message-attachments{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:8px;margin-bottom:20px;padding:12px 0;display:flex}.attachment-chip{background:var(--bg-hover);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:7px 12px;font-size:12px;transition:border-color .12s;display:inline-flex}.attachment-chip:hover{border-color:var(--accent);color:var(--text-primary)}.message-view-body{min-height:200px;padding-top:4px}.mail-empty{height:100%;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:40px;display:flex}.mail-empty-icon{background:var(--bg-hover);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:4px;display:flex}.attachment-actions{gap:4px;margin-left:auto;display:inline-flex}.att-btn{cursor:pointer;color:var(--text-muted);background:0 0;border:1px solid #0000;border-radius:4px;padding:2px 5px;font-size:12px;transition:all .12s}.att-btn:hover{border-color:var(--accent);color:var(--accent-hover);background:var(--accent-dim)}.compose-dropzone{border:2px dashed var(--border);border-radius:var(--radius);cursor:pointer;color:var(--text-muted);justify-content:center;align-items:center;gap:8px;padding:16px;font-size:12px;transition:all .15s;display:flex}.compose-dropzone:hover{border-color:var(--text-secondary);color:var(--text-secondary);background:var(--bg-hover)}.compose-dropzone.active{border-color:var(--accent);color:var(--accent-hover);background:var(--accent-dim)}.compose-attachments{flex-direction:column;gap:4px;display:flex}.compose-att-item{background:var(--bg-hover);border-radius:var(--radius);color:var(--text-secondary);align-items:center;gap:8px;padding:6px 10px;font-size:12px;display:flex}.att-remove{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:4px;margin-left:auto;padding:2px 6px;font-size:12px;transition:all .12s}.att-remove:hover{color:var(--danger);background:var(--danger-dim)}@media (max-width:1024px){.mail-layout{grid-template-columns:60px 280px 1fr}.mail-sidebar{padding:12px 6px}.mail-sidebar .btn-primary{justify-content:center;padding:10px;font-size:0}.folder-name,.folder-badge{display:none}.folder-item{border-radius:12px;justify-content:center;padding:8px}.mail-account-email{display:none}}@media (max-width:768px){.sidebar{display:none}.mail-layout{grid-template-columns:1fr}.mail-sidebar,.mail-detail{display:none}.page-body,.page-header{padding:16px}.stats-grid{grid-template-columns:1fr 1fr}}
