
  /* Menu lateral: botão somente dentro da sessão autenticada e recolhimento estável. */
  #sidebarCollapseBtn{display:none!important}
  #sidebarCollapseBtn.auth-visible{display:grid!important;place-items:center}
  body:not(.sidebar-collapsed) .topbar{padding-left:78px}
  body.sidebar-collapsed{--sidebar:82px}
  body.sidebar-collapsed .sidebar{width:82px;overflow-x:hidden;overflow-y:auto}
  body.sidebar-collapsed .brand{padding:10px 9px}
  body.sidebar-collapsed .brand img{width:64px;height:58px;margin:auto;object-fit:contain;padding:4px}
  body.sidebar-collapsed .brand strong,
  body.sidebar-collapsed .brand span,
  body.sidebar-collapsed .nav-label,
  body.sidebar-collapsed .nav-btn>span:not(.nav-icon),
  body.sidebar-collapsed .side-foot{display:none!important}
  body.sidebar-collapsed .nav{padding:12px 9px;gap:7px}
  body.sidebar-collapsed .nav-btn{width:62px;min-height:48px;margin:auto;padding:5px;justify-content:center;overflow:hidden}
  body.sidebar-collapsed .nav-icon{width:40px;height:40px;margin:0;flex:0 0 40px}
  body.sidebar-collapsed .main{margin-left:82px}
  body.sidebar-collapsed .sidebar-toggle{left:92px}
  body.sidebar-collapsed .topbar{padding-left:78px}

  .event-location-help{margin-top:5px;color:var(--muted);font-size:9px;line-height:1.4}
  .completed-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 180px;gap:10px;margin-bottom:14px}
  .completed-list{display:grid;gap:10px}
  .completed-event-card{padding:15px;border:1px solid var(--border);border-left:5px solid var(--green);border-radius:14px;background:#fff;box-shadow:0 6px 18px rgba(24,45,72,.045)}
  .completed-event-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
  .completed-event-head h3{margin:0;color:var(--navy-dark);font-size:14px}
  .completed-event-head p{margin:5px 0 0;color:var(--muted);font-size:10px;line-height:1.5}
  .completed-event-summary{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px;margin-top:12px}
  .completed-event-metric{padding:9px 10px;border:1px solid var(--border);border-radius:10px;background:var(--soft)}
  .completed-event-metric span{display:block;color:var(--muted);font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.35px}
  .completed-event-metric strong{display:block;margin-top:4px;color:var(--navy-dark);font-size:12px}

  .clean-summary-note{margin:12px 0;padding:12px 14px;border-left:4px solid var(--green);border-radius:11px;background:#f0fbf5;color:#175c3a;font-size:11px;line-height:1.55}
  .clean-summary-section{margin-top:14px;padding:15px;border:1px solid var(--border);border-radius:14px;background:#fff}
  .clean-summary-section h3{margin:0 0 9px;color:var(--navy-dark);font-size:14px}
  .clean-summary-section p{margin:0;color:#475467;font-size:11px;line-height:1.6;white-space:pre-wrap}
  .summary-people-list{display:grid;gap:7px}
  .summary-person-row{padding:9px 10px;display:grid;grid-template-columns:minmax(180px,1fr) minmax(130px,.6fr) minmax(150px,.7fr);gap:10px;align-items:center;border:1px solid var(--border);border-radius:10px;background:var(--soft);font-size:10px}
  .summary-person-row strong{color:var(--navy-dark)}
  .summary-person-row button{padding:0;border:0;background:transparent;color:var(--navy);font-weight:900;text-align:left}

  .person-report-tabs{margin:0 0 14px;padding:6px;display:flex;gap:6px;border:1px solid var(--border);border-radius:12px;background:var(--soft)}
  .person-report-tab{flex:1;min-height:40px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:10px;font-weight:900}
  .person-report-tab.active{color:#fff;background:linear-gradient(135deg,var(--navy),var(--blue))}
  .person-report-pane{display:none}.person-report-pane.active{display:block}
  .person-record-form{padding:15px;border:1px solid var(--border);border-radius:14px;background:var(--soft);margin-bottom:14px}
  .person-record-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr .65fr .65fr;gap:9px;align-items:end}
  .person-record-grid .wide{grid-column:span 3}.person-record-grid .notes{grid-column:span 2}
  .person-record-totals{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:9px;margin-bottom:14px}
  .person-record-group{margin-bottom:12px;border:1px solid var(--border);border-radius:13px;overflow:hidden;background:#fff}
  .person-record-group-head{padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--soft);border-bottom:1px solid var(--border)}
  .person-record-group-head strong{color:var(--navy-dark);font-size:12px}.person-record-group-head span{color:var(--muted);font-size:9px}
  .person-record-row{padding:10px 12px;display:grid;grid-template-columns:140px minmax(140px,.7fr) minmax(190px,1fr) auto;gap:10px;align-items:center;border-bottom:1px solid #edf1f5;font-size:10px}
  .person-record-row:last-child{border-bottom:0}.person-record-row .value{font-weight:900;color:var(--green)}

  #rankGroupedSummary{margin:14px 0}
  .rank-group-grid{display:grid;grid-template-columns:repeat(3,minmax(190px,1fr));gap:9px}
  .rank-group-card{padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--soft)}
  .rank-group-card span{display:block;color:var(--muted);font-size:9px;font-weight:850}
  .rank-group-card strong{display:block;margin-top:5px;color:var(--navy-dark);font-size:17px}
  .rank-group-card small{display:block;margin-top:5px;color:var(--muted);line-height:1.45}
  #rankDetailedHistory{margin-top:12px;border:1px solid var(--border);border-radius:13px;background:#fff;overflow:hidden}
  #rankDetailedHistory>summary{padding:12px 14px;cursor:pointer;background:var(--soft);color:var(--navy-dark);font-size:11px;font-weight:900}
  #rankDetailedHistory .table-wrap{border:0;border-radius:0}

  @media(max-width:1050px){
    .completed-event-summary{grid-template-columns:repeat(2,1fr)}
    .person-record-grid{grid-template-columns:1fr 1fr}.person-record-grid .wide,.person-record-grid .notes{grid-column:1/-1}
    .rank-group-grid{grid-template-columns:repeat(2,1fr)}
  }
  @media(max-width:920px){
    body.sidebar-collapsed .main{margin-left:0}
    body:not(.sidebar-collapsed) .topbar,body.sidebar-collapsed .topbar{padding-left:65px}
    .completed-toolbar,.person-record-totals{grid-template-columns:1fr}
  }
  @media(max-width:620px){
    .completed-event-summary,.rank-group-grid,.person-record-grid{grid-template-columns:1fr}
    .person-record-grid .wide,.person-record-grid .notes{grid-column:auto}
    .summary-person-row,.person-record-row{grid-template-columns:1fr}
    .person-report-tabs{display:grid}
  }

