:root { --dv-orange:#b94b13; --dv-green:#173e32; --dv-ink:#171c19; --dv-cream:#faf8f3; }
body { font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:var(--dv-ink); }
a { color:var(--dv-green); }
.btn-primary, .btn-primary:focus, .btn-primary:active { background:var(--dv-orange)!important; border-color:var(--dv-orange)!important; }
.btn-primary:hover { background:#913b0f!important; border-color:#913b0f!important; }
input:focus, textarea:focus, select:focus { border-color:var(--dv-orange)!important; box-shadow:0 0 0 3px #b94b1320!important; }
.dv-brand { height:68px; padding:0 26px; display:flex; align-items:center; justify-content:space-between; background:var(--dv-ink); color:#faf8f3; border-bottom:3px solid var(--dv-orange); }
.dv-brand a { color:#faf8f3; text-decoration:none; display:flex; align-items:center; gap:14px; font-size:19px; letter-spacing:-.5px; }
.dv-brand strong { color:#efaa76; font-weight:400; }
.dv-mark { width:37px; height:37px; border:1px solid #b88255; display:grid; place-items:center; font-family:Georgia,serif; color:#f0b185; font-size:17px; border-radius:50%; }
.dv-brand-note { color:#afbdb5; font-size:12px; letter-spacing:.5px; }
body.dv-branded #layout { height:calc(100% - 68px); top:68px; }
#layout-menu { background:var(--dv-green)!important; }
#taskmenu a { color:#e9eee7!important; }
#taskmenu a:hover, #taskmenu a.selected { background:#255240!important; color:white!important; }
#taskmenu a.compose { background:var(--dv-orange)!important; color:white!important; }
#taskmenu a.logout { color:#f1b68e!important; }
#taskmenu a.theme { display:none; }
#layout-sidebar { background:var(--dv-cream); }
#layout-sidebar .header, #layout-list .header, #layout-content>.header { background:#f4f2eb; }
.listing li.selected>div, .listing li.selected>a, .listing li.selected { background:#e6eee7!important; color:var(--dv-green)!important; }
.listing li.selected>div>a, .listing li.selected>a { color:var(--dv-green)!important; }
.messagelist tr.selected td { background:#e6eee7!important; color:#173e32!important; }
.messagelist tr.unread td { font-weight:650; }
.folderlist li.mailbox.selected>a { border-left:3px solid var(--dv-orange); }
.toolbar a.button:not(.disabled) { color:var(--dv-green); }
.fc .fc-today { background:#f9f0de!important; }
.fc-event { background:var(--dv-green); border-color:var(--dv-green); }
body.task-login { background:#152b23; }
body.task-login #layout { position:relative; top:auto; width:min(1120px,94vw); height:min(740px,92vh); min-height:590px; margin:auto; display:flex; box-shadow:0 24px 85px #0005; border-radius:18px; overflow:hidden; }
body.task-login { display:flex; align-items:center; justify-content:center; min-height:100vh; }
body.task-login #layout-content { width:45%; flex:0 0 45%; min-width:0; background:var(--dv-cream); padding:60px 44px 35px; display:flex; flex-direction:column; align-items:stretch; justify-content:center; overflow:auto; }
body.task-login #logo { display:none; }
.dv-photo { position:relative; width:55%; overflow:hidden; background:#272c25; }
.dv-photo>img { position:absolute; width:100%; height:100%; object-fit:cover; object-position:48% center; }
.dv-photo:after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,#10291ded 0%,#10291d33 35%,transparent 64%); }
.dv-photo-caption { position:absolute; left:38px; right:30px; bottom:28px; z-index:1; color:white; }
.dv-photo-caption span { color:#f5c1a0; font-size:10px; font-weight:700; letter-spacing:2.2px; }
.dv-photo-caption p { font-family:Georgia,serif; font-size:31px; line-height:1.24; margin-top:13px; }
.dv-eyebrow { font-size:10px; font-weight:750; letter-spacing:2px; color:var(--dv-green); }
.dv-login-title h1 { font-family:Georgia,"Times New Roman",serif; font-size:43px; line-height:1.14; font-weight:400; letter-spacing:-1.5px; margin:18px 0 16px; color:var(--dv-ink); }
.dv-login-title h1 em { color:var(--dv-orange); font-style:normal; }
.dv-login-title p { color:#687167; font-size:14px; margin-bottom:30px; }
body.task-login #login-form { top:0; width:100%; max-width:none; margin:0; text-align:left; }
body.task-login #login-form input { border-radius:6px; background:#fff; border:1px solid #d9ddd4; min-height:48px; font-size:15px; }
body.task-login #login-form .input-group { margin-bottom:17px; }
body.task-login #login-form .input-group-text { background:#eceee5; border-color:#d9ddd4; color:var(--dv-green); }
body.task-login #login-form button { min-height:48px; border-radius:6px; font-weight:600; letter-spacing:.4px; }
body.task-login #login-footer { padding-top:28px; margin-top:22px; border-top:1px solid #dce0d5; color:#70786e; font-size:11px; text-align:center; }
.dv-secure { text-transform:uppercase; letter-spacing:1.6px; font-size:10px; color:var(--dv-green); font-weight:700; }
body.task-login #login-footer p { margin-top:9px; line-height:1.6; }
@media(max-width:800px) { .dv-brand-note{display:none} .dv-brand{padding:0 14px} .dv-brand a{font-size:16px} body.task-login #layout{width:94vw; height:auto; min-height:0; margin:24px auto} .dv-photo{display:none} body.task-login #layout-content{width:100%; flex-basis:100%; padding:40px 30px} .dv-login-title h1{font-size:40px} body.task-login{min-height:100dvh} }
@media(max-width:800px) {
  body.task-login { height:auto; overflow:auto; display:block; }
  body.task-login #layout { flex-direction:column; margin:18px auto; }
  body.task-login .dv-photo { display:block; width:100%; height:180px; flex:0 0 180px; }
  body.task-login .dv-photo>img { object-position:50% 38%; }
  body.task-login .dv-photo:after, body.task-login .dv-photo-caption { display:none; }
  body.task-login #layout-content { flex:0 0 auto; padding:28px 24px; }
  .dv-login-title h1 { font-size:34px; }
  .dv-login-title p { margin-bottom:22px; }
}

.dv-copyright { margin-top:16px; color:#526356; font-size:11px; }
.dv-site-footer { position:fixed; bottom:0; left:0; right:0; height:30px; display:flex; align-items:center; justify-content:center; background:#171c19; color:#ced7cd; font-size:11px; border-top:1px solid #355243; z-index:100; }
body.dv-branded #layout { height:calc(100% - 98px); bottom:30px; }
body.dv-branded #taskmenu .special-buttons { bottom:30px; }
#dv-help { width:calc(100% - 40px); max-width:520px; max-height:calc(100dvh - 40px); overflow:auto; padding:28px; border:0; border-top:5px solid #b94b13; border-radius:12px; background:#faf8f3; color:#173e32; box-shadow:0 24px 80px #0004; font:16px/1.6 system-ui,sans-serif; }
#dv-help::backdrop { background:rgba(0,0,0,.55); }
#dv-help h2 { margin:0 0 18px; font:30px/1.2 Georgia,serif; }
#dv-help p { margin:0 0 18px; }
#dv-help a { color:#994010; text-decoration:underline; overflow-wrap:anywhere; }
#dv-help form { margin:0; text-align:right; }
#dv-help button { padding:9px 22px; border:0; border-radius:6px; background:#b94b13; color:white; font:inherit; cursor:pointer; }
