.benefit-shell{display:grid;gap:22px;color:var(--text)}
.benefit-head{display:flex;align-items:start;justify-content:space-between;gap:16px}
.benefit-head h3,.benefit-grid h4{margin:0 0 6px}
.benefit-head p{margin:0;color:var(--muted);line-height:1.55}
.benefit-head .eyebrow{color:var(--blue);font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;margin-bottom:6px}
.benefit-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.benefit-summary>div{display:grid;gap:5px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}
.benefit-summary span,.benefit-summary small{color:var(--muted);font-size:11px}
.benefit-summary strong{font-size:20px;line-height:1.2}
.benefit-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);gap:22px;align-items:start}
.benefit-grid.read-only{grid-template-columns:1fr}
.benefit-grid>div{min-width:0}
.benefit-item{padding:16px;margin-top:10px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}
.benefit-item-head{display:flex;justify-content:space-between;gap:10px;align-items:start}
.benefit-item-head>div{display:grid;gap:4px}
.benefit-item-head span,.benefit-item-meta,.benefit-memory,.benefit-audit{color:var(--muted);font-size:11px}
.benefit-value{white-space:nowrap;font-size:15px}
.benefit-item-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px}
.benefit-item-meta>span:not(.benefit-state){padding:4px 8px;border:1px solid var(--line);border-radius:999px}
.benefit-state{padding:5px 9px;border-radius:999px;background:rgba(58,142,255,.16);color:var(--blue);font-weight:750}
.benefit-state[data-state="Validado"]{background:rgba(43,204,155,.15);color:#46d9ad}
.benefit-state[data-state="Rejeitado"]{background:rgba(234,86,108,.15);color:#f591a1}
.benefit-state[data-state="Pendente"]{background:rgba(246,177,66,.15);color:#ffd085}
.benefit-memory{line-height:1.5;white-space:pre-wrap;margin:12px 0 0}
.benefit-audit{margin:10px 0 0}
.benefit-form,.benefit-decision{display:grid;gap:12px;margin-top:10px}
.benefit-form label,.benefit-decision label{display:grid;gap:6px;color:var(--text);font-size:11px;font-weight:700}
.benefit-form [data-benefit-file-row][hidden]{display:none}
.benefit-form input,.benefit-form select,.benefit-form textarea,.benefit-decision select,.benefit-decision textarea{width:100%;min-width:0;box-sizing:border-box;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--text);font:inherit;font-size:12px}
.benefit-form textarea,.benefit-decision textarea{resize:vertical}
.benefit-form button,.benefit-decision button{justify-self:start}
.benefit-hint,.benefit-empty,.benefit-loading{color:var(--muted);font-size:11px;line-height:1.55}
.benefit-warning,.benefit-error,.benefit-notice,.benefit-state-box{padding:14px 16px;border:1px solid var(--line);border-radius:12px;line-height:1.5}
.benefit-warning{border-color:#d39b42;background:rgba(211,155,66,.12)}
.benefit-warning p{margin:8px 0 12px;font-size:11px}
.benefit-warning code{user-select:all}
.benefit-error{border-color:#d56c7c;background:rgba(213,108,124,.12)}
.benefit-notice{border-color:#4cbca0;background:rgba(76,188,160,.1)}
.benefit-state-box{color:var(--muted)}
@media(max-width:760px){.benefit-grid{grid-template-columns:1fr}.benefit-summary{grid-template-columns:1fr}.benefit-head{flex-wrap:wrap}.benefit-value{white-space:normal}}
