/* Identidade Renault Diniz — outubro de 2026. */
:root{
  --brand-ink:#2b2820;--brand-olive:#4c4736;--brand-mid:#6e6850;--brand-sand:#b7ab85;--brand-cloud:#f0ece2;
  --verde:var(--brand-sand);--verde-escuro:var(--brand-mid);--verde-profundo:var(--brand-olive);--verde-muito-escuro:var(--brand-ink);
  --fundo:#f0ece2;--branco:#faf8f2;--texto:#2b2820;--muted:#6e6850;--linha:#d8d1bf;--surface:#faf8f2;--surface-low:#eae5d8;--surface-hover:#f3efe5;--heading:#2b2820;
  --sombra:0 10px 30px rgba(43,40,32,.07);--sombra-soft:0 4px 18px rgba(43,40,32,.04);
}
html[data-theme="dark"]{
  --fundo:#211f19;--branco:#2b2820;--texto:#f0ece2;--muted:#c0b9a5;--linha:#504a3b;--surface:#2b2820;--surface-low:#25231c;--surface-hover:#363228;--heading:#f0ece2;
  --sombra:0 10px 32px rgba(0,0,0,.13);--sombra-soft:0 4px 18px rgba(0,0,0,.07);
}
body,html[data-theme] body{background:var(--fundo)!important;color:var(--texto)!important;font-family:"Segoe UI",system-ui,-apple-system,Arial,sans-serif;line-height:1.5}
.shell,html[data-theme] .shell{background:var(--fundo)!important;grid-template-columns:264px minmax(0,1fr)!important}
.side,html[data-theme] .side{background:#2b2820!important;border-right:1px solid #504a3b!important;box-shadow:none!important;padding:26px 16px!important;scrollbar-width:none!important}
.side::-webkit-scrollbar{display:none!important}
.brand{padding:0 6px 25px!important;border:0!important;border-bottom:1px solid #504a3b!important;background:none!important;border-radius:0!important;box-shadow:none!important;margin-bottom:22px!important;gap:13px}
.brand img{width:42px!important;height:44px!important;border-radius:0!important;object-fit:contain;background:transparent!important}
.brand strong{font-size:14px!important;color:#f0ece2;letter-spacing:-.02em}.brand span{font-size:10px!important;text-transform:uppercase;letter-spacing:.13em;color:#b7ab85!important}
.userbox{background:#343126!important;border:1px solid #504a3b!important;border-radius:12px!important;padding:13px!important;box-shadow:none!important}.userbox b{font-size:13px}.userbox span{color:#c0b9a5!important}
.nav-title{color:#b7ab85!important;letter-spacing:.14em!important;font-size:10px!important;margin:23px 10px 9px!important}
.nav button{color:#d5d0c2!important;border-radius:9px!important;font-weight:600!important;padding:10px 12px!important;min-height:39px!important}
.nav button:hover{background:#403b2e!important;color:#f0ece2!important;box-shadow:none!important;transform:none!important}
.nav button.active,.nav button.active:hover,.nav-sub button.active{background:#b7ab85!important;color:#2b2820!important;box-shadow:none!important}
.module-toggle,.module-toggle.active{background:#353126!important;border-color:#504a3b!important;box-shadow:none!important;color:#f0ece2!important;border-radius:10px!important}
.module-toggle:hover{background:#403b2e!important}.module-toggle b{font-size:14px!important;font-weight:600}.module-toggle i{color:#b7ab85!important}.module-toggle small{color:#c0b9a5!important;letter-spacing:.08em!important}
.nav-sub{border-color:#504a3b!important}.nav-sub button{color:#c0b9a5!important;font-size:12px!important}.nav-sub button.active{color:#2b2820!important}
.logout .btn.secondary,.logout .btn.secondary:hover{background:#353126!important;border-color:#504a3b!important;color:#f0ece2!important}
.main{padding:24px 32px 40px!important}.utility-bar{border-bottom:1px solid var(--linha);padding-bottom:18px;margin-bottom:26px}.portal-date{font-size:12px;letter-spacing:.03em}
.top,html[data-theme] .top{background:transparent!important;border:0!important;border-bottom:1px solid var(--linha)!important;border-radius:0!important;padding:0 0 24px!important;box-shadow:none!important;margin-bottom:24px;gap:18px}
.top h1,html[data-theme] .top h1{color:var(--heading)!important;font-size:32px!important;font-weight:600;letter-spacing:-.045em!important;margin-bottom:7px}.top p,html[data-theme] .top p{color:var(--muted)!important;font-size:13px!important;max-width:720px}
.card,.notices-card,html[data-theme] .card,html[data-theme] .notices-card,html[data-theme] .modal-card{background:var(--surface)!important;border:1px solid var(--linha)!important;border-radius:14px!important;box-shadow:var(--sombra-soft)!important;color:var(--texto)!important}
.card{padding:22px}.card:hover{border-color:var(--brand-mid)!important;box-shadow:var(--sombra-soft)!important}.dashboard-main{gap:20px!important}.dashboard-side{gap:20px!important}
h2,h3,h4,.section-head h3,.absence-side-card h3,.birthday-card h3,.tasks-card h3,html[data-theme] h2,html[data-theme] h3,html[data-theme] h4,html[data-theme] .module-card h3{color:var(--heading)!important;font-weight:600;letter-spacing:-.025em}.section-head h3{font-size:17px!important}
.sub,.small,.muted,.section-head .sub,html[data-theme] .sub,html[data-theme] .small,html[data-theme] .muted,html[data-theme] .section-head .sub{color:var(--muted)!important}
.metric strong,html[data-theme] .metric strong{color:var(--heading)!important}.metric span,html[data-theme] .metric span{color:var(--muted)!important}
.btn{background:#b7ab85!important;color:#2b2820!important;border:1px solid transparent!important;border-radius:9px!important;font-weight:650!important;box-shadow:none!important;transition:background .15s ease!important;padding:11px 16px!important}
.btn:hover{background:#d3c7a3!important;transform:none!important}.btn.secondary,html[data-theme] .btn.secondary{background:var(--surface)!important;color:var(--texto)!important;border-color:var(--linha)!important}.btn.secondary:hover,html[data-theme] .btn.secondary:hover{background:var(--surface-hover)!important;border-color:var(--brand-mid)!important}
.btn.danger,.btn.danger:hover{background:#ad3c32!important;color:#fff!important}.btn.warn,.btn.warn:hover{background:#966027!important;color:#fff!important}.btn.mini{padding:7px 11px!important;font-size:12px!important}.btn.full{padding:13px!important}
.field label,html[data-theme] .field label{color:var(--texto)!important;font-weight:600;font-size:13px}.field input,.field select,.field textarea,.filters input,.filters select,td input,td select,html[data-theme] .field input,html[data-theme] .field select,html[data-theme] .field textarea,html[data-theme] .filters input,html[data-theme] .filters select,html[data-theme] td input,html[data-theme] td select{background:var(--surface-low)!important;color:var(--texto)!important;border-color:var(--linha)!important;border-radius:9px!important;padding:12px!important}
input::placeholder,textarea::placeholder,html[data-theme] input::placeholder,html[data-theme] textarea::placeholder{color:var(--muted)!important;opacity:1}
input:focus,select:focus,textarea:focus,.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid #b7ab85!important;outline-offset:2px;box-shadow:none!important}
button:focus-visible,a:focus-visible,summary:focus-visible,[role=button]:focus-visible{outline:3px solid #b7ab85!important;outline-offset:3px}
.tablewrap,.calendar,html[data-theme] .tablewrap,html[data-theme] .calendar{border-color:var(--linha)!important;background:var(--surface)!important;border-radius:12px!important}
table,td,html[data-theme] table,html[data-theme] td{background:var(--surface)!important;color:var(--texto)!important;border-color:var(--linha)!important}
th,html[data-theme] th{background:var(--surface-low)!important;color:var(--muted)!important;font-size:11px!important;font-weight:650;letter-spacing:.06em;padding:14px!important;border-color:var(--linha)!important}td{padding:15px 14px!important}tr:hover td,html[data-theme] tr:hover td{background:var(--surface-hover)!important}
.empty,.calendar-toolbar,.task-metrics span,.checkgrid,.result-box,.cct-info,html[data-theme] .empty,html[data-theme] .calendar-toolbar,html[data-theme] .task-metrics span,html[data-theme] .checkgrid,html[data-theme] .result-box,html[data-theme] .cct-info{background:var(--surface-low)!important;border-color:var(--linha)!important;color:var(--muted)!important;border-radius:10px!important}
.agenda-item,.birthday-row,.notice,.absence-side-card .birthday-row,html[data-theme] .agenda-item,html[data-theme] .birthday-row,html[data-theme] .notice,html[data-theme] .absence-side-card .birthday-row{background:var(--surface-low)!important;border-color:var(--linha)!important;color:var(--texto)!important;border-radius:10px!important}
.agenda-item b,.birthday-row b,.notice b,html[data-theme] .agenda-item b,html[data-theme] .birthday-row b,html[data-theme] .notice b{color:var(--texto)!important}.notice.important,html[data-theme] .notice.important{border-left:3px solid #b7ab85!important}
.cal-head span,html[data-theme] .cal-head span{background:var(--surface-low)!important;color:var(--muted)!important}.cal-cell,html[data-theme] .cal-cell{background:var(--surface)!important;color:var(--texto)!important;border-color:var(--linha)!important;min-height:87px!important}.cal-cell.today,html[data-theme] .cal-cell.today{background:var(--surface-hover)!important;box-shadow:inset 0 0 0 2px #b7ab85!important}.cal-dot,html[data-theme] .cal-dot{background:var(--surface-hover)!important;color:var(--texto)!important;border-color:var(--linha)!important}
a,html[data-theme] a,details summary,html[data-theme] details summary{color:var(--brand-mid)!important}html[data-theme=dark] a,html[data-theme=dark] details summary{color:#d3c7a3!important}
progress{accent-color:#b7ab85}progress::-webkit-progress-bar{background:var(--surface-low)}progress::-webkit-progress-value{background:#b7ab85}.toast{background:#4c4736;color:#f0ece2;border:1px solid #b7ab85}
/* Status retain distinct meaning in either theme. */
.Aprovado,.Lançado,.Recebido,.Conferido,.Concluída{background:#dce9dc!important;color:#284b32!important}.Reprovado{background:#f5ded8!important;color:#87352b!important}.Pendente,.Registrado,.EmAnálise,.Compendência,.Recebidoparcial,.Emandamento{background:#eee2c5!important;color:#6c4e1c!important}.Solicitado{background:#dfe5ef!important;color:#344c71!important}.Finalizado,.Dispensado{background:#dedbd2!important;color:#4c4736!important}
html[data-theme=dark] .Aprovado,html[data-theme=dark] .Lançado,html[data-theme=dark] .Recebido,html[data-theme=dark] .Conferido,html[data-theme=dark] .Concluída{background:#304335!important;color:#c1dbc3!important}html[data-theme=dark] .Reprovado{background:#50342e!important;color:#f1c2b6!important}
/* Login: original supplied wordmark against a quiet architectural composition. */
.login,html[data-theme] .login{background:var(--fundo)!important;grid-template-columns:1.08fr .92fr;min-height:100vh}
.hero,html[data-theme] .hero{background:#f0ece2!important;color:#2b2820!important;padding:60px clamp(36px,5vw,90px);align-items:flex-start;min-height:100vh;isolation:isolate}
.hero:before{width:64%;height:58%;background:none;border:1px solid #b7ab85;border-radius:0;left:54%;top:40%;transform:rotate(-30deg);opacity:.35;z-index:0}.hero:after{width:64%;height:58%;border:1px solid #b7ab85;border-radius:0;right:-17%;bottom:-28%;transform:rotate(-30deg);opacity:.35;z-index:0}
.hero-logo{width:min(430px,100%);margin:0 0 100px;filter:none;mix-blend-mode:multiply;object-fit:contain}.brand-eyebrow{font-size:10px;font-weight:650;letter-spacing:.2em;color:#6e6850;margin-bottom:18px}
.hero h1{font-size:clamp(38px,4vw,62px);line-height:1.12;text-align:left;font-weight:350;letter-spacing:-.055em;max-width:600px;margin-bottom:25px}.hero h1 strong,html[data-theme] .hero h1 strong{color:#4c4736!important;font-weight:600}.hero p{color:#6e6850!important;font-size:17px;text-align:left;margin:0;max-width:370px;line-height:1.7}
.hero-footer{display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;width:100%;border-top:1px solid #cfc6af;margin-top:100px;padding-top:20px;font-size:10px;letter-spacing:.1em;color:#6e6850}
.login-side{padding:50px;min-width:0}.login-card,html[data-theme] .login-card{background:transparent!important;color:var(--texto)!important;border:0!important;box-shadow:none!important;border-radius:0;padding:0;width:min(360px,100%)}.small-logo{width:45px;height:46px;border-radius:0;object-fit:contain;margin-bottom:32px}.login-card h2,html[data-theme] .login-card h2{font-size:30px;color:var(--heading)!important;letter-spacing:-.04em}.login-card .sub{margin-bottom:34px;font-size:14px}.login-card .field{margin-bottom:21px}.login-card .btn{margin-top:6px}
@media(min-width:1600px){.main{padding-right:48px!important;padding-left:48px!important}}
@media(max-width:1100px){.dashboard-main{grid-template-columns:1fr!important}.dashboard-side{grid-template-columns:1fr!important}.main{padding:22px!important}.login-side{padding:35px}.hero-logo{margin-bottom:80px}}
@media(max-width:980px){.shell,html[data-theme] .shell{grid-template-columns:minmax(0,1fr)!important}.side,html[data-theme] .side{padding:16px!important}.brand{padding-bottom:12px!important;margin-bottom:0!important}.login,html[data-theme] .login{grid-template-columns:1fr}.hero,html[data-theme] .hero{min-height:auto;padding:32px!important}.hero-logo{width:260px;margin:0 0 32px}.hero h1{font-size:38px}.hero-footer{display:none}.hero p{font-size:15px;max-width:100%}.login-side{padding:36px 24px}.login-card{width:min(440px,100%)}}
@media(max-width:620px){.main{padding:18px 14px!important}.top h1,html[data-theme] .top h1{font-size:28px!important}.card{padding:17px}.cal-cell,html[data-theme] .cal-cell{min-height:60px!important}.hero,html[data-theme] .hero{padding:28px 24px!important}.hero h1{font-size:34px}.hero-logo{width:240px;margin-bottom:24px}.hero .brand-eyebrow{display:none}.hero p{font-size:14px}.login-side{padding:30px 24px 44px}.small-logo{display:none}.login-card h2{font-size:27px}.utility-bar{flex-wrap:wrap}.hero:before,.hero:after{opacity:.2}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* Readability and intrinsic sizing refinements verified in the rendered views. */
.hero-logo{filter:brightness(1.033)}
.notice p,.calendar-toolbar strong,.cal-cell b,.task-metrics b{color:var(--texto)!important}.task-metrics .late b{color:#bc5143!important}
.cards>.card,.dashboard-side>.card{margin-top:0!important;margin-bottom:0!important}
.dashboard-main>*,.agenda-layout>*,.dashboard-side,.section-head>div{min-width:0}.calendar-toolbar{padding:9px;flex-wrap:wrap}.calendar-toolbar strong{font-size:14px;text-align:center}
@media(min-width:1181px){.agenda-layout{grid-template-columns:minmax(0,1fr)!important}.agenda-layout>div+div{border-top:1px solid var(--linha);padding-top:4px}}
@media(max-width:760px){.cal-head,.cal-grid{min-width:0!important;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar{width:100%;overflow:hidden}.dashboard-main,.agenda-layout{grid-template-columns:minmax(0,1fr)!important}.cal-head span{font-size:9px!important;padding:8px 0}.cal-cell{padding:5px!important}.calendar-toolbar{gap:6px}.calendar-toolbar strong{order:-1;flex-basis:100%}.task-metrics{grid-template-columns:1fr 1fr}.section-head .btn{flex-shrink:0;padding:9px 11px!important;font-size:12px}.section-head h3{font-size:16px!important}}
/* Empreiteiros: cadastro multiobra e solicitações em lote. */
.contractor-site-tags{display:flex;flex-wrap:wrap;gap:6px;max-width:360px}.contractor-site-tag{display:inline-block;padding:5px 9px;border:1px solid var(--linha);background:var(--surface-low);border-radius:7px;font-size:12px;white-space:nowrap}
.contractor-inactive td:first-child{border-left:3px solid var(--brand-mid)}
.contractor-sites-fieldset{min-width:0;margin:0 0 18px;padding:18px;border:1px solid var(--linha);border-radius:12px}.contractor-sites-fieldset legend{padding:0 7px;font-weight:600;color:var(--texto)}
.contractor-site-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.contractor-site-choice{display:flex;align-items:center;gap:10px;padding:12px;background:var(--surface-low);border:1px solid var(--linha);border-radius:9px;cursor:pointer}.contractor-site-choice:has(input:checked){border-color:var(--brand-sand);box-shadow:inset 0 0 0 1px var(--brand-sand)}.contractor-site-choice input{accent-color:var(--brand-mid);width:18px;height:18px;flex:0 0 18px}.contractor-site-choice span{font-size:13px}
.contractor-add-site{display:flex;gap:10px;flex-wrap:wrap}.contractor-add-site input{flex:1;min-width:160px;padding:12px;border:1px solid var(--linha);background:var(--surface-low);color:var(--texto);border-radius:9px}
.contractor-batch-preview{margin:10px 0 20px;padding:18px;background:var(--surface-low);border:1px solid var(--linha);border-radius:12px}.contractor-batch-preview h4{margin:0 0 8px}.contractor-target-list{list-style:none;padding:0;margin:12px 0;max-height:340px;overflow:auto}.contractor-target-list li{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 0;border-bottom:1px solid var(--linha);font-size:13px}.contractor-target-list li span{color:var(--muted)}
@media(max-width:620px){.contractor-site-choices{grid-template-columns:minmax(0,1fr)}.contractor-sites-fieldset{padding:12px}.contractor-add-site .btn{width:100%}.contractor-batch-preview{padding:14px}.contractor-target-list li{display:block}.contractor-target-list li span{display:block;margin-top:5px}}
/* Documentos de empreiteiros: mesmo fluxo de solicitação do DP. */
.contractor-documents-table{min-width:1000px;table-layout:fixed}.contractor-documents-table th:nth-child(1){width:21%}.contractor-documents-table th:nth-child(2){width:14%}.contractor-documents-table th:nth-child(3){width:22%}.contractor-documents-table th:nth-child(4){width:21%}.contractor-documents-table th:nth-child(5){width:22%}
.contractor-documents-table td{vertical-align:top}.contractor-documents-table td input[type=file]{max-width:100%;width:100%;margin:8px 0 12px}.contractor-documents-table td select{width:100%;margin-top:8px}.contractor-documents-table td textarea{width:100%;min-height:90px;margin-top:8px;padding:10px;border:1px solid var(--linha);border-radius:9px;background:var(--surface-low);color:var(--texto);font:inherit;resize:vertical}.contractor-review-button{margin-top:10px}.contractor-file-name{max-width:100%;overflow-wrap:anywhere;white-space:normal;justify-content:flex-start;text-align:left}.contractor-row-feedback{white-space:pre-wrap;overflow-wrap:anywhere}.contractor-document-row:has(.contractor-row-feedback){border-left:3px solid var(--brand-sand)}.contractor-documents-table .contractor-history{font-size:12px}.contractor-documents-table .contractor-history p{white-space:normal}.contractor-documents-table td .actions{min-width:0}
@media(max-width:760px){.contractor-documents-wrap{overflow:visible;border:0!important;background:transparent!important}.contractor-documents-table{display:block;min-width:0!important;table-layout:auto;background:transparent!important}.contractor-documents-table thead{display:none}.contractor-documents-table tbody{display:grid;gap:16px}.contractor-documents-table tr{display:block;border:1px solid var(--linha);border-radius:12px;overflow:hidden}.contractor-documents-table td{display:block;width:100%;border-bottom:0!important;padding:12px 14px!important}.contractor-documents-table td:before{content:attr(data-label);display:block;color:var(--muted);font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;margin-bottom:6px}.contractor-documents-table td:first-child{background:var(--surface-low)!important;border-bottom:1px solid var(--linha)!important}.contractor-documents-table .contractor-history{margin-top:12px}}
.metric .pill{letter-spacing:0!important;text-transform:none!important;font-weight:650!important}
.metric .pill.Compendência,.metric .pill.Pendente,.metric .pill.Recebidoparcial{color:#6c4e1c!important}
.metric .pill.Recebido,.metric .pill.Conferido{color:#284b32!important}
html[data-theme=dark] .metric .pill.Recebido,html[data-theme=dark] .metric .pill.Conferido{color:#c1dbc3!important}
.birthday-month-caption{text-transform:capitalize;font-size:12px;margin:0 0 16px}.birthday-month-list{display:grid;gap:8px;max-height:none;overflow:visible}.birthday-month-list .birthday-row{margin:0}.birthday-month-list .birthday-row>div{min-width:0}.birthday-month-list .birthday-row b{overflow-wrap:anywhere}.birthday-today{border:1px solid var(--brand-sand)!important}.birthday-date-note{display:inline-block;margin-top:6px;padding:2px 8px;border-radius:6px;background:var(--brand-sand);color:var(--brand-ink);font-size:11px;font-weight:700}
.calendar .cal-dot.birthday,html[data-theme] .calendar .cal-dot.birthday{background:var(--brand-sand)!important;color:var(--brand-ink)!important;border-color:var(--brand-sand)!important}.legend.birthday{background:var(--brand-sand);color:var(--brand-ink)}.cal-more{border:0;background:transparent;color:var(--texto);font:inherit;font-size:10px;padding:3px;text-align:left;cursor:pointer}.user-editor{width:min(820px,100%)}
@media(max-width:620px){.calendar .cal-dot{display:block!important;font-size:9px!important;padding:3px!important}.cal-cell{min-width:0}.cal-more{font-size:9px}.user-editor{padding:20px!important}}

/* Login: marca original com fundo transparente e composição na paleta da construtora. */
.login .hero,html[data-theme] .login .hero{background:#2b2820!important;color:#f0ece2!important;justify-content:center!important;align-items:flex-start!important;padding:56px clamp(36px,5vw,90px)!important}
.login .hero:before,.login .hero:after{content:""!important;position:absolute!important;background:none!important;border:1px solid rgba(183,171,133,.16)!important;border-radius:0!important;width:75%!important;height:72%!important;transform:rotate(-24deg)!important;pointer-events:none!important;z-index:0!important}
.login .hero:before{left:68%!important;top:28%!important;right:auto!important;bottom:auto!important}.login .hero:after{left:78%!important;top:32%!important;right:auto!important;bottom:auto!important}
.login .hero-logo{display:block!important;width:min(430px,100%)!important;height:auto!important;margin:0 0 72px!important;mix-blend-mode:normal!important;filter:none!important;background:transparent!important}
.login .hero .brand-eyebrow{color:#b7ab85!important}.login .hero h1{color:#f0ece2!important;text-align:left!important;font-size:clamp(36px,4vw,60px)!important;font-weight:350!important;line-height:1.14!important;letter-spacing:-.045em!important;max-width:580px!important;margin:0 0 24px!important}.login .hero h1 strong,html[data-theme] .login .hero h1 strong{color:#d3c7a3!important;font-weight:600!important}
.login .hero p{color:#c7c0ae!important;text-align:left!important;margin:0!important;max-width:370px!important;font-size:16px!important}.login .hero-footer{color:#b7ab85!important;border-color:#504a3b!important;margin-top:72px!important}
/* Calendário mensal compacto: células fixas e eventos curtos, painel lateral reduzido. */
.agenda-dashboard .agenda-layout{grid-template-columns:minmax(0,1fr) 170px!important;gap:14px!important;align-items:start!important}
.agenda-dashboard .agenda-upcoming{border:0!important;border-left:1px solid var(--linha)!important;padding:0 0 0 14px!important;max-height:370px;overflow-y:auto}
.agenda-upcoming h4{font-size:13px!important;margin:4px 0 12px}.agenda-upcoming .agenda-item{grid-template-columns:18px minmax(0,1fr);gap:3px 5px;padding:8px!important;border-radius:8px!important}.agenda-upcoming .agenda-item b{font-size:11px;line-height:1.4;overflow-wrap:anywhere}.agenda-upcoming .agenda-item small{font-size:10px;line-height:1.4}
.agenda-dashboard .cal-grid{grid-template-columns:repeat(7,minmax(0,1fr))!important;grid-auto-rows:clamp(78px,6.7vw,100px)}
.agenda-dashboard .calendar .cal-cell,html[data-theme] .agenda-dashboard .calendar .cal-cell{min-height:0!important;height:100%!important;min-width:0!important;overflow:hidden!important;padding:5px!important;aspect-ratio:auto}
.agenda-dashboard .cal-cell b{font-size:11px!important;line-height:15px!important;margin:0 0 3px!important}.agenda-dashboard .calendar .cal-dot,html[data-theme] .agenda-dashboard .calendar .cal-dot{display:block!important;font-size:10px!important;line-height:16px!important;height:19px!important;padding:1px 3px!important;margin:2px 0!important;border-radius:4px!important;font-weight:550!important;overflow:hidden!important;white-space:nowrap!important;text-overflow:ellipsis!important}.agenda-dashboard .cal-more{font-size:9px!important;line-height:12px!important;padding:0 2px!important}
@media(min-width:1181px){.dashboard-main{grid-template-columns:minmax(0,1fr) 280px!important}}
@media(max-width:980px){.login .hero{min-height:auto!important;padding:32px!important}.login .hero-logo{width:280px!important;margin-bottom:28px!important}.login .hero h1{font-size:36px!important}.login .hero-footer{display:none!important}}
@media(max-width:760px){.agenda-dashboard .agenda-layout{grid-template-columns:minmax(0,1fr)!important}.agenda-dashboard .agenda-upcoming{border-left:0!important;border-top:1px solid var(--linha)!important;padding:12px 0 0!important;max-height:200px}.agenda-upcoming .agenda-item{display:grid!important;grid-template-columns:20px minmax(0,1fr) 100px}.agenda-upcoming .agenda-item small{grid-column:3;grid-row:1/3}.agenda-dashboard .cal-grid{grid-auto-rows:80px}.agenda-dashboard .calendar-toolbar .btn{padding:6px 8px!important;font-size:11px!important}.login .hero p{font-size:14px!important}.login .hero h1{font-size:32px!important}}

.agenda-dashboard .cal-grid{grid-auto-rows:minmax(0,1fr)!important;aspect-ratio:7 / var(--calendar-rows,6)}
@media(max-width:760px){.agenda-dashboard .calendar .cal-cell,html[data-theme] .agenda-dashboard .calendar .cal-cell{padding:2px!important}.agenda-dashboard .cal-cell b{font-size:10px!important;line-height:12px!important;margin-bottom:1px!important}.agenda-dashboard .calendar .cal-dot,html[data-theme] .agenda-dashboard .calendar .cal-dot{font-size:8px!important;height:12px!important;line-height:11px!important;padding:0 1px!important;margin:1px 0!important}.agenda-dashboard .cal-more{font-size:8px!important;line-height:10px!important}}

.cal-day{display:inline-block;border:0;background:transparent;color:inherit;font:inherit;font-weight:700;padding:0 2px;cursor:pointer}.cal-day:hover{text-decoration:underline}

/* Dimensões locais evitam que títulos longos alarguem o calendário. */
.agenda-dashboard{container-type:inline-size;min-width:0!important;min-height:0!important;overflow:visible!important}
.agenda-dashboard .agenda-layout{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important;width:100%!important;min-width:0!important}
.agenda-dashboard .agenda-layout>div{width:100%!important;min-width:0!important;max-width:100%!important}
.agenda-dashboard .calendar{width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important}
.agenda-dashboard .calendar .cal-head,.agenda-dashboard .calendar .cal-grid,html[data-theme] .agenda-dashboard .calendar .cal-head,html[data-theme] .agenda-dashboard .calendar .cal-grid{display:grid!important;width:100%!important;min-width:0!important;max-width:100%!important;grid-template-columns:repeat(7,minmax(0,1fr))!important}
.agenda-dashboard .calendar .cal-cell{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
.agenda-dashboard .calendar .cal-dot{min-width:0!important;max-width:100%!important;width:100%!important;box-sizing:border-box!important}
.agenda-dashboard .agenda-upcoming{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px 10px!important;border-left:0!important;border-top:1px solid var(--linha)!important;padding:10px 0 0!important;max-height:218px!important;overflow:auto!important}
.agenda-upcoming h4{grid-column:1/-1;margin:0 0 3px!important;font-size:12px!important}
.agenda-dashboard .agenda-upcoming .agenda-item{display:grid!important;grid-template-columns:16px minmax(0,1fr)!important;gap:1px 6px!important;min-width:0!important;width:100%!important;min-height:0!important;margin:0!important;padding:7px 8px!important;border-radius:7px!important;align-content:start!important}
.agenda-dashboard .agenda-upcoming .agenda-item b{min-width:0!important;font-size:11px!important;line-height:1.3!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.agenda-dashboard .agenda-upcoming .agenda-item>span{font-size:12px!important}.agenda-dashboard .agenda-upcoming .agenda-item small{grid-column:2!important;grid-row:2!important;font-size:10px!important;line-height:1.3!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
@container(min-width:760px){.agenda-dashboard .agenda-layout{grid-template-columns:minmax(0,1fr) 178px!important}.agenda-dashboard .agenda-upcoming{grid-template-columns:minmax(0,1fr)!important;border-top:0!important;border-left:1px solid var(--linha)!important;padding:0 0 0 12px!important;max-height:360px!important}}
.birthday-card .birthday-month-caption{margin-bottom:10px!important}.birthday-card .birthday-month-list{gap:0!important;max-height:390px!important;overflow:auto!important;scrollbar-width:thin}
.birthday-card .birthday-row,html[data-theme] .birthday-card .birthday-row{display:flex!important;gap:9px!important;padding:8px 0!important;min-height:0!important;margin:0!important;border:0!important;border-bottom:1px solid var(--linha)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.birthday-card .birthday-row:last-child{border-bottom:0!important}.birthday-card .birthday-row>div{min-width:0!important;flex:1}.birthday-card .birthday-row b{font-size:11px!important;line-height:1.35!important;font-weight:650!important}.birthday-card .birthday-row small{font-size:10px!important;line-height:1.3!important;margin-top:2px!important}.birthday-card .birthday-row .avatar,.birthday-card .birthday-row img{width:30px!important;height:30px!important;flex:0 0 30px!important;border-radius:9px!important;font-size:10px!important;box-shadow:none!important}
.birthday-card .birthday-date-note{font-size:9px!important;margin-top:3px!important;padding:0 5px!important}.birthday-past-note{font-size:9px;color:var(--muted);line-height:1.3}.birthday-card .birthday-today{border-left:2px solid var(--brand-sand)!important;padding-left:6px!important}
.contractor-files{display:grid;gap:9px;max-height:310px;overflow:auto}.contractor-file{display:grid;gap:3px}.contractor-file>.small{font-size:10px!important}.contractor-files .contractor-file-name{width:100%;justify-content:flex-start!important}
html[data-theme="light"] .login .small-logo{content:url("marca-simbolo-claro.svg");filter:none!important;opacity:1!important;background:transparent!important}
html[data-theme="light"] .login .hero{background:#f0ece2!important;color:#2b2820!important}html[data-theme="light"] .login .hero-logo{filter:brightness(0) saturate(100%)!important;opacity:1!important}
html[data-theme="light"] .login .hero h1{color:#2b2820!important}html[data-theme="light"] .login .hero h1 strong{color:#4c4736!important}html[data-theme="light"] .login .hero p,html[data-theme="light"] .login .hero .brand-eyebrow,html[data-theme="light"] .login .hero-footer{color:#6e6850!important}html[data-theme="light"] .login .hero-footer{border-color:#cfc6af!important}
html[data-theme="light"] .login .hero:before,html[data-theme="light"] .login .hero:after{border-color:rgba(110,104,80,.22)!important}
@media(max-width:480px){.agenda-dashboard .agenda-upcoming{grid-template-columns:minmax(0,1fr)!important;max-height:180px!important}.agenda-dashboard .calendar-toolbar{gap:5px!important}.agenda-dashboard .calendar-toolbar strong{font-size:12px!important}}

html[data-theme="light"] .login .hero-logo{content:url("marca-horizontal-claro.svg");filter:none!important}

.dashboard-side{align-items:start!important}.dashboard-side>.card{align-self:start!important;height:auto!important}.birthday-card .birthday-month-list{max-height:360px!important}.birthday-card .birthday-row{padding-top:6px!important;padding-bottom:6px!important}.birthday-card .birthday-row b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.birthday-card .birthday-past-note{display:none}.birthday-card .birthday-date-note{display:inline-block!important;margin:2px 0 0!important}

.agenda-upcoming .agenda-see-all{grid-column:1/-1;font-size:10px!important;padding:5px 8px!important;min-height:0!important}
