/* Uma ficha operacional curta, com anexos e confirmação explícita. */
.opme-eyebrow { display:block; color:var(--primary); font-size:11px; font-weight:600; letter-spacing:.1em; margin-bottom:8px; }
.opme-intake-head p,.opme-case-summary p,.opme-portfolio header p { color:var(--muted); font-size:13px; line-height:1.6; margin:6px 0 0; }
.opme-intake-body { grid-template-columns:1fr!important; }
.opme-intake-fields { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.opme-field { display:flex; flex-direction:column; gap:6px; color:var(--text); font-size:14px; font-weight:500; min-width:0; }
.opme-field.wide { grid-column:1/-1; }
.opme-field>span { font-size:11px; color:var(--muted); font-weight:400; }
.opme-intake-body .opme-field input { width:100%; min-width:0; min-height:44px!important; font-size:15px!important; font-weight:400; }
.opme-upload { margin-top:24px; padding:20px; border:1px solid var(--border); border-radius:14px; background:var(--card); }
.opme-upload h3 { display:flex; align-items:center; gap:8px; margin:0; font-size:15px; font-weight:600; color:var(--text); }
.opme-upload p,.opme-upload>small { display:block; color:var(--muted); font-size:12px; line-height:1.6; }
.opme-file-pick { display:inline-flex; align-items:center; gap:8px; border:1px solid var(--border); border-radius:9px; color:var(--primary); padding:10px 14px; min-height:44px; margin:12px 0 8px; cursor:pointer; font-size:13px; font-weight:500; }
.opme-file-pick input { width:1px; height:1px; position:absolute; opacity:0; }
.opme-file-pick:focus-within { outline:2px solid var(--primary); outline-offset:3px; }
.opme-file-row { display:flex; align-items:center; gap:10px; padding:12px 0; border-bottom:1px solid var(--border); min-width:0; color:var(--text); }
.opme-file-row>span { flex:1; min-width:0; overflow-wrap:anywhere; font-size:13px; }
.opme-file-row small { display:block; color:var(--muted); font-size:11px; margin-top:4px; }
.opme-file-row button { min-width:44px; min-height:44px; border:1px solid var(--border); border-radius:8px; color:var(--muted); background:var(--card); cursor:pointer; }
.opme-file-row.error small { color:var(--danger,#c33737); }
.opme-file-row .ic { flex-shrink:0; }
.opme-intake-note { display:flex; align-items:flex-start; gap:10px; margin-top:20px; padding:14px; background:var(--bg); border-radius:10px; color:var(--muted); font-size:12px; line-height:1.6; }
.opme-intake-note .ic { flex-shrink:0; margin-top:2px; }
.opme-intake-error { color:var(--danger,#c33737); border:1px solid currentColor; border-radius:9px; padding:12px; margin-top:14px; line-height:1.5; font-size:13px; }
.opme-intake-error[hidden] { display:none; }
.opme-intake-actions { padding:16px 22px!important; border-top:1px solid var(--border); margin:0!important; }
.opme-intake-actions button { min-height:44px; }
.opme-case-summary { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px; margin-bottom:18px; border:1px solid var(--border); border-radius:12px; background:var(--card); flex-wrap:wrap; }
.opme-case-summary h3 { font-size:20px; font-weight:600; margin:0; color:var(--text); font-variant-numeric:tabular-nums; }
.opme-case-summary button,.opme-portfolio header button { min-height:44px; display:inline-flex; align-items:center; gap:8px; padding:10px 14px; border:1px solid var(--border); background:var(--card); color:var(--primary); border-radius:9px; cursor:pointer; font-size:13px; font-weight:500; }
.opme-portfolio { margin-top:28px; padding:24px; border:1px solid var(--border); border-radius:16px; background:var(--card); }
.opme-portfolio header { display:flex; align-items:center; justify-content:space-between; gap:18px; flex-wrap:wrap; }
.opme-portfolio header>div { flex:1; min-width:230px; }
.opme-portfolio h2 { margin:0; color:var(--text); font-size:22px; font-weight:600; }
.opme-portfolio-kpis { display:grid; grid-template-columns:1fr 1fr 1.4fr; gap:14px; padding:22px 0; }
.opme-portfolio-kpis>div { display:flex; flex-direction:column; gap:7px; min-width:0; }
.opme-portfolio-kpis b { color:var(--text); font-size:22px; font-weight:600; overflow-wrap:anywhere; font-variant-numeric:tabular-nums; }
.opme-portfolio-kpis span { color:var(--muted); font-size:12px; }
.opme-portfolio-list { border-top:1px solid var(--border); }
.opme-portfolio-row { display:flex; align-items:center; gap:16px; width:100%; min-height:68px; padding:14px 0; text-align:left; border:0; border-bottom:1px solid var(--border); background:transparent; color:var(--text); cursor:pointer; }
.opme-portfolio-row>span:first-child { flex:1; min-width:0; }
.opme-portfolio-row b { font-size:13px; font-weight:500; overflow-wrap:anywhere; }
.opme-portfolio-row small { display:block; color:var(--muted); font-size:11px; margin-top:5px; }
.opme-portfolio-value { font-size:13px; text-align:right; }
.opme-portfolio-more { display:flex; flex-direction:column; align-items:center; gap:6px; margin-top:12px; padding:14px; border:1px dashed var(--border); border-radius:12px; background:var(--bg2); }
.opme-portfolio-more button { display:inline-flex; align-items:center; gap:6px; padding:9px 18px; border:1px solid var(--border); border-radius:10px; background:var(--card); color:var(--primary); font:800 12px Manrope,sans-serif; cursor:pointer; transition:background .15s,color .15s,border-color .15s; }
.opme-portfolio-more button:hover { background:var(--primary); border-color:var(--primary); color:var(--on-primary); }
.opme-portfolio-more small { color:var(--muted); font-size:10.5px; }
.opme-portfolio button:focus-visible,.opme-case-summary button:focus-visible { outline:2px solid var(--primary); outline-offset:3px; }
@media(max-width:600px){
  .opme-intake-fields { grid-template-columns:1fr; gap:14px; }
  .opme-upload { padding:14px; }
  .opme-intake-actions { flex-wrap:wrap; }
  .opme-intake-actions .btn-save { flex:1; }
  .opme-portfolio { padding:16px; }
  .opme-portfolio-kpis { grid-template-columns:1fr 1fr; }
  .opme-portfolio-kpis>div:last-child { grid-column:1/-1; }
  .opme-portfolio-row { flex-wrap:wrap; gap:8px; }
  .opme-portfolio-value { text-align:left; width:100%; }
}
