/* Epinby Corporate Mail Skin v6
   Goal: Gmail-inspired, stable Roundcube Elastic override.
   It avoids rewriting Roundcube's DOM and only refines layout, spacing, colors and responsive behavior. */
:root{
  --ep-bg:#f6f8fc;
  --ep-surface:#ffffff;
  --ep-surface-2:#f1f5fb;
  --ep-soft:#e8f0fe;
  --ep-border:#e5eaf2;
  --ep-border-2:#dbe3ef;
  --ep-text:#202124;
  --ep-muted:#667085;
  --ep-blue:#1a73e8;
  --ep-blue-2:#0b57d0;
  --ep-green:#12b76a;
  --ep-shadow:0 18px 50px rgba(60,64,67,.10);
  --ep-shadow-soft:0 8px 28px rgba(60,64,67,.08);
  --ep-radius:24px;
  --ep-font:Inter,Roboto,Arial,sans-serif;
}

html,body{background:var(--ep-bg)!important;color:var(--ep-text)!important;font-family:var(--ep-font)!important;}
body:not(.task-login){overflow:hidden;}
html.dark-mode,html.dark-mode body{background:var(--ep-bg)!important;color:var(--ep-text)!important;}
a{color:var(--ep-blue)}

/* ---------- LOGIN ---------- */
body.task-login{background:linear-gradient(135deg,#dbeafe 0%,#eef6ff 44%,#d9f7ef 100%)!important;overflow:auto!important;}
body.task-login #layout{min-height:100vh;width:100%;display:flex!important;align-items:center;justify-content:center;padding:32px;background:transparent!important;overflow:auto;}
body.task-login #layout-content.epinby-login-page{display:flex!important;align-items:center;justify-content:center;width:100%;min-height:calc(100vh - 64px);text-align:initial;background:transparent!important;}
.epinby-login-shell{width:min(1180px,calc(100vw - 56px));min-height:690px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(380px,.78fr);overflow:hidden;border-radius:34px;background:var(--ep-surface);box-shadow:0 36px 90px rgba(26,115,232,.16),0 18px 45px rgba(16,24,40,.12);}
.epinby-login-hero{position:relative;padding:56px;display:flex;flex-direction:column;justify-content:space-between;color:#fff;background:linear-gradient(145deg,#145fe0 0%,#1a73e8 38%,#0aa67e 100%);isolation:isolate;overflow:hidden;}
.epinby-login-hero:before,.epinby-login-hero:after{content:"";position:absolute;border-radius:999px;background:rgba(255,255,255,.14);z-index:-1}.epinby-login-hero:before{width:520px;height:520px;right:-150px;top:-180px}.epinby-login-hero:after{width:360px;height:360px;left:-100px;bottom:-110px;background:rgba(255,255,255,.10)}
.epinby-brandline{display:flex;align-items:center;gap:16px}.epinby-mark{width:48px;height:48px;border-radius:15px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.28);font-size:22px;font-weight:900}.epinby-brandline strong{display:block;font-size:18px}.epinby-brandline small{display:block;margin-top:3px;font-weight:600;color:rgba(255,255,255,.84)}
.epinby-hero-copy{text-align:center;max-width:560px;margin:auto}.epinby-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.24);font-size:13px;font-weight:800}.epinby-hero-copy h2{margin:26px 0 18px;font-size:clamp(40px,5vw,62px);line-height:.98;letter-spacing:-.055em;font-weight:900}.epinby-hero-copy p{margin:0 auto;max-width:520px;font-size:16px;line-height:1.75;font-weight:650;color:rgba(255,255,255,.92)}
.epinby-feature-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.epinby-feature-row div{padding:20px 18px;border-radius:20px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(8px);text-align:center}.epinby-feature-row strong{display:block;margin-bottom:8px}.epinby-feature-row span{display:block;font-size:12px;line-height:1.55;color:rgba(255,255,255,.82);font-weight:600}
.epinby-login-card-wrap{display:flex;align-items:center;justify-content:center;padding:56px;background:linear-gradient(180deg,#fff,#f9fbff)}.epinby-login-card{width:100%;max-width:390px;padding:34px;border:1px solid var(--ep-border);border-radius:28px;background:#fff;box-shadow:var(--ep-shadow-soft)}.epinby-login-icon{width:62px;height:62px;border-radius:19px;display:flex;align-items:center;justify-content:center;background:var(--ep-soft);color:var(--ep-blue);font-size:30px;margin-bottom:24px}.epinby-login-card h2{margin:0 0 10px;font-size:28px;font-weight:900;letter-spacing:-.03em;color:var(--ep-text)}.epinby-login-card p{margin:0 0 28px;color:#667085;line-height:1.6;text-align:left}.epinby-login-card p b{color:#334155}
body.task-login #logo{display:none!important}body.task-login #login-form{position:static!important;top:auto!important;margin:0!important;width:100%!important;max-width:none!important}.epinby-login-form table,.epinby-login-form tbody{display:block!important;width:100%!important}.epinby-login-form tr.row{display:block!important;margin:0 0 16px!important}.epinby-login-form td.title{display:block!important;width:100%!important;padding:0 0 7px!important;color:#344054!important;font-size:13px!important;font-weight:850!important;text-align:left!important}.epinby-login-form td.input{display:block!important;width:100%!important;padding:0!important}.epinby-login-form input[type=text],.epinby-login-form input[type=password],.epinby-login-form input[type=email]{width:100%!important;height:52px!important;border:1px solid var(--ep-border-2)!important;border-radius:15px!important;background:#f8fafc!important;color:var(--ep-text)!important;font-size:15px!important;font-weight:650!important;padding:0 16px!important;box-shadow:none!important;outline:0!important}.epinby-login-form input:focus{background:#fff!important;border-color:#83b4ff!important;box-shadow:0 0 0 4px rgba(26,115,232,.14)!important}.epinby-login-form .formbuttons{margin-top:10px!important}.epinby-login-form button,.epinby-login-form input[type=submit],#rcmloginsubmit{height:54px!important;width:100%!important;border:0!important;border-radius:15px!important;background:linear-gradient(135deg,var(--ep-blue),var(--ep-blue-2))!important;color:#fff!important;font-size:15px!important;font-weight:900!important;letter-spacing:.02em!important;box-shadow:0 14px 28px rgba(26,115,232,.24)!important}.epinby-login-form button:hover,.epinby-login-form input[type=submit]:hover,#rcmloginsubmit:hover{filter:brightness(1.03);transform:translateY(-1px)}#login-footer{margin-top:22px!important;text-align:center!important;color:#98a2b3!important;font-size:12px!important;display:block!important}.task-login .alert,.task-login #messagestack .alert{border-radius:15px!important;margin-bottom:18px!important}

@media(max-width:980px){.epinby-login-shell{grid-template-columns:1fr;width:min(620px,calc(100vw - 32px));min-height:auto}.epinby-login-hero{padding:34px}.epinby-feature-row{grid-template-columns:1fr}.epinby-login-card-wrap{padding:28px}.epinby-hero-copy h2{font-size:38px}}
@media(max-width:520px){body.task-login #layout{padding:14px}.epinby-login-shell{border-radius:24px}.epinby-login-hero{display:none}.epinby-login-card-wrap{padding:18px}.epinby-login-card{padding:24px;border-radius:22px}}

/* ---------- APP CHROME ---------- */
body:not(.task-login) #layout{height:100%;width:100%;display:flex!important;gap:12px;padding:12px;background:var(--ep-bg)!important;box-sizing:border-box;overflow:hidden;}
#layout>div>.header{height:60px;min-height:60px;line-height:60px;background:#fff!important;border-bottom:1px solid var(--ep-border)!important;color:var(--ep-text)!important;}
#layout>div>.footer{background:#fff!important;border-top:1px solid var(--ep-border)!important;color:var(--ep-muted)!important;}
#layout>div>.header .header-title{font-weight:850;color:var(--ep-text)}

/* left rail */
#layout-menu{flex:0 0 78px!important;width:78px!important;min-width:78px!important;background:#fff!important;border:1px solid var(--ep-border);border-radius:22px;box-shadow:var(--ep-shadow-soft);overflow:hidden;position:relative;}
#layout-menu .popover-header{height:86px;line-height:86px;background:#fff!important;border:0!important;padding:14px 0!important;display:flex!important;align-items:center;justify-content:center;}
#layout-menu .popover-header img{width:44px!important;height:44px!important;max-width:44px!important;max-height:44px!important;padding:0!important;border-radius:14px;box-shadow:0 8px 20px rgba(26,115,232,.18)}
#taskmenu{height:calc(100% - 86px);display:flex!important;flex-direction:column;align-items:center;padding:8px 0 12px!important;gap:8px;background:#fff!important;}
#taskmenu a{width:54px!important;height:54px!important;min-height:54px!important;border-radius:18px!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#475467!important;text-decoration:none!important;transition:.18s ease!important;}
#taskmenu a:before{font-size:22px!important;margin:0!important;width:auto!important;height:auto!important;line-height:1!important;color:inherit!important;}
#taskmenu a .inner{display:none!important}#taskmenu a:hover{background:#f1f5fb!important;color:var(--ep-blue)!important}#taskmenu a.selected,#taskmenu a.active{background:var(--ep-soft)!important;color:var(--ep-blue)!important}.special-buttons{margin-top:auto!important;display:flex!important;flex-direction:column;gap:8px}.action-buttons{display:flex!important;align-items:center;justify-content:center}.action-buttons a.compose{background:#d8efff!important;color:#0b57d0!important;box-shadow:0 8px 24px rgba(26,115,232,.13)!important}.action-buttons a.compose:after{content:"";position:absolute;inset:0;border-radius:18px;border:1px solid rgba(26,115,232,.16)}

/* mail three-column layout */
body.task-mail #layout-sidebar{flex:0 0 248px!important;max-width:248px!important;min-width:248px!important;background:#fff!important;border:1px solid var(--ep-border)!important;border-radius:22px!important;box-shadow:var(--ep-shadow-soft)!important;overflow:hidden!important;margin:0!important;}
body.task-mail #layout-list{flex:0 0 430px!important;max-width:430px!important;min-width:360px!important;background:#fff!important;border:1px solid var(--ep-border)!important;border-radius:22px!important;box-shadow:var(--ep-shadow-soft)!important;overflow:hidden!important;margin:0!important;}
body.task-mail #layout-content{flex:1 1 auto!important;min-width:0!important;background:#fff!important;border:1px solid var(--ep-border)!important;border-radius:22px!important;box-shadow:var(--ep-shadow-soft)!important;overflow:hidden!important;}
body.task-mail #layout-content .iframe-wrapper{background:#fff!important;}
body.task-mail #layout-content .iframe-wrapper iframe{background:#fff!important;}

/* sidebar/folders */
#layout-sidebar .header{justify-content:flex-start!important;padding:0 16px!important}.username{font-size:13px!important;color:#344054!important;font-weight:850!important}.sidebar-menu:before{color:#98a2b3!important}.folderlist{padding:12px!important}.folderlist li{border:0!important;margin:2px 0!important}.folderlist li a{height:42px!important;line-height:42px!important;border-radius:999px!important;padding:0 15px!important;color:#344054!important;font-weight:750!important}.folderlist li a:before{color:#475467!important}.folderlist li.selected>a,.folderlist li.mailbox.selected>a,.folderlist li a:hover{background:var(--ep-soft)!important;color:#174ea6!important}.folderlist li.selected>a:before{color:#1a73e8!important}.quota-widget{padding:0 16px;color:#98a2b3}.quota-widget .count{font-size:12px;font-weight:700}

/* search/list */
#layout-list .header{padding:0 16px!important;justify-content:flex-start!important}.toolbar.menu a,.toolbar.menu .button{border-radius:14px!important;color:#667085!important}.toolbar.menu a:hover,.toolbar.menu .button:hover{background:#f1f5fb!important;color:var(--ep-blue)!important}#layout-list .header .toolbar{margin-left:auto!important}
#mailsearchform.searchbar{margin:12px 14px 10px!important;height:48px!important;border-radius:999px!important;background:#edf2fa!important;border:1px solid transparent!important;display:flex!important;align-items:center!important;box-shadow:none!important;overflow:hidden!important}#mailsearchform.searchbar:focus-within{background:#fff!important;border-color:#c8d9ff!important;box-shadow:0 0 0 3px rgba(26,115,232,.10)!important}#mailsearchform input{height:48px!important;background:transparent!important;border:0!important;color:#344054!important;font-size:14px!important;font-weight:650!important;padding:0 8px!important}#mailsearchform a:before,#mailsearchform form:before{color:#667085!important}.searchoptions{border-radius:18px!important;box-shadow:var(--ep-shadow)!important;border:1px solid var(--ep-border)!important}
#messagelist-content{background:#fff!important}.messagelist{border-collapse:separate!important;border-spacing:0 4px!important;padding:0 10px!important}.messagelist tr{height:62px!important;transition:.16s ease!important}.messagelist tr td{border:0!important;background:#fff!important;color:#344054!important;padding-top:9px!important;padding-bottom:9px!important}.messagelist tr td:first-child{border-radius:16px 0 0 16px!important}.messagelist tr td:last-child{border-radius:0 16px 16px 0!important}.messagelist tr:hover td{background:#f5f8ff!important}.messagelist tr.selected td,.messagelist tr.focused td{background:#e8f0fe!important;color:#174ea6!important}.messagelist tr.unread td{font-weight:850!important;color:#101828!important}.messagelist span.fromto,.messagelist span.subject{font-weight:800!important}.messagelist span.date,.messagelist span.size,.messagelist span.secondary{color:#667085!important;font-size:12px!important}.listing-info{color:#667085!important;font-weight:650}.pagenav{background:#fff!important;border-top:1px solid var(--ep-border)!important}.pagenav a,.pagenav span{border-radius:10px!important}

/* content toolbar/preview */
#layout-content>.header{padding:0 18px!important}.task-mail #mailtoolbar{display:flex!important;align-items:center!important;gap:4px!important;width:100%!important}.task-mail #mailtoolbar .spacer{flex:1!important}.task-mail #mailtoolbar a{min-width:42px!important;height:42px!important;border-radius:14px!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#667085!important}.task-mail #mailtoolbar a:before{font-size:18px!important;margin:0!important}.task-mail #mailtoolbar a .inner{display:none!important}.task-mail #mailtoolbar a:hover{background:#f1f5fb!important;color:var(--ep-blue)!important}.task-mail #mailtoolbar a.disabled{opacity:.38!important}

/* message view */
#message-header{padding:22px 26px!important;border-bottom:1px solid var(--ep-border)!important;margin:0!important;background:#fff!important}#message-header>.subject{font-size:22px!important;line-height:1.35!important;font-weight:850!important;color:#202124!important}.message-part{padding:24px 28px!important;background:#fff!important;color:#202124!important}.message-htmlpart{background:#fff!important;color:#202124!important}.attachmentslist li{border-radius:14px!important;background:#f8fafc!important;border:1px solid var(--ep-border)!important}

/* compose */
body.task-mail.action-compose #layout-content,body.action-compose #layout-content{background:#fff!important}.compose-headers,.formcontent{background:#fff!important}.compose-headers{border-bottom:1px solid var(--ep-border)!important}.compose-headers .row{border-color:var(--ep-border)!important}.compose-headers input,.compose-headers textarea{border-radius:12px!important;border:1px solid transparent!important;background:#fff!important;color:#202124!important}.compose-headers input:focus,.compose-headers textarea:focus{border-color:#c8d9ff!important;box-shadow:0 0 0 3px rgba(26,115,232,.10)!important}.html-editor,.tox.tox-tinymce{border-radius:18px!important;border-color:var(--ep-border)!important;overflow:hidden}.tox .tox-toolbar,.tox .tox-toolbar-overlord{background:#f8fafc!important}

/* addressbook/settings */
body.task-settings #layout-sidebar,body.task-addressbook #layout-sidebar{flex:0 0 280px!important;max-width:280px!important;min-width:260px!important;border:1px solid var(--ep-border)!important;border-radius:22px!important;background:#fff!important;box-shadow:var(--ep-shadow-soft)!important;overflow:hidden!important}body.task-settings #layout-list,body.task-addressbook #layout-list{flex:0 0 380px!important;max-width:380px!important;min-width:320px!important;border:1px solid var(--ep-border)!important;border-radius:22px!important;background:#fff!important;box-shadow:var(--ep-shadow-soft)!important;overflow:hidden!important}body.task-settings #layout-content,body.task-addressbook #layout-content{border:1px solid var(--ep-border)!important;border-radius:22px!important;background:#fff!important;box-shadow:var(--ep-shadow-soft)!important;overflow:hidden!important}.settings-menu li a,.listing li a{border-radius:14px!important}.listing li.selected,.listing tr.selected td{background:#e8f0fe!important;color:#174ea6!important}.formcontent,.content{background:#fff!important}.propform fieldset,.boxcontent{border-radius:18px!important;border-color:var(--ep-border)!important}.propform input,.propform select,.propform textarea{border-radius:12px!important;border-color:var(--ep-border-2)!important}

/* dialogs/menus */
.popupmenu,.popover,.ui-dialog{border:1px solid var(--ep-border)!important;border-radius:18px!important;box-shadow:var(--ep-shadow)!important;background:#fff!important;color:#202124!important}.popupmenu .menu li a,.popover .menu li a{border-radius:12px!important;color:#344054!important}.popupmenu .menu li a:hover,.popover .menu li a:hover{background:#f1f5fb!important;color:var(--ep-blue)!important}.btn-primary,.button.mainaction{background:var(--ep-blue)!important;border-color:var(--ep-blue)!important;border-radius:12px!important;font-weight:800!important}.btn-secondary{border-radius:12px!important}

/* dark-mode neutralization for users whose OS is dark */
html.dark-mode body:not(.task-login),html.dark-mode #layout,html.dark-mode #layout-content,html.dark-mode #layout-sidebar,html.dark-mode #layout-list,html.dark-mode #layout-menu,html.dark-mode .header,html.dark-mode .footer,html.dark-mode .scroller,html.dark-mode .formcontent,html.dark-mode .content{background:var(--ep-bg)!important;color:var(--ep-text)!important}html.dark-mode body.task-mail #layout-sidebar,html.dark-mode body.task-mail #layout-list,html.dark-mode body.task-mail #layout-content,html.dark-mode #layout-menu,html.dark-mode body.task-settings #layout-sidebar,html.dark-mode body.task-settings #layout-list,html.dark-mode body.task-settings #layout-content{background:#fff!important;color:var(--ep-text)!important;border-color:var(--ep-border)!important}html.dark-mode .listing li,html.dark-mode .listing tr td,html.dark-mode .treelist li a,html.dark-mode .folderlist li a,html.dark-mode .searchbar,html.dark-mode input,html.dark-mode select,html.dark-mode textarea{background:inherit;color:var(--ep-text);border-color:var(--ep-border)}html.dark-mode .messagelist tr td{background:#fff!important;color:#344054!important}html.dark-mode .messagelist tr:hover td{background:#f5f8ff!important}html.dark-mode .messagelist tr.selected td{background:#e8f0fe!important;color:#174ea6!important}

/* Responsive: keep Roundcube behavior, but make panes cleaner */
@media(max-width:1200px){body:not(.task-login) #layout{gap:8px;padding:8px}body.task-mail #layout-sidebar{flex-basis:224px!important;max-width:224px!important;min-width:224px!important}body.task-mail #layout-list{flex-basis:380px!important;max-width:380px!important;min-width:340px!important}}
@media(max-width:768px){body:not(.task-login) #layout{padding:0;gap:0}#layout-menu{border-radius:0!important;border-left:0!important;border-top:0!important;border-bottom:0!important;box-shadow:none!important}body.task-mail #layout-sidebar,body.task-mail #layout-list,body.task-mail #layout-content,body.task-settings #layout-sidebar,body.task-settings #layout-list,body.task-settings #layout-content{border-radius:0!important;border:0!important;box-shadow:none!important;max-width:none!important}.folderlist{padding:8px!important}#mailsearchform.searchbar{margin:8px!important}.messagelist{padding:0 6px!important}.epinby-login-shell{width:calc(100vw - 18px)}}
