/* Leaner Mail 1.0 — an Elastic child skin, tested against Roundcube 1.7.4.
   Elastic templates and behaviour © Roundcube Dev Team, CC BY-SA 3.0. */
@font-face{font-family:Leaner Inter;src:url('../fonts/inter-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Leaner Inter;src:url('../fonts/inter-medium.ttf') format('truetype');font-style:normal;font-weight:500 800;font-display:swap}
:root{--leaner-ink:#0a0a0f;--leaner-rail:#13111b;--leaner-purple:#7c3aed;--leaner-lilac:#a78bfa;--leaner-paper:#f7f6fa;--leaner-line:#e4e0eb;--leaner-text:#282432;--leaner-muted:#78717f;--leaner-selection:#ede5ff}
body{font-family:Leaner Inter,Inter,Arial,sans-serif;color:var(--leaner-text);background:var(--leaner-paper);-webkit-font-smoothing:antialiased}
a{color:#6530b9}a:hover{color:#4f1c9d}::selection{background:#d6c2ff;color:#20102e}
button,input,select,textarea{font-family:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--leaner-purple);outline-offset:3px}
.btn-primary{background:var(--leaner-purple);border-color:var(--leaner-purple)}.btn-primary:hover,.btn-primary:focus,.btn-primary:not(:disabled):not(.disabled):active{background:#6827d3;border-color:#6827d3}.btn-primary:disabled,.btn-primary.disabled{background:#a78bfa;border-color:#a78bfa}.btn-secondary{background:#edeaf2;color:#45384f;border-color:#dcd5e6}.form-control:focus,.custom-select:focus{border-color:#a78bfa;box-shadow:0 0 0 3px #7c3aed12}.custom-control-input:checked~.custom-control-label:before{background:var(--leaner-purple);border-color:var(--leaner-purple)}
/* Navigation retains all native task commands and responsive panels. */
#layout-menu,#taskmenu,#taskmenu .special-buttons,#layout-menu .popover-header{background:var(--leaner-ink)!important;color:#e8e1f4}
#layout-menu .popover-header{border-bottom:1px solid #ffffff0c;padding-top:10px!important;padding-bottom:10px!important;height:76px;line-height:56px}
#layout-menu .popover-header #logo{width:38px;height:42px;max-width:44px;max-height:48px;padding:0;object-fit:contain}
#taskmenu a{color:#918a9f;border-radius:0;transition:color .18s,background .18s}
#taskmenu a:hover{color:#f4eeff;background:#a78bfa0e}#taskmenu a.selected,#taskmenu a.selected:hover{color:#d4bfff;background:#251a39;box-shadow:inset 3px 0 var(--leaner-lilac)}
#taskmenu .action-buttons a{color:#fff;background:var(--leaner-purple);box-shadow:none}#taskmenu .action-buttons a:hover{background:#8b4ef0;color:white}
#taskmenu a.logout{color:#ab9bbf!important}#taskmenu a.logout:hover{color:#f2e6ff!important}#taskmenu span.inner{font-size:10px;letter-spacing:.01em}
#layout-sidebar:not(.sidebar-right){background:var(--leaner-rail);border-color:#25202f;color:#d7cfdf}
#layout-sidebar:not(.sidebar-right)>.header,#layout-sidebar:not(.sidebar-right)>.footer{background:var(--leaner-rail);border-color:#282232;color:#cfc4dc}
#layout-sidebar:not(.sidebar-right)>.header .header-title{font-size:11px;font-weight:500;letter-spacing:-.015em}
#layout-sidebar:not(.sidebar-right) .header a.button{color:#c2acd9}
#folderlist-content{padding:20px 10px}#mailboxlist li{border:0;margin:2px 0;border-radius:7px}
#mailboxlist li>a{color:#bfb5cf;line-height:40px;font-size:12px;border-radius:7px}#mailboxlist li>a:before{color:#897a9d}
#mailboxlist li>a:hover{background:#211b2d;color:#eee4fd}#mailboxlist li.selected>a,#mailboxlist li.selected>a:hover{background:#352349;color:#eadcff;font-weight:500;box-shadow:inset 2px 0 #a78bfa}
#mailboxlist li.selected>a:before{color:#c5a3ff}#mailboxlist .unreadcount{background:#403052;color:#d6bfff;border-radius:5px;font-size:10px;line-height:20px;min-width:23px}
#layout-sidebar .quota-widget{font-weight:400;font-size:10px;color:#9c8cae}#layout-sidebar .quota-widget .bar{background:#6d43a2}
#layout-list{background:#fff;border-color:var(--leaner-line)}#layout-list>.header,#layout-list>.footer,#layout-content>.header,#layout-content>.footer{background:#fcfbfd;border-color:var(--leaner-line);color:#45394e}
#layout>div>.header .header-title{font-weight:500;font-size:13px}#layout-content,#messagecontframe{background:var(--leaner-paper)}
#mailsearchform{background:#fff;border-color:var(--leaner-line);padding-top:8px;padding-bottom:8px}#mailsearchform input{background:#f4f1f8;color:#302739;border-color:transparent;border-radius:6px;font-size:12px}#mailsearchform a{color:#8a789e}
#messagelist{border-collapse:collapse}#messagelist tr td{border-bottom:1px solid #f0edf4;padding-top:12px;padding-bottom:12px;background:#fff}
#messagelist tr:hover td{background:#f8f5fc}#messagelist td.subject span.subject{font-size:13px;line-height:1.85}#messagelist td.subject span.fromto{padding-left:1.5em;font-size:11px;color:#776b84}#messagelist td.subject span.date{font-size:10px;color:#95899e}
#messagelist tr.unread td.subject span.subject{font-weight:500;color:#20172b}#messagelist tr.unread .msgicon.status:before{color:var(--leaner-purple)}
#messagelist tr.selected td,#messagelist tr.selected:hover td,#messagelist tr.focused td{background:var(--leaner-selection);border-bottom-color:#e0d3f8;color:#382348}
#messagelist tr.selected td:first-child{box-shadow:inset 3px 0 var(--leaner-purple)}#messagelist tr.selected td.subject span.subject a,#messagelist tr.selected td.subject span.fromto{color:#43265f}#messagelist tr.selected td.subject span.date{color:#826599}
#messagelist tr.flagged td.subject span.subject a{color:#865123}#messagelist tr.deleted td.subject span.subject a{color:#8b8492}
#messagetoolbar a,.header .toolbar a{color:#81718f}#messagetoolbar a:not(.disabled):hover,.header .toolbar a:not(.disabled):hover{color:var(--leaner-purple);background:#eee6fa;border-radius:5px}
#messagetoolbar a.disabled{opacity:.4}#messagetoolbar .send{color:var(--leaner-purple);font-weight:500}
#message-header{padding:30px 32px 25px;border-bottom:1px solid var(--leaner-line);margin-bottom:0;background:#fcfbfe}#message-header>.subject{font-size:25px;font-weight:500;line-height:1.3;letter-spacing:-.035em;color:#2c2137;margin-bottom:24px}
#message-header .header-summary{font-size:12px;color:#6d6079}#message-header .header-links{font-size:11px}#message-header .contactphoto{border-radius:50%;background:#ece4f6}
#message-content{padding:30px 32px;background:var(--leaner-paper)}#messagebody{color:#322c39}#attachment-list li{border-color:#e1d8ec;background:#f1ecf7;border-radius:6px}
.frame-content{padding:0!important}#compose-content{background:#fcfbfd}#compose-headers{padding:22px 28px;border-bottom:1px solid var(--leaner-line)}#compose-headers .form-control{border-color:#e2dbe9;background:#fff;border-radius:5px}#composebody{background:#fff;color:#282432}#layout-sidebar.sidebar-right{background:#f0ecf5;border-color:var(--leaner-line)}
.popupmenu,.popover,.ui-dialog{border-color:#ded5e9;box-shadow:0 16px 48px #1d10221c;border-radius:8px}.popupmenu .listing a:hover,.listing li.selected>a{background:#ede5fb;color:#603099}.popupmenu .listing a{color:#51425f}.ui-dialog .ui-dialog-titlebar{background:#f5f1fa;color:#42304f;border-color:#e4dced}.ui-dialog .ui-dialog-buttonpane{background:#fcfaff;border-color:#e4dced}.listing li.selected{background:#ede5fb}.listing li.selected>a{color:#6630a1}
/* Login is a custom composition; the generated Roundcube form is untouched. */
body.task-login{background:var(--leaner-ink);color:#f4f0f8;overflow:auto}body.task-login #layout{min-height:100svh;height:auto;overflow:visible}
body.task-login #layout-content.leaner-login{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);min-height:100svh;text-align:left;background:#0e0c13;overflow:hidden}
.leaner-welcome{padding:48px 7.2%;position:relative;display:flex;flex-direction:column;min-height:100svh;overflow:hidden;background:#100c19;border-right:1px solid #ffffff0a}
.leaner-brandline{display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2}.task-login .leaner-brandline #logo{top:auto;position:static;display:block;width:147px;height:38px;max-height:none;max-width:100%;object-fit:contain;object-position:left center}.leaner-edition{font-size:9px;letter-spacing:.15em;color:#a497b5}
.leaner-welcome-copy{position:relative;z-index:2;margin:auto 0;padding:90px 0 60px}.leaner-kicker{font-size:9px;letter-spacing:.17em;font-weight:500;color:#a094ad;text-transform:uppercase;margin:0 0 28px}
.leaner-headline{font-size:clamp(60px,6.1vw,105px);line-height:.99;letter-spacing:-.07em;font-weight:400;margin:0;color:#f7f2ff}.leaner-headline em{font-style:normal;color:#c2a8f1}
.leaner-welcome-foot{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:2;font-size:9px;letter-spacing:.15em;color:#b1a1c4}.leaner-welcome-foot span:last-child{font-size:30px;line-height:1;color:#b89beb}
.leaner-liquid{position:absolute;inset:0;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 52% 65%,#4c207941,transparent 55%)}
.leaner-liquid i{position:absolute;display:block;width:85%;height:60%;left:21%;top:12%;border:1px solid #d5b6ff2c;border-radius:44% 56% 68% 32% / 32% 44% 56% 68%;background:linear-gradient(136deg,#ead4ff39,#8f4fd815 28%,#4a157c63 49%,#d4b4ff2e 62%,#ffffff05 78%);box-shadow:inset 18px 4px 38px #e5c9ff10,inset -15px -10px 55px #42126491,35px 45px 100px #7c3aed17;transform:rotate(-28deg);animation:leaner-liquid-drift 4.8s ease-out both}
.leaner-liquid i:nth-child(2){width:68%;height:51%;left:11%;top:39%;border-radius:63% 37% 48% 52% / 48% 61% 39% 52%;transform:rotate(17deg);background:linear-gradient(45deg,#080611aa,#b080ee28,#6227a02b);animation-delay:-1s}.leaner-liquid i:nth-child(3){width:38%;height:34%;left:63%;top:44%;filter:blur(30px);border:0;background:#9e64d31f;animation:none}
@keyframes leaner-liquid-drift{from{transform:translate3d(0,0,0) rotate(-28deg) scale(1)}to{transform:translate3d(-15px,30px,0) rotate(-13deg) scale(1.06)}}
.leaner-access{display:flex;flex-direction:column;justify-content:center;position:relative;padding:88px clamp(35px,7vw,116px) 40px;background:radial-gradient(ellipse at 100% 0,#35244220,transparent 70%),#0e0c13}.leaner-access-inner{width:100%;max-width:370px;margin:auto}.leaner-access .leaner-kicker{margin-bottom:20px}.leaner-access h2{font-size:49px;font-weight:400;line-height:1.1;letter-spacing:-.055em;margin:0 0 20px;color:#f6f1fb}.leaner-access h2>span{color:#a78bfa}.leaner-login-intro{font-size:13px;color:#a99daf;line-height:1.7;margin:0 0 38px}
.task-login #login-form{top:auto;position:static;width:100%;max-width:none;margin:0;text-align:left}.task-login #login-form table,.task-login #login-form tbody{width:100%}.task-login #login-form .row{display:block;margin-bottom:22px}.task-login #login-form td.title,.task-login #login-form td.input{display:block;width:100%;max-width:none;padding:0}.task-login #login-form .col-form-label{display:block;padding:0 0 10px;font-size:11px;font-weight:400;color:#beb0ca}.task-login #login-form .form-control{min-height:50px;padding:13px 15px;background:#17131f;border:1px solid #362a45;color:#f3ebfc;border-radius:5px;font-size:14px;box-shadow:none}.task-login #login-form .form-control:focus{border-color:#ab88d9;background:#1b1626;box-shadow:0 0 0 3px #a78bfa0a}.task-login #login-form .form-control::placeholder{color:#756681}.task-login #login-form .input-group-text{background:#21182d;border-color:#362a45;color:#b69ccb}.task-login #login-form .formbuttons{margin-top:29px;padding:0}.task-login #rcmloginsubmit{width:100%;height:51px;font-size:12px;font-weight:500;border:1px solid #a78bfa;background:#a78bfa;color:#190f26;border-radius:5px;box-shadow:none}.task-login #rcmloginsubmit:hover,.task-login #rcmloginsubmit:focus{background:#bda1fa;border-color:#bda1fa}.task-login #login-form input:-webkit-autofill{-webkit-box-shadow:0 0 0 60px #17131f inset!important;-webkit-text-fill-color:#f3ebfc!important;caret-color:#f3ebfc}
.leaner-login-note{font-size:10px;color:#8e7f9b;line-height:1.7;margin:21px 0 0}.task-login #login-footer{margin-top:32px;padding-top:20px;border-top:1px solid #33263d;color:#766882;font-size:10px;line-height:1.8}.task-login #login-footer a{color:#c1a5dd;margin-right:12px}.task-login #login-footer>div{background:#1b1324;padding:12px;border-radius:4px}.leaner-access-foot{display:flex;justify-content:space-between;gap:20px;margin-top:70px;font-size:9px;color:#796e84;letter-spacing:.04em}.task-login .noscriptwarning{position:relative;background:#302236;color:#f7e8ff;padding:18px;text-align:center}.task-login #messagestack{z-index:99999}.task-login .oauthlogin a{color:#c9a7f6}
@media(min-width:1201px){#layout-sidebar:not(.sidebar-right){min-width:230px;max-width:255px}#layout-list{min-width:330px}#taskmenu a{padding-top:16px;padding-bottom:16px}#taskmenu .action-buttons{display:block;margin:12px 9px 14px}#taskmenu .action-buttons a{width:auto;border-radius:7px;padding:13px 3px}#layout-menu .popover-header{height:85px;line-height:65px}}
@media(max-width:1200px){.leaner-welcome{padding:35px 7%}.leaner-access{padding:65px 45px 35px}.leaner-headline{font-size:clamp(50px,6.8vw,78px)}#layout-menu .popover-header{height:65px;line-height:45px}#layout-menu .popover-header #logo{width:28px;height:34px}}
@media(max-width:900px){body.task-login #layout-content.leaner-login{grid-template-columns:1fr 1fr}.leaner-access{padding:60px 30px 28px}.leaner-headline{font-size:58px}.leaner-welcome{padding:32px}.leaner-edition{display:none}.leaner-access h2{font-size:42px}}
@media(max-width:767px){body.task-login #layout-content.leaner-login{display:flex;flex-direction:column;min-height:100svh}.leaner-welcome{min-height:0;padding:27px 25px 33px;border-right:0;border-bottom:1px solid #ffffff0a}.leaner-brandline{align-items:center}.task-login .leaner-brandline #logo{width:129px;height:33px}.leaner-edition{display:inline}.leaner-welcome-copy{padding:45px 0 0;margin:0}.leaner-welcome-copy .leaner-kicker{margin-bottom:20px;font-size:8px}.leaner-headline{font-size:clamp(39px,9.1vw,61px);line-height:1.04}.leaner-welcome-foot{display:none}.leaner-liquid{inset:-70% -20% -45% 24%;opacity:.75}.leaner-access{padding:37px 25px 24px;flex:1;background:#0e0c13}.leaner-access-inner{max-width:420px}.leaner-access .leaner-kicker{display:none}.leaner-access h2{font-size:34px;margin-bottom:14px}.leaner-login-intro{font-size:12px;margin-bottom:28px}.leaner-access-foot{margin-top:38px}.task-login #login-form .row{margin-bottom:18px}.task-login #login-footer{margin-top:25px}#message-header{padding:24px 20px}#message-header>.subject{font-size:22px}#message-content{padding:24px 20px}#compose-headers{padding:15px}#messagelist tr td{padding-top:10px;padding-bottom:10px}}
@media(max-width:480px){#layout-menu.popover #taskmenu a{color:#c6b7d8;border-bottom-color:#2c2337!important;font-size:15px}#layout-menu.popover #taskmenu a.selected{background:#332045;color:#dbc2fc}#layout-menu.popover .popover-header{height:64px;line-height:44px}#layout-menu.popover #logo{width:36px;max-height:40px}#taskmenu span.inner{font-size:inherit}.task-login #messagestack{bottom:10px!important;left:10px!important;right:10px!important}.leaner-access-foot{font-size:8px}}
@media(prefers-reduced-motion:reduce){.leaner-liquid i{animation:none!important}*{scroll-behavior:auto!important}}
@media print{body{background:#fff!important;color:#000!important}.leaner-liquid,.leaner-access-foot{display:none!important}#message-header,#message-content{background:white;padding:0;box-shadow:none}}

#layout-sidebar:not(.sidebar-right) .listing li>a,#layout-sidebar:not(.sidebar-right) .listing td{color:#c7bbd3;border-color:#2b2336}#layout-sidebar:not(.sidebar-right) .listing li>a:hover{background:#251b32}#layout-sidebar:not(.sidebar-right) .listing li.selected>a,#layout-sidebar:not(.sidebar-right) .listing tr.selected td{background:#352349;color:#eadcff}#layout-sidebar:not(.sidebar-right) .searchbar{background:#191321;border-color:#30253c}#layout-sidebar:not(.sidebar-right) .searchbar input{background:#231b2d;border-color:#3b2a4e;color:#eadff4}
/* Elastic ui.js hides login labels and inserts leading icons; keep visible labels. */
.task-login #login-form td.title{display:block!important}
.task-login #login-form td.title label{display:block;margin:0;padding:0 0 10px;font-size:11px;font-weight:400;color:#beb0ca}
.task-login #login-form td.input.input-group{display:block;width:100%}
.task-login #login-form td.input .input-group-prepend{display:none}
.task-login #login-form td.input>.form-control,.task-login #login-form td.input>.custom-select{width:100%;border-radius:5px!important;font-size:14px}
