/* HSM & UMOSTEK | Unified enterprise mail sign-in
   Change CHG-2026-1101-MAIL-02; styles scoped to Roundcube login only.
   This replaces conflicting 2026-11-01 theme layers; no mailbox internals changed. */
body.task-login {
  background:#f1f5fb!important;
  color:#183653!important;
  font-family:Inter,"Segoe UI",Arial,sans-serif!important;
  min-height:100vh;
}
body.task-login #layout {
  min-height:100vh!important;
  height:auto!important;
  width:100%!important;
  background:#f1f5fb!important;
}
body.task-login #layout-content {
  width:100%!important;
  max-width:none!important;
  min-height:100vh!important;
  height:auto!important;
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:clamp(16px,4vw,54px)!important;
  text-align:left!important;
  background:linear-gradient(155deg,#f8fbfe 0%,#eef3fa 100%)!important;
  overflow:visible!important;
}
body.task-login #layout-content::before,
body.task-login #layout-content::after {content:none!important;display:none!important;}
body.task-login .mail-experience {
  --brand:#153e67;
  --accent:#b28d39;
  box-sizing:border-box;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.94fr);
  width:min(1168px,100%);
  min-height:690px;
  max-width:100%;
  margin:0;
  overflow:hidden;
  border-radius:20px;
  border:1px solid #dce5ef;
  background:white;
  box-shadow:0 24px 70px rgba(18,46,80,.10);
}
body.task-login .brand-umostek{--brand:#143d62;--accent:#168777}
body.task-login .mail-showcase{
  position:relative;
  box-sizing:border-box;
  display:flex;
  min-width:0;
  flex-direction:column;
  justify-content:space-between;
  padding:clamp(30px,4.5vw,64px);
  border-right:1px solid #dce6ee;
  background:linear-gradient(140deg,#f2f6fc 0%,#e6eef8 100%);
  overflow:hidden;
}
body.task-login .brand-umostek .mail-showcase{
  background:linear-gradient(135deg,#f0f8fa 0%,#e4f0f4 100%);
}
body.task-login .mail-showcase::after{
  content:"";position:absolute;width:450px;height:450px;
  right:-270px;bottom:-250px;border:1px solid rgba(48,94,139,.09);
  border-radius:50%;box-shadow:0 0 0 60px rgba(48,94,139,.035),0 0 0 120px rgba(48,94,139,.025);
  pointer-events:none;
}
body.task-login .mail-identity{
  position:relative;z-index:1;
  display:flex;align-items:center;gap:15px;min-width:0;
}
body.task-login #logo{
  position:static!important;top:auto!important;
  width:auto!important;height:auto!important;
  max-width:126px!important;max-height:105px!important;min-height:0!important;
  object-fit:contain!important;display:block!important;
  margin:0!important;filter:none!important;flex-shrink:0!important;
}
body.task-login .brand-umostek #logo{
  max-width:180px!important;max-height:116px!important;
}
body.task-login .brand-umostek .mail-identity-text{display:none!important;}
body.task-login .mail-identity-text{
  display:flex;min-width:0;flex-direction:column;gap:5px;
}
body.task-login .mail-identity-name{
  font-size:12px;line-height:1.35;font-weight:800;letter-spacing:.12em;
  text-transform:uppercase;color:var(--brand);
}
body.task-login .mail-identity-detail{font-size:12px;color:#647b91;}
body.task-login .mail-intro{position:relative;z-index:1;padding:35px 0;}
body.task-login .mail-kicker{
  display:flex;align-items:center;gap:9px;
  font-size:11px;line-height:1.45;font-weight:800;
  letter-spacing:.14em;color:var(--brand);text-transform:uppercase;margin:0 0 25px;
}
body.task-login .mail-kicker::before{
  content:"";width:24px;height:3px;background:var(--accent);border-radius:4px;flex-shrink:0;
}
body.task-login .mail-intro h2{
  max-width:500px;
  margin:0 0 20px;
  font-size:clamp(32px,3.55vw,52px);
  line-height:1.1;
  letter-spacing:-.04em;
  font-weight:800;
  color:#153855;
  overflow-wrap:normal;
  word-break:normal;
  text-wrap:balance;
}
body.task-login .mail-intro p{
  max-width:455px;margin:0;
  font-size:15px;line-height:1.7;color:#4e6680;
}
body.task-login .mail-showcase-bottom{
  position:relative;z-index:1;
  display:flex;align-items:center;gap:10px;
  padding-top:17px;border-top:1px solid #d2dfea;
  color:#58738d;font-size:12px;
}
body.task-login .mail-rule{
  width:8px;height:8px;border-radius:50%;background:var(--accent);flex-shrink:0;
}
body.task-login .mail-login-panel{
  box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;
  min-width:0;padding:clamp(30px,4.8vw,72px);background:#fff;
}
body.task-login .mail-login-label{
  color:var(--brand);font-size:11px;font-weight:800;
  letter-spacing:.13em;text-transform:uppercase;line-height:1.5;margin:0 0 13px;
}
body.task-login .mail-login-panel h2{
  margin:0 0 10px;color:#173956;font-weight:800;
  font-size:clamp(24px,2.55vw,33px);
  line-height:1.18;letter-spacing:-.035em;
  word-break:normal;overflow-wrap:normal;
  white-space:nowrap;
}
body.task-login .mail-login-subtitle{
  margin:0 0 30px;color:#61768c;
  font-size:14px;line-height:1.55;
}
body.task-login #login-form{
  display:block!important;position:static!important;
  top:auto!important;left:auto!important;
  width:100%!important;max-width:none!important;margin:0!important;padding:0!important;
  background:transparent!important;border:0!important;
  border-radius:0!important;box-shadow:none!important;
  box-sizing:border-box!important;
}
body.task-login #login-form table,
body.task-login #login-form tbody,
body.task-login #login-form tr,
body.task-login #login-form td {
  display:block!important;width:100%!important;
  min-width:0!important;max-width:100%!important;
  box-sizing:border-box!important;float:none!important;
}
body.task-login #login-form table{margin:0!important;}
body.task-login #login-form tr.form-group.row,
body.task-login #login-form tr{
  margin:0 0 18px!important;padding:0!important;
  border:0!important;
}
body.task-login #login-form td.title{
  display:block!important;
  padding:0 0 8px!important;text-align:left!important;
}
body.task-login #login-form td.title label,
body.task-login #login-form label {
  display:block!important;margin:0!important;
  color:#2d465f!important;font-weight:700!important;
  font-size:13px!important;line-height:1.4!important;
}
body.task-login #login-form td.input.input-group,
body.task-login #login-form td.input{
  display:block!important;min-width:0!important;
  padding:0!important;margin:0!important;
  border:0!important;
}
/* Roundcube JS inserts icons after the DOM loads. Hide only those login adornments. */
body.task-login #login-form .input-group-prepend,
body.task-login #login-form .input-group-text.icon {
  display:none!important;visibility:hidden!important;
}
body.task-login #login-form input[type="text"],
body.task-login #login-form input[type="password"],
body.task-login #login-form input[type="email"] {
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;max-width:100%!important;min-width:0!important;
  height:52px!important;min-height:52px!important;
  margin:0!important;padding:12px 16px!important;
  background:#fbfcff!important;
  border:1px solid #c8d5e4!important;border-radius:9px!important;
  box-shadow:none!important;
  font:400 14px/1.4 Inter,"Segoe UI",Arial,sans-serif!important;
  color:#243d57!important;
  outline-offset:2px!important;
}
body.task-login #login-form input:focus-visible{
  outline:2px solid #356ca3!important;border-color:#356ca3!important;
}
body.task-login #login-form .formbuttons{
  padding:0!important;margin:20px 0 0!important;
}
body.task-login #rcmloginsubmit{
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:100%!important;min-height:52px!important;
  border:0!important;border-radius:9px!important;
  padding:12px!important;background:var(--brand)!important;
  color:#fff!important;font-size:14px!important;font-weight:750!important;
  letter-spacing:.02em!important;text-transform:none!important;
  box-shadow:none!important;cursor:pointer!important;
}
body.task-login #rcmloginsubmit::before{content:none!important;display:none!important;}
body.task-login #rcmloginsubmit:hover,
body.task-login #rcmloginsubmit:focus-visible{filter:brightness(1.12)!important;}
body.task-login #login-footer{
  display:block!important;margin:16px 0 0!important;
  text-align:center!important;font-size:12px!important;line-height:1.5!important;
  color:#7a8fa4!important;padding:0!important;
}
body.task-login .mail-login-assistance{
  margin:28px 0 0;padding:17px 0 0;
  border-top:1px solid #e0e8f0;
  color:#677a90;font-size:12px;line-height:1.7;
}
body.task-login .mail-login-assistance a{
  color:var(--brand)!important;font-weight:700;text-decoration:none;
}
body.task-login .mail-login-assistance a:hover{text-decoration:underline;}
body.task-login .mail-bottom-link{
  display:block;color:#8091a3;font-size:12px;margin-top:15px;
}
body.task-login #messagestack{z-index:1000;}
@media(max-width:980px){
 body.task-login .mail-experience{grid-template-columns:minmax(0,1fr) minmax(0,.95fr);min-height:625px;}
 body.task-login .mail-showcase,body.task-login .mail-login-panel{padding:30px;}
 body.task-login .mail-intro h2{font-size:clamp(31px,4vw,42px);}
 body.task-login .mail-kicker{font-size:10px;letter-spacing:.09em;}
}
@media(max-width:820px){
 body.task-login #layout-content{align-items:flex-start!important;padding:18px!important;}
 body.task-login .mail-experience{
  display:flex;flex-direction:column;min-height:0;width:min(540px,100%);margin:0 auto;
 }
 body.task-login .mail-showcase{padding:25px 30px;border-right:0;border-bottom:1px solid #dce6ee;}
 body.task-login #logo{max-height:72px!important;max-width:96px!important;}
 body.task-login .brand-umostek #logo{max-height:76px!important;max-width:140px!important;}
 body.task-login .mail-intro{padding:15px 0 5px;}
 body.task-login .mail-kicker{margin:0 0 10px;font-size:10px;}
 body.task-login .mail-intro h2{font-size:clamp(25px,5vw,32px);margin:0 0 9px;}
 body.task-login .mail-intro p{font-size:13px;line-height:1.5;}
 body.task-login .mail-showcase-bottom{display:none;}
 body.task-login .mail-login-panel{padding:31px 30px 35px;}
 body.task-login .mail-login-panel h2{font-size:30px;}
 body.task-login .mail-login-subtitle{margin-bottom:24px;}
}
@media(max-width:420px){
 body.task-login #layout-content{padding:10px!important;}
 body.task-login .mail-experience{border-radius:14px;}
 body.task-login .mail-showcase{padding:19px 21px;}
 body.task-login .mail-login-panel{padding:27px 21px 29px;}
 body.task-login .mail-identity{gap:11px;}
 body.task-login #logo{max-width:75px!important;max-height:56px!important;}
 body.task-login .brand-umostek #logo{max-width:126px!important;max-height:75px!important;}
 body.task-login .mail-intro h2{font-size:26px;}
 body.task-login .mail-intro p{font-size:12px;line-height:1.48;}
 body.task-login .mail-login-panel h2{font-size:clamp(24px,7vw,27px);}
 body.task-login .mail-login-subtitle{font-size:13px;}
 body.task-login #login-form input[type="text"],
 body.task-login #login-form input[type="password"]{height:50px!important;min-height:50px!important;}
}
@media(prefers-reduced-motion:reduce){
 body.task-login *{transition:none!important;animation:none!important;}
}

/* Controlled two-line mission statement: both lines contain multiple words. */
body.task-login .mail-intro-line{display:block!important;white-space:nowrap!important}

/* Mobile: HSM logo itself identifies the ministry; remove redundant one-word brand wrapping. */
@media(max-width:420px){body.task-login .brand-hsm .mail-identity-text{display:none!important}}
