/* === TEAM REPORT PAGE STYLES === */

/* Override shared container width */
.container{max-width:960px}
h3{font-size:calc(20px*var(--fs))}
p{font-size:calc(15px*var(--fs))}

.logo{text-align:center;margin-bottom:48px}
.logo h1{font-size:calc(clamp(1.2rem,3vw,1.8rem)*var(--fs));color:var(--teal);margin-bottom:8px}
.logo p{font-size:calc(16px*var(--fs));color:var(--titanium)}

/* TOC */
.toc{display:flex;flex-direction:column;gap:8px;margin:16px 0 32px;padding:16px 20px;background:rgba(255,255,255,.02);border-radius:8px;border-left:2px solid var(--teal)}
.toc a{color:var(--teal);text-decoration:none;font-size:calc(13px*var(--fs));padding:2px 0;transition:.2s}
.toc a:hover{color:#fff}

/* Maturity legend */
.legend{display:flex;gap:0;margin:16px 0 32px;border-radius:8px;overflow:hidden}
.legend-item{flex:1;padding:12px 8px;text-align:center;font-size:calc(12px*var(--fs));color:var(--teal)}
.legend-item strong{display:block;font-size:calc(13px*var(--fs));margin-bottom:2px}
.legend-item:nth-child(1){background:rgba(48,255,235,.06)}
.legend-item:nth-child(2){background:rgba(48,255,235,.12)}
.legend-item:nth-child(3){background:rgba(48,255,235,.2)}
.legend-item:nth-child(4){background:rgba(48,255,235,.35)}

/* Sections */
.report-section{margin-bottom:56px;scroll-margin-top:24px;padding-top:8px}
.report-section h3{color:var(--teal);margin-bottom:12px}
.report-section svg{max-width:100%}
.sec-intro{font-size:calc(14px*var(--fs));color:#8fa3b8;margin-bottom:12px;font-style:italic}
.tldr{padding:12px 16px;background:rgba(48,255,235,.04);border-radius:8px;margin-bottom:16px;border-left:3px solid var(--teal)}
.tldr ul{list-style:none;padding:0}
.tldr li{font-size:calc(14px*var(--fs));padding:4px 0;padding-left:16px;position:relative}
.tldr li::before{content:'\2192';position:absolute;left:0;color:var(--teal)}
.sec-summary{margin-top:20px;padding:16px;background:rgba(255,255,255,.02);border-radius:8px;font-size:calc(14px*var(--fs));color:#8fa3b8}
.phase{
  padding:20px;margin-bottom:12px;border-radius:8px;
  background:rgba(255,255,255,.03);border-left:3px solid var(--teal);
}
.phase h4{font-family:'Work Sans',sans-serif;font-weight:600;margin-bottom:8px;color:var(--teal);font-size:calc(14px*var(--fs))}
.phase ul{padding-left:20px;line-height:1.8;font-size:calc(14px*var(--fs))}

/* Override btn for report page inline usage */
.btn{display:inline-block;padding:14px 28px;width:auto}

.callout{padding:20px;border-radius:8px;margin-top:16px;font-size:calc(14px*var(--fs));color:#e2e2e1}
.callout-teal{background:rgba(48,255,235,.04);border-left:2px solid var(--teal)}
.callout-highlight{background:rgba(255,255,255,.04);border-left:2px solid #fff}
.score-ring{text-align:center;margin:24px 0}
.score-ring svg{width:160px;height:160px}
.score-ring .ring-track{fill:none;stroke:rgba(255,255,255,.08);stroke-width:8}
.score-ring .ring-fill{fill:none;stroke:var(--teal);stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset 1.5s ease}
.score-ring .ring-score{font-family:'Work Sans',sans-serif;font-weight:600;fill:var(--teal)}
.score-ring .ring-sub{font-family:'DM Sans',sans-serif;fill:#8fa3b8}
.score-ring .ring-band{font-family:'Work Sans',sans-serif;font-weight:600;fill:var(--teal)}

/* Email gate */
.gate{max-width:440px;margin:80px auto;text-align:center}
.gate h2{margin-bottom:16px;color:var(--teal)}
.gate p{color:#a3b5c8;margin-bottom:24px;line-height:1.6}
.gate input{width:100%;padding:14px 16px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#fff;font-size:calc(15px*var(--fs));font-family:'DM Sans',sans-serif;outline:0;margin-bottom:12px}
.gate input:focus{border-color:var(--teal)}
.gate .err-msg{color:#ff6b6b;font-size:calc(13px*var(--fs));margin-bottom:12px;min-height:20px}
.gate .attempts{font-size:calc(12px*var(--fs));color:#8fa3b8;margin-top:8px}
.btn-gate{display:block;width:100%;padding:16px;background:var(--teal);color:var(--space);border:none;border-radius:8px;font-family:'Work Sans',sans-serif;font-weight:600;font-size:calc(16px*var(--fs));cursor:pointer;text-transform:uppercase;letter-spacing:.06em}
.btn-gate:hover{opacity:.9}
#report-view{display:none}

@media(max-width:600px){
  .radar-grid{grid-template-columns:1fr!important}
  .theme-grid{grid-template-columns:1fr!important}
  .dept-grid{grid-template-columns:1fr!important}
  .legend{flex-direction:column}
  .toc{flex-direction:column;gap:6px}
  .heatmap-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
}
