body{margin:0;background:#f5f7fb;color:#1f2937;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,"Microsoft YaHei",sans-serif;}
.wrap{max-width:1080px;margin:0 auto;padding:28px 16px;}
.header{background:#fff;border-radius:12px;padding:20px 24px;margin-bottom:16px;box-shadow:0 1px 8px rgba(0,0,0,.06)}
.header-top{display:flex;gap:16px;justify-content:space-between;align-items:flex-start}
h1{font-size:22px;margin:0 0 8px}.count{color:#6b7280;font-size:14px}.mail-card{background:#fff;border-radius:12px;margin-bottom:12px;box-shadow:0 1px 8px rgba(0,0,0,.05);overflow:hidden}
.btn{display:inline-flex;align-items:center;gap:8px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#1f2937;text-decoration:none;font-size:14px;font-weight:600;padding:9px 14px;white-space:nowrap}.btn:hover{background:#f9fafb}.btn.is-loading{pointer-events:none;opacity:.82}.btn.is-loading::before{content:"";width:14px;height:14px;border-radius:50%;border:2px solid #d1d5db;border-top-color:#111827;animation:spin .8s linear infinite}
summary{cursor:pointer;display:flex;gap:16px;justify-content:space-between;align-items:center;padding:16px 20px;list-style:none}.subject{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date{color:#6b7280;font-size:13px;white-space:nowrap}.meta{padding:0 20px 12px;color:#4b5563;font-size:14px}.body{white-space:pre-wrap;word-break:break-word;background:#f9fafb;border-top:1px solid #eef2f7;margin:0;padding:16px 20px;font-family:inherit;line-height:1.6}.empty{background:#fff;border-radius:12px;padding:48px;text-align:center;color:#6b7280}
.page-loading{position:fixed;inset:0;z-index:99;display:none;align-items:center;justify-content:center;background:rgba(245,247,251,.72);backdrop-filter:blur(3px)}.page-loading.is-visible{display:flex}.loading-card{display:flex;align-items:center;gap:12px;border:1px solid #dbe4f0;border-radius:14px;background:#fff;padding:16px 20px;box-shadow:0 12px 32px rgba(15,23,42,.16);font-weight:700;color:#0f172a}.loading-spinner{width:22px;height:22px;border-radius:50%;border:3px solid #d1d5db;border-top-color:#111827;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:640px){.header-top{display:block}.btn{margin-top:12px}summary{display:block}.date{display:block;margin-top:6px}.wrap{padding:12px}}
