/* Grades do perfil: mesmos tokens, callbacks e dados; apresentação somente em tela. */
@media screen {
  #pac-acl-caixa .lpav-clinical, #pac-grade.lpav-billing {color:var(--rv-ui-text,var(--ink));min-width:0;width:100%;font-family:var(--font-sans,'IBM Plex Sans',sans-serif)}
  #pac-acl-caixa .lpav-clinical {padding:18px;border:1px solid var(--line-strong);border-radius:var(--r-2,12px);background:var(--card)}
  .lpav-heading {display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:10px}
  .lpav-heading h3 {font:700 21px/1.25 var(--font-display,'Baloo 2',sans-serif);margin:0 0 5px;color:var(--ink)}
  .lpav-heading p, .lpav-guide {margin:0;color:var(--rv-ui-muted,var(--ink-2));font-size:12px;line-height:1.65}
  .lpav-guide {margin:9px 0 14px}
  .lpav-heading-actions {display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
  .lpav-hours {white-space:nowrap;font-size:12px;font-weight:650;font-variant-numeric:tabular-nums}
  :is(#pac-grade,#pac-acl-caixa) .lpav-table-wrap {overflow-x:auto;max-height:none!important;overflow-y:visible!important;border:1px solid var(--line-strong);border-radius:var(--r-1,8px);background:var(--card)}
  :is(#pac-grade,#pac-acl-caixa) table.lpav-table {width:100%!important;min-width:670px;table-layout:fixed!important;border-collapse:separate;border-spacing:0;font-size:12px!important;margin:0!important}
  :is(#pac-grade,#pac-acl-caixa) table.lpav-table col:first-child {width:65px!important}
  :is(#pac-grade,#pac-acl-caixa) .lpav-table thead th {position:static!important;text-align:left;white-space:nowrap;padding:12px 10px!important;background:var(--rv-ui-control,var(--card-2))!important;color:var(--ink)!important;font-size:11.5px!important;letter-spacing:0!important;text-transform:none;border-bottom:1px solid var(--line-strong)!important}
  :is(#pac-grade,#pac-acl-caixa) .lpav-table tbody :is(td,th) {vertical-align:top;padding:6px!important;background:var(--card)!important;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
  :is(#pac-grade,#pac-acl-caixa) .lpav-table tbody tr:last-child :is(td,th) {border-bottom:0}
  :is(#pac-grade,#pac-acl-caixa) .lpav-table tbody :is(td,th):last-child {border-right:0}
  :is(#pac-grade,#pac-acl-caixa) .lpav-table tbody th, #pac-grade .lpav-table .lpav-time {padding:13px 8px!important;font-size:11px;font-weight:600;text-align:center;background:var(--rv-ui-control,var(--card-2))!important;color:var(--rv-ui-muted,var(--ink-2));font-variant-numeric:tabular-nums}
  #pac-acl-caixa button.lpav-clinical-event {display:block;width:100%;min-width:0;margin:0 0 4px;padding:6px 8px;text-align:left;border:1px solid var(--line-strong);border-left:3px solid var(--blue-line,#3578ac);border-radius:var(--r-1,7px);background:var(--rv-ui-field,var(--card));color:var(--ink);font:400 12px/1.4 var(--font-sans,'IBM Plex Sans',sans-serif);cursor:pointer}
  .lpav-event-top {display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:5px;color:var(--ink)}
  .lpav-event-top>span:last-child {padding:1px 5px;border:1px solid var(--line-strong);border-radius:4px;font-size:9px;white-space:nowrap;color:var(--rv-ui-muted,var(--ink-2))}
  #pac-acl-caixa .lpav-clinical-event strong {display:block;font-size:12px;line-height:1.4;white-space:normal;overflow-wrap:anywhere}
  .lpav-event-pro {display:block;margin-top:2px;color:var(--rv-ui-muted,var(--ink-2));font-size:11px;white-space:normal;overflow-wrap:anywhere}
  .lpav-event-continuation {display:block;margin-top:2px;font-size:10px;color:var(--rv-ui-muted,var(--ink-2))}
  #pac-acl-caixa .lpav-clinical-event.lpav-continuation {padding:5px 9px;border-left-style:dashed}
  .lpav-continuation .lpav-event-pro {display:none}
  #pac-acl-caixa button.lpav-free {display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:41px;padding:9px 10px;background:transparent;color:var(--rv-ui-muted,var(--ink-2));border:1px dashed var(--line-strong);border-radius:var(--r-1,7px);font:400 11px/1.4 var(--font-sans,'IBM Plex Sans',sans-serif);cursor:pointer}
  .lpav-free b {font-size:16px;font-weight:500;line-height:1}
  .lpav-readonly-free {display:block;min-height:41px;padding:9px;font-size:11px;color:var(--rv-ui-muted,var(--ink-2))}
  #pac-acl-caixa .lpav-clinical-event.lpav-conflict {border-left-color:var(--red);border-color:var(--red-line,var(--red));border-left-width:3px}
  .lpav-alert {display:block;margin-top:4px;color:var(--red);font-size:10px;font-weight:600;line-height:1.45}
  #pac-acl-caixa :is(button.lpav-free,button.lpav-clinical-event):hover, #pac-grade .lpav-billing-event:hover {background:var(--rv-ui-control-hover,var(--blue-bg))!important;box-shadow:inset 0 0 0 1px var(--blue-line);color:var(--ink)!important}
  :is(#pac-grade,#pac-acl-caixa) :is(button,[role=button],.lpav-table-wrap):focus-visible {outline:2px solid var(--accent)!important;outline-offset:2px}
  .lpav-invalid {display:grid;gap:8px;margin-top:16px;padding:13px;border:1px solid var(--red-line,var(--red));border-radius:var(--r-1,8px)}
  .lpav-invalid>strong {font-size:12px;color:var(--red)}
  #pac-grade .lpav-billing-event {padding:8px 9px!important;margin-bottom:6px!important;border-radius:var(--r-1,7px)!important;font-size:11px!important;line-height:1.45!important}
  #pac-grade .lpav-billing-event>:is(b,span):not(.lpav-status) {white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere;opacity:1!important}
  #pac-grade .lpav-billing-event>b {font-size:12px;font-weight:650!important;margin-bottom:2px}
  #pac-grade .lpav-billing-event>span {font-size:11px}
  .lpav-legend {display:flex;flex-wrap:wrap;align-items:flex-start;gap:9px 25px;margin:0 0 15px;padding:13px 15px;border:1px solid var(--line);border-radius:var(--r-1,8px);background:var(--card)}
  .lpav-legend-line {display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:11px;color:var(--rv-ui-muted,var(--ink-2))}
  .lpav-billing-colors {flex-basis:100%;padding-top:8px;border-top:1px solid var(--line)}
  #pac-grade .lpav-status {display:inline-flex;align-items:center;width:fit-content;max-width:100%;padding:3px 6px;margin-top:6px;border:1px solid var(--line-strong);border-radius:4px;background:var(--card);color:var(--rv-ui-muted,var(--ink-2));font:500 9.5px/1.4 var(--font-sans,'IBM Plex Sans',sans-serif);white-space:normal;text-align:left}
  #pac-grade .lpav-legend .lpav-status {margin:0;font-size:10px}
  #pac-grade .lpav-status[data-kind=matched] {border-color:var(--blue-line);background:var(--blue-bg);color:var(--blue)}
  #pac-grade .lpav-status[data-kind=partial] {border-color:var(--amber-line);background:var(--amber-bg);color:var(--amber)}
  #pac-grade .lpav-status[data-kind=none] {border-style:dashed}
  #pac-grade .lpav-actual {display:grid;gap:4px;margin-top:6px;padding:7px 8px;border-left:2px solid var(--blue-line);background:var(--blue-bg);color:var(--blue);font-size:10px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}
  #pac-grade .lpav-actual>strong {font-weight:650;font-size:10px}
  #pac-grade .lpav-actual>span {padding-top:3px;border-top:1px solid color-mix(in srgb,var(--blue-line) 25%,transparent)}
  #pac-grade .lpav-free-copy {display:flex;align-items:center;min-height:40px;padding:7px 9px;border:1px dashed var(--line-strong);border-radius:var(--r-1,7px);font-size:10px;color:var(--rv-ui-muted,var(--ink-2))}
  #pac-grade .ag-add-cell:hover .lpav-free-copy {background:var(--rv-ui-control-hover,var(--blue-bg));color:var(--ink);border-color:var(--blue-line)}
  #pac-grade .lpav-sunday {display:grid;gap:9px;padding:16px;margin-top:16px;background:var(--card);border:1px solid var(--line-strong);border-left:3px solid var(--amber-line);border-radius:var(--r-1,8px)}
  #pac-grade .lpav-sunday h4 {margin:0;font-size:14px;color:var(--ink)}
  #pac-grade .lpav-sunday p {margin:0;color:var(--rv-ui-muted,var(--ink-2));font-size:12px;line-height:1.6}
  #pac-grade .lpav-sunday>div {display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 15px;border-top:1px solid var(--line);padding-top:9px;font-size:12px;color:var(--ink)}
  #pac-grade .lpav-sunday>div>span {color:var(--rv-ui-muted,var(--ink-2));font-size:11px}
  @media (max-width:760px) {
    #pac-acl-caixa .lpav-clinical {padding:12px}
    .lpav-heading {align-items:flex-start;flex-direction:column;gap:10px}
    .lpav-heading-actions {justify-content:flex-start}
    .lpav-legend {padding:10px}
  }
}
