/* LifeDir Item 27-P3 — somente apresentacao do painel autenticado.
   A pagina de login e os componentes de outros sistemas nao sao afetados. */
body.ld-authenticated { background:#f4f7f8; color:#12383e; }
body.ld-authenticated > header { display:none; }
body.ld-authenticated main { max-width:none; width:100%; margin:0; padding:0; }
body.ld-authenticated main > .ld-p3 { max-width:none; }
.ld-p3 { display:grid; grid-template-columns:254px minmax(0,1fr); min-height:100vh; font:400 13px/1.4 system-ui,-apple-system,"Segoe UI",Arial,sans-serif; color:#163d44; }
.ld-p3 * { box-sizing:border-box; }
.ld-p3-sidebar { position:sticky; top:0; height:100vh; padding:22px 17px 26px; display:flex; flex-direction:column; background:#133b41; color:#fff; overflow-y:auto; }
.ld-p3-brand { display:flex; flex-direction:column; gap:2px; justify-content:center; align-items:center; background:#fff; color:#123d44; border-radius:12px; min-height:91px; margin:0 0 52px; padding:15px 10px; text-align:center; }
.ld-p3-brand strong { font-size:31px; letter-spacing:-.055em; line-height:1.1; font-weight:800; }
.ld-p3-brand strong span { color:#0d9295; }
.ld-p3-brand small { color:#567078; font-size:10px; }
.ld-p3-sidebar nav { display:grid; gap:7px; }
.ld-p3-sidebar nav a { display:block; border-radius:9px; padding:13px 12px; text-decoration:none; color:#d5e4e6; font-weight:700; font-size:13px; }
.ld-p3-sidebar nav a.ld-p3-nav-current, .ld-p3-sidebar nav a:hover { background:#30585e; color:#fff; }
.ld-p3-sidebar-bottom { margin-top:auto; display:grid; gap:11px; }
.ld-p3-sidebar-bottom span { color:#aecdd1; font-size:11px; overflow-wrap:anywhere; }
.ld-p3-sidebar-bottom form { margin:0; }
.ld-p3 button.ld-p3-logout { margin:0; min-height:auto; padding:3px 0; border:0; border-radius:0; background:transparent; color:#fff; font-size:13px; font-weight:700; box-shadow:none; }
.ld-p3 button.ld-p3-logout:hover { text-decoration:underline; }
.ld-p3-content { min-width:0; padding:20px clamp(18px,3vw,50px) 55px; }
.ld-p3-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:17px; }
.ld-p3-heading h1 { margin:0 0 6px; font-size:clamp(30px,3vw,43px); letter-spacing:-.05em; line-height:1.1; color:#113c44; }
.ld-p3-heading p { margin:0; color:#526a73; font-size:14px; }
.ld-p3-topmark { white-space:nowrap; padding:7px 12px; border:1px solid #bfd1d3; background:#e9f1f2; color:#246d76; border-radius:99px; font-size:11px; font-weight:750; }
.ld-p3-toolbar { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px 18px; padding:9px; margin-bottom:17px; border:1px solid #d4e0e1; border-radius:15px; background:#fff; }
.ld-p3-filters { display:flex; gap:3px; flex-wrap:wrap; align-items:center; }
.ld-p3-filters a { display:inline-flex; align-items:center; text-decoration:none; color:#143f47; font-size:12px; font-weight:740; border-radius:9px; padding:11px 13px; white-space:nowrap; }
.ld-p3-filters a:hover { background:#e8f1f2; }
.ld-p3-filters a.ld-p3-filter-active { color:#fff; background:#133f47; }
.ld-p3-stats { display:flex; flex-wrap:wrap; gap:5px; justify-content:flex-end; }
.ld-p3-stat { display:flex; align-items:center; gap:10px; border:1px solid #dce5e6; border-radius:10px; background:#f6f9f9; padding:9px 10px; }
.ld-p3-stat span { font-size:9px; text-transform:uppercase; letter-spacing:.065em; color:#536b75; font-weight:800; }
.ld-p3-stat strong { font-size:17px; font-variant-numeric:tabular-nums; color:#133941; }
.ld-p3-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:start; gap:13px; }
.ld-p3-card { background:#fff; min-width:0; border:1px solid #d4e0e1; border-top:2px solid #eea74a; border-radius:15px; box-shadow:0 8px 22px rgba(18,52,57,.055); padding:17px; }
.ld-p3-card-head { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:6px; }
.ld-p3-card-type { color:#34757b; font-size:10px; letter-spacing:.055em; text-transform:uppercase; font-weight:800; }
.ld-p3-status { display:inline-flex; align-items:center; padding:5px 9px; border-radius:99px; color:#51666b; background:#eaf0f0; font-size:10px; font-weight:800; }
.ld-p3-status.ld-p3-active { color:#197258; background:#e5f3ed; }
.ld-p3-status.ld-p3-suspended { color:#9a5b19; background:#fff0df; }
.ld-p3-card h2 { font-size:17px; font-weight:740; color:#183e45; letter-spacing:-.015em; margin:0 0 11px; min-height:27px; overflow-wrap:anywhere; }
.ld-p3-rows, .ld-p3-expanded { padding:0; margin:0; }
.ld-p3-rows > div, .ld-p3-expanded > div { display:flex; align-items:baseline; justify-content:space-between; gap:10px; padding:10px 0; border-top:1px solid #dae4e6; }
.ld-p3-rows dt, .ld-p3-expanded dt { color:#506973; font-weight:650; font-size:11px; flex:0 0 auto; }
.ld-p3-rows dd, .ld-p3-expanded dd { margin:0; color:#224952; font-size:11px; font-weight:750; text-align:right; overflow-wrap:anywhere; min-width:0; }
.ld-p3-details { border-top:1px solid #dae4e6; padding-top:12px; margin-top:2px; }
.ld-p3-details > summary { width:fit-content; padding:9px 14px; min-height:36px; display:inline-flex; align-items:center; border-radius:9px; background:#153f47; color:#fff; font-size:12px; font-weight:700; cursor:pointer; list-style:none; }
.ld-p3-details > summary::-webkit-details-marker {display:none}
.ld-p3-details > summary:hover, .ld-p3-details[open] > summary { background:#0b6c74; }
.ld-p3-expanded { background:#f6f9fa; border-radius:10px; padding:6px 12px; margin-top:13px; }
.ld-p3-expanded > div:last-child {border-bottom:0}
.ld-p3-empty { grid-column:1/-1; color:#526c74; background:#fff; border:1px dashed #cbdcdd; padding:17px; border-radius:12px; }
.ld-p3-footnote { margin:14px 0; color:#6b7d82; font-size:11px; }
.ld-p3-history { margin:20px 0 0; background:#fff; border:1px solid #d6e2e3; border-radius:13px; padding:0; }
.ld-p3-history > details > summary { cursor:pointer; list-style:none; padding:16px 18px; font-size:14px; font-weight:750; color:#153d45; }
.ld-p3-history > details > summary::-webkit-details-marker {display:none}
.ld-p3-history > details > summary::before { content:'▸'; margin-right:8px; color:#087f86; }
.ld-p3-history > details[open] > summary::before {content:'▾'}
.ld-p3-history summary span { font-size:11px; font-weight:500; margin-left:10px; color:#77898d; }
.ld-p3-history .ld-p3-empty { margin:0 16px 16px; }
.ld-p3-history-list { padding:0 16px 16px; }
.ld-p3-history-record { display:grid; grid-template-columns:1fr 1fr 1.4fr; gap:12px; border-top:1px solid #dfebeb; padding:11px 2px; }
.ld-p3-history-record div { display:flex; flex-direction:column; gap:3px; }
.ld-p3-history-record strong {font-size:12px;color:#264a51;overflow-wrap:anywhere}
.ld-p3-history-record small {font-size:10px;color:#6c858a}
.ld-p3-history-record p {font-size:11px;color:#526b72; margin:0;overflow-wrap:anywhere}
@media(max-width:1480px){ .ld-p3-grid {grid-template-columns:repeat(2,minmax(0,1fr));} }
@media(max-width:1220px){ .ld-p3-toolbar {align-items:flex-start;} .ld-p3-stats {justify-content:flex-start;} }
@media(max-width:950px){ .ld-p3 {grid-template-columns:205px minmax(0,1fr);} .ld-p3-grid {grid-template-columns:1fr;} .ld-p3-brand strong {font-size:25px} }
@media(max-width:680px){
 .ld-p3 {grid-template-columns:1fr;}
 .ld-p3-sidebar {position:relative;height:auto;padding:12px 16px;gap:10px;}
 .ld-p3-brand {min-height:auto;margin:0;padding:8px 11px;width:fit-content;}
 .ld-p3-brand strong {font-size:21px;} .ld-p3-brand small {display:none;}
 .ld-p3-sidebar nav {display:flex;flex-wrap:wrap;gap:3px;}
 .ld-p3-sidebar nav a {padding:9px 11px;font-size:12px;}
 .ld-p3-sidebar-bottom {display:flex;align-items:center;justify-content:space-between;gap:12px;}
 .ld-p3-content {padding:19px 12px 35px;} .ld-p3-heading {align-items:flex-start;} .ld-p3-topmark {display:none;}
 .ld-p3-heading h1 {font-size:30px;} .ld-p3-heading p {font-size:12px;}
 .ld-p3-filters a {padding:8px 10px;} .ld-p3-toolbar {padding:7px;} .ld-p3-stats {width:100%;}
 .ld-p3-stat {flex:1 1 29%;justify-content:space-between;}
 .ld-p3-grid {grid-template-columns:1fr;gap:10px;} .ld-p3-history-record {grid-template-columns:1fr;}
}
@media(prefers-reduced-motion:reduce){ .ld-p3 * {scroll-behavior:auto;} }
