/* Espaçamento extra para os controles editáveis. */
.inputs-panel .field { margin: 14px 0; }
.inputs-panel .field:first-of-type { margin-top: 0; }
.inputs-panel .goal-card { margin-top: 28px; }
.field input[type="text"] { appearance: none; -moz-appearance: textfield; }
.panel,
.field,
.money-card,
.compare-card,
.opportunity { box-shadow: 0 12px 28px rgba(0, 0, 0, .18); }
.field input[type="text"],
.money-input { box-shadow: inset 0 2px 8px rgba(0, 0, 0, .16); }
.ring { border: 0; position: relative; background: conic-gradient(currentColor calc(var(--progress, 0) * 1%), #263947 0); transform: none; }
.ring::after { content: ""; position: absolute; inset: 7px; border-radius: 50%; background: #101f2d; }
.lost { border-color: #a33d4c; background: rgba(116, 27, 43, .28); }
.lost span, .lost strong { color: #ff7180; }
.lost strong { font-size: 30px; }
.projected { border-color: #0b775c; background: rgba(17, 76, 64, .27); }
.projected span, .projected strong { color: var(--green); }
.comparison .opportunity { display: block; }
.compare-field { display:flex; align-items:center; justify-content:space-between; min-height:42px; color:var(--muted); font-size:13px; }
.compare-field input { width:104px; padding:8px 10px; border:1px solid var(--line); border-radius:8px; background:var(--panel2); color:var(--white); text-align:right; font:bold 15px 'DM Sans'; outline:none; }
.compare-field input:focus { border-color:var(--blue); box-shadow:0 0 0 2px rgba(25,157,246,.18); }
.top-funnel-arrow { display:flex; align-items:center; justify-content:center; gap:8px; height:22px; color:#8295a8; font-size:14px; text-transform:lowercase; }
.top-funnel-arrow i { color:#ff5264; font-size:18px; font-style:normal; line-height:1; }
.compare-field { display:flex; align-items:center; justify-content:space-between; min-height:39px; color:var(--muted); font-size:13px; }
.compare-field input { width:72px; padding:6px 7px; border:1px solid var(--line); border-radius:7px; background:var(--panel2); color:var(--white); text-align:right; font:bold 13px 'DM Sans'; outline:none; }
.compare-field input:focus { border-color:var(--blue); box-shadow:0 0 0 2px rgba(25,157,246,.18); }
.calculated-row { margin-top:4px; }
.compare-inline-input { width:72px; padding:6px 7px; border:1px solid var(--line); border-radius:7px; background:var(--panel2); color:var(--white); text-align:right; font:bold 13px 'DM Sans'; outline:none; }
.compare-inline-input:focus { border-color:var(--blue); box-shadow:0 0 0 2px rgba(25,157,246,.18); }
