:root{
  --orange:#FF6C00;--orange2:#FF4500;--gold:#FFD700;--navy:#1B247A;
  --bg:#0b0d16;--surface:#111421;--surface2:#171a29;--border:#272b3c;
  --text:#f5f7fb;--muted:#9298aa;--green:#31d08a;--yellow:#f4c84b;--red:#ff5d63;
  --shadow:0 18px 50px rgba(0,0,0,.22)
}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
button,input,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:flex}.sidebar{width:245px;background:#0e101b;border-right:1px solid var(--border);padding:24px 16px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:20}
.brand{display:flex;align-items:center;gap:11px;padding:4px 10px 30px}.brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--orange),var(--orange2));display:grid;place-items:center;font-weight:900;font-size:22px;box-shadow:0 8px 24px rgba(255,108,0,.25)}.brand strong{display:block;font-size:15px;letter-spacing:2px}.brand span{font-size:10px;color:var(--gold);letter-spacing:3px;font-weight:800}
.nav{display:grid;gap:7px}.nav-item{border:0;background:transparent;color:#9da2b4;padding:12px 13px;border-radius:10px;text-align:left;display:flex;align-items:center;gap:12px;font-weight:650}.nav-item span{width:20px;text-align:center}.nav-item:hover{background:#171a29;color:#fff}.nav-item.active{background:linear-gradient(90deg,rgba(255,108,0,.18),rgba(255,108,0,.04));color:#fff;border-left:3px solid var(--orange)}
.sidebar-footer{margin-top:auto}.focus-tip{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:12px;display:flex;gap:10px;align-items:center}.focus-tip>span{font-size:22px;color:var(--gold)}.focus-tip b,.focus-tip small{display:block}.focus-tip small{color:var(--muted);margin-top:2px}.settings-btn{width:100%;margin-top:10px;background:none;border:0;color:var(--muted);padding:10px;text-align:left}
.main{margin-left:245px;width:calc(100% - 245px);min-height:100vh}.topbar{height:92px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 34px;position:sticky;top:0;background:rgba(11,13,22,.88);backdrop-filter:blur(15px);z-index:10}.eyebrow{font-size:10px;letter-spacing:1.7px;color:var(--orange);font-weight:850}.topbar h1{margin:4px 0 0;font-size:25px}.top-actions{display:flex;align-items:center;gap:18px}.today{color:var(--muted);font-size:13px}.btn{border:0;border-radius:10px;padding:11px 16px;font-weight:800}.btn-primary{background:linear-gradient(135deg,var(--orange),var(--orange2));color:#fff;box-shadow:0 8px 22px rgba(255,108,0,.18)}.btn-secondary{background:var(--surface2);color:#fff;border:1px solid var(--border)}
.content{padding:30px 34px 50px;max-width:1450px;margin:auto}.section{display:none}.section.active{display:block}.hero{background:radial-gradient(circle at 90% 20%,rgba(255,108,0,.18),transparent 32%),linear-gradient(135deg,#15182a,#10121e);border:1px solid var(--border);border-radius:20px;padding:28px 30px;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow)}.hero-kicker{color:var(--gold);font-size:11px;letter-spacing:2px;font-weight:900}.hero h2{font-size:32px;margin:8px 0}.hero p{color:var(--muted);max-width:650px;line-height:1.55}.hero-clock{text-align:right;border-left:1px solid var(--border);padding-left:30px}.hero-clock span{font-size:36px;font-weight:900;letter-spacing:1px}.hero-clock small{display:block;color:var(--muted)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}.stat-card,.panel{background:var(--surface);border:1px solid var(--border);border-radius:16px}.stat-card{padding:18px;display:flex;gap:14px;align-items:center}.stat-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-weight:900}.stat-icon.orange{background:rgba(255,108,0,.13);color:var(--orange)}.stat-icon.blue{background:rgba(27,36,122,.35);color:#8790ff}.stat-icon.red{background:rgba(255,93,99,.12);color:var(--red)}.stat-icon.gold{background:rgba(255,215,0,.1);color:var(--gold)}.stat-card span,.stat-card small{display:block;color:var(--muted);font-size:12px}.stat-card strong{display:block;font-size:22px;margin:3px 0}
.grid-2,.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.panel{padding:20px;margin-bottom:16px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:16px}.panel-head h3{margin:4px 0 0;font-size:17px}.status-pill{font-size:11px;padding:6px 10px;border-radius:99px;background:#202434;color:var(--muted)}.current-task{display:flex;align-items:center;gap:14px;padding:15px;border:1px dashed var(--border);border-radius:13px}.current-task.empty{color:var(--muted)}.empty-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:rgba(255,108,0,.1);color:var(--orange)}.current-task p{margin:4px 0 0;color:var(--muted);font-size:12px}.client-bars{display:grid;gap:12px}.bar-row{display:grid;grid-template-columns:145px 1fr 55px;gap:10px;align-items:center;font-size:12px}.bar-row .name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#d8dbe5}.bar-track{height:8px;background:#242838;border-radius:99px;overflow:hidden}.bar-fill{height:100%;background:linear-gradient(90deg,var(--orange),var(--gold));border-radius:99px}.table-wrap{overflow:auto}.simple-table{width:100%;border-collapse:collapse;font-size:13px}.simple-table th,.simple-table td{padding:13px 10px;border-bottom:1px solid var(--border);text-align:left}.simple-table th{color:var(--muted);font-size:10px;letter-spacing:1px}.danger{color:var(--red)!important}.warning{color:var(--yellow)!important}.success{color:var(--green)!important}.link-btn{background:none;border:0;color:var(--orange);font-weight:800}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:22px}.section-head h2{margin:5px 0;font-size:28px}.section-head p{margin:0;color:var(--muted)}.day-summary{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.summary-chip{padding:9px 12px;background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--muted);font-size:12px}.summary-chip b{color:#fff}
.timeline{display:grid;gap:10px}.timeline-item{display:grid;grid-template-columns:90px 1fr auto;gap:18px;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:15px;padding:16px}.time-col{font-weight:900;color:#dfe2ea}.time-col small{display:block;color:var(--muted);font-weight:500;margin-top:3px}.task-main strong{display:block}.task-main span{color:var(--muted);font-size:12px}.task-actions{display:flex;align-items:center;gap:8px}.mini-btn{border:1px solid var(--border);background:var(--surface2);color:#fff;border-radius:9px;padding:8px 11px}.mini-btn.start{color:var(--green)}.mini-btn.stop{color:var(--red)}
.filters{display:flex;gap:10px;margin-bottom:15px}.filters select,.modal select,.modal input{background:var(--surface);border:1px solid var(--border);color:#fff;border-radius:9px;padding:10px 12px;outline:none}.filters select:focus,.modal select:focus,.modal input:focus{border-color:var(--orange)}
.task-list{display:grid;gap:10px}.task-card{background:var(--surface);border:1px solid var(--border);border-radius:15px;padding:17px;display:grid;grid-template-columns:1fr auto;gap:15px}.task-top{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.client-tag{font-size:10px;padding:5px 8px;border-radius:6px;background:rgba(27,36,122,.45);color:#aeb5ff}.priority{font-size:10px;font-weight:900;text-transform:uppercase}.priority.alta{color:var(--red)}.priority.media{color:var(--yellow)}.priority.baixa{color:var(--green)}.task-card h4{margin:9px 0 5px;font-size:15px}.task-meta{display:flex;gap:15px;color:var(--muted);font-size:12px;flex-wrap:wrap}.task-right{text-align:right}.time-comparison{font-size:13px;font-weight:800}.task-right .mini-btn{margin-top:10px}.progress{height:5px;background:#272b3a;border-radius:9px;margin-top:11px;overflow:hidden}.progress span{display:block;height:100%;background:var(--green)}.progress.over span{background:var(--red)}.badge{display:inline-block;font-size:10px;padding:4px 7px;border-radius:6px;background:#232738;color:var(--muted)}
.clients-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.client-card{background:var(--surface);border:1px solid var(--border);border-radius:15px;padding:18px}.client-card h3{font-size:16px;margin:0 0 7px}.client-card p{font-size:12px;color:var(--muted);margin:0 0 15px}.client-card .client-time{font-size:25px;font-weight:900}.client-card .client-percent{font-size:11px;color:var(--muted)}.client-card .progress{margin-top:12px}
.report-row{padding:12px 0;border-bottom:1px solid var(--border)}.report-row:last-child{border-bottom:0}.report-row-top{display:flex;justify-content:space-between;font-size:13px}.report-row small{color:var(--muted)}.report-kpis{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.report-kpi{background:var(--surface2);padding:14px;border-radius:12px}.report-kpi span{display:block;color:var(--muted);font-size:11px}.report-kpi strong{display:block;font-size:22px;margin-top:5px}
.modal-backdrop{display:none;position:fixed;inset:0;background:rgba(0,0,0,.68);backdrop-filter:blur(7px);z-index:100;align-items:center;justify-content:center;padding:20px}.modal-backdrop.open{display:flex}.modal{width:min(570px,100%);background:#111421;border:1px solid var(--border);border-radius:18px;padding:23px;box-shadow:var(--shadow)}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.modal h3{margin:5px 0 0;font-size:20px}.close-btn{background:none;border:0;color:var(--muted);font-size:28px}.modal form{display:grid;gap:13px}.modal label{font-size:12px;color:#c6cad6;display:grid;gap:6px}.modal input,.modal select{width:100%}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}
.mobile-menu{display:none;background:none;border:0;color:#fff;font-size:20px}
@media(max-width:1050px){.stats-grid{grid-template-columns:repeat(2,1fr)}.clients-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:translateX(0)}.main{margin-left:0;width:100%}.mobile-menu{display:block}.topbar{padding:0 18px}.today{display:none}.content{padding:20px 16px}.hero{display:block}.hero-clock{text-align:left;border-left:0;border-top:1px solid var(--border);padding:16px 0 0;margin-top:18px}.grid-2,.report-grid{grid-template-columns:1fr}.section-head{align-items:flex-start;gap:15px}.timeline-item{grid-template-columns:65px 1fr}.task-actions{grid-column:2}.clients-grid{grid-template-columns:1fr}.bar-row{grid-template-columns:105px 1fr 45px}}
@media(max-width:560px){.stats-grid{grid-template-columns:1fr}.top-actions .btn{padding:9px 11px;font-size:12px}.hero h2{font-size:26px}.form-grid{grid-template-columns:1fr}.filters{display:grid;grid-template-columns:1fr}.task-card{grid-template-columns:1fr}.task-right{text-align:left}.task-actions{grid-column:1}.timeline-item{grid-template-columns:1fr}.time-col{display:flex;gap:8px}}


/* Alertas de tempo — V2 */
.task-card.level-warning{border-color:rgba(244,200,75,.55);box-shadow:0 0 0 1px rgba(244,200,75,.08)}
.task-card.level-critical{border-color:rgba(255,145,65,.7);box-shadow:0 0 24px rgba(255,145,65,.08)}
.task-card.level-over{border-color:rgba(255,93,99,.72);box-shadow:0 0 26px rgba(255,93,99,.10)}
.toast-host{position:fixed}
#toastHost{position:fixed;right:22px;top:105px;z-index:200;display:grid;gap:10px;width:min(390px,calc(100vw - 30px))}
.toast{display:flex;align-items:center;gap:12px;padding:14px 15px;background:#151827;border:1px solid var(--border);border-radius:13px;box-shadow:0 16px 45px rgba(0,0,0,.35);animation:toastIn .2s ease}
.toast.warning{border-color:rgba(244,200,75,.65)}.toast.critical{border-color:rgba(255,145,65,.75)}.toast.over{border-color:rgba(255,93,99,.8)}
.toast-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-weight:900;background:rgba(255,108,0,.12);color:var(--orange)}
.toast.warning .toast-icon{color:var(--yellow);background:rgba(244,200,75,.1)}.toast.critical .toast-icon{color:#ff9141;background:rgba(255,145,65,.1)}.toast.over .toast-icon{color:var(--red);background:rgba(255,93,99,.1)}
.toast b,.toast span{display:block}.toast b{font-size:13px}.toast span{font-size:11px;color:var(--muted);margin-top:3px;line-height:1.35}.toast button{margin-left:auto;background:none;border:0;color:var(--muted);font-size:20px}
@keyframes toastIn{from{transform:translateY(-8px);opacity:0}to{transform:none;opacity:1}}

/* V3 — Agenda, calendário e responsividade */
html,body{overflow-x:hidden}.main{min-width:0;overflow-x:hidden}.content{width:100%;min-width:0}.topbar{min-width:0}
.section-actions{display:flex;gap:10px;flex-wrap:wrap}.muted{color:var(--muted)}
.task-note{margin-top:10px;padding:9px 11px;background:rgba(255,255,255,.025);border-left:2px solid var(--orange);border-radius:7px;color:#b9becb;font-size:12px;line-height:1.45}
.calendar-modal{max-width:760px}.calendar-toolbar{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:10px;margin-bottom:15px}.calendar-toolbar strong{text-align:center;text-transform:capitalize;font-size:18px}
.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.calendar-weekdays span{text-align:center;font-size:9px;letter-spacing:1px;color:var(--muted);padding:5px}
.calendar-day{min-height:74px;border:1px solid var(--border);background:var(--surface2);color:#fff;border-radius:10px;padding:9px;text-align:left;position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.calendar-day:hover{border-color:var(--orange);transform:translateY(-1px)}.calendar-day.muted-day{opacity:.35}.calendar-day.today-day{border-color:var(--orange);box-shadow:inset 0 0 0 1px rgba(255,108,0,.2)}
.calendar-day span{font-weight:800}.calendar-day small{font-size:9px;color:var(--muted)}.day-dot{width:7px;height:7px;border-radius:50%;background:var(--orange);display:block}.running-dot{background:var(--red);box-shadow:0 0 8px rgba(255,93,99,.65)}
.calendar-selected{margin-top:18px;border-top:1px solid var(--border);padding-top:16px}.selected-date-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}.selected-date-head strong{display:block;margin-top:4px;text-transform:capitalize}
.calendar-task{display:grid;grid-template-columns:60px 1fr auto;gap:12px;align-items:start;padding:11px 0;border-bottom:1px solid var(--border)}.calendar-task:last-child{border-bottom:0}.calendar-task-time{font-weight:900;color:#dfe2ea}
.calendar-task small,.calendar-task em{display:block;color:var(--muted);font-size:11px;margin-top:3px;font-style:normal}.calendar-task em{color:#b8becd;margin-top:6px}
@media(max-width:1100px){.sidebar{width:220px}.main{margin-left:220px;width:calc(100% - 220px)}.topbar{padding:0 22px}.content{padding-left:22px;padding-right:22px}}
@media(max-width:800px){.topbar{height:auto;min-height:82px;padding:14px 18px;gap:12px}.topbar h1{font-size:21px}.content{padding-top:22px}.section-head{flex-direction:column;align-items:stretch}.section-actions{width:100%}.section-actions .btn{flex:1}.calendar-grid,.calendar-weekdays{gap:4px}.calendar-day{min-height:60px;padding:7px}}
@media(max-width:560px){.calendar-weekdays span{font-size:8px}.calendar-day{min-height:50px;font-size:11px}.calendar-day small{display:none}.calendar-task{grid-template-columns:48px 1fr auto}.selected-date-head{align-items:flex-start;flex-direction:column}.selected-date-head .btn{width:100%}}
@media(max-width:420px){.content{padding-left:12px;padding-right:12px}.topbar{padding-left:12px;padding-right:12px}.section-actions{display:grid;grid-template-columns:1fr}}

/* =========================================================
   V4 — RESPONSIVIDADE TOTAL / MOBILE FIRST
   ========================================================= */

*{max-width:100%}
img,svg,video,canvas{max-width:100%;height:auto}
button,input,select,textarea{max-width:100%}

body{width:100%;min-width:0}
.app-shell{width:100%;min-width:0}
.main{min-width:0;width:calc(100% - 245px);overflow-x:hidden}
.content{width:100%;max-width:1450px;margin:0 auto;min-width:0;overflow-x:hidden}
.panel,.stat-card,.task-card,.client-card,.timeline-item{min-width:0}

.section-head,.panel-head,.topbar,.hero,.task-card,.timeline-item{min-width:0}
.section-head>div,.panel-head>div,.task-main,.task-card>div,.hero>div{min-width:0}

.hero p,.task-main strong,.task-meta,.task-note,.calendar-task b,.calendar-task small,.calendar-task em{
  overflow-wrap:anywhere;
}

/* Modal sempre cabe na altura disponível */
.modal-backdrop{
  padding:clamp(10px,3vw,24px);
  overflow-y:auto;
  align-items:center;
}
.modal{
  width:min(570px,100%);
  max-height:calc(100dvh - 32px);
  overflow-y:auto;
}
.calendar-modal{
  width:min(820px,100%);
  max-width:calc(100vw - 24px);
  max-height:calc(100dvh - 24px);
  overflow-y:auto;
}

/* Calendário nunca força a página a ficar maior que a tela */
.calendar-grid,.calendar-weekdays{
  width:100%;
  min-width:0;
}
.calendar-day{
  min-width:0;
  width:100%;
  overflow:hidden;
}
.calendar-day span,.calendar-day small{
  max-width:100%;
  overflow:hidden;
}

/* Header e ações se reorganizam sem estourar a largura */
.topbar{gap:16px}
.topbar>div{min-width:0}
.top-actions{min-width:0;flex-wrap:wrap;justify-content:flex-end}
.today{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Tablets */
@media (max-width: 1100px){
  .sidebar{width:220px}
  .main{margin-left:220px;width:calc(100% - 220px)}
  .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .clients-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid-2,.report-grid{grid-template-columns:minmax(0,1fr)}
}

/* Celular / telas estreitas */
@media (max-width: 800px){
  .sidebar{width:min(290px,86vw)}
  .main{margin-left:0;width:100%}

  .topbar{
    width:100%;
    padding:12px 16px;
    min-height:76px;
    align-items:center;
  }
  .topbar h1{font-size:21px;white-space:nowrap}
  .eyebrow{max-width:100%;overflow:hidden;text-overflow:ellipsis}
  .top-actions{gap:8px}
  .top-actions .btn{white-space:nowrap}
  .mobile-menu{flex:0 0 auto}

  .content{
    padding:18px 14px 34px;
    width:100%;
    max-width:none;
  }

  .hero{
    padding:20px;
    border-radius:16px;
  }
  .hero h2{font-size:26px;line-height:1.15}
  .hero-clock{
    width:100%;
    padding-left:0;
    text-align:left;
  }
  .hero-clock span{font-size:30px}

  .stats-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .stat-card{padding:14px;gap:10px}
  .stat-card strong{font-size:19px}
  .stat-icon{width:36px;height:36px;flex:0 0 36px}

  .section-head{
    flex-direction:column;
    align-items:stretch;
    gap:14px;
  }
  .section-head h2{font-size:25px}
  .section-actions{
    width:100%;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .section-actions .btn{width:100%}

  .filters{
    display:grid;
    grid-template-columns:1fr;
  }
  .filters select{width:100%}

  .timeline-item{
    grid-template-columns:1fr;
    gap:10px;
  }
  .task-actions{
    grid-column:auto;
    justify-content:flex-start;
    flex-wrap:wrap;
  }

  .task-card{
    grid-template-columns:minmax(0,1fr);
  }
  .task-right{
    text-align:left;
  }

  .clients-grid{
    grid-template-columns:1fr;
  }

  /* Calendário ocupa a área disponível, sem sair da tela */
  .calendar-modal{
    width:100%;
    max-width:100%;
    max-height:calc(100dvh - 16px);
    border-radius:16px;
    padding:16px;
  }
  .calendar-toolbar{grid-template-columns:38px minmax(0,1fr) 38px}
  .calendar-toolbar strong{
    font-size:16px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .calendar-weekdays,.calendar-grid{gap:4px}
  .calendar-day{
    min-height:clamp(48px,13vw,72px);
    padding:clamp(5px,1.5vw,9px);
    border-radius:8px;
  }
  .calendar-day span{font-size:clamp(11px,3vw,14px)}
  .calendar-day small{font-size:8px}
  .calendar-selected{
    max-height:30vh;
    overflow-y:auto;
  }
}

/* Celulares pequenos */
@media (max-width: 560px){
  .topbar{
    padding:10px 12px;
  }
  .topbar h1{font-size:19px}
  .top-actions .today{display:none}
  .top-actions .btn{
    padding:9px 10px;
    font-size:11px;
  }

  .content{padding:14px 10px 28px}

  .stats-grid{
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .stat-card{
    min-height:92px;
    padding:12px;
  }
  .stat-card span{font-size:10px}
  .stat-card small{font-size:9px}
  .stat-card strong{font-size:17px}

  .panel{padding:14px;border-radius:13px}

  .section-actions{
    grid-template-columns:1fr;
  }

  /* O calendário reduz proporcionalmente em vez de criar scroll horizontal */
  .calendar-modal{
    padding:12px;
  }
  .calendar-weekdays,.calendar-grid{
    gap:3px;
  }
  .calendar-day{
    min-height:clamp(42px,11.5vw,58px);
    padding:5px;
  }
  .calendar-day small{display:none}
  .day-dot{width:6px;height:6px}

  .calendar-selected{
    margin-top:12px;
    padding-top:12px;
    max-height:27vh;
  }
  .selected-date-head{
    flex-direction:column;
    align-items:stretch;
  }
  .selected-date-head .btn{width:100%}

  .calendar-task{
    grid-template-columns:45px minmax(0,1fr) auto;
    gap:8px;
  }
  .calendar-task b{font-size:12px}
  .calendar-task small,.calendar-task em{font-size:10px}

  .form-grid{grid-template-columns:1fr}
}

/* Celular muito pequeno */
@media (max-width: 380px){
  .content{padding-left:8px;padding-right:8px}
  .stats-grid{grid-template-columns:1fr}
  .stat-card{min-height:auto}

  .calendar-modal{
    padding:9px;
    border-radius:12px;
  }
  .calendar-weekdays span{font-size:7px;letter-spacing:.4px}
  .calendar-day{
    min-height:39px;
    padding:4px;
    border-radius:6px;
  }
  .calendar-day span{font-size:10px}
  .calendar-toolbar{margin-bottom:8px}
  .calendar-toolbar strong{font-size:14px}
}

/* Desktop alto/baixo: o calendário sempre respeita a altura da janela */
@media (min-width:801px){
  .calendar-modal{
    max-height:calc(100dvh - 40px);
  }
}

/* V5 — CRUD de tarefas e clientes */
.client-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}
.danger-btn{color:var(--red)!important}
#clientColor{height:44px;padding:5px}
@media(max-width:560px){
  .client-actions .mini-btn{flex:1}
}

/* V6 — emblema, gráficos, PDF e alerta de 3 minutos */
.brand-mark{overflow:hidden}.brand-mark img{width:100%;height:100%;object-fit:cover;border-radius:12px;display:block}
.clickable-stat{cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.clickable-stat:hover{transform:translateY(-2px);border-color:rgba(255,108,0,.55);box-shadow:0 12px 28px rgba(0,0,0,.2)}
.chart-modal{max-width:760px}.chart-body{min-height:280px;display:flex;flex-direction:column;justify-content:center}.chart-bars{display:grid;gap:18px}.chart-bar-row{display:grid;grid-template-columns:130px minmax(0,1fr) 65px;gap:12px;align-items:center}.chart-label{font-size:12px;color:#d9dce6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chart-track{height:13px;background:#25293a;border-radius:99px;overflow:hidden}.chart-track span{height:100%;display:block;background:linear-gradient(90deg,var(--orange),var(--gold));border-radius:99px}.chart-total{margin-top:24px;padding-top:14px;border-top:1px solid var(--border);color:var(--muted)}.empty-chart{text-align:center;color:var(--muted);padding:60px 20px}
.big-chart{display:flex;align-items:center;justify-content:center;gap:45px;flex-wrap:wrap}.donut{width:190px;height:190px;border-radius:50%;background:conic-gradient(var(--orange) 0 var(--pct),#292d3d var(--pct) 100%);display:grid;place-items:center}.donut>div{width:130px;height:130px;border-radius:50%;background:var(--surface);display:grid;place-items:center;align-content:center;text-align:center}.donut b{font-size:34px}.donut span{font-size:11px;color:var(--muted)}.chart-legend{display:grid;gap:14px;min-width:180px}.chart-legend div{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.chart-legend b{margin-left:auto;color:#fff}.legend-dot{width:9px;height:9px;border-radius:50%}.legend-dot.green{background:var(--green)}.legend-dot.gray{background:#555b6e}
.overtime-modal{text-align:center;max-width:500px;padding:30px}.overtime-icon{width:62px;height:62px;margin:0 auto 14px;border-radius:18px;display:grid;place-items:center;background:rgba(255,93,99,.13);color:var(--red);font-size:32px;font-weight:900;box-shadow:0 0 0 8px rgba(255,93,99,.04)}.overtime-modal h3{font-size:23px;margin:8px 0}.overtime-modal p{color:var(--muted);line-height:1.55}.overtime-timer{font-size:52px;font-weight:950;color:var(--red);letter-spacing:2px;margin:18px 0}.overtime-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.overtime-actions .btn{min-width:175px}.overtime-modal small{display:block;color:var(--muted);margin-top:16px;font-size:10px}
.report-select{background:var(--surface);border:1px solid var(--border);color:#fff;border-radius:10px;padding:11px 12px;min-width:210px}
@media(max-width:800px){.chart-bar-row{grid-template-columns:90px minmax(0,1fr) 55px}.report-select{width:100%}.section-actions .report-select{grid-column:1/-1}.overtime-timer{font-size:44px}}
@media(max-width:560px){.chart-bar-row{grid-template-columns:75px minmax(0,1fr) 48px;gap:7px}.chart-label,.chart-bar-row strong{font-size:10px}.chart-modal{padding:15px}.overtime-modal{padding:22px 16px}}

/* V7 — botão Editar dentro do calendário */
.calendar-task-info{min-width:0}
.calendar-task-actions{display:flex;flex-direction:column;align-items:flex-end;gap:7px}
.calendar-edit-btn{white-space:nowrap;font-size:11px;padding:7px 9px;color:var(--orange)}
@media(max-width:560px){
  .calendar-task-actions{align-items:flex-end}
  .calendar-edit-btn{font-size:10px;padding:6px 7px}
}
