:root{
  --navy:#082a63;--navy-dark:#061b3e;--blue:#0b57d0;--blue-2:#1a73e8;--sky:#c2e7ff;
  --bg:#f7f9fc;--surface:#fff;--surface-2:#f0f4f9;--line:#e1e7ef;--text:#1f1f1f;--muted:#5f6368;
  --green:#188038;--orange:#e37400;--red:#b3261e;--shadow:0 18px 55px rgba(31,41,55,.14);
  --sidebar:292px;--topbar:82px;--radius:22px
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Arial,"Helvetica Neue",sans-serif;color:var(--text);background:var(--bg)}button,input,textarea{font:inherit}button{color:inherit}a{color:inherit}.ui-icon{width:22px;height:22px;display:block;flex:0 0 auto}.app-body{overflow-x:hidden}.app-body.compact .message-row{min-height:42px}.app-body.high-contrast{--line:#c9d1dc;--muted:#3f4650}.alert{margin:10px 18px;padding:12px 14px;border-radius:12px;font-weight:700}.alert-success{background:#dcfae6;color:#05603a}.alert-error{background:#fee4e2;color:#912018}.alert-warning{background:#fff3cd;color:#7a5300}

/* LOGIN */
.login-body{min-height:100vh;background:radial-gradient(circle at 12% 20%,rgba(26,115,232,.28),transparent 30%),linear-gradient(135deg,#06162f,#174f9a);display:grid;place-items:center;padding:28px}.login-shell{width:min(1120px,100%);min-height:690px;display:grid;grid-template-columns:1.08fr .92fr;background:#fff;border-radius:32px;overflow:hidden;box-shadow:0 34px 100px rgba(0,0,0,.34)}.login-brand{position:relative;overflow:hidden;padding:54px;background:linear-gradient(145deg,#061a3d,#1762c8);color:#fff;display:flex;flex-direction:column}.login-brand:after{content:"";position:absolute;width:540px;height:540px;border-radius:50%;right:-250px;bottom:-220px;border:1px solid rgba(255,255,255,.13);box-shadow:0 0 0 62px rgba(255,255,255,.035),0 0 0 124px rgba(255,255,255,.025)}.brand-lockup,.login-brand-content,.login-brand>small{position:relative;z-index:2}.brand-lockup{display:flex;align-items:center;gap:14px}.brand-lockup>span{font-size:12px;font-weight:800;letter-spacing:.12em;color:#dbe9ff}.brand-mark{width:66px;height:66px;border-radius:19px;background:#fff;color:var(--navy);display:grid;place-items:center;font-weight:950;letter-spacing:.03em;box-shadow:0 10px 30px rgba(0,0,0,.16)}.brand-mark.small{width:48px;height:48px;border-radius:15px;font-size:12px;box-shadow:0 8px 22px rgba(0,44,106,.12)}.login-brand-content{margin:auto 0;max-width:570px}.login-kicker{font-size:12px!important;font-weight:850;letter-spacing:.16em;color:#cce0ff!important}.login-brand h1{font-family:Georgia,serif;font-size:clamp(42px,5vw,66px);line-height:1.03;margin:20px 0}.login-brand p{font-size:17px;line-height:1.7;color:rgba(255,255,255,.78)}.login-features{display:grid;gap:14px;margin-top:30px}.login-features>div{display:flex;align-items:center;gap:12px}.login-features .ui-icon{width:20px;color:#89f0bd}.login-brand>small{font-size:12px;color:rgba(255,255,255,.58)}.login-card{padding:58px;display:grid;align-items:center}.login-card-inner{max-width:440px;margin:auto;width:100%}.secure-badge{display:inline-flex;padding:8px 11px;border-radius:999px;background:#e8f0fe;color:var(--blue);font-weight:800;font-size:11px;letter-spacing:.12em}.login-card h2{font-size:42px;margin:20px 0 8px;letter-spacing:-.035em}.login-card>p,.login-card-inner>p{color:var(--muted);line-height:1.55}.stack{display:grid;gap:20px;margin-top:30px}.stack label{display:grid;gap:8px;font-size:14px;font-weight:700}.login-input{position:relative;display:flex;align-items:center}.login-input>span{position:absolute;left:16px;color:#718096;font-weight:900}.login-input input{width:100%;height:55px;border:1px solid #d0d9e7;border-radius:14px;padding:0 105px 0 46px;outline:none}.login-input input:focus{border-color:#6d9fe9;box-shadow:0 0 0 4px rgba(11,87,208,.1)}.password-toggle{position:absolute;right:8px;border:0;border-radius:10px;background:#edf3fc;color:#31568c;font-size:12px;font-weight:800;padding:9px;cursor:pointer}.primary-btn,.secondary-btn,.small-btn{border:0;border-radius:12px;padding:12px 18px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.primary-btn{background:var(--blue);color:#fff}.primary-btn:hover{background:#0847ad}.login-submit{height:56px;margin-top:2px}.login-submit span{font-size:19px}.secondary-btn{background:#eef3f8;color:var(--navy)}.security-note{margin-top:22px;padding:14px;background:#f5f8fc;border:1px solid #e5ebf3;border-radius:14px;display:flex;gap:10px}.security-note>span{width:26px;height:26px;border-radius:8px;background:#e7f7ef;color:#176b45;display:grid;place-items:center}.security-note .ui-icon{width:17px}.security-note p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}

/* TOP BAR */
.topbar{height:var(--topbar);position:sticky;top:0;z-index:80;background:rgba(248,250,255,.97);border-bottom:1px solid #edf0f4;display:flex;align-items:center;gap:18px;padding:0 22px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:20px;font-weight:850;color:var(--navy-dark);white-space:nowrap}.mobile-menu{display:none}.top-icon,.toolbar-icon{border:0;background:transparent;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;text-decoration:none;cursor:pointer}.top-icon:hover,.toolbar-icon:hover{background:#e9eef5}.search{height:56px;flex:1;max-width:790px;margin:0 auto;background:#eaf0f7;border-radius:28px;display:flex;align-items:center;padding:0 14px;transition:.2s}.search:focus-within{background:#fff;box-shadow:0 1px 3px rgba(60,64,67,.2),0 4px 12px rgba(60,64,67,.13)}.search-icon{color:#3c4043}.search input{flex:1;min-width:0;border:0;background:transparent;padding:0 14px;font-size:16px;outline:none}.search-tune{border:0;background:transparent;padding:9px;border-radius:50%;cursor:pointer}.search-tune:hover{background:#dfe6ef}.top-actions{display:flex;align-items:center;gap:4px}.avatar{width:42px;height:42px;border:0;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#1e5fb9,#7a3fb0);color:#fff;font-weight:800;cursor:pointer}.avatar.large{width:56px;height:56px;font-size:20px}.account-popover,.settings-popover{position:fixed;right:18px;top:74px;z-index:110;width:320px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.account-popover-head{display:flex;gap:13px;align-items:center;padding-bottom:14px;border-bottom:1px solid var(--line)}.account-popover-head strong,.account-popover-head span{display:block;word-break:break-all}.account-popover-head span{margin-top:4px;color:var(--muted);font-size:12px}.account-popover>a{display:flex;align-items:center;gap:10px;text-decoration:none;padding:12px;border-radius:12px;margin-top:8px}.account-popover>a:hover{background:#f2f6fc}.settings-popover{width:300px;right:74px}.settings-popover>strong{display:block;margin-bottom:12px}.settings-popover label{display:flex;justify-content:space-between;align-items:center;padding:11px 0;border-top:1px solid var(--line);font-size:13px}.settings-popover input{accent-color:var(--blue)}

/* APP LAYOUT */
.app-layout{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:calc(100vh - var(--topbar))}.sidebar{position:sticky;top:var(--topbar);height:calc(100vh - var(--topbar));padding:18px 10px 18px;background:#f8faff;overflow:auto;z-index:55}.compose-btn{width:240px;min-height:58px;display:flex;align-items:center;justify-content:flex-start;gap:14px;padding:0 22px;border-radius:18px;background:var(--sky);color:#001d35;font-weight:750;text-decoration:none;box-shadow:0 1px 2px rgba(60,64,67,.08);margin:0 4px 16px}.compose-btn:hover{box-shadow:0 2px 5px rgba(60,64,67,.16)}.folder-nav{display:grid;gap:2px}.folder-link{width:100%;min-height:40px;border:0;background:transparent;display:flex;align-items:center;gap:14px;padding:0 18px;border-radius:0 22px 22px 0;text-decoration:none;cursor:pointer;text-align:left;color:#303640}.folder-link .ui-icon{width:19px}.folder-link:hover{background:#e9eef6}.folder-link.active{background:#d3e3fd;color:#001d35;font-weight:750}.folder-name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.folder-count{font-size:12px;font-weight:750}.sidebar-divider{height:1px;background:#dfe5ed;margin:14px 14px}.sidebar-section-title{display:flex;align-items:center;justify-content:space-between;padding:6px 18px 9px;font-weight:750}.sidebar-section-title button{border:0;background:transparent;font-size:20px;cursor:pointer}.secondary-nav .folder-link,.label-nav .folder-link{font-size:14px}.sidebar-foot{margin:30px 18px 0;color:#6d7581;font-size:11px;line-height:1.7}.sidebar-foot span{padding:0 5px}.mail-main{min-width:0;padding:0 12px 12px 0}.mail-toolbar{height:58px;display:flex;align-items:center;gap:4px;padding:0 18px;background:#fff;border-radius:20px 20px 0 0;border-bottom:1px solid var(--line)}.toolbar-spacer{flex:1}.pagination-summary{font-size:13px;color:var(--muted);padding:0 10px}.toolbar-icon.disabled{opacity:.32;pointer-events:none}.selection-toolbar{display:flex;align-items:center;gap:4px}.selection-toolbar>span{font-size:13px;color:var(--muted);margin-left:8px}.mail-surface{background:#fff;border-radius:0 0 20px 20px;min-height:calc(100vh - var(--topbar) - 70px);overflow:hidden}.organizer-card{margin:14px 18px 8px;border:1px solid #d7dde5;border-radius:12px;padding:18px 24px;display:flex;align-items:center;gap:18px}.organizer-icon{color:var(--blue)}.organizer-icon .ui-icon{width:38px;height:38px}.organizer-card strong{display:block}.organizer-card p{margin:5px 0 0;color:var(--muted);font-size:13px}.organizer-actions{margin-left:auto;display:flex;align-items:center;gap:16px}.organizer-actions button{border:0;background:transparent;color:var(--blue);font-weight:700;cursor:pointer}.organizer-actions button:nth-child(2){color:var(--muted)}.organizer-actions .close-organizer{color:var(--muted);padding:7px}.category-tabs{height:82px;display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));border-bottom:1px solid var(--line);padding:0 18px;overflow-x:auto}.category-tab{position:relative;border:0;background:#fff;display:flex;align-items:center;justify-content:center;gap:10px;padding:0 15px;white-space:nowrap;cursor:pointer;color:#303640}.category-tab .ui-icon{width:19px}.category-tab:after{content:"";position:absolute;left:8px;right:8px;bottom:0;height:3px;border-radius:3px;background:transparent}.category-tab.active{color:var(--blue);font-weight:750}.category-tab.active:after{background:var(--blue)}.category-tab b{font-size:11px;background:var(--blue-2);color:#fff;padding:4px 7px;border-radius:999px}.category-tab b.green{background:var(--green)}.category-tab b.orange{background:var(--orange)}

/* MESSAGE LIST */
.mail-content{display:grid;grid-template-columns:1fr;min-height:520px}.mail-content.with-reader{grid-template-columns:minmax(390px,45%) minmax(480px,55%)}.message-list{min-width:0;background:#fff;overflow:auto}.message-row{min-height:48px;display:grid;grid-template-columns:32px 32px minmax(150px,220px) minmax(260px,1fr) 86px 36px;align-items:center;gap:8px;padding:0 12px;border-bottom:1px solid #edf0f4;background:#f8fafd}.message-row.unread{background:#fff}.message-row:hover{box-shadow:inset 4px 0 var(--blue);position:relative;z-index:1}.message-row.selected{background:#d9e8ff}.row-check{display:grid;place-items:center;cursor:pointer}.row-check input{position:absolute;opacity:0}.row-check span{width:17px;height:17px;border:2px solid #9aa3ae;border-radius:2px;background:#fff}.row-check input:checked+span{background:var(--blue);border-color:var(--blue);position:relative}.row-check input:checked+span:after{content:"";position:absolute;width:8px;height:4px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg);left:3px;top:3px}.star-form{margin:0;display:grid;place-items:center}.star-btn{border:0;background:transparent;padding:5px;color:#9aa0a6;cursor:pointer}.star-btn .ui-icon{width:19px}.star-btn.on{color:#f4b400;fill:#f4b400}.star-btn.on .ui-icon{fill:currentColor}.message-open{text-decoration:none;min-width:0}.sender{font-size:14px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.unread .sender,.unread .subject strong,.unread .message-date{font-weight:800;color:#111}.sender small{color:var(--muted);margin-left:4px}.subject{display:flex;align-items:center;gap:5px;white-space:nowrap;overflow:hidden}.subject strong{max-width:56%;overflow:hidden;text-overflow:ellipsis;font-size:14px;font-weight:650}.subject span{min-width:0;color:var(--muted);font-size:13px;overflow:hidden;text-overflow:ellipsis}.message-date{text-align:right;font-size:12px;white-space:nowrap}.row-more{border:0;background:transparent;opacity:0;cursor:pointer;border-radius:50%;padding:6px}.message-row:hover .row-more{opacity:1}.category-empty{padding:80px 20px;text-align:center;color:var(--muted)}.category-empty>div{display:flex;justify-content:center}.category-empty .ui-icon{width:55px;height:55px}.category-empty strong{display:block;color:#374151;margin-top:14px;font-size:18px}.category-empty p{font-size:13px}.empty-state{padding:100px 20px;text-align:center;color:var(--muted)}.empty-state .empty-icon{display:flex;justify-content:center}.empty-state .empty-icon .ui-icon{width:62px;height:62px}.empty-state h2{margin:18px 0 8px}.empty-state p{margin:0 0 22px}

/* READER */
.reader{min-width:0;border-left:1px solid var(--line);background:#fff;overflow:auto}.reader-topbar{height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid var(--line)}.reader-back{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--blue);font-weight:700}.reader-top-actions{display:flex}.reader-head{display:flex;align-items:flex-start;justify-content:space-between;padding:28px 30px 18px}.reader-head h1{font-size:25px;margin:0 0 22px;line-height:1.3}.sender-profile{display:flex;gap:12px;align-items:center}.sender-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#dbe8fb;color:var(--navy);font-weight:800}.sender-profile p{margin:0}.sender-profile p span,.sender-profile small{color:var(--muted);font-size:12px}.close-reader{color:var(--muted);padding:7px;border-radius:50%}.close-reader:hover{background:#eef2f7}.reader-actions{display:flex;gap:8px;flex-wrap:wrap;padding:13px 30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.reader-actions form{margin:0}.small-btn{padding:9px 12px;background:#f0f3f8;color:#344054;font-size:13px}.small-btn .ui-icon{width:17px}.small-btn.danger{color:var(--red);background:#fff0ef}.reader-body{padding:30px;line-height:1.65;overflow-wrap:anywhere}.reader-body pre{white-space:pre-wrap;font:14px/1.7 Arial,sans-serif}.email-html{max-width:100%;overflow:auto}.email-html img{max-width:100%;height:auto}.attachments{padding:0 30px 30px}.attachment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.attachment{display:flex;gap:11px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:13px;text-decoration:none}.attachment .ui-icon{color:var(--blue)}.attachment small{display:block;color:var(--muted);margin-top:3px}

/* COMPOSE */
.modal-backdrop{position:fixed;inset:0;background:rgba(32,33,36,.2);z-index:150;display:flex;align-items:flex-end;justify-content:flex-end;padding:18px}.compose-window{width:min(690px,calc(100vw - 36px));max-height:88vh;background:#fff;border-radius:12px 12px 0 0;box-shadow:0 12px 40px rgba(0,0,0,.34);overflow:auto}.compose-window>header{height:48px;background:#eef3f8;color:#17233d;padding:0 16px;display:flex;align-items:center;justify-content:space-between}.compose-window>header>div{display:flex;align-items:center}.compose-window>header a,.compose-minimize{border:0;background:transparent;color:#4d596b;text-decoration:none;padding:8px;cursor:pointer}.compose-window>header .ui-icon{width:18px}.compose-window form{padding:0 16px 14px}.compose-window form>label{display:grid;grid-template-columns:65px 1fr;align-items:center;border-bottom:1px solid var(--line);padding:3px 0}.compose-window form>label span{color:var(--muted);font-size:13px}.compose-window input{width:100%;border:0;padding:12px 5px;outline:none}.compose-window textarea{width:100%;min-height:300px;border:0;padding:15px 4px;resize:vertical;outline:none}.compose-window details{padding:6px 0;border-bottom:1px solid var(--line)}.compose-window details summary{cursor:pointer;color:var(--blue);font-size:13px;font-weight:700}.compose-window details label{display:grid;grid-template-columns:65px 1fr;align-items:center}.compose-window footer{display:flex;align-items:center;gap:8px}.send-btn{border-radius:18px;padding:10px 24px}.attachment-trigger{display:grid!important;grid-template-columns:none!important;place-items:center!important;width:42px;height:42px;border:0!important;cursor:pointer;color:var(--muted)}.attachment-trigger input{display:none!important}.attachment-trigger .ui-icon{width:20px}

.mobile-overlay{display:none}
@media(max-width:1150px){:root{--sidebar:250px}.compose-btn{width:214px}.mail-content.with-reader{grid-template-columns:1fr}.mail-content.with-reader .message-list{display:none}.subject strong{max-width:48%}.account-popover{right:12px}}
@media(max-width:820px){:root{--topbar:72px}.topbar{padding:0 10px;gap:8px}.mobile-menu{display:grid}.brand span:last-child{display:none}.brand-mark.small{width:42px;height:42px}.desktop-action{display:none}.search{height:48px}.app-layout{grid-template-columns:1fr}.sidebar{position:fixed;left:-310px;top:var(--topbar);width:286px;height:calc(100vh - var(--topbar));box-shadow:var(--shadow);transition:left .22s}.sidebar.open{left:0}.mobile-overlay{display:block;position:fixed;inset:var(--topbar) 0 0;background:rgba(20,28,40,.34);z-index:50;opacity:0;visibility:hidden;transition:.2s}.mobile-overlay.show{opacity:1;visibility:visible}.mail-main{padding:0}.mail-toolbar{border-radius:0}.mail-surface{border-radius:0}.organizer-card{margin:10px;align-items:flex-start}.organizer-actions{display:none}.category-tabs{grid-template-columns:repeat(5,minmax(140px,1fr));padding:0 8px}.message-row{grid-template-columns:28px 28px minmax(110px,150px) minmax(160px,1fr) 65px;padding:0 8px}.row-more{display:none}.subject span{display:none}.subject strong{max-width:100%}.reader{border-left:0}.modal-backdrop{padding:0}.compose-window{width:100vw;height:100vh;max-height:100vh;border-radius:0}.compose-window textarea{min-height:calc(100vh - 250px)}}
@media(max-width:560px){.login-body{padding:0}.login-shell{min-height:100vh;grid-template-columns:1fr;border-radius:0}.login-brand{display:none}.login-card{padding:30px 22px}.login-card h2{font-size:36px}.topbar .brand{display:none}.search{max-width:none}.top-actions{gap:0}.avatar{width:38px;height:38px}.pagination-summary{display:none}.organizer-card{display:none}.category-tabs{height:68px}.category-tab b{display:none}.message-row{grid-template-columns:26px 28px minmax(95px,120px) minmax(130px,1fr);min-height:52px}.message-date{display:none}.sender{font-size:13px}.subject strong{font-size:13px}.reader-head,.reader-actions,.reader-body,.attachments{padding-left:18px;padding-right:18px}.reader-head h1{font-size:21px}.account-popover,.settings-popover{left:10px;right:10px;width:auto}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* Ayiti Info+ identity */
.brand-logo-wrap{width:178px;max-width:48vw;min-height:58px;padding:10px 14px;border-radius:17px;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 30px rgba(0,0,0,.16)}
.brand-logo-wrap img{display:block;width:100%;height:auto;object-fit:contain}
.brand-logo-wrap.small{width:146px;min-height:46px;padding:7px 10px;border-radius:13px;box-shadow:0 8px 22px rgba(0,44,106,.12)}
.login-brand{background:linear-gradient(145deg,#071a3b 0%,#113c7c 58%,#cf1f2c 145%)}
.primary-btn{background:#cf1f2c}.primary-btn:hover{background:#ac1721}
.compose-btn{background:#cf1f2c!important;color:#fff!important}.compose-btn:hover{background:#ac1721!important}
@media(max-width:820px){.brand-logo-wrap.small{width:118px;min-height:40px}}


/* ==========================================================================
   Correctif organisation, scripts et options interactives
   ========================================================================== */

[hidden],
.is-hidden{
    display:none!important;
}

.category-tab{
    text-decoration:none;
}

.organizer-actions a{
    color:var(--blue);
    font-weight:700;
    text-decoration:none;
}

.organizer-actions a:hover{
    text-decoration:underline;
}

.toolbar-select-all{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    cursor:pointer;
    flex:0 0 34px;
}

.toolbar-select-all input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}

.toolbar-select-all span{
    width:18px;
    height:18px;
    border:2px solid #8d97a5;
    border-radius:3px;
    background:#fff;
    position:relative;
}

.toolbar-select-all input:checked + span,
.toolbar-select-all input:indeterminate + span{
    background:var(--blue);
    border-color:var(--blue);
}

.toolbar-select-all input:checked + span::after{
    content:"";
    position:absolute;
    width:9px;
    height:5px;
    left:3px;
    top:3px;
    border-left:2px solid #fff;
    border-bottom:2px solid #fff;
    transform:rotate(-45deg);
}

.toolbar-select-all input:indeterminate + span::after{
    content:"";
    position:absolute;
    width:9px;
    height:2px;
    left:3px;
    top:6px;
    background:#fff;
    border-radius:2px;
}

.selection-toolbar{
    min-width:0;
    flex-wrap:wrap;
}

.toolbar-text-btn{
    min-height:34px;
    border:0;
    border-radius:9px;
    padding:0 10px;
    background:#eef3fa;
    color:#25446f;
    font-size:12px;
    font-weight:750;
    cursor:pointer;
}

.toolbar-text-btn:hover{
    background:#dde8f6;
}

.toolbar-icon.danger{
    color:#b42318;
}

.batch-move{
    display:flex;
    align-items:center;
    gap:5px;
    margin-left:4px;
}

.batch-move select{
    max-width:170px;
    height:34px;
    border:1px solid var(--line);
    border-radius:9px;
    background:#fff;
    padding:0 9px;
    color:#303640;
    font-size:12px;
    outline:none;
}

.message-row{
    position:relative;
}

.message-row.checked{
    background:#e6f0ff;
}

.row-actions-menu{
    position:absolute;
    right:10px;
    top:41px;
    z-index:80;
    width:215px;
    padding:7px;
    border:1px solid var(--line);
    border-radius:13px;
    background:#fff;
    box-shadow:0 14px 38px rgba(21,41,74,.18);
}

.row-actions-menu form{
    margin:0;
}

.row-actions-menu button{
    width:100%;
    min-height:38px;
    border:0;
    border-radius:9px;
    background:transparent;
    display:flex;
    align-items:center;
    gap:10px;
    padding:0 11px;
    color:#303640;
    text-align:left;
    font-size:13px;
    cursor:pointer;
}

.row-actions-menu button:hover{
    background:#eef3fa;
}

.row-actions-menu button.danger{
    color:#b42318;
}

.row-actions-menu .ui-icon{
    width:17px;
    height:17px;
}

.advanced-search-popover,
.utility-popover,
.apps-popover{
    position:fixed;
    top:74px;
    z-index:115;
    border:1px solid var(--line);
    border-radius:18px;
    background:#fff;
    box-shadow:0 20px 55px rgba(17,38,73,.2);
}

.advanced-search-popover{
    left:50%;
    width:min(620px,calc(100vw - 28px));
    transform:translateX(-50%);
    padding:18px;
}

.utility-popover,
.apps-popover{
    right:18px;
    width:330px;
    padding:16px;
}

.utility-popover header,
.apps-popover header,
.advanced-search-popover header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding-bottom:13px;
    border-bottom:1px solid var(--line);
}

.popover-close{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border:0;
    border-radius:50%;
    background:transparent;
    color:var(--muted);
    cursor:pointer;
}

.popover-close:hover{
    background:#eef3fa;
}

.popover-close .ui-icon{
    width:18px;
}

.advanced-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:13px;
    padding:16px 0;
}

.advanced-grid label{
    display:grid;
    gap:6px;
    color:#445064;
    font-size:12px;
    font-weight:700;
}

.advanced-grid label.wide{
    grid-column:1/-1;
}

.advanced-grid input{
    width:100%;
    height:42px;
    border:1px solid var(--line);
    border-radius:10px;
    padding:0 12px;
    outline:none;
    color:#202939;
}

.advanced-grid input:focus{
    border-color:#79a7ec;
    box-shadow:0 0 0 3px rgba(30,102,210,.1);
}

.advanced-options{
    display:flex;
    flex-wrap:wrap;
    gap:10px 18px;
    padding:0 0 16px;
    color:#536074;
}

.advanced-options label{
    display:flex;
    align-items:center;
    gap:7px;
    font-size:12px;
    cursor:pointer;
}

.advanced-options input{
    accent-color:var(--blue);
}

.advanced-search-popover footer{
    display:flex;
    justify-content:flex-end;
    gap:9px;
    padding-top:14px;
    border-top:1px solid var(--line);
}

.utility-popover p{
    color:var(--muted);
    font-size:13px;
    line-height:1.55;
}

.utility-popover > a{
    color:var(--blue);
    font-weight:750;
    text-decoration:none;
}

.apps-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    margin-top:14px;
}

.apps-grid a{
    min-width:0;
    padding:12px 8px;
    border-radius:13px;
    display:grid;
    justify-items:center;
    gap:7px;
    text-align:center;
    text-decoration:none;
    color:#25344a;
}

.apps-grid a:hover{
    background:#eef4fc;
}

.apps-grid a span{
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border-radius:12px;
    background:linear-gradient(145deg,#143d7a,#2870d5);
    color:#fff;
    font-size:11px;
    font-weight:850;
}

.apps-grid a strong{
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    font-size:11px;
}

.settings-reset{
    width:100%;
    margin-top:10px;
    min-height:38px;
    border:0;
    border-radius:10px;
    background:#edf3fb;
    color:#27528d;
    font-weight:750;
    cursor:pointer;
}

.settings-reset:hover{
    background:#dde9f8;
}

.empty-actions{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:10px;
}

.attachment-trigger.has-files{
    color:#176b45;
    background:#e7f7ef;
}

@media(max-width:1050px){
    .selection-toolbar{
        position:absolute;
        left:52px;
        right:145px;
        z-index:5;
        min-height:52px;
        padding:5px;
        background:#fff;
        overflow-x:auto;
        flex-wrap:nowrap;
    }

    .batch-move select{
        max-width:130px;
    }
}

@media(max-width:820px){
    .advanced-search-popover,
    .utility-popover,
    .apps-popover{
        top:68px;
        left:10px;
        right:10px;
        width:auto;
        transform:none;
    }

    .advanced-grid{
        grid-template-columns:1fr;
    }

    .advanced-grid label.wide{
        grid-column:auto;
    }

    .selection-toolbar{
        right:8px;
    }

    .organizer-actions{
        display:flex;
        margin-left:0;
        flex-wrap:wrap;
    }
}

@media(max-width:560px){
    .selection-toolbar{
        left:44px;
    }

    .batch-move{
        display:none;
    }

    .organizer-card{
        display:flex;
    }

    .organizer-card.is-hidden{
        display:none!important;
    }

    .organizer-actions a,
    .organizer-actions button:nth-child(2){
        display:none;
    }

    .apps-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
}


/* Lecture fidèle des courriels HTML */
.reader-image-status{
    display:flex;
    align-items:center;
    gap:8px;
    margin:14px 30px 0;
    padding:10px 13px;
    border:1px solid #dbe8fb;
    border-radius:12px;
    background:#f4f8ff;
    color:#285693;
    font-size:12px;
    font-weight:700;
}
.reader-image-status .ui-icon{
    width:17px;
    height:17px;
    color:#1769d2;
}
.reader-body-frame{
    padding:18px 30px 30px;
    background:#fff;
}
.email-message-frame{
    display:block;
    width:100%;
    min-height:480px;
    border:0;
    border-radius:0;
    background:#fff;
    overflow:hidden;
}
@media(max-width:560px){
    .reader-image-status{
        margin-left:18px;
        margin-right:18px;
    }
    .reader-body-frame{
        padding-left:12px;
        padding-right:12px;
    }
}


/* Notifications de nouveaux courriels et protection antispam */
.notification-bell{
    position:relative;
}
.notification-badge{
    position:absolute;
    top:1px;
    right:0;
    min-width:18px;
    height:18px;
    padding:0 5px;
    border-radius:999px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#d93025;
    color:#fff;
    border:2px solid #f8faff;
    font-size:10px;
    font-weight:800;
    line-height:1;
}
.notification-badge[hidden]{
    display:none!important;
}
.notification-permission-row{
    display:grid;
    gap:7px;
    padding:12px 0 4px;
    border-top:1px solid var(--line);
}
.settings-action{
    min-height:38px;
    border:1px solid #cbd9ee;
    border-radius:11px;
    background:#edf4ff;
    color:#0b57d0;
    font-weight:750;
    cursor:pointer;
}
.settings-action:hover{
    background:#dfeaff;
}
.settings-action:disabled{
    cursor:not-allowed;
    opacity:.58;
}
.notification-permission-row small{
    color:var(--muted);
    line-height:1.45;
}
.mail-toast-region{
    position:fixed;
    right:22px;
    bottom:22px;
    z-index:400;
    width:min(390px,calc(100vw - 28px));
    display:grid;
    gap:10px;
    pointer-events:none;
}
.mail-toast{
    width:100%;
    min-height:76px;
    display:grid;
    grid-template-columns:42px minmax(0,1fr) 30px;
    align-items:center;
    gap:11px;
    padding:13px;
    border:1px solid #dbe3ef;
    border-radius:16px;
    background:#fff;
    color:#162033;
    text-decoration:none;
    box-shadow:0 18px 50px rgba(31,46,76,.2);
    opacity:0;
    transform:translateY(14px) scale(.98);
    transition:opacity .2s ease,transform .2s ease;
    pointer-events:auto;
}
.mail-toast.show{
    opacity:1;
    transform:translateY(0) scale(1);
}
.mail-toast:hover{
    box-shadow:0 22px 58px rgba(31,46,76,.25);
}
.mail-toast-icon{
    width:42px;
    height:42px;
    border-radius:13px;
    display:grid;
    place-items:center;
    background:#e8f0fe;
    color:#0b57d0;
    font-size:20px;
    font-weight:900;
}
.mail-toast-content{
    min-width:0;
    display:grid;
    gap:4px;
}
.mail-toast-content strong,
.mail-toast-content span{
    overflow:hidden;
    text-overflow:ellipsis;
}
.mail-toast-content strong{
    color:#13294b;
    font-size:14px;
}
.mail-toast-content span{
    color:#5d6878;
    font-size:12px;
    line-height:1.45;
}
.mail-toast-close{
    width:30px;
    height:30px;
    border:0;
    border-radius:50%;
    background:transparent;
    color:#6f7782;
    font-size:22px;
    cursor:pointer;
}
.mail-toast-close:hover{
    background:#edf1f6;
}
.mail-toast.success .mail-toast-icon{
    background:#e6f4ea;
    color:#137333;
}
.mail-toast.warning .mail-toast-icon{
    background:#fef7e0;
    color:#b06000;
}
.mail-toast.spam .mail-toast-icon{
    background:#fce8e6;
    color:#c5221f;
}
.mail-toast.new-mail{
    border-color:#c8daf8;
}
.mail-toast.new-mail .mail-toast-icon{
    background:linear-gradient(145deg,#e4efff,#d7e7ff);
    color:#0b57d0;
}
body.high-contrast .mail-toast{
    border-color:#75839a;
}
@media(max-width:560px){
    .mail-toast-region{
        right:14px;
        bottom:14px;
        left:14px;
        width:auto;
    }
    .mail-toast{
        grid-template-columns:38px minmax(0,1fr) 28px;
        border-radius:14px;
    }
    .mail-toast-icon{
        width:38px;
        height:38px;
    }
}
