:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#15283b;background:#eef3f8;--blue:#0b3155;--blue2:#144f80;--green:#1f8a5b;--line:#d7e0e8;--muted:#687b8c;--shadow:0 12px 30px rgba(20,49,79,.08)}*{box-sizing:border-box}body{margin:0;background:#eef3f8;color:#15283b}.topbar{min-height:78px;background:linear-gradient(120deg,#082c4d,#155b8f);color:white;display:flex;align-items:center;justify-content:space-between;padding:14px 24px;gap:16px;position:sticky;top:0;z-index:10;box-shadow:0 5px 18px rgba(0,0,0,.15)}.brand{font-weight:950;letter-spacing:.08em;font-size:22px}.brand span{font-weight:650;color:#bfe6ff}.subtitle{font-size:12px;color:#d5e8f8;margin-top:4px}.topActions{display:flex;gap:8px;align-items:center}main{max-width:1500px;margin:0 auto;padding:22px}.panel{background:white;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:18px;margin-bottom:16px}.loginPanel{max-width:520px;margin:55px auto;padding:28px}.loginPanel h1{margin:7px 0}.loginPanel form{display:grid;gap:14px;margin-top:20px}.eyebrow{font-size:11px;letter-spacing:.09em;font-weight:900;color:#557188}.error{color:#a52222}.notice{min-height:24px;color:#48637a}.ghost,.topbar button{border:1px solid rgba(255,255,255,.34);background:rgba(255,255,255,.08);color:white;text-decoration:none;border-radius:10px;padding:10px 12px;font-weight:800}.tabs{display:flex;gap:8px;margin-bottom:14px}.tab{border:0;background:#dfe8f0;color:#29465f;padding:12px 16px;border-radius:12px;font-weight:850;cursor:pointer}.tab.active{background:var(--blue);color:#fff}.filters{display:grid;grid-template-columns:minmax(180px,260px) minmax(220px,320px) 1fr;align-items:end;gap:16px}.filters label,.loginPanel label{display:grid;gap:6px;font-size:13px;font-weight:800;color:#425c71}.filters input,.filters select,.loginPanel input{min-height:44px;border:1px solid #becbd6;border-radius:10px;padding:8px 11px;background:#fff;color:#17354e;font:inherit}.filterActions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}button{min-height:42px;border:1px solid #c6d2dc;background:#f7fafc;color:#17354e;border-radius:10px;padding:8px 12px;font-weight:850;cursor:pointer}.primary{background:var(--blue2);border-color:var(--blue2);color:#fff}.sourceNote{padding:12px 14px;border-radius:12px;background:#e9f4fb;border:1px solid #c9e0ef;margin-bottom:16px;color:#38596f;font-size:13px}.sourceNote code{background:#fff;padding:2px 5px;border-radius:5px}.stats{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:10px;margin-bottom:16px}.stat{background:white;border:1px solid var(--line);border-radius:14px;padding:13px;box-shadow:var(--shadow)}.stat small{display:block;color:var(--muted);font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.stat b{display:block;margin-top:5px;font-size:20px;color:#123b5d}.sectionTitle{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.sectionTitle h2{margin:4px 0 0;font-size:23px}.pill{display:inline-flex;padding:6px 10px;border-radius:999px;background:#e8eef4;color:#36546c;font-size:12px;font-weight:900}.pill.accent{background:#fff0bc;color:#765600}.tableWrap{overflow:auto;border:1px solid var(--line);border-radius:12px}table{border-collapse:collapse;width:100%;min-width:1250px;font-size:12px}th,td{text-align:left;padding:10px;border-bottom:1px solid #e6edf2;vertical-align:top}th{position:sticky;top:0;background:#f0f5f8;color:#416078;text-transform:uppercase;font-size:10px;letter-spacing:.05em}tbody tr:hover{background:#f8fbfd}.empty{padding:24px;text-align:center;color:var(--muted)}.monthlyHero{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px}.monthlyHero>div{padding:16px;border-radius:14px;background:#f4f8fb;border:1px solid var(--line)}.monthlyHero small{display:block;color:var(--muted);font-weight:800}.monthlyHero b{display:block;margin-top:5px;font-size:20px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin-bottom:20px}.employeeCard{padding:14px;border-radius:14px;border:1px solid var(--line);background:#fbfdff}.employeeCard>b,.employeeCard>span{display:block;margin-top:5px}.employeeCard span{font-size:13px;color:#5e7486}.clientList{border:1px solid var(--line);border-radius:12px;overflow:hidden}.clientRow{display:grid;grid-template-columns:minmax(240px,2fr) repeat(3,minmax(100px,1fr));gap:12px;padding:10px 12px;border-bottom:1px solid #e6edf2;font-size:13px}.clientRow:last-child{border-bottom:0}.clientRow span{color:#5c7486}@media(max-width:1000px){.stats{grid-template-columns:repeat(3,1fr)}.filters{grid-template-columns:1fr 1fr}.filterActions{grid-column:1/-1;justify-content:flex-start}.monthlyHero{grid-template-columns:1fr 1fr}}@media(max-width:620px){.topbar{position:static;padding:13px;align-items:flex-start}.brand{font-size:17px}.topActions{flex-direction:column;align-items:stretch}.topActions a,.topActions button{font-size:11px;padding:8px}.subtitle{max-width:240px}main{padding:10px}.panel{border-radius:14px;padding:13px}.tabs{overflow:auto}.tab{white-space:nowrap}.filters{grid-template-columns:1fr}.filterActions{grid-column:auto}.stats{grid-template-columns:1fr 1fr}.monthlyHero{grid-template-columns:1fr 1fr}.clientRow{grid-template-columns:1fr 1fr}.clientRow b{grid-column:1/-1}}@media print{body{background:white}.topbar,.tabs,.filters,.sourceNote,#doneView,#notice,.filterActions{display:none!important}main{max-width:none;padding:0}#workspace,#monthlyView{display:block!important}.panel{box-shadow:none;border:0;padding:0}.stats{grid-template-columns:repeat(4,1fr)}.stat{box-shadow:none}.monthlyHero{grid-template-columns:repeat(4,1fr)}.cards{grid-template-columns:repeat(3,1fr)}.clientRow{break-inside:avoid}.pill{border:1px solid #aaa}}

