:root{--mail-green:#164d34;--mail-soft:#f3f7f4;--mail-line:#e5ebe7;--mail-ink:#17231c;--mail-muted:#708078}
.mail-app{height:calc(100vh - 72px);display:grid;grid-template-columns:238px 390px minmax(380px,1fr);background:#fff;color:var(--mail-ink);min-width:0;overflow:hidden}
.folder-pane,.message-pane,.reader{min-width:0}
.folder-pane{padding:18px 14px;border-right:1px solid var(--mail-line);background:#f7faf8}.compose-button{width:100%;border:0;border-radius:12px;background:var(--mail-green);color:#fff;padding:13px;font-weight:750;cursor:pointer;box-shadow:0 5px 16px rgba(22,77,52,.15)}
.mailbox-picker-label{display:block;margin:22px 9px 7px;color:var(--mail-muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1px}.mailbox-select{width:100%;padding:10px 28px 10px 10px;border:1px solid var(--mail-line);border-radius:10px;background:#fff;color:var(--mail-ink);font-size:12px;text-overflow:ellipsis}
.folder-pane nav{display:grid;gap:3px;margin-top:18px}.folder-pane nav button{display:flex;gap:11px;align-items:center;border:0;background:none;text-align:left;padding:10px 11px;border-radius:9px;color:var(--mail-muted);cursor:pointer}.folder-pane nav button span{width:18px;text-align:center;font-size:16px}.folder-pane nav button.active,.folder-pane nav button:hover{background:#e7f0e9;color:var(--mail-green);font-weight:700}
.message-pane{border-right:1px solid var(--mail-line);display:flex;flex-direction:column}.message-pane>header{height:74px;padding:0 18px;border-bottom:1px solid var(--mail-line);display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.message-pane h1{font-size:19px;margin:0 0 3px}.message-pane header small{color:var(--mail-muted)}.mail-icon-button{border:1px solid var(--mail-line);background:#fff;border-radius:9px;width:36px;height:36px;cursor:pointer;font-size:17px}.message-list{height:calc(100% - 74px);overflow:auto;min-height:0}
.message-item{display:block;width:100%;border:0;border-bottom:1px solid var(--mail-line);background:#fff;text-align:left;padding:15px 17px 14px;cursor:pointer;color:var(--mail-ink);position:relative}.message-item:hover,.message-item.active{background:var(--mail-soft)}.message-item.unread:before{content:"";position:absolute;left:6px;top:20px;width:6px;height:6px;border-radius:50%;background:#2d7a52}.message-item .sender{display:flex;justify-content:space-between;gap:8px;font-size:12px}.message-item .sender-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-item.unread .sender-name,.message-item.unread .subject{font-weight:800}.message-item.read .sender-name,.message-item.read .subject{font-weight:400}.message-item time{color:var(--mail-muted);white-space:nowrap}.message-item .subject{display:block;margin:7px 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}.message-item small{color:#a77818;font-size:11px}
.reader{padding:0;overflow:auto;background:#fff;display:flex;flex-direction:column}.reader-toolbar{height:58px;display:flex;align-items:center;gap:6px;padding:0 24px;border-bottom:1px solid var(--mail-line);position:sticky;top:0;background:rgba(255,255,255,.96);z-index:2;flex-wrap:wrap}.reader-toolbar span{flex:1}.reader-toolbar button{border:0;background:transparent;color:var(--mail-muted);padding:8px;border-radius:8px;cursor:pointer;font-size:12px}.reader-toolbar button:hover{background:var(--mail-soft);color:var(--mail-green)}.reader-toolbar .danger-action:hover{color:#a13636;background:#fff0f0}.reader-head{padding:25px 28px 22px;border-bottom:1px solid var(--mail-line)}.reader-head h2{font-size:25px;margin:0 0 22px;line-height:1.25}.reader-meta{display:flex;gap:12px;align-items:flex-start;font-size:13px}.reader-meta>div:last-child{display:grid;gap:3px}.reader-meta span,.reader-meta time{color:var(--mail-muted)}.sender-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#e6efe8;color:var(--mail-green);font-weight:800;font-size:16px}.message-body{padding:28px;white-space:pre-wrap;line-height:1.7}.message-frame{width:calc(100% - 40px);min-height:560px;border:0;margin:20px}.attachments{display:flex;flex-wrap:wrap;gap:8px;padding:18px 28px 0}.attachments span{border:1px solid var(--mail-line);border-radius:9px;padding:8px 11px;font-size:12px}.attachments small{color:var(--mail-muted);margin-left:5px}
.mail-empty{height:100%;display:grid;place-content:center;text-align:center;color:var(--mail-muted);padding:30px}.mail-empty span{font-size:35px}.compose-dialog{width:min(720px,calc(100% - 25px))}.compose-dialog form{gap:12px}.compose-dialog textarea{min-height:290px;border:1px solid var(--mail-line);border-radius:10px;padding:13px;font:inherit;resize:vertical;line-height:1.55}.close-compose{border:0;background:none;font-size:27px;cursor:pointer}.recipient-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.connect-state{padding:28px}.mail-toast{position:fixed;right:24px;bottom:24px;z-index:200;background:var(--mail-green);color:#fff;border-radius:10px;padding:12px 16px;box-shadow:0 12px 36px rgba(0,0,0,.2);font-size:13px}.mail-toast.error-toast{background:#9e3535}.rivoli-account a.btn{width:100%;margin-bottom:7px;text-decoration:none}
.mail-context-menu{position:fixed;z-index:500;width:230px;padding:7px;background:#fff;border:1px solid var(--mail-line);border-radius:14px;box-shadow:0 20px 55px rgba(18,45,29,.2)}.mail-context-menu:not([hidden]){display:grid}.mail-context-menu button{display:grid;grid-template-columns:24px 1fr;gap:9px;align-items:center;border:0;background:transparent;color:var(--mail-ink);padding:9px 10px;border-radius:9px;text-align:left;font-size:13px;cursor:pointer}.mail-context-menu button:hover,.mail-context-menu button:focus-visible{background:var(--mail-soft);color:var(--mail-green);outline:none}.mail-context-menu hr{width:100%;border:0;border-top:1px solid var(--mail-line);margin:4px 0}.mail-context-menu .danger-action{color:#a13636}.mail-context-menu .danger-action:hover{background:#fff0f0;color:#8d2828}.message-item.context-target{background:#eaf2ec}
@media(max-width:650px){.mail-context-menu{width:min(280px,calc(100vw - 24px));padding:9px}.mail-context-menu button{padding:12px 11px;font-size:14px}}
.mail-task-dialog{width:min(560px,calc(100% - 24px))}.mail-task-dialog form{display:grid;gap:13px;padding:25px}.mail-task-dialog textarea{width:100%;border:1px solid var(--mail-line);border-radius:10px;padding:12px;font:inherit;resize:vertical}.close-mail-task{border:0;background:none;font-size:27px;cursor:pointer}
@media(max-width:1050px){.mail-app{grid-template-columns:220px 1fr}.reader{position:fixed;inset:72px 0 0 220px;z-index:10;display:none}.reader:has(.reader-head){display:block}.reader-toolbar{padding-left:16px}}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #97cf37;outline-offset:2px}
.attachment-link{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--mail-line);border-radius:9px;padding:8px 11px;font-size:12px;color:var(--mail-ink);text-decoration:none}.attachment-link:hover{background:var(--mail-soft);color:var(--mail-green)}.attachment-link small{color:var(--mail-muted)}
.message-tools { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.message-tools input { width: min(28vw, 240px); min-width: 0; border: 1px solid var(--line, #d7dce3); border-radius: 8px; padding: 8px 10px; font: inherit; }
@media (max-width: 650px) { .message-tools input { width: 150px; } }
