/* Presentation-only refinement of the existing portal dashboard. */
.sidebar{background:linear-gradient(160deg,#093e4b 0%,#07535f 62%,#08656b 100%)}
.sidebar .brand-lockup{margin:0 17px 24px}.sidebar .brand-lockup img{width:126px;height:auto}
.sidebar .nav-group{margin:15px 0 5px;padding:16px 16px 0;color:#b2d1d4;font-size:10px;font-weight:750;letter-spacing:.16em}
.sidebar nav>.nav-group:not(:first-child){border-top:1px solid #ffffff20}
.sidebar .nav-item{min-height:42px;margin:2px 0;padding:9px 13px;border-radius:11px;font-weight:550;transition:background-color .18s ease,box-shadow .18s ease}
.sidebar .nav-item:hover{background:#ffffff15}.sidebar .nav-item.active,.sidebar .nav-item.active:hover{background:linear-gradient(135deg,#0eaaa9,#0d908f);box-shadow:0 4px 12px #002f3b25;color:#fff}
.topbar{min-height:66px;border-bottom:1px solid #e3eaee;background:#fff;box-shadow:0 1px 5px #183e4e07}
.topbar>#menu,.topbar .topbar-notification,.topbar .topbar-preview,.topbar #logout{border-radius:11px;border-color:#dce7ed;box-shadow:none}
.topbar-user-copy{font-size:14px;line-height:1.25}.topbar-user-copy small{font-size:12px;font-weight:500}
.topbar #logout{padding-inline:18px;font-weight:650}
.topbar-preview{display:grid;place-items:center;width:43px;height:43px;padding:0;color:#0c5164}.topbar-preview svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.topbar-preview:hover,.topbar-preview[aria-pressed=true]{border-color:#149c97;background:#e8f8f5;color:#087f79}.topbar-preview:focus-visible{outline:3px solid #47b5ae;outline-offset:2px}
.preview-note{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:12px 26px 0;padding:10px 14px;border:1px solid #9dd9d5;border-radius:11px;background:#eaf9f7;color:#174a58;font-size:12px;line-height:1.4}.preview-note[hidden],.sidebar [data-admin-nav][hidden]{display:none}.preview-note button{flex:0 0 auto;padding:6px 10px;border:1px solid #0b807c;border-radius:8px;background:#fff;color:#086d6b;font-weight:700}.preview-note-flash{animation:preview-pulse .45s ease}.portal-preview-active .chat-dock{pointer-events:none;opacity:.8}@keyframes preview-pulse{50%{box-shadow:0 0 0 5px #25aaa533}}

.home-dashboard{--home-ink:#102f4b;--home-muted:#5c7486;--home-line:#e0eaf0;--home-gap:16px;--home-shadow:0 4px 14px #0a32460d;position:relative;min-width:0;padding-top:25px;background:linear-gradient(180deg,#f7fbfe 0%,#f4f9fb 55%,#f5f9fb 100%)}
.home-dashboard .home-page-heading{position:relative;isolation:isolate;min-height:100px;margin-bottom:0;overflow:hidden}
.home-dashboard .home-page-heading::before,.home-dashboard .home-page-heading::after{content:"";position:absolute;z-index:-1;pointer-events:none;opacity:.45}
.home-dashboard .home-page-heading::before{inset:5px 0 0 27%;background:linear-gradient(130deg,transparent 12%,#e2f2fa 50%,#f3faff 88%);clip-path:polygon(0 100%,23% 32%,35% 60%,55% 3%,72% 52%,85% 43%,100% 72%,100% 100%)}
.home-dashboard .home-page-heading::after{inset:13px 0 0 42%;background:linear-gradient(120deg,#e2f1fb,#f6fcff);clip-path:polygon(0 100%,20% 46%,40% 76%,64% 0,78% 51%,100% 30%,100% 100%);opacity:.32}
.home-dashboard .home-page-heading .tag{color:#056d78;font-size:11px;font-weight:800;letter-spacing:.2em}
.home-dashboard .home-page-heading h1{margin:0;color:var(--home-ink);font-size:clamp(29px,2.2vw,34px);line-height:1.15}
.home-dashboard .home-page-heading p:not(.tag){margin-top:5px;color:var(--home-muted);font-size:15px}
.home-dashboard .home-date{gap:8px;padding-top:3px;font-size:13px}.home-dashboard .home-date-line{display:inline-flex;align-items:center;gap:8px;padding-bottom:8px;border-bottom:1px solid #d8e8ed}.home-dashboard .home-date-line svg{width:16px;height:16px;fill:none;stroke:#366780;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.home-dashboard .home-date q{font-size:12px}.home-dashboard .home-summary-line{margin:0 0 12px;color:#5c7486;font-size:12px}

.home-dashboard .home-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--home-gap);margin-bottom:13px}
.home-dashboard .home-overview-card{grid-template-columns:62px minmax(0,1fr) 15px;gap:12px;min-height:106px;padding:15px 18px;border:0;border-radius:14px;box-shadow:var(--home-shadow);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}
.home-dashboard .home-overview-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0a324625}
.home-dashboard .home-overview-card:focus-visible{outline:3px solid #103c53;outline-offset:3px}
.home-dashboard .home-card-icon{width:58px;height:58px;border-radius:50%}
.home-dashboard .home-card-copy{display:flex;align-content:center;align-items:baseline;flex-wrap:wrap;column-gap:7px;row-gap:2px;min-width:0}
.home-dashboard .home-card-copy>b{flex-basis:100%;font-size:13px;font-weight:700;white-space:normal;line-height:1.25}
.home-dashboard .home-card-copy>strong{margin:0;font-size:27px;line-height:1.14}.home-dashboard .home-card-copy>strong.home-card-action{font-size:18px;line-height:1.25}
.home-dashboard .home-card-copy>small{align-self:baseline;margin:0;font-size:11px;line-height:1.25}
.home-dashboard .home-card-arrow{font-size:24px}

.home-dashboard .quick-access{grid-template-columns:minmax(240px,.85fr) minmax(0,2.6fr);gap:18px;margin-bottom:var(--home-gap);padding:11px 16px;border-color:var(--home-line);border-radius:14px;box-shadow:var(--home-shadow)}
.home-dashboard .quick-access-intro{display:flex;align-items:center;gap:10px;min-width:0}
.home-dashboard .quick-access-intro .home-section-icon{flex:0 0 40px;width:40px;height:40px;border:0;border-radius:50%;background:#e5f8f7;color:#078783}
.home-dashboard .quick-access h2{font-size:16px}.home-dashboard .quick-access p{font-size:11px;line-height:1.35}
.home-dashboard .quick-access-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.home-dashboard .quick-access-actions button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:43px;padding:8px 10px;border-radius:10px;font-size:12px;line-height:1.2;white-space:normal;text-align:center}
.home-dashboard .quick-access-actions .quick-primary{font-weight:700}.home-dashboard .quick-access-actions .quick-primary span{margin:0;font-size:21px;line-height:1}
.home-dashboard .quick-icon{display:inline-flex;flex:0 0 17px;width:17px;height:17px;margin:0;vertical-align:middle}.home-dashboard .quick-icon svg{width:17px;height:17px}

.home-dashboard .home-bottom-grid,.home-dashboard .home-main-grid{gap:var(--home-gap);margin-bottom:var(--home-gap)}
.home-dashboard .home-panel{padding:13px 20px 15px;border-color:var(--home-line);border-radius:15px;box-shadow:var(--home-shadow)}
.home-dashboard .home-panel>header{min-height:34px;padding-bottom:6px;border-bottom:1px solid #e9f0f3}
.home-dashboard .home-panel>header h2{display:inline-flex;align-items:center;gap:10px;min-width:0;color:var(--home-ink);font-size:16px;font-weight:700;line-height:1.2}
.home-section-icon{display:inline-grid;place-items:center;flex:0 0 20px;width:20px;height:20px;color:#076d78}
.home-section-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.home-dashboard .home-panel>header button{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;color:#0b6684;font-size:11px;font-weight:650;text-decoration:none}
.home-dashboard .home-panel>header button::after{content:"→";font-size:16px;line-height:1}
.home-dashboard .home-panel>header button:hover{text-decoration:underline;background:transparent}

.home-dashboard .home-birthday{position:relative;overflow:hidden}.home-dashboard .home-birthday::after{content:"";position:absolute;right:18px;bottom:12px;width:110px;height:62px;pointer-events:none;opacity:.6;background:radial-gradient(circle at 30% 38%,#d9eaff 0 15px,transparent 16px),radial-gradient(circle at 72% 52%,#e8e9ff 0 13px,transparent 14px),radial-gradient(circle at 48% 7%,#d7ecff 0 3px,transparent 4px),radial-gradient(circle at 90% 14%,#d7ecff 0 3px,transparent 4px)}
.home-dashboard .home-birthday [data-home-birthdays]{position:relative;z-index:1}.home-dashboard .birthday-person{min-width:0}
.home-dashboard .home-numbers .home-number-grid{margin-top:11px;gap:0}.home-dashboard .home-number-grid>div{display:flex;align-items:center;justify-content:center;gap:11px;min-width:0;text-align:left}.home-dashboard .home-number-grid>div:not(:last-child){border-right:1px solid #dfe9ee}
.home-metric-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:50%;background:#e3f7f4;color:#0b887e}.home-metric-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.home-metric-population{background:#e7f1ff;color:#1374cd}.home-metric-territory{background:#f1eaff;color:#7752d1}
.home-metric-copy{display:grid;min-width:0}.home-dashboard .home-number-grid strong{font-size:23px;white-space:nowrap}.home-dashboard .home-number-grid small{font-size:12px}.home-dashboard .home-numbers>p{margin-top:8px;font-size:10px}

.home-dashboard .home-clear{position:relative;display:flex;align-items:center;gap:14px;min-height:126px;margin:10px 0 0;padding:14px 22px;background:linear-gradient(135deg,#f4faff,#eef8fb);color:#24485b}
.home-dashboard .home-clear::before{content:"";display:block;flex:0 0 70px;width:70px;height:70px;border-radius:11px;background:linear-gradient(#fff,#fff) 13px 20px/42px 5px no-repeat,linear-gradient(#d7eafa,#d7eafa) 13px 33px/36px 5px no-repeat,linear-gradient(#d7eafa,#d7eafa) 13px 46px/27px 5px no-repeat,linear-gradient(145deg,#dfeaff,#e7f5ff);box-shadow:0 5px 12px #173e4c0c}
.home-dashboard .home-clear>span{position:relative;flex:0 0 28px;width:28px;height:28px;margin-left:-37px;margin-top:38px;background:#0d9690;border:2px solid #fff;box-shadow:0 3px 7px #086c6829}
.home-dashboard .home-clear strong{min-width:0;font-size:13px;line-height:1.4}
.home-dashboard .home-event{border-color:#dce9ee;box-shadow:0 2px 5px #0a324606}.home-dashboard .home-event:hover{box-shadow:0 5px 11px #0a324612}.home-dashboard .home-event-date{background:#e3f7f6}.home-dashboard .home-event-top em{padding:4px 9px}
.home-dashboard .home-service-list>button{min-height:58px}.home-dashboard .service-icon{width:39px;height:39px;border-radius:10px}.home-dashboard .service-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

@media(max-width:1500px){
 .home-dashboard .home-overview-card{min-height:86px}
 .home-dashboard .quick-access{grid-template-columns:1fr;gap:9px}
}
@media(min-width:651px) and (max-width:1500px){
 .home-dashboard .home-overview-card{grid-template-columns:43px minmax(0,1fr) 11px;gap:8px;padding:13px 10px}
 .home-dashboard .home-card-icon{width:42px;height:42px}.home-dashboard .home-card-icon svg{width:24px;height:24px}
 .home-dashboard .home-card-copy>b{font-size:11px}.home-dashboard .home-card-copy>strong{font-size:22px}.home-dashboard .home-card-copy>strong.home-card-action{font-size:15px}.home-dashboard .home-card-copy>small{font-size:10px}
 .home-dashboard .home-card-arrow{font-size:18px}
}
@media(max-width:1250px){
 .home-dashboard{padding-right:30px;padding-left:30px}
 .home-dashboard .home-bottom-grid{grid-template-columns:1fr}
 .home-dashboard .home-main-grid{grid-template-columns:1fr}
}
@media(max-width:900px){
 .home-dashboard{padding:22px 18px 140px}
 .home-dashboard .home-page-heading{min-height:0;margin-bottom:8px}
 .home-dashboard .quick-access-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
 .sidebar{box-shadow:14px 0 35px #06273440}
}
@media(max-width:650px){
 .home-dashboard .home-overview{grid-template-columns:1fr;gap:10px}
 .home-dashboard .home-overview-card{min-height:84px}
 .home-dashboard .quick-access-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}
 .home-dashboard .quick-access-actions button{min-width:0}
 .home-dashboard .home-panel{padding:13px 14px 15px}
 .home-dashboard .home-panel>header h2{font-size:14px}
 .home-dashboard .home-number-grid>div{flex-direction:column;gap:3px;text-align:center}
 .home-dashboard .home-number-grid strong{font-size:18px}
 .home-dashboard .home-number-grid small{font-size:10px}
 .home-metric-icon{width:34px;height:34px;flex-basis:34px}
 .home-metric-icon svg{width:19px;height:19px}
 .home-dashboard .home-clear{min-height:110px;padding:12px;gap:8px}
 .home-dashboard .home-clear::before{flex-basis:55px;width:55px;height:62px}
 .home-dashboard .home-clear>span{margin-left:-30px}
}
@media(max-width:650px){.preview-note{align-items:flex-start;flex-direction:column;margin:9px 12px 0}.preview-note button{width:100%}}
@media(max-width:650px){
 .topbar{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"menu actions" "user user";gap:8px 10px;padding:9px 16px 11px}
 .topbar>#menu{grid-area:menu;justify-self:start}
 .topbar-user{grid-area:user;justify-self:start;width:100%;gap:9px;text-align:left}
 .topbar-user-copy{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .topbar-actions{grid-area:actions;gap:7px}
}
@media(max-width:390px){.home-dashboard .quick-access-actions{grid-template-columns:1fr}.home-dashboard .home-panel>header{gap:8px}.home-dashboard .home-panel>header button{font-size:10px}}
@media(prefers-reduced-motion:reduce){.home-dashboard .home-overview-card,.home-dashboard .home-event{transition:none}.home-dashboard .home-overview-card:hover,.home-dashboard .home-event:hover{transform:none}}

/* Aba flutuante do Ci-chat. */
.chat-dock{width:360px;border-color:#c9e3e2;border-radius:28px;box-shadow:0 9px 25px #0a3d4850}.presence-toggle{min-height:56px;gap:11px;padding:11px 20px;border-radius:28px;background:linear-gradient(105deg,#07515c,#086b70);font-size:14px}.presence-toggle:hover{background:linear-gradient(105deg,#08616b,#087c7a)}.presence-toggle .ci-chat-name{margin-right:auto;font-size:16px;font-weight:750}.presence-toggle .ci-chat-status{min-width:94px;justify-content:center;gap:7px;margin-left:0;padding-left:16px;border-left:1px solid #ffffff2b;font-size:13px;font-weight:500}.presence-toggle .ci-chat-status .presence-dot{width:15px;height:15px;margin:0;background:#a5b7bb;box-shadow:0 0 0 3px #ffffff14}.presence-toggle .ci-chat-status .presence-dot.online{background:#12ba9e}.presence-toggle .ci-chat-status .presence-dot.busy{background:#f08079}.presence-toggle .ci-chat-status .presence-dot.away{background:#f2c76a}.presence-toggle .presence-chevron{width:19px;height:19px;flex:0 0 auto;margin-left:3px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s ease}.presence-toggle[aria-expanded=true] .presence-chevron{transform:rotate(180deg)}.presence-toggle:focus-visible{outline:3px solid #79d8cf;outline-offset:2px}
@media(max-width:650px){.chat-dock{width:calc(100vw - 16px);max-width:none}.presence-toggle{min-height:52px}}
.chat-dock section:not([hidden]){transform-origin:bottom right;animation:ci-panel-rise .3s cubic-bezier(.2,.7,.2,1) both}
@keyframes ci-panel-rise{from{opacity:0;transform:translateY(20px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.chat-dock section:not([hidden]){animation:none}}