/* =========================================================
   COMBOX — RELATÓRIO PROFISSIONAL DE INTERVENÇÕES
   ========================================================= */

.printDossier{
  display:none;
}

@media print {

  @page{
    size:A4;
    margin:12mm 11mm 15mm 11mm;
  }

  html,body{
    margin:0!important;
    padding:0!important;
    background:#fff!important;
    color:#172638!important;
    font-family:Arial,Helvetica,sans-serif!important;
    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }

  /* Esconder toda a interface normal */
  .topbar,
  .tabs,
  .filters,
  .sourceNote,
  .stats,
  #doneView,
  #monthlyView,
  #notice,
  .filterActions{
    display:none!important;
  }

  main,
  #workspace{
    display:block!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }

  #workspace.panel{
    border:0!important;
    box-shadow:none!important;
    padding:0!important;
    margin:0!important;
  }

  /* Mostrar exclusivamente o dossier */
  #printDossier{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
  }

  /* CABEÇALHO */
  .printHeader{
    display:grid;
    grid-template-columns:1.35fr .9fr;
    align-items:stretch;
    margin-bottom:7mm;
    border-radius:4mm;
    overflow:hidden;
    background:#0b3155!important;
    color:#fff!important;
  }

  .printBrand{
    padding:7mm;
  }

  .printLogo{
    font-size:25pt;
    line-height:1;
    font-weight:900;
    letter-spacing:2px;
    color:#fff!important;
  }

  .printCompany{
    margin-top:2.5mm;
    font-size:7.5pt;
    font-weight:700;
    letter-spacing:1.3px;
    color:#cfe2f2!important;
  }

  .printDocumentType{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:6mm;
    background:#144f80!important;
    border-left:1px solid rgba(255,255,255,.25);
  }

  .printDocumentType span{
    font-size:7.5pt;
    font-weight:800;
    letter-spacing:1.2px;
    color:#d8e8f5!important;
  }

  .printDocumentType b{
    margin-top:2mm;
    font-size:15pt;
    text-transform:capitalize;
    color:#fff!important;
  }

  /* IDENTIFICAÇÃO */
  .printIdentity{
    display:grid;
    grid-template-columns:1.25fr 1fr 1fr;
    gap:3mm;
    margin-bottom:5mm;
  }

  .printIdentity>div{
    padding:3.5mm 4mm;
    border:1px solid #d4dee7;
    border-radius:3mm;
    background:#f7fafc!important;
  }

  .printIdentity small,
  .printStat small,
  .printDateBox small,
  .printClientBox small,
  .printWoBox small,
  .printWorkGrid small,
  .printTechnical small,
  .printReason small{
    display:block;
    margin-bottom:1.2mm;
    font-size:6.5pt;
    font-weight:800;
    letter-spacing:.7px;
    text-transform:uppercase;
    color:#687b8c!important;
  }

  .printIdentity strong{
    display:block;
    font-size:10pt;
    color:#102f4b!important;
  }

  /* RESUMO */
  .printStats{
    display:grid!important;
    grid-template-columns:repeat(3,1fr);
    gap:3mm;
    margin-bottom:8mm;
  }

  .printStat{
    min-height:17mm;
    padding:3.5mm 4mm;
    border:1px solid #d3dde6;
    border-radius:3mm;
    background:#fff!important;
  }

  .printStat strong{
    display:block;
    margin-top:1mm;
    font-size:15pt;
    line-height:1.1;
    color:#0b3155!important;
  }

  /* TÍTULO DA LISTA */
  .printSectionHeading{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:5mm;
    margin:0 0 4mm;
    padding-bottom:3mm;
    border-bottom:2px solid #0b3155;
  }

  .printSectionHeading small{
    font-size:6.5pt;
    font-weight:800;
    letter-spacing:1px;
    color:#1f8a5b!important;
  }

  .printSectionHeading h1{
    margin:1mm 0 0;
    font-size:18pt;
    color:#102f4b!important;
  }

  .printSectionHeading>strong{
    padding:2mm 3.5mm;
    border-radius:20mm;
    background:#e9f2f8!important;
    color:#0b3155!important;
    font-size:8pt;
  }

  /* CADA INTERVENÇÃO */
  .printIntervention{
    position:relative;
    margin:0 0 5mm;
    border:1px solid #ccd8e2;
    border-radius:3.5mm;
    overflow:hidden;
    background:#fff!important;

    break-inside:avoid;
    page-break-inside:avoid;
  }

  .printInterventionHead{
    display:grid;
    grid-template-columns:30mm 1fr 47mm;
    min-height:22mm;
    background:#f4f8fb!important;
    border-bottom:1px solid #d5e0e8;
  }

  .printDateBox,
  .printClientBox,
  .printWoBox{
    padding:3.5mm 4mm;
  }

  .printDateBox{
    border-right:1px solid #d5e0e8;
  }

  .printDateBox strong{
    font-size:9pt;
    color:#173a58!important;
  }

  .printClientBox strong{
    display:block;
    font-size:10pt;
    color:#102f4b!important;
  }

  .printClientBox span{
    display:block;
    margin-top:1mm;
    font-size:7.3pt;
    line-height:1.3;
    color:#536b7d!important;
  }

  /* WO — destaque principal */
  .printWoBox{
    background:#0b3155!important;
    color:#fff!important;
  }

  .printWoBox small{
    color:#bcd3e5!important;
  }

  .printWoBox strong{
    display:block;
    margin-top:1mm;
    font-size:12pt;
    line-height:1.2;
    color:#fff!important;
    word-break:break-word;
  }

  /* DADOS HORÁRIOS */
  .printWorkGrid{
    display:grid;
    grid-template-columns:1.6fr repeat(6,1fr);
    border-bottom:1px solid #dce5ec;
  }

  .printWorkGrid>div{
    min-height:15mm;
    padding:3mm;
    border-right:1px solid #e1e8ee;
  }

  .printWorkGrid>div:last-child{
    border-right:0;
  }

  .printWorkGrid b{
    display:block;
    font-size:8pt;
    color:#173a58!important;
  }

  /* EQUIPAMENTO */
  .printTechnical{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    border-bottom:1px solid #dce5ec;
    background:#fbfcfd!important;
  }

  .printTechnical>div{
    padding:3mm 4mm;
    border-right:1px solid #e1e8ee;
  }

  .printTechnical>div:last-child{
    border-right:0;
  }

  .printTechnical b{
    font-size:8pt;
    color:#213d54!important;
    overflow-wrap:anywhere;
  }

  /* MOTIVO / TRABALHO */
  .printReason{
    padding:3.5mm 4mm;
  }

  .printReason p{
    margin:0;
    font-size:8pt;
    line-height:1.45;
    color:#263d50!important;
    white-space:pre-wrap;
  }

  .printInterventionFoot{
    display:flex;
    justify-content:space-between;
    gap:5mm;
    padding:2mm 4mm;
    background:#eef3f7!important;
    border-top:1px solid #dce5ec;
    font-size:6.5pt;
    font-weight:700;
    color:#617688!important;
  }

  .printInterventionFoot span:last-child{
    font-weight:900;
    color:#0b3155!important;
  }

  .printEmpty{
    padding:15mm;
    text-align:center;
    border:1px dashed #bbc9d4;
    border-radius:4mm;
    color:#637789!important;
  }

  .printFooter{
    display:flex;
    justify-content:space-between;
    gap:5mm;
    margin-top:6mm;
    padding-top:3mm;
    border-top:1px solid #bfcbd5;
    font-size:6.5pt;
    font-weight:700;
    color:#728493!important;
  }
}
