/* ===================================================================
   Uptinergy Inc. — Sample report page stylesheet
   Loads after style.css. Document-style presentation.
   =================================================================== */

.report-bg{background:var(--bg-soft);padding:56px 0 84px}
.report-sheet{
  position:relative;
  overflow:hidden;
  max-width:920px;
  margin:0 auto;
  background:#fff;
  border:1px solid var(--line);
  border-radius:12px;
  box-shadow:0 30px 70px -40px rgba(11,37,69,.45);
  padding:54px 58px 46px;
}
/* Diagonal SAMPLE watermark */
.report-sheet::before{
  content:"SAMPLE  ·  ILLUSTRATIVE DATA  ·  SAMPLE  ·  ILLUSTRATIVE DATA  ·  SAMPLE  ·  ILLUSTRATIVE DATA  ·  SAMPLE  ·  ILLUSTRATIVE DATA  ·  SAMPLE  ·  ILLUSTRATIVE DATA  ·  SAMPLE  ·  ILLUSTRATIVE DATA";
  position:absolute;
  top:-10%;left:-30%;right:-30%;bottom:-10%;
  display:flex;align-items:center;justify-content:center;
  font-size:2.4rem;font-weight:700;letter-spacing:6px;
  color:rgba(11,37,69,.035);
  transform:rotate(-24deg);
  text-align:center;
  line-height:3.2;
  pointer-events:none;
  z-index:0;
}
.report-sheet > *{position:relative;z-index:1}

/* Header */
.rep-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}
.rep-logo{
  flex:0 0 auto;
  display:flex;flex-direction:column;align-items:flex-end;
  text-align:right;padding-top:4px;
}
.rl-name{font-weight:700;font-size:1.05rem;letter-spacing:.5px;color:var(--navy);margin-top:8px}
.rl-tag{font-size:.68rem;color:var(--amber);font-weight:600;margin-top:3px;max-width:160px;line-height:1.4}
.rep-bullets{margin:0;padding-left:20px}
.rep-bullets li{font-size:.88rem;color:var(--slate);line-height:1.65;margin-bottom:8px}
.rep-bullets li:first-child{color:var(--navy);font-weight:600}
@media(max-width:720px){
  .rep-head{flex-direction:column-reverse}
  .rep-logo{align-items:flex-start;text-align:left}
}
.rep-badge{
  display:inline-block;
  font-size:.7rem;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;
  color:var(--navy);background:var(--amber);
  border-radius:20px;padding:5px 14px;margin-bottom:18px;
}
.rep-title{font-size:1.9rem;letter-spacing:-.4px;margin-bottom:4px}
.rep-sub{color:var(--slate);margin:0 0 26px;font-size:1.02rem}
.rep-meta{
  display:grid;grid-template-columns:repeat(3,1fr);gap:16px;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  padding:16px 0;margin-bottom:38px;
}
.rep-meta div{font-size:.86rem;color:var(--slate)}
.rep-meta b{display:block;color:var(--navy);font-size:.74rem;letter-spacing:1.4px;text-transform:uppercase;margin-bottom:4px}

/* Section headings inside the report */
.rep-h{
  font-size:.78rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;
  color:var(--amber);margin:38px 0 14px;
}
.rep-h:first-of-type{margin-top:0}
.report-sheet p{font-size:.97rem;line-height:1.65}

/* KPI row */
.rep-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0 8px}
.rep-kpi{
  background:linear-gradient(135deg,#FFF9EE 0%,#FFF3DC 100%);
  border:1px solid rgba(244,163,0,.35);
  border-radius:10px;padding:16px 14px;text-align:center;
}
.rep-kpi .v{font-size:1.25rem;font-weight:700;color:var(--navy);line-height:1.2}
.rep-kpi .l{font-size:.76rem;color:#8a6d2f;margin-top:4px;line-height:1.35}

/* Line table */
.rep-table{width:100%;border-collapse:collapse;margin:8px 0 4px;font-size:.9rem}
.rep-table th{
  text-align:left;font-size:.7rem;letter-spacing:1.4px;text-transform:uppercase;
  color:var(--slate);font-weight:700;padding:10px 10px;border-bottom:2px solid var(--navy);
  white-space:nowrap;
}
.rep-table td{padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:middle;color:var(--ink)}
.rep-table td.num{white-space:nowrap;font-weight:600;color:var(--navy)}
.rep-table td.gap{white-space:nowrap;font-weight:700;color:var(--amber)}
.rep-table td.gap.na{color:var(--slate);font-weight:500}

/* Gap mini-bar inside table */
.gapbar{display:flex;align-items:center;gap:10px;min-width:130px}
.gapbar .gb{flex:1;height:9px;border-radius:5px;background:var(--bg-soft);overflow:hidden}
.gapbar .gb i{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,rgba(244,163,0,.95),rgba(244,163,0,.55))}

/* Status chips */
.chip{
  display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;
  border-radius:20px;padding:4px 12px;white-space:nowrap;
}
.chip-pursue{background:var(--amber);color:var(--navy)}
.chip-validate{background:#fff;color:var(--navy);border:1.5px solid var(--navy)}
.chip-hold{background:var(--bg-soft);color:var(--slate);border:1px solid var(--line)}

/* Way forward steps */
.rep-steps{margin:6px 0 0;padding:0;list-style:none}
.rep-steps li{display:flex;gap:14px;padding:10px 0;border-bottom:1px solid var(--line);font-size:.94rem}
.rep-steps li:last-child{border-bottom:none}
.rep-steps .n{
  flex:0 0 26px;height:26px;border-radius:50%;background:var(--navy);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;
}

/* Notes + footer */
.rep-note{font-size:.85rem;color:var(--slate);line-height:1.6}
.rep-foot{
  margin-top:34px;padding-top:18px;border-top:2px solid var(--navy);
  display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;
  font-size:.82rem;color:var(--slate);
}
.rep-foot b{color:var(--navy)}

/* Back / CTA row above the sheet */
.rep-actions{
  max-width:920px;margin:0 auto 18px;
  display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;
}
.rep-actions a.back{font-weight:600;color:var(--navy)}
.rep-actions a.back:hover{color:var(--amber)}

@media(max-width:720px){
  .report-sheet{padding:32px 22px 30px}
  .rep-meta,.rep-kpis{grid-template-columns:1fr 1fr}

  /* Table becomes stacked line cards on phones */
  .rep-table thead{display:none}
  .rep-table,.rep-table tbody,.rep-table tr{display:block;width:100%}
  .rep-table tr{
    border:1px solid var(--line);
    border-left:3px solid var(--amber);
    border-radius:10px;
    padding:14px 16px;
    margin-bottom:12px;
    background:#fff;
  }
  .rep-table td{
    display:flex;
    align-items:center;
    gap:10px;
    border:none;
    padding:5px 0;
    font-size:.88rem;
  }
  .rep-table td[data-label]::before{
    content:attr(data-label);
    flex:0 0 116px;
    font-size:.66rem;
    font-weight:700;
    letter-spacing:1.2px;
    text-transform:uppercase;
    color:var(--slate);
  }
  .rep-table td.line{
    display:block;
    font-weight:700;
    color:var(--navy);
    font-size:1rem;
    padding-bottom:9px;
    margin-bottom:6px;
    border-bottom:1px solid var(--line);
  }
  .gapbar{min-width:0;flex:1}
}
