
/* AD Service 4.1 — redesign visual: preto, vermelho e branco.
   Altera somente o layout do aplicativo autenticado; diálogos legados mantêm estilos e IDs. */
.ad-modern{background:#f4f5f8;color:#222633;min-height:100vh;--ad-red:#d40719;--ad-black:#111216}
.ad-modern .modern-sidebar{position:fixed;left:0;top:0;bottom:0;width:248px;background:linear-gradient(180deg,#18191e,#0c0d11);color:#e6e7ec;z-index:32;display:flex;flex-direction:column;padding:20px 12px 16px;box-shadow:4px 0 30px rgba(12,13,17,.13);overflow-y:auto;scrollbar-width:thin}
.ad-modern .modern-logo{display:flex;align-items:center;gap:11px;margin:4px 8px 28px;padding-bottom:20px;border-bottom:1px solid #2e3036}
.ad-modern .modern-logo img{width:43px;height:43px;object-fit:contain;border-radius:12px;background:white}
.ad-modern .modern-logo strong{display:block;font-size:15px;letter-spacing:.07em;color:white}
.ad-modern .modern-logo small{display:block;font-size:10px;letter-spacing:.15em;color:#9598a4;margin-top:3px}
.ad-modern .modern-menu-label{font-size:10px;letter-spacing:.15em;color:#777b88;font-weight:800;padding:0 15px;margin:3px 0 12px}
.ad-modern .modern-menu-extras{margin-top:23px}
.ad-modern .modern-nav{display:grid;gap:3px}
.ad-modern .modern-nav-item{display:flex;align-items:center;gap:11px;color:#c0c3cb;border:1px solid transparent;background:transparent;font-size:12.5px;line-height:1.1;font-weight:600;min-height:43px;padding:10px 13px;text-align:left;border-radius:9px;transition:background .13s,color .13s,transform .13s}
.ad-modern .modern-nav-item>span{display:inline-grid;place-items:center;width:22px;font-size:18px;color:#a4a6b0}
.ad-modern .modern-nav-item:hover{background:#25262d;color:#fff;transform:translateX(1px)}
.ad-modern .modern-nav-item.active{color:white;background:linear-gradient(100deg,#d20a20,#ae0b1e);box-shadow:0 6px 14px rgba(165,8,30,.23)}
.ad-modern .modern-nav-item.active>span{color:white}
.ad-modern .modern-sidebar-foot{margin:auto 8px 0;padding:22px 8px 0;border-top:1px solid #2b2d34;font-size:11px;color:#b5b8be;display:flex;align-items:center;gap:6px}
.ad-modern .modern-sidebar-foot small{margin-left:auto;color:#858998}
.ad-modern .modern-online-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#41d18a}
.ad-modern .topbar{height:72px;padding:0 28px;margin-left:248px;width:calc(100% - 248px);background:#fff;color:#282c35;border-bottom:1px solid #e5e7ec;box-shadow:0 3px 12px rgba(0,0,0,.025);z-index:21}
.ad-modern .modern-top-search{display:flex;align-items:center;width:min(410px,40vw);height:39px;margin:auto;background:#f5f6f8;border:1px solid #e9eaf0;border-radius:9px;padding-left:10px;color:#8d919c}
.ad-modern .modern-top-search span{font-size:20px;line-height:1}
.ad-modern .modern-top-search input{border:0;background:transparent;outline:none;box-shadow:none;color:#353842;flex:1;min-width:0;font-size:11px;padding:9px}
.ad-modern .modern-top-search button{border:0;background:transparent;color:#b50b20;font-size:11px;font-weight:800;padding:8px 10px}
.ad-modern .topbar .brand-row strong{font-size:14px;color:#242833}
.ad-modern .topbar .brand-row small{color:#818696}
.ad-modern .topbar .brand-logo{border:1px solid #ececef}
.ad-modern .topbar .top-actions .icon-btn{border-color:#e5e5eb;background:#f8f9fb;color:#242833}
.ad-modern .modern-menu-toggle{display:none;width:39px;height:39px;border:1px solid #e3e3e8;border-radius:10px;background:#fff;color:#14151a;font-size:19px;flex-shrink:0}
.ad-modern .page{margin:0 0 0 248px;width:calc(100% - 248px);max-width:none;padding:26px clamp(16px,3vw,45px) 64px}
.ad-modern .modern-backdrop{position:fixed;inset:0;background:rgba(8,9,13,.65);z-index:30}
.ad-modern .modern-dashboard{display:grid;gap:20px;max-width:1500px;margin:0 auto}
.ad-modern .modern-dashboard-head{display:flex;align-items:center;justify-content:space-between;gap:15px}
.ad-modern .modern-eyebrow{color:#be0d21;font-size:10px;font-weight:850;letter-spacing:.16em;margin:0 0 7px}
.ad-modern .modern-eyebrow span{color:#888d99}
.ad-modern .modern-dashboard-head h1{font-size:clamp(22px,2.3vw,31px);font-weight:850;letter-spacing:-.035em;margin:0;line-height:1.18;color:#20242d}
.ad-modern .modern-dashboard-head p:not(.modern-eyebrow){font-size:12px;color:#888c96;margin:7px 0 0}
.ad-modern .modern-head-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.ad-modern .modern-head-actions>span{font-size:11px;color:#888c96;white-space:nowrap;margin-right:5px}
.ad-modern .modern-primary,.ad-modern .modern-secondary{border:1px solid transparent;padding:10px 13px;border-radius:9px;font-size:11px;font-weight:800;min-height:40px;white-space:nowrap}
.ad-modern .modern-primary{background:#d40719;color:white;box-shadow:0 4px 12px rgba(215,8,26,.18)}
.ad-modern .modern-secondary{background:white;color:#333;border-color:#e1e3e8}
.ad-modern .modern-primary:hover{background:#aa0718}.ad-modern .modern-secondary:hover{border-color:#b5b8bf}
.ad-modern .modern-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.ad-modern .modern-kpi{background:#fff;border:1px solid #e7e7ec;border-radius:15px;padding:16px 16px 13px;text-align:left;min-width:0;min-height:123px;box-shadow:0 3px 13px rgba(22,23,31,.035);transition:border-color .15s,box-shadow .15s,transform .15s;display:flex;flex-direction:column;align-items:flex-start}
.ad-modern .modern-kpi:hover{transform:translateY(-2px);border-color:#e8abb3;box-shadow:0 8px 23px rgba(22,23,31,.08)}
.ad-modern .modern-kpi small{font-size:12px;font-weight:650;color:#7c818b}
.ad-modern .modern-kpi strong{font-size:clamp(20px,2.2vw,28px);margin:10px 0 6px;color:#20242e;letter-spacing:-.04em;line-height:1}
.ad-modern .modern-kpi span{font-size:10.5px;color:#be1428;margin-top:auto}
.ad-modern .modern-kpi:nth-child(1){border-top:3px solid #d40719}
.ad-modern .modern-kpi:nth-child(2){border-top:3px solid #1c1f29}
.ad-modern .modern-kpi:nth-child(3){border-top:3px solid #e9a83a}
.ad-modern .modern-kpi:nth-child(4){border-top:3px solid #36926d}
.ad-modern .modern-kpi:nth-child(5){border-top:3px solid #da5160}
.ad-modern .modern-insight-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(295px,1fr);gap:16px}
.ad-modern .modern-bottom-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);gap:16px}
.ad-modern .modern-panel{background:white;border:1px solid #e7e7ec;border-radius:16px;padding:18px;min-width:0;box-shadow:0 3px 15px rgba(19,21,31,.035)}
.ad-modern .modern-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}
.ad-modern .modern-panel-head h2{font-size:14px;font-weight:800;color:#272b33;margin:0}
.ad-modern .modern-panel-head p{font-size:11px;color:#9da1ad;margin:4px 0 0}
.ad-modern .modern-legend{display:flex;align-items:center;gap:6px;font-size:10px;color:#9699a4;white-space:nowrap}
.ad-modern .modern-legend i{display:inline-block;width:8px;height:8px;background:#d40719;border-radius:3px}
.ad-modern .modern-legend i.modern-legend-dark{background:#373a46}
.ad-modern .modern-os-chart{min-height:185px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;align-items:end;padding-top:15px}
.ad-modern .modern-chart-item{display:grid;justify-items:center;gap:9px;align-self:stretch;align-content:end;min-width:0}
.ad-modern .modern-chart-bars{display:flex;align-items:end;gap:3px;min-height:148px;height:148px;width:min(45px,100%);border-bottom:1px solid #ececf0;justify-content:center}
.ad-modern .modern-chart-bars span{width:45%;min-height:3px;border-radius:5px 5px 0 0}
.ad-modern .modern-chart-bars .modern-chart-total{background:linear-gradient(180deg,#e22a40,#c1071d)}
.ad-modern .modern-chart-bars .modern-chart-done{background:linear-gradient(180deg,#636777,#363943)}
.ad-modern .modern-chart-item small{font-size:11px;color:#8d909b}
.ad-modern .modern-chart-item b{font-size:11px;color:#333846}
.ad-modern .modern-chart-note{font-size:10px;color:#999da6;margin-top:10px;text-align:center}
.ad-modern .modern-calendar-nav{display:flex;align-items:center;gap:6px}
.ad-modern .modern-calendar-nav strong{font-size:11px;color:#363841;white-space:nowrap;min-width:75px;text-align:center}
.ad-modern .modern-calendar-nav button{width:28px;height:28px;border:1px solid #eaebef;background:#f6f6f8;border-radius:7px;color:#333;font-size:18px}
.ad-modern .modern-weekdays,.ad-modern .modern-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
.ad-modern .modern-weekdays{color:#a2a6b1;font-size:10px;text-align:center;margin:0 0 8px}
.ad-modern .modern-calendar{min-height:195px}
.ad-modern .modern-calendar button{height:33px;border:1px solid transparent;background:transparent;color:#343946;border-radius:8px;position:relative;font-size:11px}
.ad-modern .modern-calendar button.outside{color:#c7c8ce}
.ad-modern .modern-calendar button.today{background:#20232c;color:white}
.ad-modern .modern-calendar button.has-service:not(.today){background:#fff1f2;border-color:#f7cad0;color:#b80b21}
.ad-modern .modern-calendar button.has-service:after{content:"";width:4px;height:4px;background:#d40719;border-radius:50%;position:absolute;bottom:3px;left:calc(50% - 2px)}
.ad-modern .modern-calendar button:hover{background:#f5dadd;color:#9b0c1b}
.ad-modern .modern-calendar-footer{font-size:10px;color:#999da6;margin:8px 0 0}
.ad-modern .modern-calendar-footer i{display:inline-block;width:6px;height:6px;background:#cc0d20;border-radius:50%;margin-right:3px}
.ad-modern .modern-text-link{background:none;border:none;color:#bb0d22;font-size:11px;font-weight:750;padding:2px 0;white-space:nowrap}
.ad-modern .modern-recent-orders{display:grid;gap:0}
.ad-modern .modern-recent-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;border-bottom:1px solid #eeeef2;background:none;border-top:0;border-left:0;border-right:0;text-align:left;width:100%;padding:12px 4px}
.ad-modern .modern-recent-item:last-child{border-bottom:0}
.ad-modern .modern-recent-item:hover{background:#fff7f7}
.ad-modern .modern-recent-item strong{color:#2c303a;font-size:12px;display:block}
.ad-modern .modern-recent-item small{display:block;color:#9599a2;font-size:10px;margin-top:4px}
.ad-modern .modern-order-status{font-size:10px;color:#8d5e26;padding:5px 7px;background:#fff5e7;border-radius:7px;white-space:nowrap}
.ad-modern .modern-order-status.done{background:#e6f7ef;color:#167848}
.ad-modern .modern-team-list{display:grid;gap:9px}
.ad-modern .modern-team-row{display:flex;align-items:center;gap:9px;padding:9px;background:#f7f7f9;border-radius:9px}
.ad-modern .modern-team-avatar{width:30px;height:30px;border-radius:9px;background:#f9e5e8;display:grid;place-items:center;font-weight:850;color:#bf1125;font-size:12px;flex-shrink:0}
.ad-modern .modern-team-row strong{font-size:11px;color:#333744;display:block}
.ad-modern .modern-team-row small{font-size:10px;color:#9b9fa8;display:block;margin-top:3px}
.ad-modern .modern-team-row b{color:#bb0d22;font-size:13px;margin-left:auto}
.ad-modern .modern-daily-summary{background:#fff4f5;color:#5c2930;border:1px solid #f3d0d4;border-radius:10px;padding:13px;margin-top:13px;display:grid;grid-template-columns:1fr auto;gap:4px}
.ad-modern .modern-daily-summary span{font-size:11px;font-weight:650}
.ad-modern .modern-daily-summary strong{font-size:20px;grid-row:span 2}
.ad-modern .modern-daily-summary small{font-size:10px;color:#aa636b}
.ad-modern .modern-blank{padding:24px 8px;font-size:12px;color:#9699a2;text-align:center}
.ad-modern .modern-workspace{max-width:1500px;margin:auto}
.ad-modern .modern-workspace .hero-row{margin:0 0 22px}
.ad-modern .modern-workspace .hero-row>.action-row{display:none!important}
.ad-modern .modern-workspace .hero-row h2{color:#222633}
.ad-modern .modern-workspace .stat-card{background:white;border:1px solid #e2e4e8;color:#252733;box-shadow:0 2px 12px rgba(20,22,30,.03)}
.ad-modern .modern-workspace .stat-card span{color:#7e828d}
.ad-modern .modern-workspace .stat-card strong{color:#232631}
.ad-modern .modern-workspace .stat-card.is-active{border-color:#cf1630;background:#fff1f2}
.ad-modern .modern-workspace .status-shortcut-info{color:#9397a1}
.ad-modern .modern-workspace .order-card{background:white;border-color:#e4e6eb;color:#242832;box-shadow:0 3px 13px rgba(18,21,30,.03)}
.ad-modern .modern-workspace .order-client{color:#262a33}
.ad-modern .modern-workspace .order-meta{color:#848995}
.ad-modern .modern-workspace .agenda-panel{background:#fff;border-color:#e3e5eb;color:#262a33;box-shadow:0 3px 14px rgba(20,22,30,.04)}
.ad-modern .modern-workspace .agenda-panel strong,.ad-modern .modern-workspace .agenda-count{color:#292d35}
.ad-modern .modern-workspace .agenda-day{color:#303542}
.ad-modern .modern-workspace .agenda-day.outside{color:#bbbfc7}
.ad-modern .modern-workspace .agenda-day:hover{background:#f5e9eb}
.ad-modern .modern-workspace .agenda-weekdays{color:#9fa3ad}
.ad-modern .modern-workspace .toolbar .search-wrap{background:#fff;border-color:#e4e5ea;color:#353945}
.ad-modern .modern-workspace .toolbar input{color:#333743}
.ad-modern .modern-workspace .toolbar select{background:white;color:#3b3e48;border-color:#e3e5eb}
.ad-modern .modern-workspace .toolbar .btn-ghost{background:#f1f1f4;border-color:#e3e5eb;color:#252a34}
.ad-modern .modern-workspace .empty{color:#8b8f9a}
@media(max-width:1250px){
.ad-modern .modern-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.ad-modern .modern-insight-grid,.ad-modern .modern-bottom-grid{grid-template-columns:minmax(0,1fr) minmax(280px,1fr)}
}
@media(max-width:1020px){
.ad-modern .modern-insight-grid,.ad-modern .modern-bottom-grid{grid-template-columns:1fr}
.ad-modern .modern-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:910px){.ad-modern .modern-top-search{width:min(320px,31vw)}}
@media(max-width:760px){
.ad-modern .modern-sidebar{transform:translateX(-105%);transition:transform .2s ease;box-shadow:none;width:min(290px,85vw)}
.ad-modern .modern-sidebar.is-open{transform:translateX(0);box-shadow:8px 0 40px rgba(0,0,0,.25)}
.ad-modern .modern-menu-toggle{display:block}
.ad-modern .modern-top-search{display:none}
.ad-modern .topbar{margin-left:0;width:100%;padding:0 14px;gap:10px}
.ad-modern .page{margin-left:0;width:100%;padding:22px 12px 70px}
.ad-modern .modern-dashboard-head{align-items:flex-start;flex-direction:column}
.ad-modern .modern-head-actions{width:100%;justify-content:flex-start}
.ad-modern .modern-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.ad-modern .modern-kpi{min-height:120px;padding:13px}
.ad-modern .modern-kpi strong{font-size:23px}
.ad-modern .modern-insight-grid,.ad-modern .modern-bottom-grid{grid-template-columns:1fr}
.ad-modern .modern-panel{padding:14px}
.ad-modern .modern-panel-head{flex-wrap:wrap}
.ad-modern .modern-os-chart{gap:4px}
.ad-modern .modern-chart-bars{height:130px;min-height:130px}
}
@media(max-width:400px){
.ad-modern .modern-kpi strong{font-size:20px}
.ad-modern .modern-kpi small{font-size:11px}
.ad-modern .modern-kpi span{font-size:10px}
.ad-modern .modern-calendar-nav strong{min-width:55px;font-size:10px}
.ad-modern .modern-dashboard-head h1{font-size:23px}
}
@media(prefers-reduced-motion:reduce){.ad-modern .modern-sidebar,.ad-modern .modern-nav-item,.ad-modern .modern-kpi{transition:none}}


/* V4.2 — calendário da agenda com contraste leve.
   Escopo restrito à agenda tradicional dentro de Ordens de Serviço.
   Preserva botões, dados, filtros e os demais módulos da aplicação. */
.ad-modern .modern-workspace .agenda-panel .agenda-weekdays{
  color:#767d89;
  font-weight:700;
}
.ad-modern .modern-workspace .agenda-panel .agenda-day{
  background:#f7f8fa;
  border:1px solid #e1e4eb;
  color:#323844;
  opacity:1;
  box-shadow:none;
  transition:background .14s,border-color .14s,box-shadow .14s;
}
.ad-modern .modern-workspace .agenda-panel .agenda-day.outside{
  background:#fcfcfd;
  color:#abb1bd;
  opacity:.7;
}
.ad-modern .modern-workspace .agenda-panel .agenda-day:has(.agenda-dot.has):not(.active){
  background:#fff0f2;
  border-color:#f2bdc6;
  color:#8f1325;
}
.ad-modern .modern-workspace .agenda-panel .agenda-day.today:not(.active){
  outline:2px solid #d0172b;
  outline-offset:-3px;
  border-color:#cf8b96;
}
.ad-modern .modern-workspace .agenda-panel .agenda-day.active,
.ad-modern .modern-workspace .agenda-panel .agenda-day.active.outside,
.ad-modern .modern-workspace .agenda-panel .agenda-day.active.today{
  background:#c90d23;
  border:2px solid #ad0b1c;
  color:#fff;
  opacity:1;
  box-shadow:0 3px 9px rgba(173,11,28,.16);
}
.ad-modern .modern-workspace .agenda-panel .agenda-day:hover:not(.active){
  background:#fce1e5;
  border-color:#e397a3;
  color:#981529;
}
.ad-modern .modern-workspace .agenda-panel .agenda-dot.has{
  background:#cb1930;
  color:#fff;
  font-weight:750;
  border:1px solid transparent;
  font-size:10px;
}
.ad-modern .modern-workspace .agenda-panel .agenda-day.active .agenda-dot.has{
  background:#fff;
  border-color:#fff;
  color:#bb1025;
}
.ad-modern .modern-workspace .agenda-panel .agenda-filters label{
  color:#646b78;
}
.ad-modern .modern-workspace .agenda-panel .agenda-filters input,
.ad-modern .modern-workspace .agenda-panel .agenda-filters select{
  background:#fff;
  border:1px solid #e0e3e9;
  color:#252b34;
  color-scheme:light;
}
.ad-modern .modern-workspace .agenda-panel .agenda-filters input:focus,
.ad-modern .modern-workspace .agenda-panel .agenda-filters select:focus{
  border-color:#c91026;
  outline:2px solid rgba(201,16,38,.13);
}
.ad-modern .modern-workspace .agenda-panel .agenda-nav .btn,
.ad-modern .modern-workspace .agenda-panel .agenda-filters .btn{
  background:#f7f8fa;
  border:1px solid #dfe3e9;
  color:#292e37;
}
.ad-modern .modern-workspace .agenda-panel .agenda-nav .btn:hover,
.ad-modern .modern-workspace .agenda-panel .agenda-filters .btn:hover{
  border-color:#d1939b;
  background:#fff1f3;
  color:#af0f25;
}
.ad-modern .modern-workspace .agenda-panel .agenda-count{
  color:#727987;
}
