/* SubaMeta Premium — refinamentos de UX para telas claras e escuras. */
:root{--sm-soft-shadow:0 12px 34px rgba(16,52,67,.055);--sm-chart-ink:#174052}
:root[data-theme="dark"]{--sm-soft-shadow:0 16px 35px rgba(0,0,0,.19);--sm-chart-ink:#def6ef}
.main .content{max-width:1530px}
.stat-card,.card{box-shadow:var(--sm-soft-shadow);transition:box-shadow .24s,border-color .24s}
.stat-card:hover,.goal-card:hover{box-shadow:0 16px 40px rgba(23,92,94,.085);border-color:#c3e9de}
:root[data-theme="dark"] .stat-card:hover,:root[data-theme="dark"] .goal-card:hover{border-color:#3d736a;box-shadow:0 16px 40px rgba(0,0,0,.23)}
.avatar{overflow:hidden;display:flex;align-items:center;justify-content:center}
.avatar .sm-avatar-image,.sm-profile-photo{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.sm-avatar-trigger{padding:0;border:0;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%}
.sm-avatar-trigger:focus-visible{outline:3px solid #33cb9c;outline-offset:4px}
.sm-avatar-fallback{display:grid;place-items:center;width:100%;height:100%;color:inherit}
.sm-avatar-fallback svg{width:56%;height:56%}
.sm-photo-card{margin-bottom:18px;padding:26px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:23px;align-items:center}
.sm-photo-large{width:115px;height:115px;border-radius:28px;background:linear-gradient(155deg,#1d765e,#135a50);color:#c6f7e7;box-shadow:0 9px 24px rgba(20,125,92,.18);overflow:hidden;display:grid;place-items:center}
.sm-photo-large svg{width:50px;height:50px}
.sm-photo-copy h3{font-size:18px;letter-spacing:-.02em;margin:0 0 5px}
.sm-photo-copy p{color:var(--muted);font-size:13px;line-height:1.55;margin:0 0 15px;max-width:550px}
.sm-photo-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.sm-photo-actions label{display:inline-flex;align-items:center;gap:8px;cursor:pointer}
.sm-photo-actions input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.sm-photo-actions label:focus-within{outline:3px solid #58d5ae;outline-offset:3px;border-radius:12px}
.sm-photo-note{font-size:11px;color:var(--muted);margin-top:11px}
:root[data-theme="dark"] .sm-photo-large{background:linear-gradient(160deg,#1b8068,#13534e)}
.smc-shell{margin-top:20px;margin-bottom:22px;padding:26px 28px;background:var(--white);border-radius:20px;border:1px solid var(--line);box-shadow:var(--sm-soft-shadow);overflow:hidden}
.smc-top{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.smc-eyebrow{letter-spacing:.16em;font-weight:850;font-size:10px;color:#158a70;margin-bottom:9px}
.smc-top h2{font-size:21px;font-weight:850;letter-spacing:-.035em;color:var(--ink);margin:0 0 5px}
.smc-top p{color:var(--muted);font-size:12px;line-height:1.55}
.smc-filters{display:flex;flex-wrap:wrap;gap:9px;align-items:center}
.smc-tabs{display:inline-flex;gap:3px;background:var(--bg,#eff4f5);border:1px solid var(--line);padding:4px;border-radius:12px}
.smc-tabs button{border:none;background:transparent;color:var(--muted);font-size:12px;font-weight:800;padding:9px 12px;cursor:pointer;border-radius:9px;transition:.16s}
.smc-tabs button:hover{color:var(--ink)}
.smc-tabs button.selected{background:#fff;color:#0a7660;box-shadow:0 2px 8px rgba(13,54,64,.10)}
:root[data-theme="dark"] .smc-tabs{background:#102a39}
:root[data-theme="dark"] .smc-tabs button.selected{background:#225043;color:#bdfde2}
.smc-goalbar{display:flex;align-items:center;gap:12px;margin-top:22px;color:var(--muted);font-size:12px;flex-wrap:wrap}
.smc-goalbar select{border:1px solid var(--line);border-radius:11px;padding:9px 12px;background:var(--white);color:var(--ink);font-weight:750;max-width:250px}
.smc-verified{margin-left:auto;display:inline-flex;gap:5px;align-items:center;color:#438577;font-size:11px}
.smc-verified:before{content:'●';font-size:8px}
.smc-chart-wrap{margin-top:12px;position:relative;min-height:210px}
.smc-svg{width:100%;height:auto;display:block;overflow:visible}
.smc-grid-line{stroke:var(--line);stroke-width:1;stroke-dasharray:4 6}
.smc-axis-label{font-size:13px;fill:var(--muted);font-weight:600}
.smc-series-line{stroke:#13b989;stroke-width:4.5;filter:drop-shadow(0 3px 5px rgba(20,184,137,.12))}
.smc-dot{fill:#fff;stroke:#18b890;stroke-width:3.2}
.smc-bar{fill:#20b28a}
.smc-svg [data-chart-point]{cursor:crosshair}
.smc-svg [data-chart-point]:focus{outline:none;stroke:#17775d;stroke-width:2}
.smc-tooltip{position:absolute;pointer-events:none;transform:translateX(-50%);padding:10px 13px;color:#effffb;background:#0d2e37;border-radius:11px;box-shadow:0 11px 28px rgba(4,30,30,.26);z-index:2;min-width:120px;text-align:center;line-height:1.55}
.smc-tooltip strong{display:block;font-size:11px;color:#a4cfbf;text-transform:capitalize}
.smc-tooltip span{display:block;font-size:14px;font-weight:850}
.smc-tooltip small{font-size:10px;color:#b2d9ce}
.smc-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:0}
.smc-summary>div{padding:15px 17px;background:var(--bg,#f1f7f5);border:1px solid var(--line);border-radius:13px}
.smc-summary small{display:block;font-size:11px;color:var(--muted);margin-bottom:6px}
.smc-summary strong{font-size:18px;color:var(--ink);letter-spacing:-.02em}
.smc-foot{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:11px;margin-top:16px;flex-wrap:wrap}
.smc-legend-dot{width:8px;height:8px;background:#1cba8b;border-radius:50%;display:inline-block;margin-right:7px}
.smc-loading,.smc-error{padding:35px;text-align:center;color:var(--muted);font-size:13px}
.smc-error button{border:0;background:none;color:#189774;font-weight:800;cursor:pointer}
:root[data-theme="dark"] .smc-shell{background:#142b3b;border-color:#365167}
:root[data-theme="dark"] .smc-goalbar select{background:#11283a;border-color:#39596b;color:#e7f3f7}
:root[data-theme="dark"] .smc-summary>div{background:#102839;border-color:#304b5c}
:root[data-theme="dark"] .smc-dot{fill:#153345}
:root[data-theme="dark"] .smc-bar{fill:#3dd8a5}
@media(max-width:680px){.smc-shell{padding:19px 15px;margin-top:17px}.smc-top{align-items:flex-start}.smc-top h2{font-size:19px}.smc-filters{width:100%;justify-content:space-between}.smc-tabs button{padding:8px 9px}.smc-goalbar{margin-top:16px}.smc-verified{width:100%;margin-left:0}.smc-summary strong{font-size:15px}.smc-summary>div{padding:12px}.smc-chart-wrap{min-height:140px}.sm-photo-card{grid-template-columns:1fr;gap:15px;text-align:center}.sm-photo-large{margin:0 auto}.sm-photo-actions{justify-content:center}}

.smc-zero-state{text-align:center;padding:10px 14px;font-size:12px;color:var(--muted);background:var(--bg);border-radius:11px;margin-bottom:12px}
@media(prefers-reduced-motion:no-preference){.smc-series-line{stroke-dasharray:2400;stroke-dashoffset:2400;animation:smc-draw 1s cubic-bezier(.2,.8,.2,1) forwards}.smc-bar{animation:smc-rise .75s ease-out both;transform-origin:bottom}}
@keyframes smc-draw{to{stroke-dashoffset:0}}
@keyframes smc-rise{from{opacity:.35;transform:scaleY(.12)}to{opacity:1;transform:scaleY(1)}}

/* Identificação única do pagador durante a primeira compra */
.smx-checkout-intro{display:flex;align-items:flex-start;gap:14px;padding:16px;border:1px solid var(--border,#dce8ed);border-radius:16px;background:var(--surface-soft,rgba(58,178,142,.06));margin-bottom:18px}
.smx-checkout-intro strong{display:block;font-size:15px;font-weight:750;margin-bottom:4px}.smx-checkout-intro p{font-size:13px;line-height:1.55;margin:0;opacity:.85}.smx-checkout-shield{display:grid;place-items:center;color:#13a786;border-radius:12px;min-width:42px;min-height:42px;background:rgba(23,190,141,.12)}.smx-checkout-form-error:not(:empty){padding:11px;margin:6px 0 12px;border-radius:11px}.smx-checkout-modal input[name="document"]{min-height:48px}
/* Evolução Financeira Pro — mobile first, modo escuro, comparações reais. */
.smc-pro-toolbar{display:flex;flex-direction:column;gap:12px;margin:20px 0 4px}
.smc-pro-toolbar .smc-modes{width:fit-content;max-width:100%;overflow-x:auto;scrollbar-width:none}
.smc-pro-toolbar .smc-modes button{white-space:nowrap}
.smc-period-group{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}
.smc-period-scroll{max-width:min(100%,540px);overflow-x:auto;scrollbar-width:none}
.smc-period-scroll::-webkit-scrollbar,.smc-pro-toolbar .smc-modes::-webkit-scrollbar{display:none}
.smc-period-scroll button{white-space:nowrap}
.smc-period-scroll button:disabled{opacity:.4;cursor:not-allowed}
.smc-selectwrap{display:flex;flex-direction:column;gap:5px;flex:1;min-width:174px;max-width:270px}
.smc-selectwrap>span{font-size:11px;color:var(--muted);font-weight:750}
.smc-selectwrap select{background:var(--white);border:1px solid var(--line);border-radius:10px;color:var(--ink);font-weight:700;padding:9px 12px;width:100%}
.smc-plan-hint{font-size:12px;color:var(--muted);margin:10px 0 0}
.smc-summary-pro{margin:17px 0 13px;grid-template-columns:repeat(4,minmax(0,1fr))}
.smc-summary-pro>div{background:linear-gradient(165deg,#123746,#102938);border:1px solid #315262;min-width:0;padding:15px}
.smc-summary-pro strong{display:block;overflow-wrap:anywhere;font-size:clamp(15px,1.75vw,21px);color:#e9fff5}
.smc-summary-pro small{min-height:32px}
.smc-summary-pro span{color:#99b4c4;font-size:10px;line-height:1.4;display:block;margin-top:6px}
.smc-chart-title{display:flex;justify-content:space-between;align-items:start;flex-wrap:wrap;gap:7px;margin-top:9px}
.smc-chart-title strong{color:#e8fcf5;font-size:14px;display:block}
.smc-chart-title span{font-size:11px;color:#a2bdc7;display:block;margin-top:3px}
.smc-chart-key{color:#7ddabc!important;font-size:10px!important;white-space:normal}
.smc-chart-wrap{min-height:auto;margin-top:8px}
.smc-chart-wrap .smc-svg{max-height:365px}
.smc-tooltip{z-index:4;min-width:155px;max-width:260px;overflow-wrap:anywhere}
.smc-tooltip span{font-size:13px}
.smc-tooltip small{font-size:10px;line-height:1.5}
.smc-bar-deposit{fill:#35d0a4}
.smc-bar-withdraw{fill:#e4b058}
.smc-series-line{stroke:#56ecc2;stroke-width:4}
.smc-comparison{margin:14px 0 2px;padding:0;border:1px solid #315262;border-radius:13px;overflow:hidden;background:#102939}
.smc-comparison summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px;font-size:12px;font-weight:800;color:#e9fff5;list-style:none}
.smc-comparison summary::-webkit-details-marker{display:none}
.smc-comparison summary:after{content:'⌄';color:#84dabc;font-size:20px}
.smc-comparison[open] summary:after{transform:rotate(180deg)}
.smc-comparison summary span{font-size:10px;color:#9bb8c5;font-weight:500}
.smc-table-scroll{width:100%;overflow:auto;scrollbar-width:thin}
.smc-comparison table{width:100%;border-collapse:collapse;min-width:570px}
.smc-comparison th,.smc-comparison td{padding:11px 12px;text-align:left;white-space:nowrap;font-size:11px;border-top:1px solid #2c4d5d;color:#d8f2e9}
.smc-comparison thead th{color:#83d7bd;background:#102b3b}
.smc-positive{color:#79e2b4!important}.smc-negative{color:#ff9a9a!important}
@media(max-width:1000px){.smc-summary-pro{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.smc-pro-toolbar .smc-modes{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.smc-pro-toolbar .smc-modes button{font-size:11px;padding:9px 5px}.smc-period-scroll{max-width:100%}.smc-period-group{display:block}.smc-selectwrap{max-width:100%;margin-top:10px}.smc-chart-title .smc-chart-key{font-size:9px!important}.smc-comparison summary{flex-wrap:wrap}.smc-summary-pro>div{padding:13px 11px}}
@media(max-width:390px){.smc-summary-pro{gap:7px}.smc-summary-pro strong{font-size:14px}.smc-summary-pro small{font-size:10px}.smc-summary-pro>div{padding:11px 9px}}

/* Confirmação visível, sem confundir pagamento recebido com acesso suspenso. */
.sm-payment-confirmed{max-width:460px;width:min(94vw,460px);box-shadow:0 22px 70px rgba(0,0,0,.24)}
.sm-payment-success-body{text-align:center;padding:26px 25px 30px}
.sm-payment-success-body h3{font-size:21px;line-height:1.35;margin:8px 0 12px}
.sm-payment-success-body p{font-size:14px;line-height:1.65;margin:0 0 16px}
.sm-success-symbol{width:80px;height:80px;border-radius:50%;display:grid;place-items:center;margin:0 auto 16px;background:#e1faed;color:#138660;box-shadow:0 0 0 7px rgba(19,134,96,.08)}
.sm-success-expiry{background:rgba(115,154,145,.12);padding:15px 12px;border-radius:14px;margin:16px 0 22px;font-size:14px;line-height:1.75}
.sm-success-expiry strong{color:inherit}
