/* Gerado por bin-build-css.php. Edite os arquivos do manifest.json. */
/* source: legacy.css */
:root{--radius:18px;}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}button,input{font:inherit}.shell{display:grid;grid-template-columns:252px 1fr;min-height:100vh}.sidebar{background:#111318;color:#fff;padding:22px 16px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand,.auth-brand{display:flex;align-items:center;gap:11px}.brand{padding:0 8px 22px}.brand-mark{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#fff;color:#111318;font-weight:800}.brand-mark.large{width:44px;height:44px;border-radius:14px}.brand div,.auth-brand div{display:flex;flex-direction:column}.brand small,.auth-brand small{opacity:.55;font-size:var(--font-xs);margin-top:1px}.sidebar nav{overflow:auto}.nav-label{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.12em;color:#777d89;margin:20px 10px 7px}.nav-link{display:flex;gap:10px;align-items:center;padding:10px 11px;border-radius:10px;color:#c7cad1;text-decoration:none;font-size:13px;margin:2px 0}.nav-link:hover,.nav-link.active{background:#202329;color:#fff}.nav-link.muted{color:#90959f}.sidebar-user{margin-top:auto;padding:14px 8px 0;border-top:1px solid #292d35;display:flex;align-items:center;gap:9px}.avatar{width:34px;height:34px;background:#2b3038;border-radius:50%;display:grid;place-items:center;font-weight:700}.user-meta{min-width:0;display:flex;flex:1;flex-direction:column}.user-meta strong{font-size:12px}.user-meta small{font-size:var(--font-xs);color:#777d89;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon-button{background:none;border:0;color:#8b919c;cursor:pointer}.main{min-width:0}.topbar{height:72px;background:rgba(255,255,255,.82);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 30px;gap:16px;position:sticky;top:0;z-index:10}.menu-button{display:none}.top-search{max-width:440px;flex:1;height:39px;background:#f4f5f7;border:1px solid #e7e9ed;border-radius:10px;display:flex;align-items:center;gap:8px;padding:0 12px;color:#8b9099;font-size:13px}.top-search kbd{margin-left:auto;border:1px solid #d8dbe0;background:#fff;border-radius:6px;padding:2px 6px;font-size:var(--font-xs)}.primary-action{margin-left:auto;border:0;background:var(--accent);color:white;border-radius:10px;padding:10px 14px;font-weight:650;cursor:pointer}.content{padding:34px;max-width:1500px;margin:0 auto}.page-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:26px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:var(--font-xs);font-weight:750;color:#969ba4}.page-head h1{font-size:30px;letter-spacing:-.04em;margin:7px 0 4px}.page-head p,.subtle{margin:0;color:var(--muted);font-size:13px}.status-pill{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:7px 11px;font-size:var(--font-xs);color:#656b74}.status-pill span{display:inline-block;width:7px;height:7px;background:#31a36d;border-radius:50%;margin-right:6px}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.metric-card,.panel,.module-grid article{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.metric-card{padding:19px}.metric-top{display:flex;justify-content:space-between;color:#6f747d;font-size:12px}.metric-icon{width:26px;height:26px;border-radius:8px;background:#f4f5f7;display:grid;place-items:center}.metric-card strong{display:block;font-size:25px;letter-spacing:-.04em;margin:16px 0 4px}.metric-card small{color:#999ea7}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:14px;margin-top:14px}.panel{padding:22px;min-height:245px}.panel-head{display:flex;justify-content:space-between;align-items:start}.panel h3,.section-title h3{margin:5px 0 0;font-size:17px}.text-button{border:0;background:none;color:#757b84;font-size:var(--font-xs)}.empty-state{height:165px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.empty-icon{width:37px;height:37px;border-radius:12px;background:#f1f3f5;display:grid;place-items:center}.empty-state h4{margin:10px 0 4px}.empty-state p{max-width:540px;color:#8b9098;font-size:12px;line-height:1.55;margin:0}.insight{display:flex;gap:12px;margin-top:28px;background:#f7f8fa;border-radius:14px;padding:15px}.insight-mark{font-size:18px}.insight strong{font-size:13px}.insight p{font-size:12px;color:#777d86;line-height:1.5}.section-title{margin:30px 0 12px}.module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.module-grid article{padding:18px}.module-grid article>span{font-size:var(--font-xs);color:#9ba0a8}.module-grid h4{margin:22px 0 6px}.module-grid p{font-size:12px;line-height:1.5;color:#7c828b;margin:0}.auth-body{background:#101217}.auth-wrap{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.auth-panel{padding:48px;background:radial-gradient(circle at 20% 20%,#282d38 0,#171a20 35%,#101217 70%);color:#fff;display:flex;flex-direction:column}.auth-copy{margin:auto 0;max-width:630px}.auth-copy .eyebrow{color:#8e96a6}.auth-copy h1{font-size:56px;line-height:1.03;letter-spacing:-.055em;margin:15px 0}.auth-copy p{color:#9ca3ae;font-size:16px}.login-panel{background:#f7f8fa;display:grid;place-items:center;padding:40px}.login-card{width:min(390px,100%);background:white;border:1px solid #e7e9ed;border-radius:22px;padding:30px;box-shadow:var(--shadow)}.login-card h2{font-size:25px;letter-spacing:-.035em;margin:7px 0}.login-card label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:650;margin-top:18px}.login-card input{height:44px;border:1px solid #dde0e5;border-radius:10px;padding:0 12px;outline:none}.login-card input:focus{border-color:#989ea8;box-shadow:0 0 0 3px #f0f1f3}.login-button{width:100%;height:44px;margin-top:22px;border:0;border-radius:10px;background:#17191d;color:white;font-weight:700}.login-foot{display:block;text-align:center;color:#a0a5ad;margin-top:18px}.alert{background:#fff2f2;border:1px solid #ffd9d9;color:#a33;padding:10px 12px;border-radius:10px;font-size:12px;margin-top:15px}.empty-page{min-height:70vh;display:grid;place-content:center;text-align:center}.empty-page>strong{font-size:70px}.empty-page a{color:inherit}@media(max-width:1000px){.summary-grid,.module-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.auth-wrap{grid-template-columns:1fr}.auth-panel{display:none}}@media(max-width:760px){.shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-270px;z-index:30;width:252px;transition:.2s}.sidebar.open{left:0}.menu-button{display:block;border:0;background:none}.topbar{padding:0 16px}.top-search{display:none}.content{padding:22px 16px}.summary-grid,.module-grid{grid-template-columns:1fr}.page-head{align-items:start;gap:14px;flex-direction:column}.status-pill{display:none}}
.link-action{text-decoration:none;display:inline-flex;align-items:center}.head-actions{display:flex;gap:9px}.secondary-button{border:1px solid var(--line);background:#fff;color:var(--text);border-radius:10px;padding:9px 13px;cursor:pointer}.text-link{color:#686e77;text-decoration:none;font-size:var(--font-xs)}.shortcut-stack{display:grid;gap:8px;margin-top:20px}.shortcut-stack a{display:flex;justify-content:space-between;padding:14px;border:1px solid var(--line);border-radius:12px;color:var(--text);text-decoration:none;font-size:13px}.finance-list{margin-top:18px}.finance-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #eef0f2}.finance-row:last-child{border:0}.movement-dot{width:9px;height:9px;border-radius:50%;background:#888}.movement-dot.income{background:#2f9e6d}.movement-dot.expense{background:#d55f5f}.finance-row-main{display:flex;flex-direction:column;flex:1}.finance-row-main strong{font-size:13px}.finance-row-main small{font-size:var(--font-xs);color:var(--muted);margin-top:3px}.amount{font-size:13px;white-space:nowrap}.amount.income{color:#237b54}.amount.expense{color:#b44a4a}.filter-bar{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto;gap:9px;margin-bottom:14px}.filter-bar input,.filter-bar select,.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid #dde0e5;background:#fff;border-radius:10px;padding:10px 11px;outline:none;color:var(--text)}.table-panel{padding:0;min-height:0}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;font-size:12px}.data-table th{color:#80858e;font-weight:650;text-align:left;padding:13px 16px;border-bottom:1px solid var(--line);background:#fafbfc;white-space:nowrap}.data-table td{padding:14px 16px;border-bottom:1px solid #eef0f2;vertical-align:middle}.data-table td strong{display:block;font-size:12px}.data-table td small{display:block;color:#9398a1;margin-top:3px}.right{text-align:right!important}.table-empty{text-align:center;color:var(--muted);padding:44px}.badge{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:var(--font-xs);background:#f0f1f3;color:#777}.badge.settled{background:#eaf7f0;color:#2b7a54}.badge.pending{background:#fff6dd;color:#94700c}.badge.cancelled{background:#f3f4f5;color:#878c94}.danger{color:#b34b4b;font-size:20px}.modal{position:fixed;inset:0;background:rgba(17,19,24,.42);display:none;align-items:center;justify-content:center;padding:20px;z-index:50}.modal.open{display:flex}.modal-card{width:min(560px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:20px;padding:22px;border:1px solid var(--line);box-shadow:0 24px 70px rgba(0,0,0,.18)}.modal-card.wide{width:min(760px,100%)}.modal-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:18px}.modal-head h3{margin:4px 0 0}.modal-close{border:0;background:#f1f3f5;width:32px;height:32px;border-radius:9px;cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid label{display:flex;flex-direction:column;gap:6px;font-size:var(--font-xs);font-weight:650;color:#5d626b}.span2{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:5px}.check-label{flex-direction:row!important;align-items:center!important}.check-label input{width:auto!important}.hidden{display:none!important}.account-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.account-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:var(--shadow);min-height:175px}.account-card.card{background:linear-gradient(145deg,#fff,#f7f8fa)}.account-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.account-icon{width:34px;height:34px;border-radius:10px;background:#f1f3f5;display:grid;place-items:center}.account-card small,.account-card span{font-size:var(--font-xs);color:#8b9098}.account-card h3{margin:5px 0 18px}.account-card strong{display:block;font-size:22px;letter-spacing:-.03em}.empty-mini{padding:25px;color:var(--muted);min-height:0}@media(max-width:1000px){.account-grid{grid-template-columns:repeat(2,1fr)}.filter-bar{grid-template-columns:1fr 1fr}.filter-bar>:first-child{grid-column:1/-1}}@media(max-width:760px){.form-grid,.account-grid,.filter-bar{grid-template-columns:1fr}.span2,.filter-bar>:first-child{grid-column:auto}.head-actions{width:100%}.head-actions>*{flex:1}.modal{padding:10px;align-items:flex-end}.modal-card{border-radius:20px 20px 8px 8px}}
/* Fase 3 · Planejamento */
.planning-list{margin-top:18px}.plan-row,.check-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #eef0f2}.plan-row:last-child,.check-row:last-child{border-bottom:0}.plan-row>div,.check-row>div{display:flex;flex-direction:column;min-width:0}.plan-row strong,.check-row strong{font-size:13px}.plan-row small,.check-row small{font-size:var(--font-xs);color:var(--muted);margin-top:3px}.plan-time{width:42px;flex:none;font-size:var(--font-xs);font-weight:700;color:#686e77}.priority-dot{width:9px;height:9px;border-radius:50%;background:#90959d;flex:none}.priority-dot.high{background:#d79a35}.priority-dot.critical{background:#c95656}.priority-dot.low{background:#7fa0b9}.check-button{width:30px;height:30px;border:1px solid var(--line);border-radius:50%;background:#fff;cursor:pointer;font-size:16px}.check-button.done{background:#eaf7f0;color:#28704f;border-color:#cae8d9}.today-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.week-board{display:grid;grid-template-columns:repeat(7,minmax(150px,1fr));gap:10px;overflow:auto;padding-bottom:8px}.week-day{background:#fff;border:1px solid var(--line);border-radius:16px;min-height:390px;min-width:150px;box-shadow:var(--shadow)}.week-day.today{border-color:#a8adb5;box-shadow:0 0 0 1px #b9bec6,var(--shadow)}.week-day-head{display:flex;justify-content:space-between;padding:14px;border-bottom:1px solid var(--line);font-size:12px}.week-day-head span{color:var(--muted)}.week-day-items{padding:10px}.week-item{padding:10px;border-radius:11px;background:#f6f7f9;margin-bottom:8px;display:flex;flex-direction:column;gap:4px}.week-item.event{border-left:3px solid #858c98}.week-item.task{border-left:3px solid #b7bcc4}.week-item small{font-size:var(--font-xs);color:var(--muted)}.week-item strong{font-size:var(--font-xs);line-height:1.35}.week-empty{display:block;text-align:center;color:#b0b4bb;font-size:var(--font-xs);padding:28px 4px}.compact-filter{grid-template-columns:220px auto;justify-content:start}.action-cell,.inline-actions,.goal-actions,.routine-footer{display:flex;align-items:center;gap:8px}.action-cell{justify-content:flex-end}.routine-grid .account-card{min-height:210px}.routine-desc{min-height:38px}.routine-footer{justify-content:space-between;margin-top:20px;padding-top:14px;border-top:1px solid var(--line)}.goal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.goal-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:var(--shadow)}.goal-card-top{display:flex;justify-content:space-between;align-items:center}.goal-card h3{font-size:18px;margin:18px 0 7px}.goal-card>p{font-size:12px;color:var(--muted);min-height:36px;line-height:1.5}.goal-target{display:flex;flex-direction:column;gap:4px;padding:16px 0}.goal-target strong{font-size:20px}.goal-target small{font-size:var(--font-xs);color:var(--muted)}.goal-actions{border-top:1px solid var(--line);padding-top:14px;margin-top:4px}.badge.priority-high{background:#fff3dc;color:#8f6518}.badge.priority-critical{background:#fff0f0;color:#a94747}.badge.priority-low{background:#eef5f8;color:#54778c}.badge.active,.badge.planned{background:#edf6ff;color:#426c8e}.badge.completed{background:#eaf7f0;color:#2b7a54}.badge.paused{background:#fff6dd;color:#94700c}.home-priorities .empty-state{height:155px}@media(max-width:1100px){.today-columns,.goal-grid{grid-template-columns:1fr 1fr}.today-columns .panel:last-child{grid-column:1/-1}}@media(max-width:760px){.today-columns,.goal-grid{grid-template-columns:1fr}.today-columns .panel:last-child{grid-column:auto}.week-board{grid-template-columns:repeat(7,230px)}.compact-filter{grid-template-columns:1fr}}
/* Fase 4 · Saúde */
.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.item-card{background:var(--surface,#fff);border:1px solid var(--border,#e6e8ee);border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:12px}.item-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.item-card h3{margin:4px 0 0}.item-card p{margin:0;color:var(--muted,#697386)}.muted-card{opacity:.62}.item-actions{display:flex;align-items:center;gap:8px;margin-top:auto}.small{padding:8px 11px!important;font-size:.86rem}.block{display:block}.back-link{display:inline-block;margin-bottom:10px;color:var(--muted,#697386);text-decoration:none}.status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.78rem;font-weight:700}.status.success{background:#e9f8ef;color:#1d7a45}.status.warning{background:#fff6df;color:#996b00}.finish-panel{margin-top:16px}.inline-form{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.inline-form label{min-width:180px}.inline-form .grow{flex:1}.health-home-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}.health-home-grid>div{padding:14px;border:1px solid var(--border,#e6e8ee);border-radius:14px}.health-home-grid small,.health-home-grid strong{display:block}.health-home-grid strong{font-size:1.35rem;margin-top:4px}.quick-links{display:grid;gap:10px}.quick-links a{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--border,#e6e8ee);text-decoration:none;color:inherit}.quick-links a:last-child{border-bottom:0}.stats-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:720px){.stats-grid.compact,.health-home-grid{grid-template-columns:1fr}.inline-form{align-items:stretch}.inline-form label{width:100%}}
/* Fase 4.1 · Alimentação */
.page-actions{display:flex;align-items:center;gap:9px}.page-actions .primary-action{margin-left:0}.secondary-action{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:#fff;color:var(--text);border-radius:10px;padding:10px 14px;text-decoration:none;font-weight:600;font-size:13px;cursor:pointer}.span-2{grid-column:1/-1}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:5px}.nutrition-stats .stat-card{position:relative;overflow:hidden}.progress{height:5px;background:#eceff2;border-radius:999px;margin-top:12px;overflow:hidden}.progress span{display:block;height:100%;background:var(--accent);border-radius:999px}.nutrition-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}.nutrition-actions .item-card{text-decoration:none;color:inherit;min-height:170px}.nutrition-actions .item-card strong{font-size:12px;margin-top:auto}.target-strip{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:12px;margin-bottom:14px}.target-strip>div,.macro-mini-grid>div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px}.target-strip small,.target-strip strong,.macro-mini-grid small,.macro-mini-grid strong{display:block}.target-strip small,.macro-mini-grid small{font-size:var(--font-xs);color:var(--muted);margin-bottom:5px}.target-strip strong{font-size:13px}.macro-mini-grid{display:grid;grid-template-columns:1fr;gap:10px;margin-top:18px}.macro-mini-grid strong{font-size:14px}.nutrition-daily{grid-template-columns:repeat(4,1fr)}
@media(max-width:1000px){.nutrition-actions{grid-template-columns:1fr 1fr}.target-strip{grid-template-columns:1fr 1fr}.nutrition-daily{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.page-actions{width:100%;flex-wrap:wrap}.page-actions>*{flex:1}.nutrition-actions,.target-strip,.nutrition-daily{grid-template-columns:1fr}.span-2{grid-column:auto}}

/* Fase 5 · Estudos */
.study-cycle{display:grid}.cycle-row{display:grid;grid-template-columns:38px 1fr auto auto;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.cycle-row:last-child{border-bottom:0}.cycle-row>div{display:flex;flex-direction:column}.cycle-row small{color:var(--muted);margin-top:3px}.cycle-pos{width:30px;height:30px;border-radius:10px;background:var(--surface2);display:grid;place-items:center;font-weight:750;font-size:12px}.study-active{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:16px}.study-active h2{margin:6px 0}.study-active p{margin:0;color:var(--muted)}.review-list{display:grid}.review-row,.flash-review{padding:15px 0;border-bottom:1px solid var(--line)}.review-row:last-child,.flash-review:last-child{border-bottom:0}.review-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.review-row>div{display:flex;flex-direction:column}.review-row small{color:var(--muted);margin-top:4px}.review-actions{display:flex;gap:7px;flex-wrap:wrap}.flash-review>strong{display:block;margin-bottom:8px}.flash-review details{background:var(--surface2);border-radius:11px;padding:10px 12px;margin-bottom:10px}.flash-review summary{cursor:pointer;font-size:12px;color:var(--muted)}.flash-review p{margin:10px 0 2px;font-size:13px;line-height:1.55}.flash-grid .flash-card{min-height:220px}.flash-answer{padding:12px;border-radius:12px;background:var(--surface2);font-size:12px;line-height:1.5;flex:1}@media(max-width:850px){.study-active{align-items:stretch;flex-direction:column}.review-row{align-items:flex-start;flex-direction:column}.cycle-row{grid-template-columns:38px 1fr auto}.cycle-row form{grid-column:3}.study-active .inline-form{width:100%}}
/* Fase 6 · Investimentos */
.investments-dashboard{align-items:start}.position-list{display:grid}.position-row{display:grid;grid-template-columns:44px minmax(150px,1fr) minmax(130px,.55fr) minmax(120px,.45fr);gap:13px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.position-row:last-child{border-bottom:0}.asset-symbol{width:42px;height:42px;border-radius:13px;background:var(--surface2);display:grid;place-items:center;font-size:var(--font-xs);font-weight:800;letter-spacing:.03em}.position-main,.position-number{display:flex;flex-direction:column;gap:4px}.position-main small,.position-number small,.allocation-row small,.asset-kpis small{font-size:var(--font-xs);color:var(--muted)}.position-number{text-align:right}.position-number strong{font-size:13px}.result.positive strong,.investment-result.positive strong{color:#28704f}.result.negative strong,.investment-result.negative strong{color:#a94747}.allocation-list{display:grid;gap:15px}.allocation-row{display:grid;grid-template-columns:1fr auto;gap:7px}.allocation-row>div:first-child{display:flex;flex-direction:column;gap:3px}.allocation-row>span{font-size:var(--font-xs);font-weight:700}.allocation-bar{grid-column:1/-1;height:6px;border-radius:999px;background:var(--surface2);overflow:hidden}.allocation-bar i{display:block;height:100%;background:var(--text);border-radius:999px}.investment-assets-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.asset-kpis{display:grid;grid-template-columns:1fr 1fr;gap:9px}.asset-kpis>div{border:1px solid var(--line);border-radius:12px;padding:11px}.asset-kpis small,.asset-kpis strong{display:block}.asset-kpis strong{font-size:13px;margin-top:4px}.investment-result{display:flex;align-items:center;justify-content:space-between;padding-top:3px}.investment-result span{font-size:var(--font-xs);color:var(--muted)}.asset-actions{align-items:stretch;flex-wrap:wrap}.price-inline{display:flex;gap:7px;flex:1}.price-inline input{min-width:110px;flex:1}.investment-filters{grid-template-columns:180px minmax(220px,1fr) 180px auto}.table-sub{display:block;color:var(--muted);margin-top:3px}.form-hint{font-size:var(--font-xs);line-height:1.5;color:var(--muted);background:var(--surface2);border-radius:11px;padding:11px 13px}@media(max-width:900px){.position-row{grid-template-columns:42px 1fr auto}.position-number.result{grid-column:2/-1;text-align:left;flex-direction:row;justify-content:space-between}.investment-filters{grid-template-columns:1fr 1fr}.investment-filters button{align-self:end}}@media(max-width:650px){.position-row{grid-template-columns:42px 1fr}.position-number{grid-column:2;text-align:left}.position-number.result{grid-column:2}.asset-kpis,.investment-filters{grid-template-columns:1fr}.price-inline{width:100%}}
/* Fase 6.1 · Patrimônio e veículos */
.patrimony-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.wealth-list{display:grid;gap:16px}.wealth-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.wealth-row>div:first-child{display:flex;flex-direction:column;gap:4px}.wealth-row small{font-size:var(--font-xs);color:var(--muted)}.wealth-row>span{font-size:13px;font-weight:750}.wealth-row .allocation-bar{grid-column:1/-1}.patrimony-links{margin-top:14px}.vehicle-grid{grid-template-columns:repeat(auto-fit,minmax(330px,1fr))}.vehicle-grid .item-card{min-height:255px}.patrimony-home-section{margin-top:16px}@media(max-width:1050px){.patrimony-summary{grid-template-columns:1fr 1fr}}@media(max-width:650px){.patrimony-summary{grid-template-columns:1fr}.vehicle-grid{grid-template-columns:1fr}}
/* Fase 7 · Insights */
.insights-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.insight-filters{grid-template-columns:minmax(220px,320px) auto;margin-bottom:18px}.insight-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-bottom:18px}.insight-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:18px;display:flex;flex-direction:column;min-height:205px;position:relative;overflow:hidden}.insight-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#8a9099}.insight-card.severity-critical:before{background:#a94747}.insight-card.severity-warning:before{background:#a77917}.insight-card.severity-success:before{background:#2b7a54}.insight-card.severity-info:before{background:#55778e}.insight-card-top,.insight-card-foot{display:flex;align-items:center;justify-content:space-between;gap:12px}.insight-domain{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:700}.insight-card h3{font-size:16px;margin:22px 0 8px}.insight-card p{color:var(--muted);font-size:13px;line-height:1.55;margin:0 0 20px}.insight-card-foot{margin-top:auto;border-top:1px solid var(--line);padding-top:12px}.insight-card-foot small{font-size:var(--font-xs);color:var(--muted)}.text-button{border:0;background:none;padding:4px;color:var(--muted);font-size:var(--font-xs);cursor:pointer}.text-button:hover{color:var(--text)}.status.critical{background:#fff0f0;color:#a94747}.status.info{background:#eef5f8;color:#54778c}.insight-explain{margin-top:18px}.insight-explain p{margin:0;color:var(--muted);line-height:1.65;font-size:13px}.home-insights{display:grid;gap:11px}.insight.compact{padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--surface2)}.insight.compact strong{font-size:12px}.insight.compact p{font-size:var(--font-xs);margin-top:3px;line-height:1.45}.insight.compact.severity-critical{border-color:#efd0d0}.insight.compact.severity-warning{border-color:#eedfbb}.insight.compact.severity-success{border-color:#cfe7d8}@media(max-width:1000px){.insights-summary{grid-template-columns:1fr 1fr}}@media(max-width:650px){.insights-summary,.insight-filters{grid-template-columns:1fr}.insight-grid{grid-template-columns:1fr}}
/* Fase 8 · Experiência e integração */
.top-search{border:1px solid var(--line);cursor:pointer;text-align:left;font:inherit}.topbar-actions{display:flex;align-items:center;gap:10px;margin-left:auto}.topbar-icon{position:relative;width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line);border-radius:11px;text-decoration:none;color:var(--text);font-size:19px;background:var(--surface)}.topbar-badge,.nav-count{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--text);color:var(--surface);font-size:var(--font-xs);font-weight:800;display:inline-grid;place-items:center}.topbar-badge{position:absolute;right:-5px;top:-5px;border:2px solid var(--surface)}.nav-count{margin-left:auto}.command-overlay{position:fixed;inset:0;background:rgba(12,16,21,.48);backdrop-filter:blur(5px);z-index:1200;display:none;padding:10vh 18px 18px}.command-overlay.open{display:flex;justify-content:center;align-items:flex-start}.command-box{width:min(680px,100%);background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:0 28px 80px rgba(0,0,0,.22);overflow:hidden}.command-input-wrap{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:15px 17px;border-bottom:1px solid var(--line)}.command-input-wrap input{border:0!important;outline:0;background:transparent!important;font-size:15px;padding:0!important;box-shadow:none!important}.command-input-wrap kbd,.command-footer kbd{font-size:var(--font-xs)}.command-results{max-height:460px;overflow:auto;padding:8px}.command-result{display:grid;grid-template-columns:38px 1fr auto;gap:11px;align-items:center;padding:10px 11px;border-radius:12px;text-decoration:none;color:var(--text)}.command-result:hover,.command-result.active{background:var(--surface2)}.command-result-icon{width:34px;height:34px;border-radius:10px;background:var(--surface2);display:grid;place-items:center;font-weight:800;font-size:var(--font-xs)}.command-result.active .command-result-icon{background:var(--text);color:var(--surface)}.command-result strong,.command-result small{display:block}.command-result strong{font-size:12px}.command-result small{font-size:var(--font-xs);color:var(--muted);margin-top:3px}.command-result em{font-style:normal;color:var(--muted);font-size:var(--font-xs)}.command-empty{padding:34px 18px;text-align:center;color:var(--muted);font-size:12px}.command-footer{display:flex;gap:16px;padding:10px 17px;border-top:1px solid var(--line);color:var(--muted);font-size:var(--font-xs)}.quick-add-card{max-width:620px}.quick-add-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.quick-add-grid a{padding:15px;border:1px solid var(--line);border-radius:13px;text-decoration:none;color:var(--text);transition:.15s}.quick-add-grid a:hover{background:var(--surface2);transform:translateY(-1px)}.quick-add-grid strong,.quick-add-grid small{display:block}.quick-add-grid strong{font-size:12px}.quick-add-grid small{font-size:var(--font-xs);color:var(--muted);margin-top:4px;line-height:1.45}.notification-list{display:grid;gap:10px}.notification-item{display:grid;grid-template-columns:10px 1fr;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:17px}.notification-item.unread{border-color:#c9ced6}.notification-dot{width:7px;height:7px;border-radius:99px;background:transparent;margin-top:8px}.notification-item.unread .notification-dot{background:var(--text)}.notification-top{display:flex;justify-content:space-between;gap:12px}.notification-top small{color:var(--muted);font-size:var(--font-xs)}.notification-item h3{font-size:14px;margin:7px 0}.notification-item p{margin:0 0 12px;color:var(--muted);font-size:12px;line-height:1.55}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.notice{padding:12px 14px;border-radius:12px;margin-bottom:14px;font-size:12px}.notice.success{background:#eef7f1;color:#286344}.notice.error{background:#fff1f1;color:#8d3a3a}.check-field{display:flex!important;align-items:center;gap:8px;align-self:end;padding-bottom:10px}.check-field input{width:auto!important}.sidebar nav{scrollbar-width:thin}.sidebar-user{flex-shrink:0}@media(max-width:760px){.topbar-actions .primary-action{padding:10px 11px;font-size:0}.topbar-actions .primary-action:after{content:'＋';font-size:18px}.topbar-icon{width:38px;height:38px}.quick-add-grid,.settings-grid{grid-template-columns:1fr}.command-overlay{padding-top:6vh}.command-footer{display:none}}
body.density-compact .content{padding-top:20px}body.density-compact .panel,body.density-compact .item-card{padding-top:14px;padding-bottom:14px}body.density-compact .nav-link{padding-top:8px;padding-bottom:8px}

/* Fase 9 — Dashboard Hoje 2.0 */
.home-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:22px}.home-hero h1{font-size:34px;letter-spacing:-.045em;margin:7px 0 5px}.home-hero p{margin:0;color:var(--muted);font-size:13px}.hero-actions{display:flex;gap:9px;align-items:center}.secondary-action{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:9px 13px;font-weight:650;font-size:12px}.home-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}.home-kpi{display:flex;flex-direction:column;text-decoration:none;color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:17px 18px;box-shadow:var(--shadow);transition:.16s ease}.home-kpi:hover{transform:translateY(-1px);border-color:#d4d8de}.home-kpi-label{font-size:var(--font-xs);color:var(--muted)}.home-kpi strong{font-size:23px;letter-spacing:-.035em;margin:10px 0 4px}.home-kpi small{font-size:var(--font-xs);color:#969ba4}.home-main-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,.75fr);gap:12px;margin-bottom:12px}.home-main-grid .panel,.home-section-grid .panel,.home-bottom-grid .panel{min-height:0}.home-agenda-list{margin-top:13px}.home-agenda-row{display:grid;grid-template-columns:48px 9px 1fr;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--line)}.home-agenda-row:last-child{border-bottom:0}.home-agenda-row .agenda-time{font-size:var(--font-xs);font-weight:750;color:var(--muted)}.home-agenda-row div{display:flex;flex-direction:column}.home-agenda-row strong{font-size:12px}.home-agenda-row small{font-size:var(--font-xs);color:var(--muted);margin-top:2px}.agenda-dot{width:8px;height:8px;border-radius:50%;background:#8d949d}.agenda-dot.event{background:#5b7589}.agenda-dot.high{background:#d79a35}.agenda-dot.critical{background:#c95656}.agenda-dot.low{background:#7fa0b9}.focus-primary{margin-top:16px;border-radius:15px;background:linear-gradient(145deg,#17191d,#282c33);color:#fff;padding:20px;display:flex;flex-direction:column;min-height:172px}.focus-primary span{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.11em;color:#949ba6}.focus-primary strong{font-size:20px;letter-spacing:-.025em;margin:20px 0 5px}.focus-primary small{font-size:var(--font-xs);color:#aeb4bd}.focus-primary a{color:#fff;text-decoration:none;font-size:var(--font-xs);margin-top:auto;padding-top:18px}.home-section-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:12px;margin-bottom:12px}.home-section-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.home-finance-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.home-finance-numbers div,.signal-grid div{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fbfbfc}.home-finance-numbers small,.signal-grid small{display:block;color:var(--muted);font-size:var(--font-xs)}.home-finance-numbers strong,.signal-grid strong{display:block;font-size:15px;margin-top:5px}.negative{color:#a94747}.progress-track{height:7px;border-radius:999px;background:#eef0f2;overflow:hidden}.progress-track span{display:block;height:100%;border-radius:inherit;background:#343941}.progress-track.slim{height:5px}.progress-caption{display:block;margin-top:7px;color:var(--muted);font-size:var(--font-xs)}.mini-flow-chart{height:82px;display:grid;grid-template-columns:repeat(7,1fr);gap:8px;align-items:end;margin-top:14px}.flow-day{display:flex;flex-direction:column;align-items:center;gap:5px}.flow-bars{height:57px;display:flex;gap:3px;align-items:end}.flow-bars span{width:5px;border-radius:4px 4px 1px 1px;display:block}.flow-income{background:#687f70}.flow-expense{background:#b78b8b}.flow-day small{font-size:var(--font-xs);color:var(--muted)}.week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:18px}.week-strip-day{border:1px solid var(--line);border-radius:11px;padding:10px 5px;text-align:center}.week-strip-day.today{background:#17191d;color:#fff;border-color:#17191d}.week-strip-day span,.week-strip-day small{display:block;font-size:var(--font-xs);color:var(--muted)}.week-strip-day.today span,.week-strip-day.today small{color:#aeb3bc}.week-strip-day strong{display:block;font-size:16px;margin:4px 0}.week-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.week-stats div{padding:10px;background:#f6f7f9;border-radius:11px}.week-stats strong,.week-stats small{display:block}.week-stats strong{font-size:15px}.week-stats small{font-size:var(--font-xs);color:var(--muted);margin-top:2px}.compact-panel{padding:18px}.signal-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.macro-line{margin-top:14px}.macro-line>div:first-child{display:flex;justify-content:space-between;font-size:var(--font-xs);margin-bottom:7px}.home-muted{font-size:var(--font-xs);color:var(--muted);line-height:1.5;margin:14px 0 0}.wealth-composition{display:grid;gap:12px;margin-top:16px}.wealth-composition>div{display:grid;grid-template-columns:1fr auto;gap:5px}.wealth-composition span{font-size:var(--font-xs);color:var(--muted)}.wealth-composition strong{font-size:var(--font-xs)}.wealth-composition i{grid-column:1/-1;height:5px;background:#343941;border-radius:99px;min-width:3px}.home-bottom-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:12px}.home-insights.refined{margin-top:12px}.home-insights.refined .insight{margin:0;text-decoration:none;color:inherit}.home-goals-list{margin-top:12px}.home-goal-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.home-goal-row:last-child{border-bottom:0}.home-goal-row div{display:flex;flex-direction:column}.home-goal-row strong{font-size:12px}.home-goal-row small{font-size:var(--font-xs);color:var(--muted);margin-top:3px}.home-goal-row>span{font-size:var(--font-xs);font-weight:700;color:#6e747d}.compact-empty{height:130px}.compact-empty .empty-icon{width:32px;height:32px}.compact-empty h4{font-size:13px}.compact-empty p{font-size:var(--font-xs)}.density-compact .home-kpi{padding:13px 15px}.density-compact .home-main-grid .panel,.density-compact .home-section-grid .panel,.density-compact .home-bottom-grid .panel{padding:17px}@media(max-width:1150px){.home-kpi-grid{grid-template-columns:1fr 1fr}.home-main-grid,.home-section-grid,.home-bottom-grid{grid-template-columns:1fr}.home-section-grid.three{grid-template-columns:1fr 1fr}.home-section-grid.three .compact-panel:last-child{grid-column:1/-1}}@media(max-width:720px){.home-hero{align-items:flex-start;flex-direction:column}.home-hero h1{font-size:29px}.hero-actions{width:100%}.hero-actions>*{flex:1}.home-kpi-grid,.home-section-grid.three{grid-template-columns:1fr}.home-section-grid.three .compact-panel:last-child{grid-column:auto}.week-strip{overflow-x:auto;grid-template-columns:repeat(7,72px);padding-bottom:5px}.home-finance-numbers{grid-template-columns:1fr}.home-agenda-row{grid-template-columns:42px 8px 1fr}}

/* Fase 10 Web — Relatórios e Análises */
.reports-head{margin-bottom:14px}.report-tabs{display:flex;gap:5px;overflow:auto;padding:4px;background:#eceef1;border-radius:12px;margin-bottom:10px}.report-tabs a{white-space:nowrap;text-decoration:none;color:#676d76;padding:9px 12px;border-radius:9px;font-size:var(--font-xs);font-weight:700}.report-tabs a.active{background:var(--surface);color:var(--text);box-shadow:0 2px 8px rgba(20,24,32,.06)}.report-filter{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:9px;margin-bottom:14px}.report-filter select,.report-filter input{border:1px solid var(--line);background:#fafbfc;border-radius:9px;padding:8px 10px;color:var(--text);font-size:var(--font-xs)}.report-custom{display:none;align-items:center;gap:8px}.report-custom.show{display:flex}.report-custom span{font-size:var(--font-xs);color:var(--muted)}.report-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}.reports-grid,.report-panel{margin-top:12px}.report-panel{min-height:260px}.report-dual-bars{display:grid;gap:18px;margin-top:22px}.report-dual-bars>div>div,.report-ranking>div>div{display:flex;justify-content:space-between;gap:12px;align-items:center}.report-dual-bars span,.report-ranking strong{font-size:var(--font-xs)}.report-dual-bars strong,.report-ranking span{font-size:var(--font-xs)}.report-dual-bars i,.report-ranking i{display:block;height:7px;background:#edf0f2;border-radius:99px;overflow:hidden;margin-top:8px}.report-dual-bars b,.report-ranking b{display:block;height:100%;background:#59616b;border-radius:99px}.report-dual-bars b.expense{background:#a87777}.report-ranking{display:grid;gap:14px;margin-top:16px}.report-highlight{display:flex;flex-direction:column;justify-content:center;min-height:145px}.report-highlight strong{font-size:29px;letter-spacing:-.04em}.report-highlight span{font-size:12px;margin-top:7px}.report-highlight small{font-size:var(--font-xs);color:var(--muted);margin-top:7px}.report-empty{min-height:140px;display:grid;place-items:center;text-align:center;color:var(--muted);font-size:var(--font-xs)}.report-note{color:var(--muted);font-size:var(--font-xs);line-height:1.55;margin:16px 0 0}.report-chart{height:210px;display:flex;align-items:end;gap:7px;overflow-x:auto;padding:18px 2px 0}.report-chart-col{min-width:26px;flex:1;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:7px}.report-chart-bars{height:165px;display:flex;align-items:end;justify-content:center;gap:3px;width:100%}.report-chart-bars i{display:block;width:min(11px,38%);border-radius:5px 5px 2px 2px;min-height:2px;background:#737b85}.report-chart-bars i.income{background:#607a69}.report-chart-bars i.expense{background:#a87d7d}.report-chart-bars i.neutral{background:#68727d}.report-chart-bars i.positive{background:#879b70}.report-chart-bars.triple i{width:min(8px,27%)}.report-chart-col small{font-size:8px;color:var(--muted);white-space:nowrap}.chart-legend{display:flex;gap:15px;margin-top:12px;font-size:var(--font-xs);color:var(--muted)}.chart-legend span{display:flex;align-items:center;gap:5px}.chart-legend i{width:8px;height:8px;border-radius:2px;background:#737b85}.chart-legend i.income{background:#607a69}.chart-legend i.expense{background:#a87d7d}.chart-legend i.neutral{background:#68727d}.chart-legend i.positive{background:#879b70}.balance-spark{height:145px;display:flex;align-items:end;gap:4px;padding-top:12px}.balance-spark i{flex:1;min-width:4px;background:#59616b;border-radius:5px 5px 1px 1px;opacity:.8}.balance-caption{display:flex;justify-content:space-between;margin-top:8px;font-size:var(--font-xs)}.line-points{height:190px;display:flex;align-items:end;gap:8px;overflow-x:auto;padding-top:14px}.line-points>div{height:100%;min-width:32px;flex:1;display:flex;align-items:center;flex-direction:column;justify-content:flex-end}.line-points i{width:8px;background:#59616b;border-radius:99px}.line-points small{font-size:8px;color:var(--muted);margin-top:5px}.line-points b{font-size:var(--font-xs);margin-top:2px}.nutrition-report-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px}.nutrition-report-grid div{background:#f7f8f9;border:1px solid var(--line);border-radius:13px;padding:14px}.nutrition-report-grid small,.nutrition-report-grid strong{display:block}.nutrition-report-grid small{font-size:var(--font-xs);color:var(--muted)}.nutrition-report-grid strong{font-size:17px;margin-top:6px}.report-chart.single .report-chart-bars i{width:12px}.compact-chart{height:190px}@media(max-width:1100px){.report-kpis{grid-template-columns:1fr 1fr}.nutrition-report-grid{grid-template-columns:1fr 1fr}}@media(max-width:720px){.reports-head{align-items:flex-start}.report-filter{align-items:stretch;flex-direction:column}.report-custom.show{display:grid;grid-template-columns:1fr auto 1fr}.report-custom .secondary-action{grid-column:1/-1}.report-kpis{grid-template-columns:1fr}.nutrition-report-grid{grid-template-columns:1fr 1fr}.report-chart-col{min-width:34px}}

/* Fase 11: orçamento mensal */
.budget-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}.budget-toolbar .filter-bar{margin:0;display:flex;align-items:flex-end;gap:12px;flex:0 1 auto}.budget-toolbar .filter-bar label{min-width:200px}.budget-toolbar .filter-bar button{height:44px}.budget-context{display:flex;gap:16px 28px;flex-wrap:wrap;margin:0 0 24px;color:var(--muted,#667085);font-size:13px}.budget-context strong{color:var(--text,#172b27)}.budget-notice{padding:16px 20px;border:1px solid #a3c9b5;background:#f0faf4;color:#20533b;border-radius:12px;margin-bottom:20px}.budget-notice.error{border-color:#e9b3a5;background:#fff3ee;color:#873c28}.budget-table-panel{margin-bottom:24px}.budget-table-panel .panel-head{padding:20px 22px 0}.budget-table{min-width:1000px}.budget-table td:first-child{min-width:240px}.budget-table td small{display:block;color:var(--muted,#667085);font-size:var(--font-xs);margin-top:5px}.budget-status{display:block;font-size:var(--font-xs);font-weight:600;margin:5px 0;color:#376b52}.budget-status.warning,.budget-status.projected{color:#986013}.budget-status.exceeded{color:#b33d33}.budget-status.unplanned{color:#697586}.budget-progress{margin-top:8px;height:6px;max-width:220px}.budget-progress.exceeded span{background:#b33d33}.budget-progress.warning span,.budget-progress.projected span{background:#c58a2f}.budget-row-actions{display:flex;align-items:center;gap:14px}.budget-editor-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:24px;margin-bottom:24px}.budget-editor-grid p,.budget-method p{font-size:13px;line-height:1.7;color:var(--muted,#667085)}.budget-editor-grid .page-actions{flex-wrap:wrap}.budget-summary{margin-bottom:24px}.budget-summary-values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.budget-summary-values small,.budget-summary-values strong{display:block}.budget-summary-values small{color:var(--muted,#667085);font-size:12px;margin-bottom:6px}.budget-summary-values strong{font-size:21px}.budget-legacy{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:10px}#budgetForm{scroll-margin-top:90px}
@media(max-width:900px){.budget-editor-grid{grid-template-columns:1fr}.budget-summary-values{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-toolbar .page-actions{flex-wrap:wrap}.budget-context{display:grid;gap:10px}.budget-toolbar .filter-bar{flex-wrap:wrap}}
@media(max-width:480px){.budget-summary-values{grid-template-columns:1fr}.budget-editor-grid .form-grid{grid-template-columns:1fr}.budget-editor-grid .span2{grid-column:1}.budget-toolbar .page-actions{gap:8px}.budget-summary-values strong{font-size:20px}}

/* Fase 12: evolução e metas */
.goal-filters{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:20px}.goal-filters label{min-width:180px;font-size:12px}.evolution-grid{margin-bottom:24px}.goal-card h3 a{color:inherit;text-decoration:none}.goal-values{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0 16px}.goal-values small,.goal-values strong{display:block}.goal-values strong{font-size:21px;overflow-wrap:anywhere}.goal-values small,.goal-caption,.goal-card-foot{font-size:12px;color:var(--muted)}.goal-card-foot{display:flex;justify-content:space-between;gap:12px;margin-top:18px}.goal-detail-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:20px;margin-bottom:24px}.goal-progress-panel,.goal-history{margin-bottom:24px}.goal-progress-panel p,.goal-explanation p,.goal-detail-grid p{font-size:13px;line-height:1.65;color:var(--muted)}.goal-history-chart{display:flex;align-items:flex-end;gap:15px;overflow:auto;padding:14px 0}.goal-history-chart>div{min-width:65px;display:flex;align-items:center;flex-direction:column;gap:6px}.goal-history-chart span{width:18px;display:block;background:#587766;border-radius:4px}.goal-history-chart small,.goal-history-chart b{font-size:var(--font-xs)}.goal-history-note{white-space:normal;min-width:240px;max-width:500px;overflow-wrap:anywhere}.goal-history-percent{display:block;margin-top:5px;color:var(--muted)}.goal-delete-form{margin-top:26px}.goal-editor{max-width:720px;max-height:90vh;overflow:auto}.goal-editor .page-actions,.page-head .page-actions{flex-wrap:wrap}.goal-explanation{margin-bottom:24px}.goal-grid .goal-card{min-width:0}.home-goal-row a{color:inherit;text-decoration:none}
@media(max-width:760px){.goal-detail-grid{grid-template-columns:1fr}.goal-filters label{min-width:130px;flex:1}.goal-values strong{font-size:18px}.goal-editor{max-height:90dvh}.goal-card-foot{flex-wrap:wrap}}

.goal-filters label{display:grid;gap:6px}.goal-filters select{font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);width:100%}.evolution-grid,.goal-progress-panel{margin-top:24px}.goal-detail-grid>section{min-width:0}.goal-history .data-table{min-width:720px}.goal-editor .form-grid .report-note{margin:0}.goal-editor .form-grid input,.goal-editor .form-grid select{min-width:0}@media(max-width:600px){.goal-editor .form-grid{grid-template-columns:1fr}.goal-editor .span2{grid-column:1}.goal-editor .page-actions{gap:10px}}

/* Fase 13: segurança e configurações */
.settings-grid>section{min-width:0}.settings-grid h2{font-size:20px;margin-bottom:20px}.settings-grid p,.security-note{font-size:12px;line-height:1.65;color:var(--muted)}.security-sessions{margin-top:24px}.security-sessions .panel-head{align-items:center;gap:16px;flex-wrap:wrap}.security-sessions .data-table{min-width:760px}.session-device{min-width:220px;max-width:350px;white-space:normal;overflow-wrap:anywhere}.session-device small{display:block;margin-top:5px;color:var(--muted);font-size:var(--font-xs)}@media(max-width:600px){.settings-grid .form-grid{grid-template-columns:1fr}.settings-grid .span2{grid-column:1}}

/* Fase 14: navegação, foco e formulários */
:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:3px solid #3566a8;outline-offset:3px}.form-grid input:focus-visible,.form-grid select:focus-visible,.form-grid textarea:focus-visible{outline:3px solid #3566a8;outline-offset:2px}button,select,textarea{font:inherit}button{cursor:pointer}button[aria-disabled=true]{opacity:.6;cursor:wait}.skip-link{position:fixed;top:-70px;left:16px;z-index:3000;background:#fff;color:#17191d;padding:12px 18px;border-radius:8px}.skip-link:focus{top:12px}.sidebar-backdrop{position:fixed;inset:0;background:#1118;z-index:25;border:0}.sidebar-backdrop[hidden]{display:none}.layer-open,.menu-open{overflow:hidden}.confirm-dialog{width:min(460px,calc(100% - 32px));border:1px solid var(--line);border-radius:18px;padding:24px;color:var(--text);box-shadow:var(--shadow)}.confirm-dialog::backdrop{background:#1119}.confirm-dialog h2{font-size:21px;margin:0 0 14px}.confirm-dialog p{font-size:14px;line-height:1.65;overflow-wrap:anywhere}.danger-action{background:#a52929;color:#fff;border:0;border-radius:10px;padding:11px 16px}.search-close{border:0;background:var(--surface2);border-radius:8px;width:40px;height:40px;flex-shrink:0;font-size:24px}.command-box{max-height:80dvh;display:flex;flex-direction:column;min-width:0}.command-results{overflow:auto;min-height:0}.command-input-wrap input{min-width:0}.table-wrap{max-width:100%;overscroll-behavior-x:contain}.panel,.metric-card,.item-card,.account-card{min-width:0}.panel-head,.form-actions,.item-actions,.head-actions,.page-actions{gap:12px;flex-wrap:wrap}.filter-bar{flex-wrap:wrap;gap:10px}.form-grid input,.form-grid select,.form-grid textarea{min-width:0}.form-grid textarea{resize:vertical}.empty-state,.table-empty{height:auto;min-height:120px;padding:24px;line-height:1.65}.empty-state a,.table-empty a{color:inherit}.modal-card{max-height:90dvh;overscroll-behavior:contain}.task-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px}.task-title{min-width:200px;max-width:420px;white-space:normal;overflow-wrap:anywhere}.task-feedback{margin-bottom:20px}.filter-bar input,.filter-bar select{min-width:0}.empty-hint{display:block;font-size:12px;color:var(--muted);margin-top:8px}.report-filter{flex-wrap:wrap}.report-custom{flex-wrap:wrap}.form-actions .primary-action{margin-left:0}.notice[role=alert]{scroll-margin-top:90px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(max-width:760px){.top-search{display:flex;flex:0 0 42px;padding:0;justify-content:center;font-size:22px}.top-search span,.top-search kbd{display:none}.topbar{gap:12px}.menu-button{width:42px;height:42px}.sidebar{height:100dvh}.sidebar nav{overscroll-behavior:contain}.topbar-actions{margin-left:auto}.form-grid{grid-template-columns:minmax(0,1fr)}.form-grid .span2{grid-column:1/-1}.modal-card{padding:20px 16px}.filter-bar>*{max-width:100%}.metric-card strong{overflow-wrap:anywhere}.week-board{overflow-x:auto;max-width:100%;grid-template-columns:repeat(7,minmax(170px,1fr))}.report-tabs{max-width:100%;overflow:auto}.report-custom input{max-width:100%}.icon-button,.check-button,.modal-close,.text-button{min-width:40px;min-height:40px}.page-head h1{font-size:28px}.confirm-dialog .form-actions{justify-content:flex-end}}

/* CRUD consistente */
.crud-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.crud-actions form{margin:0}.crud-edit-button,.crud-delete-button{font:inherit;border:0;background:transparent;cursor:pointer;font-size:var(--font-xs);font-weight:700;padding:5px 7px;border-radius:7px}.crud-edit-button{color:var(--text)}.crud-edit-button:hover{background:var(--surface-2,#f1f2f4)}.crud-delete-button{color:#9a5454}.crud-delete-button:hover{background:#fff0f0}.crud-card-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}


/* Compromissos financeiros — filtro mensal e liquidação com valor ajustável */
.commitments-filter-panel{margin-bottom:12px}
.commitments-filter{display:grid;grid-template-columns:minmax(190px,1.15fr) repeat(3,minmax(145px,.85fr)) minmax(180px,1fr) auto;gap:10px;align-items:end}
.commitments-filter label{display:grid;gap:6px;font-size:var(--font-xs);font-weight:700;color:var(--muted)}
.commitments-filter input,.commitments-filter select{width:100%;min-height:38px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);padding:8px 10px;font:inherit}
.commitments-month-nav{display:grid;grid-template-columns:36px minmax(130px,1fr) 36px;gap:6px;align-items:end}
.commitments-month-nav label{min-width:0}
.commitments-month-nav .icon-button{height:38px;width:36px;display:grid;place-items:center;text-decoration:none;font-size:20px}
.commitments-filter-actions{display:flex;gap:7px;align-items:center}
.commitments-filter-actions .link-action{white-space:nowrap}
.commitments-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}
.settle-context{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#f7f8f9;border:1px solid var(--line);border-radius:12px;padding:12px}
.settle-context span{display:grid;gap:3px;color:var(--muted);font-size:var(--font-xs)}
.settle-context strong{color:var(--text);font-size:12px}
@media(max-width:1180px){.commitments-filter{grid-template-columns:repeat(3,1fr)}.commitments-filter-actions{justify-content:flex-end}.commitments-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.commitments-filter{grid-template-columns:1fr}.commitments-search{grid-column:auto}.commitments-filter-actions{justify-content:stretch}.commitments-filter-actions>*{flex:1;text-align:center}.commitments-summary{grid-template-columns:1fr 1fr}.settle-context{grid-template-columns:1fr}}
@media(max-width:480px){.commitments-summary{grid-template-columns:1fr}}


/* Tema global Claro / Escuro / Sistema */
html{color-scheme:light}
html[data-theme="dark"]{color-scheme:dark;}
html[data-theme="dark"] body{background:var(--bg);color:var(--text)}
.theme-toggle{width:40px;height:40px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);display:grid;place-items:center;font-size:18px;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease}
.theme-toggle:hover{background:var(--surface2)}
.theme-toggle:active{transform:scale(.96)}
.topbar-actions{display:flex;align-items:center;gap:9px}
.topbar-icon{position:relative;display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:10px;color:var(--text);text-decoration:none;background:var(--surface)}
html[data-theme="dark"] .topbar{background:rgba(13,16,20,.86)}
html[data-theme="dark"] .top-search{background:#171c22;border-color:var(--line);color:#a3acb8}
html[data-theme="dark"] .top-search kbd{background:#20262e;border-color:#343c47;color:#b8c0ca}
html[data-theme="dark"] .menu-button,
html[data-theme="dark"] .icon-button,
html[data-theme="dark"] .text-button,
html[data-theme="dark"] .text-link{color:var(--muted)}
html[data-theme="dark"] .status-pill,
html[data-theme="dark"] .secondary-button,
html[data-theme="dark"] .secondary-action,
html[data-theme="dark"] .check-button{background:var(--surface);border-color:var(--line);color:var(--text)}
html[data-theme="dark"] .metric-icon,
html[data-theme="dark"] .empty-icon,
html[data-theme="dark"] .modal-close,
html[data-theme="dark"] .search-close{background:var(--surface2);color:var(--text)}
html[data-theme="dark"] .metric-top,
html[data-theme="dark"] .metric-card small,
html[data-theme="dark"] .eyebrow{color:var(--muted)}
html[data-theme="dark"] .filter-bar input,
html[data-theme="dark"] .filter-bar select,
html[data-theme="dark"] .form-grid input,
html[data-theme="dark"] .form-grid select,
html[data-theme="dark"] .form-grid textarea,
html[data-theme="dark"] .goal-filters select,
html[data-theme="dark"] .commitments-filter input,
html[data-theme="dark"] .commitments-filter select,
html[data-theme="dark"] .report-filter select,
html[data-theme="dark"] .report-filter input{background:#11161b;border-color:var(--line);color:var(--text)}
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder{color:#697482}
html[data-theme="dark"] input[type="date"],
html[data-theme="dark"] input[type="datetime-local"],
html[data-theme="dark"] input[type="month"]{color-scheme:dark}
html[data-theme="dark"] .data-table th{background:#11161b;color:#9ca5b1;border-color:var(--line)}
html[data-theme="dark"] .data-table td{border-color:#252c35}
html[data-theme="dark"] .finance-row{border-color:#252c35}
html[data-theme="dark"] .modal-card,
html[data-theme="dark"] .confirm-dialog{background:var(--surface);color:var(--text);border-color:var(--line)}
html[data-theme="dark"] .modal,
html[data-theme="dark"] .command-overlay{background:rgba(0,0,0,.66)}
html[data-theme="dark"] .command-box,
html[data-theme="dark"] .command-input-wrap,
html[data-theme="dark"] .command-results,
html[data-theme="dark"] .command-footer{background:var(--surface);color:var(--text);border-color:var(--line)}
html[data-theme="dark"] .command-input-wrap input{background:transparent;color:var(--text)}
html[data-theme="dark"] .command-result{color:var(--text);border-color:var(--line)}
html[data-theme="dark"] .command-result:hover,
html[data-theme="dark"] .command-result.active{background:var(--surface2)}
html[data-theme="dark"] .quick-add-grid a,
html[data-theme="dark"] .shortcut-stack a{background:var(--surface);border-color:var(--line);color:var(--text)}
html[data-theme="dark"] :is(.insight,.home-finance-numbers div,.signal-grid div,.week-stats div,.nutrition-report-grid div,.settle-context){background:var(--surface2);border-color:var(--line)}
html[data-theme="dark"] .progress-track{background:#252c35}
html[data-theme="dark"] .week-strip-day{background:var(--surface);border-color:var(--line)}
html[data-theme="dark"] .week-strip-day.today{background:#303943;border-color:#3c4652;color:#fff}
html[data-theme="dark"] .home-goal-row{border-color:var(--line)}
html[data-theme="dark"] .focus-primary{background:linear-gradient(145deg,#252c35,#171c22)}
html[data-theme="dark"] .report-tabs{background:#10151a}
html[data-theme="dark"] .report-tabs a{color:var(--muted)}
html[data-theme="dark"] .report-tabs a.active{background:var(--surface2);color:var(--text);box-shadow:none}
html[data-theme="dark"] .report-filter{background:var(--surface);border-color:var(--line)}
html[data-theme="dark"] .report-dual-bars i,
html[data-theme="dark"] .report-ranking i{background:#252d36}
html[data-theme="dark"] .budget-notice{background:#12251b;border-color:#28543b;color:#a9d6bc}
html[data-theme="dark"] .budget-notice.error{background:#2a1715;border-color:#6c3730;color:#efb7ab}
html[data-theme="dark"] .budget-context strong{color:var(--text)}
html[data-theme="dark"] .notice.success{background:#12251b;border-color:#28543b;color:#a9d6bc}
html[data-theme="dark"] .notice.error,
html[data-theme="dark"] .alert{background:#2a1715;border-color:#6c3730;color:#efb7ab}
html[data-theme="dark"] .badge{background:#252b33;color:#b6bec8}
html[data-theme="dark"] .badge.settled{background:#143225;color:#8ed1ad}
html[data-theme="dark"] .badge.pending{background:#332b12;color:#e1c66f}
html[data-theme="dark"] .badge.cancelled{background:#242930;color:#9da6b1}
html[data-theme="dark"] .crud-edit-button:hover{background:var(--surface2)}
html[data-theme="dark"] .crud-delete-button{color:#df8e8e}
html[data-theme="dark"] .crud-delete-button:hover{background:#321b1b}
html[data-theme="dark"] .skip-link{background:var(--surface);color:var(--text)}
html[data-theme="dark"] .auth-body{background:#0b0e12}
html[data-theme="dark"] .login-panel{background:#0d1014}
html[data-theme="dark"] .login-card{background:var(--surface);border-color:var(--line);color:var(--text)}
html[data-theme="dark"] .login-card input{background:#11161b;border-color:var(--line);color:var(--text)}
html[data-theme="dark"] .login-card input:focus{border-color:#667483;box-shadow:0 0 0 3px #202831}
.two-factor-card{width:min(430px,100%)}
.two-factor-card form{display:grid}
.two-factor-help{display:block;margin-top:8px;color:var(--muted);font-size:11px;line-height:1.5}
.two-factor-divider{display:flex;align-items:center;gap:12px;margin:22px 0 2px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.1em}
.two-factor-divider::before,.two-factor-divider::after{content:"";height:1px;flex:1;background:var(--line)}
.secondary-login-button{margin-top:16px;background:var(--surface2);color:var(--text);border:1px solid var(--line)}
.two-factor-back{display:block;margin-top:20px;text-align:center}
html[data-theme="dark"] .login-button{background:#3f6f5b;color:#fff}
html[data-theme="dark"] .settings-grid small{color:var(--muted)}
html[data-theme="dark"] select option{background:#11161b;color:var(--text)}
@media(max-width:760px){.topbar-actions{gap:6px}.theme-toggle,.topbar-icon{width:38px;height:38px}}


/* Faturas: detalhamento completo dos lançamentos por vencimento */
.invoice-list{display:grid;gap:18px}
.invoice-panel{padding:0;overflow:hidden}
.invoice-header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;padding:22px 24px;border-bottom:1px solid var(--line)}
.invoice-header h3{margin:4px 0 5px}
.invoice-header p{margin:0;color:var(--muted)}
.invoice-header-total{text-align:right;display:grid;justify-items:end;gap:5px}
.invoice-header-total small{color:var(--muted)}
.invoice-details{border-bottom:1px solid var(--line)}
.invoice-details summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 24px;cursor:pointer;background:var(--surface2);user-select:none}
.invoice-details summary::-webkit-details-marker{display:none}
.invoice-details summary span{font-weight:700}
.invoice-details summary strong{font-size:13px;color:var(--muted)}
.invoice-details summary::after{content:'⌄';font-size:18px;color:var(--muted);transition:transform .15s ease}
.invoice-details[open] summary::after{transform:rotate(180deg)}
.invoice-details summary strong{margin-left:auto}
.invoice-items-table td{vertical-align:top}
.invoice-items-table td:nth-child(1){white-space:nowrap}
.invoice-items-table td:last-child{white-space:nowrap}
.invoice-item-note{display:block;margin-top:4px;color:var(--muted);font-weight:400}
.invoice-items-table tfoot td{background:var(--surface2);border-top:1px solid var(--line)}
.invoice-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 24px}
.invoice-check{display:grid;gap:2px}
.invoice-check span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.invoice-check strong{font-size:20px}
.invoice-pay-form{margin:0}
.invoice-paid-note{font-size:14px;color:var(--muted)}
html[data-theme="dark"] .invoice-details summary,
html[data-theme="dark"] .invoice-items-table tfoot td{background:var(--surface2)}
@media(max-width:900px){
  .invoice-header{flex-direction:column}
  .invoice-header-total{text-align:left;justify-items:start}
  .invoice-footer{align-items:stretch;flex-direction:column}
  .invoice-pay-form{display:grid;grid-template-columns:1fr auto}
}
@media(max-width:620px){
  .invoice-header,.invoice-footer{padding:18px}
  .invoice-details summary{padding:14px 18px}
  .invoice-pay-form{grid-template-columns:1fr}
}


/* Contas e cartões: correção visual no tema escuro */
html[data-theme="dark"] .account-card,
html[data-theme="dark"] .account-card.card{
    background:var(--surface);
    border-color:var(--line);
    color:var(--text);
    box-shadow:var(--shadow);
}
html[data-theme="dark"] .account-card small,
html[data-theme="dark"] .account-card span{
    color:var(--muted);
}
html[data-theme="dark"] .account-card h3,
html[data-theme="dark"] .account-card strong{
    color:var(--text);
}
html[data-theme="dark"] .account-card .account-icon{
    background:var(--surface2);
    color:var(--muted);
}
html[data-theme="dark"] .account-card hr,
html[data-theme="dark"] .account-card .crud-card-actions{
    border-color:var(--line);
}
html[data-theme="dark"] .account-card .crud-edit-button{
    color:var(--text);
}


/* Select pesquisável para listas grandes */
.searchable-select{position:relative;width:100%}
.searchable-select-native{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.searchable-select-input{width:100%;padding-right:42px!important}
.searchable-select-toggle{position:absolute;right:1px;top:1px;width:38px;height:calc(100% - 2px);border:0;border-left:1px solid var(--line);border-radius:0 9px 9px 0;background:transparent;color:var(--muted);cursor:pointer;font-size:16px}
.searchable-select-toggle:hover{background:var(--surface2);color:var(--text)}
.searchable-select-list{position:absolute;z-index:80;left:0;right:0;top:calc(100% + 6px);max-height:260px;overflow:auto;padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 14px 35px rgba(0,0,0,.16)}
.searchable-select-option{display:block;width:100%;padding:9px 10px;border:0;border-radius:7px;background:transparent;color:var(--text);text-align:left;cursor:pointer;font:inherit}
.searchable-select-option:hover,.searchable-select-option.active{background:var(--surface2)}
.searchable-select-option.selected{font-weight:700}
.searchable-select-empty{padding:10px;color:var(--muted);font-size:13px}
html[data-theme="dark"] .searchable-select-list{background:var(--surface);border-color:var(--line);box-shadow:0 16px 38px rgba(0,0,0,.38)}
html[data-theme="dark"] .searchable-select-input{background:#11161b;border-color:var(--line);color:var(--text)}
html[data-theme="dark"] .searchable-select-toggle{border-color:var(--line);color:var(--muted)}


/* Selects pesquisáveis em todos os formulários e filtros */
.filter-bar .searchable-select,
.inline-form .searchable-select,
.form-grid .searchable-select,
.report-filter .searchable-select,
.goal-filters .searchable-select,
.commitments-filter .searchable-select{min-width:0}
.inline-form .searchable-select{flex:1 1 190px}
.filter-bar .searchable-select-input,
.inline-form .searchable-select-input,
.form-grid .searchable-select-input,
.report-filter .searchable-select-input,
.goal-filters .searchable-select-input,
.commitments-filter .searchable-select-input{box-sizing:border-box}
.searchable-select-input:disabled,
.searchable-select-toggle:disabled{opacity:.55;cursor:not-allowed}
/* Evolução corporal · galeria privada */
.body-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:16px}.body-photo-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--surface2)}.body-photo-image{display:block;aspect-ratio:3/4;background:var(--surface2);overflow:hidden}.body-photo-image img{width:100%;height:100%;display:block;object-fit:cover}.body-photo-info{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 12px 8px}.body-photo-info>div{display:flex;flex-direction:column;gap:2px}.body-photo-info small,.body-photo-measurement{color:var(--muted);font-size:.78rem}.body-photo-measurement{padding:0 12px 12px;line-height:1.4}@media(max-width:640px){.body-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.body-photo-info{padding:10px 10px 6px}.body-photo-measurement{padding:0 10px 10px}}

/* Planejamento · execução diária de rotinas */
.routine-today-panel{grid-column:1/-1}.routine-today-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.routine-today-card{border:1px solid var(--line);border-radius:16px;padding:16px;background:var(--surface2);display:grid;gap:12px}.routine-today-card.is-complete{opacity:.82}.routine-today-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.routine-today-head>div{min-width:0}.routine-today-title{display:flex;align-items:center;gap:10px}.routine-today-title strong{overflow-wrap:anywhere}.routine-today-head small{display:block;margin-top:5px;color:var(--muted)}.routine-progress{height:6px;border-radius:999px;overflow:hidden;background:var(--line)}.routine-progress span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .2s ease}.routine-checklist{display:grid;gap:6px}.routine-check-row{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px;margin:0}.routine-check-row .check-button{margin:0}.routine-item-label{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-width:0;padding:8px 10px;border:0;border-radius:9px;background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.routine-item-label:hover{background:var(--surface)}.routine-item-label span{overflow-wrap:anywhere}.routine-item-label small{white-space:nowrap;color:var(--muted)}.routine-check-row.done .routine-item-label span{text-decoration:line-through;color:var(--muted)}.routine-empty-items{margin:2px 0 0}.routine-empty-items a{color:var(--text);font-weight:700}@media(max-width:760px){.routine-today-panel{grid-column:auto}.routine-today-list{grid-template-columns:1fr}.routine-today-card{padding:14px}}

/* Planner · agenda semanal das rotinas */
.weekday-fieldset{border:0;padding:0;margin:0;min-width:0}.weekday-fieldset legend{font-weight:700;margin-bottom:.55rem}.weekday-fieldset>small{display:block;margin-top:.55rem;color:var(--muted)}.weekday-picker{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem}.weekday-picker label{position:relative;cursor:pointer}.weekday-picker input{position:absolute;opacity:0;pointer-events:none}.weekday-picker span{display:flex;align-items:center;justify-content:center;min-height:42px;border:1px solid var(--border);border-radius:12px;background:var(--surface);font-size:.86rem;font-weight:700;transition:.15s ease}.weekday-picker input:checked+span{border-color:var(--text);background:var(--text);color:var(--surface)}.weekday-picker input:focus-visible+span{outline:2px solid var(--text);outline-offset:2px}@media(max-width:620px){.weekday-picker{grid-template-columns:repeat(4,minmax(0,1fr))}}


.routine-dashboard-row{align-items:flex-start}.routine-dashboard-main{flex:1;min-width:0}.routine-dashboard-progress{height:5px;border-radius:999px;overflow:hidden;background:var(--line);margin-top:6px}.routine-dashboard-progress span{display:block;height:100%;background:var(--accent);border-radius:inherit}.routine-dashboard-progress.large{height:8px;margin-top:10px}.planner-day-progress{margin-bottom:18px}.planner-progress-line{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.planner-progress-line>strong{font-size:1.1rem}.planner-day-progress .muted{margin:10px 0 0}


.goal-actions-panel{margin:18px 0}.goal-action-list{display:grid;gap:10px;margin:14px 0}.goal-action-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:12px}.goal-action-row.is-complete{opacity:.68}.goal-action-row p{margin:4px 0 0}.goal-action-form{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.task-goal-link{font-weight:600}


.planner-goal-focus{margin-top:18px}.planner-goal-list,.today-goal-list{display:grid;gap:10px}.planner-goal-row,.today-goal-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:inherit}.planner-goal-row:hover,.today-goal-row:hover{border-color:var(--accent)}.planner-goal-copy{flex:1;min-width:0}.planner-goal-copy strong,.planner-goal-copy small,.today-goal-row strong,.today-goal-row small{display:block}.planner-goal-progress{height:5px;border-radius:999px;overflow:hidden;background:var(--line);margin-top:7px}.planner-goal-progress span{display:block;height:100%;background:var(--accent);border-radius:inherit}.today-goal-focus{grid-column:1/-1}.today-goal-row>span{font-weight:700;white-space:nowrap}


.study-next-block{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.study-next-block h3,.study-next-block p{margin-bottom:4px}.cycle-row.is-next{outline:1px solid var(--accent);background:color-mix(in srgb,var(--accent) 7%,transparent)}.study-cycle-selection{display:grid;gap:3px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft)}.study-cycle-selection strong{font-size:1.05rem}.study-cycle-selection small{color:var(--text-muted)}
@media (max-width:700px){.study-next-block{align-items:flex-start;flex-direction:column}.study-next-block .primary-action{width:100%;text-align:center}}


.study-review-summary{margin-bottom:18px}.review-row.is-overdue{border-color:color-mix(in srgb,#b74a4a 55%,var(--line));background:color-mix(in srgb,#b74a4a 6%,transparent)}.study-upcoming-reviews{margin-top:18px}.study-review-help{margin-top:18px}.study-review-help p{max-width:900px}.form-grid label>small{display:block;margin-top:5px;color:var(--text-muted);font-weight:400}


.study-performance-summary{margin-bottom:18px}.study-activity-chart{margin-bottom:18px}.study-bars{display:grid;grid-template-columns:repeat(14,minmax(22px,1fr));gap:8px;align-items:end;height:230px;padding-top:10px}.study-bar-day{height:100%;display:grid;grid-template-rows:1fr auto;gap:7px;text-align:center;min-width:0}.study-bar-track{height:100%;display:flex;align-items:flex-end;justify-content:center;border-radius:9px;background:color-mix(in srgb,var(--line) 45%,transparent);overflow:hidden}.study-bar-track span{display:block;width:100%;min-height:0;background:var(--accent);border-radius:7px 7px 0 0}.study-bar-day small{font-size:.68rem;white-space:nowrap;color:var(--text-muted)}.study-performance-grid{margin-top:0}.study-distribution-list,.study-activity-list{display:grid;gap:14px}.study-distribution-row{display:grid;gap:7px}.study-distribution-row small,.study-activity-row small{display:block;color:var(--text-muted);margin-top:2px}.study-distribution-track{height:7px;background:var(--line);border-radius:999px;overflow:hidden}.study-distribution-track span{display:block;height:100%;background:var(--accent);border-radius:inherit}.study-activity-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:11px;border-bottom:1px solid var(--line)}.study-activity-row:last-child{border-bottom:0;padding-bottom:0}.study-performance-note{margin-top:18px}.study-performance-note p{max-width:950px}
@media(max-width:760px){.study-bars{gap:4px;overflow-x:auto;grid-template-columns:repeat(14,32px);justify-content:start}.study-bar-day small{font-size:.62rem}}


.study-cycle-adherence{margin-bottom:18px}.study-cycle-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.study-cycle-metrics>div{padding:13px 14px;border:1px solid var(--line);border-radius:14px}.study-cycle-metrics span,.study-cycle-metrics small{display:block;color:var(--text-muted)}.study-cycle-metrics strong{display:block;font-size:1.35rem;margin:3px 0}.study-cycle-warning{margin:14px 0 0;padding:10px 12px;border:1px solid color-mix(in srgb,#b98528 45%,var(--line));border-radius:12px;background:color-mix(in srgb,#b98528 7%,transparent)}.study-cycle-detail{margin-top:18px}.study-cycle-table{display:grid}.study-cycle-performance-row{display:grid;grid-template-columns:minmax(220px,2fr) repeat(5,minmax(90px,1fr));gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.study-cycle-performance-row:last-child{border-bottom:0}.study-cycle-performance-row>div:not(.study-cycle-performance-main) span{display:block;font-size:.72rem;color:var(--text-muted)}.study-cycle-performance-row>div:not(.study-cycle-performance-main) strong{display:block;margin-top:2px}.study-cycle-performance-main small{display:block;color:var(--text-muted);margin-top:3px}.study-cycle-performance-row.is-missing{opacity:.66}
@media(max-width:900px){.study-cycle-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.study-cycle-performance-row{grid-template-columns:1fr 1fr}.study-cycle-performance-main{grid-column:1/-1}}@media(max-width:520px){.study-cycle-metrics{grid-template-columns:1fr}}


.finance-dashboard-forecast{margin:18px 0}.finance-forecast-mini{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:18px;align-items:center}.finance-forecast-mini>div{padding:12px 14px;border:1px solid var(--line);border-radius:14px}.finance-forecast-mini span,.finance-forecast-mini strong{display:block}.finance-forecast-mini>div>span{color:var(--text-muted);font-size:.8rem}.finance-forecast-mini>div>strong{font-size:1.15rem;margin-top:3px}.finance-forecast-arrow{font-size:1.35rem;color:var(--text-muted)}.finance-mini-warning{margin:12px 0 0;color:#b74a4a}.forecast-negative{color:#b74a4a!important}.finance-forecast-filter{margin-bottom:18px}.finance-forecast-summary{margin-bottom:18px}.finance-forecast-alert,.finance-forecast-ok{margin-bottom:18px}.finance-forecast-months{margin-bottom:18px}.forecast-month-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.forecast-month-card{padding:14px;border:1px solid var(--line);border-radius:14px;display:grid;gap:12px}.forecast-month-card small{display:block;color:var(--text-muted);margin-top:3px}.forecast-month-values{display:grid;grid-template-columns:1fr 1fr;gap:6px}.forecast-month-values b{grid-column:1/-1;padding-top:6px;border-top:1px solid var(--line)}.forecast-month-values .income{color:var(--success,#2f8f5b)}.forecast-month-values .expense,.forecast-month-values .negative{color:#b74a4a}.forecast-row-negative{background:color-mix(in srgb,#b74a4a 6%,transparent)}.finance-forecast-note{margin-top:18px}.finance-forecast-note p{max-width:950px}
@media(max-width:760px){.finance-forecast-mini{grid-template-columns:1fr}.finance-forecast-arrow{transform:rotate(90deg);justify-self:center}}


.finance-analysis-toolbar{margin-bottom:18px}.finance-analysis-summary{margin-bottom:18px}.finance-analysis-pending{margin-bottom:18px}.finance-analysis-grid{margin-bottom:18px}.finance-category-analysis{display:grid;gap:14px}.finance-category-analysis-row>div:first-child{display:flex;justify-content:space-between;gap:14px}.finance-category-analysis-row span,.finance-category-analysis-row small{color:var(--text-muted)}.finance-analysis-track{height:7px;background:var(--line);border-radius:999px;overflow:hidden;margin:7px 0 4px}.finance-analysis-track span{display:block;height:100%;background:var(--accent);border-radius:inherit}.finance-recurring-analysis{display:grid;grid-template-columns:1fr 1fr;gap:12px}.finance-recurring-analysis>div,.finance-comparison-grid>div{padding:14px;border:1px solid var(--line);border-radius:14px}.finance-recurring-analysis span,.finance-recurring-analysis small,.finance-comparison-grid span{display:block;color:var(--text-muted)}.finance-recurring-analysis strong,.finance-comparison-grid strong{display:block;font-size:1.2rem;margin:4px 0}.finance-analysis-history{margin-bottom:18px}.finance-analysis-bars{display:grid;grid-template-columns:repeat(6,minmax(70px,1fr));gap:16px;align-items:end;height:260px}.finance-analysis-month{height:100%;display:grid;grid-template-rows:1fr auto auto;gap:5px;text-align:center}.finance-analysis-bar-pair{display:flex;align-items:flex-end;justify-content:center;gap:5px;height:100%}.finance-analysis-bar-pair i{display:block;width:min(28px,42%);border-radius:7px 7px 0 0}.finance-analysis-bar-pair i.income{background:var(--accent)}.finance-analysis-bar-pair i.expense{background:#b74a4a}.finance-analysis-month small{color:var(--text-muted)}.finance-comparison-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.finance-analysis-note{margin-top:18px}.positive{color:var(--success,#2f8f5b)}
@media(max-width:760px){.finance-recurring-analysis,.finance-comparison-grid{grid-template-columns:1fr 1fr}.finance-analysis-bars{overflow-x:auto;grid-template-columns:repeat(6,86px);justify-content:start}}@media(max-width:480px){.finance-recurring-analysis,.finance-comparison-grid{grid-template-columns:1fr}}


.finance-installments-filter{margin-bottom:18px}.finance-installments-summary{margin-bottom:18px}.finance-installment-list{display:grid;gap:18px}.finance-installment-card.is-finished{opacity:.78}.finance-installment-card .panel-head p{margin:4px 0 0;color:var(--text-muted)}.finance-installment-status{display:flex;align-items:center}.finance-installment-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}.finance-installment-metrics>div{padding:12px 14px;border:1px solid var(--line);border-radius:13px}.finance-installment-metrics span{display:block;color:var(--text-muted);font-size:.78rem}.finance-installment-metrics strong{display:block;margin-top:3px}.finance-installment-progress{margin-top:5px}.finance-installment-progress-label{display:block;margin-top:6px;color:var(--text-muted)}.finance-installment-details{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.finance-installment-details>summary{cursor:pointer;font-weight:600}.finance-installment-details .table-wrap{margin-top:12px}.finance-installment-actions{display:flex;justify-content:flex-end;margin-top:14px}.finance-installments-note{margin-top:18px}.finance-installments-note p{max-width:980px}
@media(max-width:760px){.finance-installment-metrics{grid-template-columns:1fr 1fr}}@media(max-width:460px){.finance-installment-metrics{grid-template-columns:1fr}}


.finance-contacts-filter{margin-bottom:18px}.is-muted{opacity:.58}.checkbox-row{display:flex!important;align-items:center;gap:9px}.checkbox-row input{width:auto}

/* Revisão de views: componentes comuns, formulários e temas (2026-09). */
:root{--surface-soft:var(--surface2);--text-muted:var(--muted);--field-bg:var(--surface)}
html[data-theme="dark"]{--field-bg:#11161b}
.content{overflow-wrap:break-word}
.content-grid{display:grid;gap:18px;margin:18px 0;min-width:0}
.content-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.content-grid>*{min-width:0}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px}
.stat-card{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:19px}
.stat-card>span,.stat-card>small{display:block;color:var(--muted);font-size:12px;line-height:1.5}
.stat-card>strong{display:block;font-size:26px;line-height:1.2;letter-spacing:-.035em;margin:12px 0 6px;overflow-wrap:anywhere}
.content>.panel+.panel,.planning-summary{margin-bottom:18px}.content>.panel+.panel{margin-top:18px}
.panel h2{font-size:20px;line-height:1.3;margin:5px 0 0;overflow-wrap:anywhere}
.panel-head{gap:14px;margin-bottom:16px;align-items:flex-start}
.panel-head>div{min-width:0}.panel-head>a{flex-shrink:0}
.table-panel>.panel-head{padding:20px 22px 0}
.table-panel>.report-note,.table-panel>p{padding-inline:22px}
.focus-card{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:18px;background:var(--surface2);border:1px solid var(--line);border-radius:14px;margin-top:16px}
.focus-card>div{min-width:0;flex:1 1 160px}.focus-card strong{display:block}.focus-card p{color:var(--muted);font-size:13px;line-height:1.6;margin:6px 0 0}
.compact-list{display:grid;margin-top:14px}.compact-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}
.compact-row:last-child{border-bottom:0}.compact-row>div{min-width:0}.compact-row strong,.compact-row small{display:block;overflow-wrap:anywhere}.compact-row small{color:var(--muted);font-size:12px;line-height:1.55;margin-top:5px}.compact-row>span{font-size:12px;flex-shrink:0;color:var(--muted)}
.pill{display:inline-flex;align-items:center;gap:5px;width:fit-content;max-width:100%;padding:5px 9px;border:1px solid var(--line);border-radius:999px;background:var(--surface2);color:var(--muted);font-size:var(--font-xs);line-height:1.5;font-weight:600;white-space:normal}
.pill.active,.pill.success{color:var(--success)}.pill.warning{color:#936118;background:#fff3dc}.pill.danger{color:#9f3838;background:#fff0f0}
.ghost-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 12px;min-height:38px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--text);font-size:12px;font-weight:600;cursor:pointer}.ghost-button:hover{background:var(--surface2)}
.text-link,.back-link,:where(.content,.modal-card) a:not([class]){color:var(--link);font-size:13px;line-height:1.5;text-underline-offset:3px;overflow-wrap:anywhere}
.text-link:hover,.back-link:hover,:where(.content,.modal-card) a:not([class]):hover{text-decoration:underline}
.primary-action,.secondary-action,.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;line-height:1.4;text-align:center;text-decoration:none;white-space:normal}
.empty-state .primary-action{margin:14px 0 0}.empty-state{gap:7px}.empty-state h3,.empty-state h4{margin:0}.empty-state p{max-width:60ch}
:where(.content,.modal-card) :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=button]):not([type=submit]),select,textarea){font:inherit;max-width:100%;min-width:0;border:1px solid var(--line);border-radius:10px;padding:10px 11px;background:var(--field-bg);color:var(--text);line-height:1.4}
.inline-form label,.filter-bar label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600;color:var(--muted);min-width:0}
.inline-form label{flex:1 1 180px}.inline-form input,.inline-form select,.inline-form textarea{width:100%}.inline-form>small{color:var(--muted);line-height:1.6}
.inline-form .searchable-select{flex:none}.searchable-select-input{font:inherit;min-height:42px;border:1px solid var(--line);border-radius:10px;background:var(--field-bg);color:var(--text);padding:10px 42px 10px 11px}
.form-grid label{color:var(--muted);line-height:1.5}.form-grid :is(.span2,.span-2){grid-column:1/-1}
:where(.content,.modal-card) input:is([type=checkbox],[type=radio]){width:18px;height:18px;min-width:18px;flex:none;accent-color:var(--accent);padding:0}
.form-grid :is(.check-field,.checkbox-row){flex-direction:row;align-items:center;gap:9px}
input[type=file]{font-size:12px;overflow:hidden}input[type=file]::file-selector-button{border:0;border-radius:6px;padding:6px 8px;margin-right:8px;background:var(--surface2);color:var(--text);cursor:pointer}
.searchable-select-option{overflow-wrap:anywhere;white-space:normal}.searchable-select-list{max-width:100%;overscroll-behavior:contain}
.table-wrap{min-width:0}.data-table td{overflow-wrap:anywhere}.data-table th{line-height:1.4}.data-table :is(.crud-actions,.inline-actions){flex-wrap:wrap}
.notice{background:var(--surface2);color:var(--text);border:1px solid var(--line);line-height:1.6}.notice.warning{background:#fff6df;color:#795715;border-color:#e8ce91}
.metric-copy{font-size:13px;line-height:1.65;color:var(--muted);margin:12px 0}.invoice-total{display:grid;gap:4px;text-align:right;min-width:0}.invoice-total strong{font-size:24px;overflow-wrap:anywhere}.invoice-total small{color:var(--muted)}
.notification-body{min-width:0;flex:1}.notification-body p{overflow-wrap:anywhere;line-height:1.6}.week-routine-progress{margin-top:12px;color:var(--muted);font-size:12px}
html[data-theme="dark"] :is(.week-day,.goal-card,.target-strip>div,.macro-mini-grid>div){background:var(--surface);border-color:var(--line);color:var(--text)}
html[data-theme="dark"] .week-item{background:var(--surface2)}
html[data-theme="dark"] .data-table td{color:var(--text)}
html[data-theme="dark"] :is(.notice.warning,.pill.warning){background:#332b12;color:#e1c66f;border-color:#5d4c23}
html[data-theme="dark"] .pill.danger{background:#321b1b;color:#efb7ab}
html[data-theme="dark"] .text-link,html[data-theme="dark"] .back-link{color:var(--link)}
:where(.content,.modal-card) :is(input,select,textarea):focus-visible{outline:3px solid #5783bd;outline-offset:2px}
@media(max-width:1100px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid.two{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){.content-grid{gap:14px}.stats-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.cards-grid{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}.form-grid :is(.span2,.span-2){grid-column:1/-1}.inline-form label{flex-basis:100%}.filter-bar{display:flex;align-items:flex-end}.filter-bar>input,.filter-bar>label,.filter-bar>.searchable-select{flex:1 1 180px}.filter-bar>button{flex:0 1 auto}.panel-head>a{flex-shrink:1}.table-panel>.panel-head{padding:16px 16px 0}.compact-row{flex-wrap:wrap}.stat-card>strong{font-size:24px}.invoice-total{text-align:left}.notification-body{flex-basis:180px}}
@media(max-width:480px){.stats-grid,.stats-grid.compact{grid-template-columns:minmax(0,1fr)}.content .panel{padding:18px}.content .table-panel{padding:0}.filter-bar>*{flex-basis:100%}.modal-card :is(input:not([type=checkbox]):not([type=radio]),textarea,.searchable-select-input){font-size:16px}.page-actions{width:100%}.item-card-head{flex-wrap:wrap}.focus-card{padding:14px}}

/* Filtros largos e progresso de rotinas. */
.commitments-filter{grid-template-columns:repeat(3,minmax(0,1fr))}.commitments-filter>*{min-width:0}.commitments-month-nav{min-width:0}.commitments-filter-actions{justify-content:flex-end;flex-wrap:wrap}.week-routine-progress{height:5px;border-radius:999px;background:var(--line);overflow:hidden;margin-top:8px}.week-routine-progress>span{display:block;height:100%;background:var(--success);border-radius:inherit}.week-item.routine.is-complete{border-left:3px solid var(--success)}
@media(max-width:760px){.commitments-filter{grid-template-columns:minmax(0,1fr)}.commitments-filter-actions{justify-content:stretch}}
.table-wrap{position:relative}.data-table{min-width:640px}.data-table .inline-actions{min-width:170px}.data-table .badge{overflow-wrap:normal}


.investment-allocation-summary-panel{margin:18px 0}.investment-allocation-mini{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.investment-allocation-mini>div{padding:12px 14px;border:1px solid var(--line);border-radius:14px}.investment-allocation-mini span,.investment-allocation-mini small{display:block;color:var(--text-muted)}.investment-allocation-mini strong{display:block;font-size:1.15rem;margin-top:3px}.investment-allocation-summary{margin-bottom:18px}.investment-target-warning{margin-bottom:18px}.investment-priority-card{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:18px}.investment-priority-card p{margin-bottom:0}.investment-priority-value{text-align:right}.investment-priority-value span,.investment-priority-value small{display:block;color:var(--text-muted)}.investment-priority-value strong{display:block;font-size:1.35rem;margin:4px 0}.investment-allocation-table{margin-bottom:18px}.investment-allocation-groups{margin-bottom:18px}.investment-allocation-note p{max-width:980px}
@media(max-width:760px){.investment-allocation-mini{grid-template-columns:1fr 1fr}.investment-priority-card{display:block}.investment-priority-value{text-align:left;margin-top:14px}}@media(max-width:480px){.investment-allocation-mini{grid-template-columns:1fr}}


.investment-contribution-form-panel{margin-bottom:18px}.investment-contribution-form{display:flex;align-items:end;gap:14px;flex-wrap:wrap}.investment-contribution-form label{min-width:min(100%,320px);flex:1}.investment-contribution-summary{margin-bottom:18px}.investment-contribution-empty{margin-bottom:18px}.investment-contribution-highlight{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}.investment-contribution-highlight h2{margin:4px 0}.investment-contribution-highlight p{margin:4px 0 0;color:var(--text-muted)}.investment-contribution-highlight>div:last-child{text-align:right}.investment-contribution-highlight>div:last-child span,.investment-contribution-highlight>div:last-child small{display:block;color:var(--text-muted)}.investment-contribution-highlight>div:last-child strong{display:block;font-size:1.4rem}.investment-contribution-table{margin-bottom:18px}.investment-contribution-table td small{display:block;color:var(--text-muted);margin-top:2px}.investment-contribution-note p{max-width:980px}
@media(max-width:680px){.investment-contribution-highlight{display:grid}.investment-contribution-highlight>div:last-child{text-align:left}}


.investment-performance-filter{margin-bottom:18px}.investment-performance-summary{margin-bottom:18px}.investment-flow-overview{margin-bottom:18px}.investment-flow-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.investment-flow-metrics>div{padding:13px 14px;border:1px solid var(--line);border-radius:14px}.investment-flow-metrics span{display:block;color:var(--text-muted);font-size:.8rem}.investment-flow-metrics strong{display:block;margin-top:4px;font-size:1.15rem}.investment-performance-chart{margin-bottom:18px}.investment-performance-bars{display:grid;grid-template-columns:repeat(auto-fit,minmax(42px,1fr));gap:8px;align-items:end;height:250px}.investment-performance-month{height:100%;display:grid;grid-template-rows:1fr auto;gap:6px;text-align:center}.investment-performance-bar-group{height:100%;display:flex;gap:3px;align-items:flex-end;justify-content:center}.investment-performance-bar-group i{display:block;width:30%;max-width:22px;border-radius:6px 6px 0 0}.investment-performance-bar-group .buy,.investment-performance-legend .buy{background:var(--accent)}.investment-performance-bar-group .sell,.investment-performance-legend .sell{background:#b98528}.investment-performance-bar-group .income,.investment-performance-legend .income{background:var(--success,#2f8f5b)}.investment-performance-month small{color:var(--text-muted);font-size:.7rem}.investment-performance-legend{display:flex;gap:18px;justify-content:center;margin-top:12px;color:var(--text-muted)}.investment-performance-legend span{display:flex;align-items:center;gap:6px}.investment-performance-legend i{width:10px;height:10px;border-radius:3px}.investment-performance-grid{margin-bottom:18px}.investment-performance-ranking,.investment-income-ranking{display:grid;gap:12px}.investment-performance-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:11px;border-bottom:1px solid var(--line)}.investment-performance-row:last-child{border-bottom:0;padding-bottom:0}.investment-performance-row>div:last-child{text-align:right}.investment-performance-row small,.investment-income-ranking small{display:block;color:var(--text-muted);margin-top:2px}.investment-income-ranking>div{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding-bottom:11px;border-bottom:1px solid var(--line)}.investment-income-ranking>div:last-child{border-bottom:0;padding-bottom:0}.investment-performance-method p{max-width:980px}
@media(max-width:760px){.investment-flow-metrics{grid-template-columns:1fr 1fr}.investment-performance-bars{overflow-x:auto;grid-template-columns:repeat(12,48px);justify-content:start}}@media(max-width:460px){.investment-flow-metrics{grid-template-columns:1fr}.investment-performance-row{align-items:flex-start}.investment-performance-row>div:last-child{min-width:120px}}


.investment-evolution-filter{margin-bottom:18px}.investment-evolution-summary{margin-bottom:18px}.investment-evolution-chart{margin-bottom:18px}.investment-evolution-bars{height:250px;display:grid;grid-template-columns:repeat(auto-fit,minmax(38px,1fr));gap:7px;align-items:end}.investment-evolution-month{height:100%;display:grid;grid-template-rows:1fr auto;gap:6px;text-align:center}.investment-evolution-column{height:100%;display:flex;align-items:flex-end;justify-content:center}.investment-evolution-column i{display:block;width:60%;max-width:34px;background:var(--accent);border-radius:7px 7px 0 0}.investment-evolution-month small{font-size:.7rem;color:var(--text-muted)}.investment-evolution-table{margin-bottom:18px}.investment-evolution-table td small{display:block;color:var(--text-muted);margin-top:2px}.investment-evolution-method p{max-width:980px}
@media(max-width:760px){.investment-evolution-bars{overflow-x:auto;grid-template-columns:repeat(12,46px);justify-content:start}}


.investment-xirr-panel{margin-bottom:18px}.investment-xirr-content{display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:center}.investment-xirr-content>div{min-width:150px}.investment-xirr-content>div strong{display:block;font-size:2rem;line-height:1}.investment-xirr-content>div span{display:block;color:var(--text-muted);margin-top:5px}.investment-xirr-content p{margin:0;max-width:820px}
@media(max-width:620px){.investment-xirr-content{grid-template-columns:1fr}.investment-xirr-content>div{min-width:0}}


.investment-twr-panel{margin-bottom:18px}.investment-twr-content{display:grid;grid-template-columns:auto auto 1fr;gap:24px;align-items:center}.investment-twr-content>div{min-width:135px}.investment-twr-content>div strong{display:block;font-size:1.65rem;line-height:1}.investment-twr-content>div span{display:block;color:var(--text-muted);margin-top:5px}.investment-twr-content p{margin:0;max-width:760px}
@media(max-width:760px){.investment-twr-content{grid-template-columns:1fr 1fr}.investment-twr-content p{grid-column:1/-1}}@media(max-width:460px){.investment-twr-content{grid-template-columns:1fr}.investment-twr-content p{grid-column:auto}}


.investment-attention-filter{margin-bottom:18px}.investment-attention-summary{margin-bottom:18px}.investment-attention-ok{margin-bottom:18px}.investment-attention-grid{margin-bottom:18px}.investment-attention-list{display:grid;gap:11px}.investment-attention-list>div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:11px;border-bottom:1px solid var(--line)}.investment-attention-list>div:last-child{border-bottom:0;padding-bottom:0}.investment-attention-list small{display:block;color:var(--text-muted);margin-top:2px}.empty-state.compact{padding:20px 0}.investment-attention-90{margin-bottom:18px}.investment-attention-method p{max-width:980px}.investment-attention-mini{margin-bottom:18px}.investment-attention-mini-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.investment-attention-mini-grid>div{padding:12px 14px;border:1px solid var(--line);border-radius:13px}.investment-attention-mini-grid span{display:block;color:var(--text-muted);font-size:.78rem}.investment-attention-mini-grid strong{display:block;margin-top:3px;font-size:1.2rem}
@media(max-width:760px){.investment-attention-mini-grid{grid-template-columns:1fr 1fr}}@media(max-width:460px){.investment-attention-mini-grid{grid-template-columns:1fr}.investment-attention-list>div{align-items:flex-start}}


.patrimony-evolution-filter{margin-bottom:18px}.patrimony-evolution-summary{margin-bottom:18px}.patrimony-evolution-chart{margin-bottom:18px}.patrimony-evolution-bars{height:260px;display:grid;grid-template-columns:repeat(auto-fit,minmax(40px,1fr));gap:8px;align-items:end}.patrimony-evolution-month{height:100%;display:grid;grid-template-rows:1fr auto;gap:6px;text-align:center}.patrimony-evolution-column{height:100%;display:flex;align-items:flex-end;justify-content:center}.patrimony-evolution-column i{display:block;width:62%;max-width:34px;border-radius:7px 7px 0 0;background:var(--accent)}.patrimony-evolution-column i.negative-bar{opacity:.55}.patrimony-evolution-month small{font-size:.7rem;color:var(--text-muted)}.patrimony-evolution-table{margin-bottom:18px}.patrimony-evolution-table td small{display:block;color:var(--text-muted);margin-top:2px}.patrimony-evolution-method p{max-width:980px}
@media(max-width:760px){.patrimony-evolution-bars{overflow-x:auto;grid-template-columns:repeat(12,46px);justify-content:start}}


.patrimony-analysis-summary{margin-bottom:18px}.patrimony-analysis-grid{margin-bottom:18px}.patrimony-composition-analysis{margin-bottom:18px}.patrimony-analysis-method p{max-width:980px}


.patrimony-report-history{margin-bottom:18px}.patrimony-report-bars{height:230px;display:grid;grid-template-columns:repeat(auto-fit,minmax(40px,1fr));gap:8px;align-items:end;margin-top:10px}.patrimony-report-bars>div{height:100%;display:grid;grid-template-rows:1fr auto;gap:6px;text-align:center}.patrimony-report-column{height:100%;display:flex;align-items:flex-end;justify-content:center}.patrimony-report-column i{display:block;width:62%;max-width:34px;border-radius:7px 7px 0 0;background:var(--accent)}.patrimony-report-column i.negative-bar{opacity:.5}.patrimony-report-bars small{font-size:.7rem;color:var(--text-muted)}.report-highlight.compact{margin-top:14px}
@media(max-width:760px){.patrimony-report-bars{overflow-x:auto;grid-template-columns:repeat(12,46px);justify-content:start}}


.home-command-panel{margin:18px 0}.home-command-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.home-command-item{display:flex;flex-direction:column;gap:5px;padding:16px;border:1px solid var(--border);border-radius:14px;text-decoration:none;color:inherit;background:var(--surface-soft)}.home-command-item:hover{border-color:var(--accent);transform:translateY(-1px)}.home-command-item span,.home-command-item small{color:var(--text-muted)}.home-command-item strong{font-size:1.35rem}.home-command-item.is-alert{border-color:color-mix(in srgb,var(--danger) 45%,var(--border))}.home-command-item.is-alert strong{color:var(--danger)}.focus-primary.is-critical{border-color:color-mix(in srgb,var(--danger) 45%,var(--border))}
@media(max-width:980px){.home-command-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.home-command-grid{grid-template-columns:1fr}}


.insights-area-panel{margin-bottom:18px}.insights-area-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.insights-area-card{display:flex;flex-direction:column;gap:4px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft);color:inherit;text-decoration:none}.insights-area-card:hover,.insights-area-card.is-active{border-color:var(--accent)}.insights-area-card span,.insights-area-card small{color:var(--text-muted)}.insights-area-card strong{font-size:1.35rem}.operational-insights .insight-card{display:flex;flex-direction:column}.insight-action-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:14px}.insight-action-row small{color:var(--text-muted)}
@media(max-width:980px){.insights-area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.insights-area-grid{grid-template-columns:1fr}.insight-action-row{align-items:flex-start;flex-direction:column}}


.vehicle-dashboard-grid{align-items:start}.vehicle-dashboard-card{display:flex;flex-direction:column;gap:14px}.vehicle-main-kpis{margin-top:2px}.vehicle-cost-split,.vehicle-signals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.vehicle-cost-split>div,.vehicle-signal{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.vehicle-cost-split span,.vehicle-cost-split small,.vehicle-signal span,.vehicle-signal small{color:var(--text-muted)}.vehicle-signal.is-warning{border-color:color-mix(in srgb,var(--warning) 45%,var(--border))}.vehicle-signal.is-danger{border-color:color-mix(in srgb,var(--danger) 50%,var(--border))}.vehicle-signal.is-danger strong{color:var(--danger)}.vehicle-summary-grid{margin-bottom:16px}
@media(max-width:680px){.vehicle-cost-split,.vehicle-signals{grid-template-columns:1fr}}


.vehicle-operation-summary{margin-bottom:16px}.vehicle-operation-note{margin-bottom:16px}.vehicle-operation-note p{margin:0;color:var(--text-muted)}.badge.vehicle-service-due{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,var(--border))}.badge.vehicle-service-soon{color:var(--warning);border-color:color-mix(in srgb,var(--warning) 45%,var(--border))}.badge.vehicle-service-scheduled{color:var(--text-muted)}


.notification-summary-grid{margin-bottom:16px}.notification-filters{margin-bottom:16px}.operational-notifications{display:grid;gap:12px}.operational-notifications .notification-item{border:1px solid var(--border);border-radius:14px}.operational-notifications .notification-item.unread{background:var(--surface-soft)}.operational-notifications .notification-type-critical.unread{border-color:color-mix(in srgb,var(--danger) 50%,var(--border))}.operational-notifications .notification-type-warning.unread{border-color:color-mix(in srgb,var(--warning) 42%,var(--border))}.notification-actions{align-items:center}.notification-open-form{display:inline-flex}.notification-read-label{font-size:.82rem;color:var(--text-muted)}.notification-explain{margin-top:18px}.notification-explain p{margin:0;color:var(--text-muted)}


.nutrition-plan-days{display:grid;gap:16px}.nutrition-plan-day{overflow:hidden}.nutrition-plan-meals{display:grid;gap:14px}.nutrition-plan-meal{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--surface-soft)}.nutrition-plan-meal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--border)}.nutrition-plan-meal-head small{color:var(--text-muted)}.nutrition-plan-table{margin:0}.nutrition-plan-table thead th{background:transparent}.nutrition-plan-day .pill{white-space:nowrap}


.nutrition-day-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 14px}.nutrition-day-metric{padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.nutrition-day-metric-top,.nutrition-day-metric-values{display:flex;align-items:center;justify-content:space-between;gap:10px}.nutrition-day-metric-top span,.nutrition-day-metric-values small{color:var(--text-muted)}.nutrition-day-metric-values{margin-top:7px}.nutrition-day-metric-values>strong{font-size:1rem}.nutrition-progress{height:6px;margin-top:10px;border-radius:999px;background:var(--border);overflow:hidden}.nutrition-progress>span{display:block;height:100%;border-radius:inherit;background:var(--accent)}.nutrition-day-metric.over .nutrition-progress>span{background:var(--danger)}.nutrition-day-metric.over .nutrition-day-metric-top>strong{color:var(--danger)}.nutrition-day-metric.near .nutrition-day-metric-top>strong{color:var(--success)}.nutrition-day-summary-note{margin:-4px 0 14px;color:var(--text-muted);font-size:.88rem}
@media(max-width:900px){.nutrition-day-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.nutrition-day-summary{grid-template-columns:1fr}}


.planned-meals-panel{margin:16px 0}.planned-meals-panel .panel-head p{margin:.3rem 0 0;color:var(--text-muted)}.planned-meal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.planned-meal-card{display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft)}.planned-meal-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.planned-meal-card-head h4{margin:.15rem 0 0}.planned-meal-foods{display:grid;gap:5px;color:var(--text-muted);font-size:.9rem}.planned-meal-macros{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding-top:10px;border-top:1px solid var(--border)}.planned-meal-macros small{color:var(--text-muted)}.planned-meal-apply{display:flex;align-items:end;gap:10px;margin-top:auto}.planned-meal-apply label{flex:0 0 120px}.planned-meal-apply button{flex:1}.compact-empty{padding:18px}
@media(max-width:760px){.planned-meal-grid{grid-template-columns:1fr}}@media(max-width:520px){.planned-meal-apply{align-items:stretch;flex-direction:column}.planned-meal-apply label{flex:auto}}


.settlement-card-total{display:grid;gap:8px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}
.settlement-card-total>span{display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--text-muted)}
.settlement-card-total>span strong{color:var(--text)}
.settlement-card-total .settlement-card-total-final{padding-top:9px;border-top:1px solid var(--border);font-size:1.02rem;color:var(--text)}
.settlement-card-total .settlement-card-total-final strong{font-size:1.12rem}


.finance-interest-overview{margin:16px 0}.finance-interest-overview .summary-grid,.finance-interest-analysis .summary-grid{margin-top:12px}.finance-interest-analysis{margin:16px 0}.finance-interest-analysis .table-wrap{margin-top:16px}


.finance-report-interest{margin-bottom:16px}.finance-interest-report-series{display:grid;gap:8px;margin-top:16px}.finance-interest-report-series>div{display:grid;grid-template-columns:72px minmax(100px,1fr) 110px;align-items:center;gap:10px}.finance-interest-report-series i{display:block;height:8px;border-radius:999px;background:var(--border);overflow:hidden}.finance-interest-report-series i b{display:block;height:100%;border-radius:inherit;background:var(--danger)}.finance-interest-report-series strong{text-align:right}
@media(max-width:560px){.finance-interest-report-series>div{grid-template-columns:64px 1fr 90px}}


.nutrition-comparison-panel{margin-bottom:18px}.nutrition-adherence-pill.good,.badge.nutrition-adherence-good{color:var(--success)}.nutrition-adherence-pill.attention,.badge.nutrition-adherence-attention{color:var(--warning)}.nutrition-adherence-pill.low,.badge.nutrition-adherence-low{color:var(--danger)}.nutrition-comparison-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:18px}.nutrition-comparison-metric{padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft)}.nutrition-comparison-metric-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.nutrition-comparison-metric-head span,.nutrition-comparison-values small{color:var(--text-muted)}.nutrition-comparison-values{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.nutrition-comparison-values div{display:grid;gap:3px}.nutrition-comparison-diff{display:block;margin-top:10px;color:var(--text-muted)}.nutrition-comparison-diff.over{color:var(--danger)}.nutrition-comparison-diff.under{color:var(--warning)}.nutrition-meal-comparison{padding-top:4px}.nutrition-meal-comparison-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:10px}.nutrition-meal-comparison-head small{color:var(--text-muted);text-align:right}
@media(max-width:900px){.nutrition-comparison-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.nutrition-comparison-metrics{grid-template-columns:1fr}.nutrition-meal-comparison-head{align-items:flex-start;flex-direction:column}.nutrition-meal-comparison-head small{text-align:left}}


.nutrition-history-panel{margin-bottom:18px}.nutrition-history-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.nutrition-history-kpis article{display:grid;gap:5px;padding:13px;border:1px solid var(--border);border-radius:13px;background:var(--surface-soft)}.nutrition-history-kpis span,.nutrition-history-kpis small{color:var(--text-muted)}.nutrition-history-kpis strong{font-size:1.05rem}.nutrition-history-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.nutrition-history-day{display:grid;gap:7px;min-height:112px;padding:11px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.nutrition-history-day-head{display:flex;align-items:center;justify-content:space-between;gap:6px}.nutrition-history-day-head small,.nutrition-history-day>small{color:var(--text-muted)}.nutrition-history-day>strong{font-size:1.08rem}.nutrition-history-track{height:6px;border-radius:999px;background:var(--border);overflow:hidden}.nutrition-history-track span{display:block;height:100%;border-radius:inherit;background:var(--accent)}.nutrition-history-day.good .nutrition-history-track span{background:var(--success)}.nutrition-history-day.attention .nutrition-history-track span{background:var(--warning)}.nutrition-history-day.low .nutrition-history-track span{background:var(--danger)}.nutrition-history-day.not_logged{opacity:.72}.nutrition-history-foot{display:flex;flex-wrap:wrap;gap:14px;margin-top:14px;color:var(--text-muted);font-size:.88rem}.nutrition-history-foot i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px;background:var(--border)}.nutrition-history-foot i.good{background:var(--success)}.nutrition-history-foot i.attention{background:var(--warning)}.nutrition-history-foot i.low{background:var(--danger)}
@media(max-width:900px){.nutrition-history-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.nutrition-history-days{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:560px){.nutrition-history-kpis{grid-template-columns:1fr}.nutrition-history-days{grid-template-columns:repeat(2,minmax(0,1fr))}}


.vehicle-cost-history{margin:16px 0}.vehicle-cost-history .panel-head>small{color:var(--text-muted)}.vehicle-monthly-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.vehicle-monthly-item{display:grid;gap:7px;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.vehicle-monthly-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.vehicle-monthly-head span,.vehicle-monthly-item small{color:var(--text-muted)}.vehicle-monthly-track{height:7px;border-radius:999px;background:var(--border);overflow:hidden}.vehicle-monthly-track span{display:block;height:100%;border-radius:inherit;background:var(--accent)}.vehicle-usage-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}.vehicle-usage-kpis>div{display:grid;gap:4px;padding:11px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.vehicle-usage-kpis span,.vehicle-usage-kpis small{color:var(--text-muted)}.vehicle-usage-kpis strong{font-size:1rem}
@media(max-width:980px){.vehicle-monthly-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.vehicle-monthly-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.vehicle-monthly-grid,.vehicle-usage-kpis{grid-template-columns:1fr}}


.vehicle-cost-type-panel{margin:16px 0}.vehicle-cost-type-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.vehicle-cost-type-grid>div{display:grid;gap:5px;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.vehicle-cost-type-grid span{color:var(--text-muted)}.vehicle-cost-type-grid strong{font-size:1rem}.vehicle-cost-split{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){.vehicle-cost-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vehicle-cost-split{grid-template-columns:1fr}}@media(max-width:520px){.vehicle-cost-type-grid{grid-template-columns:1fr}}


.command-group{padding:10px 14px 5px;color:var(--text-muted);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.command-group:not(:first-child){margin-top:5px;border-top:1px solid var(--border)}.command-result small:empty{display:none}.command-results{scrollbar-gutter:stable}

/* Central de comandos: resultados textuais ocupam toda a largura e mantêm leitura confortável. */
.command-result{grid-template-columns:minmax(0,1fr);padding:12px 14px;line-height:1.35}
.command-result>span{min-width:0;display:block}
.command-result strong{font-size:14px;line-height:1.35}
.command-result small{font-size:12px;line-height:1.45;margin-top:3px;white-space:normal;overflow-wrap:break-word}
.command-group{padding:11px 14px 6px;color:var(--muted);font-size:var(--font-xs);line-height:1.2}
.command-footer{font-size:var(--font-xs)}
@media(max-width:760px){.command-result{padding:13px 12px}.command-result strong{font-size:14px}.command-result small{font-size:12px}}


/* Central de comandos: favoritos e acessos recentes. */
.command-result-row{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:6px;align-items:stretch}
.command-result-row .command-result{min-width:0}
.command-favorite{display:grid;place-items:center;width:38px;min-width:38px;height:38px;margin:auto 4px auto 0;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--text-muted);font-size:19px;line-height:1;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}
.command-favorite:hover,.command-favorite:focus-visible{background:var(--surface-soft);border-color:var(--border);color:var(--text)}
.command-result-row:has(.command-result.active){background:var(--surface-soft);border-radius:12px}
.command-result-row:has(.command-result.active) .command-favorite{color:var(--text)}
@media(max-width:760px){.command-result-row{grid-template-columns:minmax(0,1fr) 44px}.command-favorite{width:40px;height:40px}}


.insight-card-labels{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.insight-cross-module{display:inline-flex;align-items:center;gap:4px;padding:3px 7px;border:1px solid var(--border);border-radius:999px;background:var(--surface-soft);color:var(--text-muted);font-size:.72rem;font-weight:700;line-height:1.2}


.evolution-current-grid{margin-bottom:18px}.evolution-table-panel{margin-bottom:18px}.evolution-table-panel .panel-head>small{color:var(--text-muted)}.evolution-comparison-table td,.evolution-comparison-table th{vertical-align:top}.evolution-comparison-table td small{display:block;margin-top:3px;color:var(--text-muted);font-weight:400}.evolution-comparison-table .muted{color:var(--text-muted)}.evolution-domain-grid{margin-bottom:18px}.evolution-domain-card{display:block;text-decoration:none}.evolution-domain-card p{min-height:42px;color:var(--text-muted)}
@media(max-width:760px){.evolution-comparison-table{min-width:760px}.evolution-domain-card p{min-height:0}}


.week-intelligence-panel{margin-bottom:16px}.week-intelligence-panel .panel-head>small{color:var(--text-muted)}.week-capacity-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.week-capacity-kpis>div{display:grid;gap:4px;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.week-capacity-kpis span,.week-capacity-kpis small{color:var(--text-muted)}.week-capacity-kpis strong{font-size:1.08rem}.week-capacity-suggestion{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:12px;padding:11px 12px;border:1px solid var(--border);border-radius:12px}.week-capacity-suggestion span{color:var(--text-muted)}.week-capacity-note{margin:10px 0 0;color:var(--text-muted);font-size:.86rem}.week-day-head>div{display:flex;align-items:baseline;gap:6px}.week-load-badge{padding:3px 7px;border-radius:999px;font-size:.68rem;font-weight:800;white-space:nowrap;background:var(--surface-soft);border:1px solid var(--border);color:var(--text-muted)}.week-load-badge.light{color:var(--text)}.week-load-badge.balanced{color:var(--success)}.week-load-badge.busy{color:var(--warning)}.week-load-badge.overloaded{color:var(--danger)}
@media(max-width:900px){.week-capacity-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.week-capacity-kpis{grid-template-columns:1fr}.week-capacity-suggestion{display:grid}}


.week-reorganization-panel{margin-bottom:16px}.week-reorganization-panel .panel-head>small{color:var(--text-muted)}.week-reorganization-list{display:grid;gap:9px}.week-reorganization-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,auto) auto;gap:14px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.week-reorganization-main{min-width:0;display:grid;gap:4px}.week-reorganization-main>small,.week-reorganization-target span,.week-reorganization-target small{color:var(--text-muted)}.week-reorganization-title{display:flex;align-items:center;gap:8px;min-width:0}.week-reorganization-title strong{overflow-wrap:anywhere}.week-reorganization-target{display:grid;gap:2px;text-align:right}.week-reorganization-target strong{font-size:.94rem}
@media(max-width:760px){.week-reorganization-item{grid-template-columns:1fr}.week-reorganization-target{text-align:left}.week-reorganization-item>.secondary-button{justify-self:start}}


.week-capacity-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}
.week-conflicts-panel{margin-bottom:16px}.week-conflicts-panel .panel-head>small{color:var(--muted)}.week-conflicts-list{display:grid;gap:9px}.week-conflict-item{display:grid;grid-template-columns:68px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}.week-conflict-item.severity-critical{border-left-width:3px}.week-conflict-item.severity-warning{border-left-width:3px}.week-conflict-date{display:grid;gap:2px;text-align:center}.week-conflict-date span,.week-conflict-copy p{color:var(--muted)}.week-conflict-copy{min-width:0}.week-conflict-copy p{margin:4px 0 0}.week-conflict-heading{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.week-day-head-badges{display:flex;align-items:center;gap:5px}.week-conflict-badge{display:inline-flex;align-items:center;padding:3px 6px;border-radius:999px;border:1px solid var(--line);font-size:.68rem;font-weight:800}
@media(max-width:1100px){.week-capacity-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.week-capacity-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.week-conflict-item{grid-template-columns:1fr}.week-conflict-date{display:flex;gap:6px;text-align:left}.week-conflict-item>.secondary-button{justify-self:start}}@media(max-width:520px){.week-capacity-kpis{grid-template-columns:1fr}}


.week-focus-panel{margin-bottom:16px}.week-focus-panel .panel-head>small{color:var(--muted)}.week-focus-list{display:grid;gap:9px}.week-focus-item{display:grid;grid-template-columns:48px minmax(0,1fr) 92px auto;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}.week-focus-rank{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;border:1px solid var(--line);font-weight:800}.week-focus-main{min-width:0;display:grid;gap:5px}.week-focus-title{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.week-focus-title strong{overflow-wrap:anywhere}.week-focus-reasons{display:flex;flex-wrap:wrap;gap:5px}.week-focus-reasons span{padding:2px 6px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.72rem}.week-focus-main>small,.week-focus-meta span,.week-focus-meta small{color:var(--muted)}.week-focus-meta{display:grid;gap:2px;text-align:right}.week-focus-meta strong{font-size:1.08rem}
@media(max-width:820px){.week-focus-item{grid-template-columns:42px minmax(0,1fr)}.week-focus-meta{grid-column:2;text-align:left;display:flex;align-items:baseline;gap:6px}.week-focus-item>.secondary-button{grid-column:2;justify-self:start}}@media(max-width:520px){.week-focus-item{grid-template-columns:1fr}.week-focus-rank,.week-focus-meta,.week-focus-item>.secondary-button{grid-column:1}.week-focus-meta{display:flex}}


.auto-goal-panel{margin:16px 0}.auto-goal-panel .panel-head>small{color:var(--muted)}.auto-goal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.auto-goal-card{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface2)}.auto-goal-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.auto-goal-card h4,.auto-goal-card p{margin:0}.auto-goal-card p,.auto-goal-reason{color:var(--muted)}.auto-goal-baseline{display:grid;gap:2px;padding:10px;border:1px solid var(--line);border-radius:10px}.auto-goal-baseline small{color:var(--muted)}.auto-goal-actions{display:flex;justify-content:flex-end;margin-top:2px}
@media(max-width:760px){.auto-goal-grid{grid-template-columns:1fr}.auto-goal-actions{justify-content:flex-start}}


.goal-review-panel{margin:16px 0}.goal-review-panel .panel-head>small{color:var(--muted)}.goal-review-list{display:grid;gap:10px}.goal-review-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,auto) auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface2)}.goal-review-item.severity-critical,.goal-review-item.severity-warning{border-left-width:3px}.goal-review-main{min-width:0;display:grid;gap:5px}.goal-review-heading{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.goal-review-main h4,.goal-review-main p{margin:0}.goal-review-main p,.goal-review-main>small,.goal-review-metrics span{color:var(--muted)}.goal-review-metrics{display:grid;grid-template-columns:repeat(3,minmax(70px,1fr));gap:8px}.goal-review-metrics>div{display:grid;gap:2px;padding:8px;border:1px solid var(--line);border-radius:10px;text-align:center}.goal-review-actions{display:grid;gap:7px;justify-items:end}
@media(max-width:980px){.goal-review-item{grid-template-columns:1fr}.goal-review-actions{justify-items:start}.goal-review-metrics{max-width:520px}}@media(max-width:520px){.goal-review-metrics{grid-template-columns:1fr}.goal-review-metrics>div{text-align:left}}


.goal-suggested-actions{margin-bottom:16px}.goal-suggested-actions .panel-head>small{color:var(--muted)}.goal-suggested-action-list{display:grid;gap:9px}.goal-suggested-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}.goal-suggested-copy{min-width:0;display:grid;gap:5px}.goal-suggested-title{display:flex;align-items:center;gap:8px}.goal-suggested-copy p{margin:0}.goal-suggested-copy p,.goal-suggested-copy small{color:var(--muted)}.goal-suggested-action form{margin:0}
@media(max-width:700px){.goal-suggested-action{grid-template-columns:1fr}.goal-suggested-action form{justify-self:start}}


.goal-projection-panel{margin-bottom:16px}.goal-projection-panel .panel-head>small{color:var(--muted)}.goal-projection-status{display:grid;gap:12px}.goal-projection-status>div:first-child{display:grid;gap:6px}.goal-projection-status p{margin:0;color:var(--muted)}.goal-projection-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.goal-projection-kpis>div{display:grid;gap:3px;padding:11px;border:1px solid var(--line);border-radius:11px;background:var(--surface2)}.goal-projection-kpis span,.goal-projection-kpis small,.goal-next-milestone small{color:var(--muted)}.goal-next-milestone{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:12px}.goal-next-milestone>div{display:grid;gap:3px}.goal-next-milestone>div:not(:first-child){text-align:right}
@media(max-width:760px){.goal-projection-kpis{grid-template-columns:1fr}.goal-next-milestone{grid-template-columns:1fr}.goal-next-milestone>div:not(:first-child){text-align:left}}


/* Polimento UX: estados semânticos e interação consistente. */
html[data-theme="dark"]{}

:is(a,button,input,select,textarea,[tabindex]):focus-visible{
    outline:2px solid var(--link);
    outline-offset:2px;
}
:is(.primary-action,.secondary-action,.secondary-button,.link-action,.text-link,.crud-edit-button,.crud-delete-button,.icon-button,.check-button){
    transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease;
}
:is(.primary-action,.secondary-action,.secondary-button,.link-action,.crud-edit-button):active{
    transform:translateY(1px);
}
button:disabled,
input:disabled,
select:disabled,
textarea:disabled,
[aria-disabled="true"]{
    cursor:not-allowed;
    opacity:.58;
}
.panel-head{gap:14px}
.panel-head>small{text-align:right}
.week-load-badge.busy{color:var(--warning)}
.week-load-badge.overloaded{color:var(--danger)}
.week-conflict-badge{color:var(--warning)}
.negative{color:var(--danger)!important}
.status.warning{color:var(--warning)}
.status.critical{color:var(--danger)}
.status.success{color:var(--success)}

@media(max-width:700px){
    .page-head{gap:14px;align-items:flex-start}
    .page-head .head-actions,.page-head .page-actions{flex-wrap:wrap}
    .panel-head{align-items:flex-start}
    .panel-head>small{text-align:left}
}
@media(prefers-reduced-motion:reduce){
    *,*::before,*::after{
        scroll-behavior:auto!important;
        transition-duration:.01ms!important;
        animation-duration:.01ms!important;
        animation-iteration-count:1!important;
    }
}


/* Polimento UX: mobile, formulários, tabelas e modais. */
input,
select,
textarea{
    max-width:100%;
}
textarea{
    resize:vertical;
}
.form-grid label{
    min-width:0;
}
.form-grid :is(input,select,textarea){
    width:100%;
}
.table-wrap{
    width:100%;
    max-width:100%;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    -webkit-overflow-scrolling:touch;
}
.data-table{
    min-width:680px;
}
.data-table th,
.data-table td{
    vertical-align:middle;
}
.data-table td{
    overflow-wrap:anywhere;
}
.modal{
    padding:18px;
}
.modal-card{
    max-height:calc(100dvh - 36px);
    overflow:auto;
    overscroll-behavior:contain;
}
.modal-head{
    position:sticky;
    top:0;
    z-index:2;
    background:var(--surface);
    padding-bottom:10px;
}
.page-actions,
.crud-actions,
.notification-actions,
.auto-goal-actions,
.goal-review-actions{
    min-width:0;
}
:is(.primary-action,.secondary-action,.secondary-button,.crud-edit-button,.crud-delete-button,.text-button,.icon-button,.check-button){
    min-height:40px;
}
.icon-button,
.check-button{
    min-width:40px;
}
.budget-notice,
.report-note,
.goal-caption,
.subtle{
    overflow-wrap:anywhere;
}
.searchable-select-list{
    max-height:min(320px,45dvh);
    overflow:auto;
}
@media(max-width:760px){
    .content{
        padding:22px 16px;
    }
    .page-head{
        flex-direction:column;
        align-items:stretch;
        margin-bottom:20px;
    }
    .page-head>div:first-child{
        min-width:0;
    }
    .page-head h1{
        font-size:26px;
    }
    .page-head>.primary-action,
    .page-head>.secondary-action{
        margin-left:0;
        align-self:flex-start;
    }
    .page-actions{
        width:100%;
        justify-content:flex-start;
        gap:8px;
    }
    .summary-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .dashboard-grid{
        grid-template-columns:1fr;
    }
    .panel{
        padding:18px;
        min-height:0;
    }
    .panel-head{
        flex-direction:column;
        gap:6px;
    }
    .form-grid{
        grid-template-columns:1fr!important;
    }
    .form-grid .span2{
        grid-column:1!important;
    }
    .modal{
        align-items:flex-end;
        padding:0;
    }
    .modal-card{
        width:100%;
        max-width:none;
        max-height:92dvh;
        border-radius:18px 18px 0 0;
    }
    .crud-actions{
        flex-wrap:wrap;
    }
}
@media(max-width:520px){
    .content{
        padding:18px 12px 28px;
    }
    .summary-grid{
        grid-template-columns:1fr;
    }
    .metric-card{
        padding:16px;
    }
    .panel{
        padding:16px;
        border-radius:14px;
    }
    .page-head h1{
        font-size:24px;
    }
    .page-actions,
    .crud-actions{
        align-items:stretch;
    }
    .page-actions :is(.primary-action,.secondary-action,.secondary-button),
    .goal-review-actions .secondary-action,
    .auto-goal-actions .primary-action{
        width:100%;
        justify-content:center;
        text-align:center;
    }
    .modal-card{
        padding-left:16px;
        padding-right:16px;
    }
    .data-table{
        min-width:620px;
    }
}

/* Central de IA */
.ai-page-head{align-items:flex-end}.ai-config-alert{margin:-8px 0 18px;background:#fff8e6;border-color:#f0dfae;color:#785a0c}.ai-error-alert{margin:-8px 0 18px}.ai-shell{display:grid;grid-template-columns:250px minmax(0,1fr) 230px;gap:14px;align-items:start}.ai-shell>.panel{min-height:0}.ai-history-panel,.ai-usage-panel{position:sticky;top:88px}.ai-conversation-list{display:grid;gap:7px;margin-top:16px}.ai-conversation-item{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid transparent;border-radius:12px;color:var(--text);text-decoration:none}.ai-conversation-item:hover,.ai-conversation-item.is-active{background:var(--surface2);border-color:var(--line)}.ai-conversation-item span{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:750}.ai-conversation-item strong{font-size:12px;line-height:1.35}.ai-conversation-item small{font-size:var(--font-xs);color:var(--muted)}.ai-main{display:grid;gap:14px;min-width:0}.ai-chat-panel{padding:0;overflow:hidden}.ai-chat-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:21px;border-bottom:1px solid var(--line)}.ai-chat-head h2{font-size:20px;margin:6px 0 4px}.ai-chat-head p{font-size:var(--font-xs);color:var(--muted);margin:0}.ai-welcome{display:flex;gap:16px;align-items:center;padding:34px 24px;border-bottom:1px solid var(--line)}.ai-welcome h2{font-size:22px;margin:6px 0}.ai-welcome p{font-size:12px;color:var(--muted);line-height:1.55;margin:0;max-width:650px}.ai-orbit{width:48px;height:48px;flex:none;border-radius:16px;display:grid;place-items:center;background:linear-gradient(145deg,#17191d,#383e48);color:#fff;font-size:22px;box-shadow:0 10px 25px rgba(23,25,29,.18)}.ai-messages{display:grid;gap:18px;padding:22px;max-height:58vh;overflow:auto;background:var(--bg)}.ai-message{max-width:84%;display:flex;flex-direction:column;gap:7px}.ai-message.is-user{justify-self:end;align-items:flex-end}.ai-message.is-assistant{justify-self:start}.ai-message-label{font-size:var(--font-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:750}.ai-message-content{padding:14px 16px;border:1px solid var(--line);border-radius:16px 16px 16px 5px;background:var(--surface);font-size:13px;line-height:1.65;overflow-wrap:anywhere}.ai-message.is-user .ai-message-content{background:var(--accent);border-color:var(--accent);color:#fff;border-radius:16px 16px 5px 16px}.ai-message small{font-size:var(--font-xs);color:var(--muted)}.ai-question-form{padding:20px;border-top:1px solid var(--line);background:var(--surface)}.ai-context-fields{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:10px;margin-bottom:12px}.ai-context-fields label,.ai-question-label{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:var(--font-xs);font-weight:700}.ai-context-fields select,.ai-context-fields input,.ai-question-label textarea{width:100%;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:10px;padding:10px 11px;outline:0}.ai-question-label textarea{resize:vertical;min-height:95px;line-height:1.5}.ai-context-fields select:focus,.ai-context-fields input:focus,.ai-question-label textarea:focus{border-color:#a7adb6;box-shadow:0 0 0 3px rgba(90,99,112,.1)}.ai-form-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:11px}.ai-form-foot small{color:var(--muted);font-size:var(--font-xs)}.ai-form-foot .primary-action{margin-left:0}.primary-action:disabled,.ai-suggestions button:disabled{opacity:.48;cursor:not-allowed}.ai-suggestions-panel{padding:19px}.ai-suggestions{display:grid;gap:8px;margin-top:14px}.ai-suggestions form{margin:0}.ai-suggestions button{width:100%;display:flex;justify-content:space-between;gap:12px;text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:11px;background:var(--surface2);color:var(--text);font-size:var(--font-xs);cursor:pointer}.ai-suggestions button:hover{border-color:#b9bec6}.ai-usage-number{display:flex;flex-direction:column;margin:24px 0 12px}.ai-usage-number strong{font-size:25px;letter-spacing:-.04em}.ai-usage-number small{font-size:var(--font-xs);color:var(--muted);margin-top:3px}.ai-usage-list{display:grid;gap:0;margin:18px 0}.ai-usage-list div{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.ai-usage-list dt,.ai-usage-list dd{margin:0;font-size:var(--font-xs)}.ai-usage-list dt{color:var(--muted)}.ai-usage-list dd{text-align:right;font-weight:700;overflow-wrap:anywhere}.ai-privacy-note{font-size:var(--font-xs);line-height:1.55;color:var(--muted);margin:18px 0 0}.ai-config-alert code{font-size:var(--font-xs);background:rgba(255,255,255,.5);padding:2px 5px;border-radius:5px}
html[data-theme="dark"] .ai-config-alert{background:#2a2518;border-color:#564a27;color:#e2c878}html[data-theme="dark"] .ai-message.is-user .ai-message-content{background:#e8ebef;border-color:#e8ebef;color:#17191d}html[data-theme="dark"] .ai-orbit{background:linear-gradient(145deg,#e9ecf0,#b8bec8);color:#15171b}
@media(max-width:1180px){.ai-shell{grid-template-columns:220px minmax(0,1fr)}.ai-usage-panel{grid-column:1/-1;position:static}.ai-usage-list{grid-template-columns:repeat(3,1fr);gap:12px}.ai-usage-list div{display:block;border:1px solid var(--line);border-radius:11px;padding:11px}.ai-usage-list dd{text-align:left;margin-top:5px}}
@media(max-width:820px){.ai-shell{grid-template-columns:1fr}.ai-history-panel{position:static}.ai-conversation-list{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-messages{max-height:none}.ai-context-fields{grid-template-columns:1fr 1fr}.ai-context-fields label:first-child{grid-column:1/-1}}
@media(max-width:560px){.ai-conversation-list,.ai-context-fields,.ai-usage-list{grid-template-columns:1fr}.ai-message{max-width:96%}.ai-welcome{align-items:flex-start;padding:24px 18px}.ai-chat-head{padding:18px}.ai-question-form{padding:16px}.ai-form-foot{align-items:stretch;flex-direction:column}.ai-form-foot .primary-action{width:100%}}


/* Polimento UX: feedback durante envio de formulários. */
form[data-sending="1"]{
    cursor:progress;
}
form[data-sending="1"] button[aria-disabled="true"]{
    pointer-events:none;
}
button[data-submitting="1"]{
    position:relative;
    padding-right:38px;
}
button[data-submitting="1"]::after{
    content:"";
    position:absolute;
    right:13px;
    top:50%;
    width:14px;
    height:14px;
    margin-top:-8px;
    border:2px solid currentColor;
    border-right-color:transparent;
    border-radius:50%;
    opacity:.78;
    animation:lsc-submit-spin .7s linear infinite;
}
@keyframes lsc-submit-spin{
    to{transform:rotate(360deg)}
}
.sr-only{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important;
}
@media(prefers-reduced-motion:reduce){
    button[data-submitting="1"]::after{
        animation:none;
        border-right-color:currentColor;
        opacity:.45;
    }
}


/* Polimento UX final: navegação e estados vazios. */
.skip-link{
    background:var(--surface);
    color:var(--text);
    border:1px solid var(--line);
    box-shadow:var(--shadow);
    text-decoration:none;
}
.skip-link:focus-visible{
    top:12px;
}
.empty-state{
    height:auto;
    min-height:150px;
    padding:24px 18px;
    border:1px dashed var(--line);
    border-radius:14px;
    background:var(--surface2);
}
.empty-icon{
    background:var(--surface);
    border:1px solid var(--line);
    color:var(--muted);
}
.empty-state h4{
    color:var(--text);
}
.empty-state p{
    color:var(--muted);
}
.sidebar nav .nav-link.active{
    scroll-margin-block:18px;
}
@media(max-width:520px){
    .empty-state{
        min-height:120px;
        padding:20px 14px;
    }
}

/* Simulador de decisões financeiras */
.finance-simulator-head{align-items:flex-end}.finance-simulator-notice{margin:-8px 0 18px}.finance-simulator-baseline{margin-bottom:18px}.finance-simulator-form{display:grid;gap:20px}.finance-simulator-settings{display:grid;grid-template-columns:1.5fr .8fr .9fr;gap:12px}.finance-simulator-settings label,.finance-option-card label{display:flex;flex-direction:column;gap:7px;color:var(--muted);font-size:var(--font-xs);font-weight:700}.finance-simulator-settings :is(input,select),.finance-option-card input{width:100%;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:10px;padding:11px 12px;outline:0}.finance-simulator-settings :is(input,select):focus,.finance-option-card input:focus{border-color:#a7adb6;box-shadow:0 0 0 3px rgba(90,99,112,.1)}.finance-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.finance-option-card{min-width:0;margin:0;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--surface2)}.finance-option-card legend{padding:0 8px;color:var(--text);font-size:var(--font-xs);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.finance-option-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:12px}.finance-option-fields label:first-child{grid-column:1/-1}.finance-simulator-submit{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:2px}.finance-simulator-submit p{max-width:680px;margin:0;color:var(--muted);font-size:var(--font-xs);line-height:1.55}.finance-simulator-result{display:grid;gap:18px;margin-top:18px}.finance-decision-callout{padding:18px 20px;border:1px solid var(--line);border-left-width:4px;border-radius:13px;background:var(--surface2)}.finance-decision-callout span,.finance-result-card-head span{display:block;color:var(--muted);font-size:var(--font-xs);font-weight:800;letter-spacing:.1em}.finance-decision-callout h3{margin:6px 0 5px;font-size:18px}.finance-decision-callout p{margin:0;color:var(--muted);font-size:var(--font-xs);line-height:1.6}.finance-decision-callout.is-success{border-left-color:#4f9273;background:rgba(79,146,115,.08)}.finance-decision-callout.is-attention{border-left-color:#c49437;background:rgba(196,148,55,.08)}.finance-decision-callout.is-danger{border-left-color:#ba5a5a;background:rgba(186,90,90,.08)}.finance-comparison-table{min-width:980px}.finance-comparison-table td small{display:block;margin-top:4px;color:var(--muted);font-size:var(--font-xs)}.finance-option-chosen{background:rgba(79,146,115,.07)}.finance-risk{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:var(--font-xs);font-weight:750;white-space:nowrap}.finance-risk.is-safe{background:rgba(79,146,115,.13);color:#397457}.finance-risk.is-attention{background:rgba(196,148,55,.14);color:#8b651c}.finance-risk.is-danger{background:rgba(186,90,90,.14);color:#963f3f}.finance-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.finance-result-card{min-width:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}.finance-result-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:17px;border-bottom:1px solid var(--line)}.finance-result-card-head h3{margin:5px 0 0;font-size:15px}.finance-result-card-head>strong{font-size:17px;white-space:nowrap}.finance-payment-list{display:grid;padding:5px 17px 12px}.finance-payment-list>div{display:grid;grid-template-columns:1fr auto;gap:3px 12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:var(--font-xs)}.finance-payment-list>div:last-child{border-bottom:0}.finance-payment-list small{grid-column:1/-1;color:var(--muted)}.finance-month-table{min-width:590px;font-size:var(--font-xs)}.finance-month-table th,.finance-month-table td{padding:10px}.finance-ai-explain{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--surface2)}.finance-ai-explain h3{margin:5px 0;font-size:16px}.finance-ai-explain p{max-width:680px;margin:0;color:var(--muted);font-size:var(--font-xs);line-height:1.55}.finance-ai-explain form{flex:none}.finance-simulator-note{margin-top:18px}.finance-simulator-note h3{margin-top:0}
html[data-theme="dark"] .finance-risk.is-safe{color:#8ed0ad}html[data-theme="dark"] .finance-risk.is-attention{color:#dfbd72}html[data-theme="dark"] .finance-risk.is-danger{color:#e79595}
@media(max-width:980px){.finance-simulator-settings{grid-template-columns:1fr 1fr}.finance-simulator-settings label:first-child{grid-column:1/-1}.finance-option-grid,.finance-result-grid{grid-template-columns:1fr}}
@media(max-width:620px){.finance-simulator-settings,.finance-option-fields{grid-template-columns:1fr}.finance-simulator-settings label:first-child,.finance-option-fields label:first-child{grid-column:auto}.finance-simulator-submit,.finance-ai-explain{align-items:stretch;flex-direction:column}.finance-simulator-submit .primary-action,.finance-ai-explain .secondary-action{width:100%;justify-content:center}.finance-option-card{padding:15px}.finance-decision-callout{padding:16px}}

/* Ações contextuais da Central de IA */
.ai-context-form{display:inline-flex;margin:0}.ai-context-action{display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap}.ai-context-action>span{font-size:13px}.ai-prefill-notice{display:flex;align-items:flex-start;gap:12px;margin:0 20px 4px;padding:14px 16px;border:1px solid rgba(79,146,115,.35);border-radius:12px;background:rgba(79,146,115,.08)}.ai-prefill-notice>span{display:grid;place-items:center;width:28px;height:28px;flex:none;border-radius:9px;background:rgba(79,146,115,.16);color:#397457}.ai-prefill-notice strong{font-size:var(--font-xs)}.ai-prefill-notice p{margin:4px 0 0;color:var(--muted);font-size:var(--font-xs);line-height:1.5}
html[data-theme="dark"] .ai-prefill-notice>span{color:#8ed0ad}
@media(max-width:520px){.page-actions .ai-context-form{width:100%}.page-actions .ai-context-form .ai-context-action{width:100%}.ai-prefill-notice{margin:0 16px 4px}}

/* source: components/interactions.css */
/* Refinamento visual 2: ícones de ação e correção de sublinhado no hover. */
:where(.content,.modal-card) a:not([class]):hover,
.back-link:hover,
:is(.shortcut-stack,.quick-links,.quick-add-grid) a:hover{
    text-decoration:none;
}

.quick-add-grid a{
    display:grid;
    grid-template-columns:32px minmax(0,1fr);
    grid-template-rows:auto auto;
    column-gap:10px;
    row-gap:3px;
    align-items:center;
}
.quick-add-grid a::before{
    grid-row:1/-1;
    display:grid;
    place-items:center;
    width:32px;
    height:32px;
    border:1px solid var(--accent-orange-border);
    border-radius:10px;
    background:var(--accent-orange-soft);
    color:var(--accent-orange-strong);
    font-family:"Segoe UI Symbol","Noto Sans Symbols 2",sans-serif;
    font-size:16px;
    line-height:1;
    transition:transform .18s ease,background-color .18s ease,color .18s ease;
}
.quick-add-grid a strong,.quick-add-grid a small{grid-column:2}
.quick-add-grid a[href*="/finance/movements"]::before{content:"↔"}
.quick-add-grid a[href*="/planning/tasks"]::before{content:"✓"}
.quick-add-grid a[href*="/planning/events"]::before{content:"◷"}
.quick-add-grid a[href*="/health/body"]::before{content:"◉"}
.quick-add-grid a[href*="/health/meals"]::before{content:"◒"}
.quick-add-grid a[href*="/studies/sessions"]::before{content:"✦"}
.quick-add-grid a[href*="/investments/transactions"]::before{content:"↗"}
.quick-add-grid a[href*="/patrimony/fuel"]::before{content:"⛽"}
.quick-add-grid a[href*="/patrimony/vehicle-costs"]::before{content:"⚙"}
.quick-add-grid a:hover::before{background:var(--surface);color:var(--accent-orange-strong);transform:scale(1.06)}
.quick-add-grid a:visited{color:var(--text)}

@media(max-width:560px){
    .quick-add-grid a{grid-template-columns:30px minmax(0,1fr)}
    .quick-add-grid a::before{width:30px;height:30px}
}
@media(prefers-reduced-motion:reduce){
    .quick-add-grid a::before{transition:none!important;transform:none!important}
}


/* Cores semânticas: o laranja não substitui receita, despesa ou alerta. */
.finance-analysis-bar-pair i.income,
.finance-analysis-history .chart-legend i.income{
    background:var(--success);
}
.finance-analysis-bar-pair i.expense,
.finance-analysis-history .chart-legend i.expense{
    background:var(--danger);
}
.finance-category-analysis .finance-analysis-track span{
    background:var(--danger);
}
/* Refinamento visual 2026-09: ações, links e acentos quentes. */
:root{
    
    
    
    
    
    
}
html[data-theme="dark"]{
    
    
    
    
    
    
    
    
}

/* Ações principais com hierarquia clara e retorno tátil. */
:is(.primary-action,.login-button){
    background:linear-gradient(135deg,var(--accent-orange-strong),var(--accent-orange));
    border:1px solid color-mix(in srgb,var(--accent-orange) 72%,#000 28%);
    box-shadow:0 8px 18px color-mix(in srgb,var(--accent-orange) 22%,transparent);
    transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
:is(.primary-action,.login-button):hover{
    filter:brightness(1.06);
    transform:translateY(-1px);
    box-shadow:0 12px 24px color-mix(in srgb,var(--accent-orange) 30%,transparent);
}
:is(.primary-action,.login-button):active{transform:translateY(0);box-shadow:0 5px 12px color-mix(in srgb,var(--accent-orange) 20%,transparent)}
:is(.secondary-action,.secondary-button,.ghost-button){
    border-color:var(--line);
    transition:transform .18s ease,background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease;
}
:is(.secondary-action,.secondary-button,.ghost-button):hover{
    background:var(--accent-orange-soft);
    border-color:var(--accent-orange-border);
    color:var(--accent-orange-strong);
    transform:translateY(-1px);
    box-shadow:0 7px 16px color-mix(in srgb,var(--accent-orange) 12%,transparent);
}

/* Links de cabeçalho viram ações compactas, sem perder a leveza. */
.panel-head>a:not(.primary-action):not(.secondary-action),
.page-head>a:not(.primary-action):not(.secondary-action),
.page-head .text-link,
.panel-head .text-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    min-height:38px;
    padding:8px 12px;
    border:1px solid var(--line);
    border-radius:10px;
    background:var(--surface2);
    color:var(--link);
    text-decoration:none;
    font-size:12px;
    font-weight:700;
    line-height:1.35;
    transition:transform .18s ease,background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease;
}
.panel-head>a:not(.primary-action):not(.secondary-action):hover,
.page-head>a:not(.primary-action):not(.secondary-action):hover,
.page-head .text-link:hover,
.panel-head .text-link:hover{
    background:var(--accent-orange-soft);
    border-color:var(--accent-orange-border);
    color:var(--link-hover);
    text-decoration:none;
    transform:translateY(-1px);
    box-shadow:0 7px 16px color-mix(in srgb,var(--accent-orange) 14%,transparent);
}
.panel-head>a:visited,.text-link:visited,.back-link:visited{color:var(--link)}
:where(.content,.modal-card) a:not([class]):visited{color:var(--link)}

/* Atalhos e listas clicáveis com o mesmo padrão de interação. */
:is(.shortcut-stack,.quick-links){gap:9px}
:is(.shortcut-stack,.quick-links) a{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    min-height:48px;
    padding:11px 12px 11px 14px;
    border:1px solid var(--line);
    border-radius:12px;
    background:var(--surface);
    color:var(--text);
    text-decoration:none;
    line-height:1.4;
    transition:transform .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease;
}
:is(.shortcut-stack,.quick-links) a:hover{
    background:var(--accent-orange-soft);
    border-color:var(--accent-orange-border);
    color:var(--text);
    transform:translateX(3px);
    box-shadow:0 8px 18px color-mix(in srgb,var(--accent-orange) 13%,transparent);
}
:is(.shortcut-stack,.quick-links) a:focus-visible{border-color:var(--focus-ring)}
:is(.shortcut-stack,.quick-links) a:visited{color:var(--text)}
:is(.shortcut-stack,.quick-links) a>span{
    display:grid;
    place-items:center;
    flex:0 0 26px;
    width:26px;
    height:26px;
    border:1px solid var(--line);
    border-radius:50%;
    color:var(--muted);
    font-size:14px;
    transition:transform .18s ease,color .18s ease,border-color .18s ease,background-color .18s ease;
}
:is(.shortcut-stack,.quick-links) a:hover>span{
    color:var(--accent-orange-strong);
    border-color:var(--accent-orange-border);
    background:var(--surface);
    transform:translateX(2px);
}
.shortcut-stack a:last-child,.quick-links a:last-child{border-bottom:1px solid var(--line)}

/* Histórico: toda a linha responde ao cursor, sem roxo de links visitados. */
.compact-row{
    position:relative;
    border-radius:10px;
    padding:13px 10px;
    margin-inline:-10px;
    text-decoration:none;
    transition:background-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.compact-row:hover{
    background:var(--accent-orange-soft);
    box-shadow:inset 3px 0 0 var(--accent-orange);
    transform:translateX(2px);
}
.compact-row:visited{color:inherit}
.compact-row:hover strong{color:var(--accent-orange-strong)}

/* Microinterações nos cartões e controles de apoio. */
:is(.metric-card,.item-card,.account-card,.goal-card,.insight-card,.finance-result-card){
    transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
:is(.metric-card,.item-card,.account-card,.goal-card,.insight-card,.finance-result-card):hover{
    border-color:color-mix(in srgb,var(--accent-orange) 42%,var(--line));
    box-shadow:0 14px 30px color-mix(in srgb,var(--accent-orange) 9%,transparent),var(--shadow);
}
.metric-icon,.account-icon,.empty-icon{transition:background-color .18s ease,color .18s ease,transform .18s ease}
:is(.metric-card,.account-card,.item-card):hover :is(.metric-icon,.account-icon,.empty-icon){background:var(--accent-orange-soft);color:var(--accent-orange-strong);transform:translateY(-1px)}

/* Navegação com destaque laranja apenas nos estados de interação. */
.nav-link{transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}
.nav-link:hover{background:var(--nav-accent-soft);color:var(--nav-accent-text);box-shadow:inset 3px 0 0 var(--accent-orange);transform:translateX(2px)}
.nav-link.active{background:var(--nav-accent-soft);color:var(--nav-accent-text);box-shadow:inset 3px 0 0 var(--accent-orange)}
.topbar-icon{transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}
.topbar-icon:hover{background:var(--accent-orange-soft);border-color:var(--accent-orange-border);color:var(--accent-orange-strong);transform:translateY(-1px)}
.eyebrow{transition:color .18s ease}
html[data-theme="dark"] .eyebrow{color:var(--accent-orange-strong)}

/* Foco acessível com a mesma linguagem cromática do tema. */
:is(a,button,input,select,textarea,[tabindex]):focus-visible{outline-color:var(--focus-ring)}
html[data-theme="dark"] .theme-toggle:hover,
html[data-theme="dark"] .topbar-icon:hover{background:var(--accent-orange-soft);border-color:var(--accent-orange-border);color:var(--accent-orange-strong)}
html[data-theme="dark"] :is(.primary-action,.login-button){color:#24150c}
html[data-theme="dark"] .ai-message.is-user .ai-message-content{background:var(--accent);border-color:var(--accent);color:#1d130d}
html[data-theme] .ai-orbit{background:linear-gradient(145deg,var(--action-hover),var(--action-bg));color:var(--action-ink)}

@media(max-width:760px){
    .panel-head>a:not(.primary-action):not(.secondary-action){align-self:flex-start}
    :is(.shortcut-stack,.quick-links) a{min-height:50px;padding-inline:13px}
    .compact-row{margin-inline:-6px;padding-inline:6px}
}
@media(prefers-reduced-motion:reduce){
    :is(.primary-action,.login-button,.secondary-action,.secondary-button,.ghost-button,.panel-head>a,.shortcut-stack a,.quick-links a,.compact-row,.metric-card,.item-card,.account-card,.goal-card,.insight-card,.finance-result-card,.nav-link){transition:none!important;transform:none!important}
}

/* source: components/financial-cards.css */
/* Cards financeiros: acabamento físico e paleta por instituição. */

/* Faturas: mesma paleta dos cartões, conteúdo em superfície neutra. */
.invoice-header.account-card.invoice-brand-header{
    flex-direction:row;align-items:center;min-height:205px;margin:0;
    border:0;border-bottom:1px solid var(--card-border);border-radius:0;
    padding:26px 28px;box-shadow:none;gap:24px;
}
.invoice-header.account-card.invoice-brand-header:hover{transform:none;box-shadow:none}
.invoice-header.account-card.invoice-brand-header::after{display:none}
.invoice-brand-header>div{min-width:0}
.invoice-brand-header .account-icon{margin-bottom:16px}
.invoice-header.account-card.invoice-brand-header .eyebrow,
.invoice-header.account-card.invoice-brand-header p{color:var(--card-ink)}
.invoice-header.account-card.invoice-brand-header h3{font-size:22px;overflow-wrap:anywhere;margin:6px 0 8px}
.invoice-brand-header .invoice-header-total{flex-shrink:0;gap:9px}
.invoice-brand-header .invoice-total{font-size:32px;font-weight:800;letter-spacing:-.04em;line-height:1.2;color:var(--card-ink);font-variant-numeric:tabular-nums}
.invoice-header.account-card.invoice-brand-header small{color:var(--card-ink);letter-spacing:.04em;font-size:var(--font-xs)}
.invoice-header.account-card.invoice-brand-header .invoice-state{padding:7px 12px;font-size:12px;font-weight:700}
.invoice-header.account-card.invoice-brand-header .invoice-state.pending{background:#fff2cf;color:#684600;border-color:#e9cb83}
.invoice-header.account-card.invoice-brand-header .invoice-state.invoice-overdue{background:#ffe4e6;color:#991b32;border-color:#fda4af}
.invoice-header.account-card.invoice-brand-header .invoice-state.settled{background:#dcfce7;color:#166534;border-color:#86efac}
.invoice-details summary:hover{box-shadow:inset 3px 0 0 var(--accent-orange)}
.invoice-details summary:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-3px}
.invoice-items-table tbody tr:hover{background:var(--surface2)}
.invoice-pay-form{flex-wrap:wrap;justify-content:flex-end;max-width:100%;gap:12px}
.invoice-pay-form>select,.invoice-pay-form>.searchable-select{width:min(280px,100%);min-width:0}
.invoice-pay-form>select{padding:11px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text)}
.invoice-paid-note{padding:10px 14px;border-radius:10px;background:var(--surface2);color:var(--success);font-weight:650}
@media(max-width:620px){
    .invoice-header.account-card.invoice-brand-header{flex-direction:column;align-items:stretch;padding:22px;gap:20px}
    .invoice-brand-header .invoice-header-total{text-align:left;justify-items:start}
    .invoice-brand-header .invoice-total{font-size:28px;overflow-wrap:anywhere}
    .invoice-pay-form{display:flex;flex-direction:column;align-items:stretch;width:100%}
    .invoice-pay-form>select,.invoice-pay-form>.searchable-select{width:100%}
    .invoice-pay-form>.primary-action{width:100%;margin-left:0}
}

.account-card.account-card--account,
.account-card.account-card--credit{
    --card-gradient:linear-gradient(135deg,#344454 0%,#1e2a38 56%,#111923 100%);
    --card-highlight:rgba(151,190,225,.3);
    --card-ink:#f8fafc;
    --card-muted:rgba(248,250,252,.72);
    --card-border:rgba(185,204,222,.36);
    position:relative;
    isolation:isolate;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    min-height:230px;
    padding:22px;
    color:var(--card-ink);
    background:var(--card-gradient);
    border:1px solid var(--card-border);
    border-radius:20px;
    box-shadow:0 20px 36px rgba(15,23,42,.2),inset 0 1px 0 rgba(255,255,255,.18);
    transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.account-card.account-card--account::before,
.account-card.account-card--credit::before{
    content:"";
    position:absolute;
    z-index:0;
    top:-92px;
    right:-54px;
    width:250px;
    height:250px;
    border-radius:50%;
    background:radial-gradient(circle,var(--card-highlight) 0%,transparent 68%);
    pointer-events:none;
}
.account-card.account-card--account > *,
.account-card.account-card--credit > *{
    position:relative;
    z-index:1;
}
.account-card.account-card--account:hover,
.account-card.account-card--credit:hover{
    transform:translateY(-4px);
    border-color:color-mix(in srgb,var(--card-border) 55%,var(--accent-orange));
    box-shadow:0 26px 44px rgba(15,23,42,.28),0 0 0 1px color-mix(in srgb,var(--accent-orange) 20%,transparent),inset 0 1px 0 rgba(255,255,255,.2);
}
.account-card--account::after{
    content:"";
    position:absolute;
    z-index:0;
    right:-34px;
    bottom:-58px;
    width:190px;
    height:125px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:50%;
    box-shadow:0 0 0 15px rgba(255,255,255,.06),0 0 0 30px rgba(255,255,255,.04);
    transform:rotate(-18deg);
    pointer-events:none;
}
.account-card--credit::after{
    content:")))";
    position:absolute;
    z-index:0;
    top:94px;
    right:20px;
    color:rgba(255,255,255,.7);
    font-size:18px;
    letter-spacing:-6px;
    line-height:1;
    transform:rotate(-90deg);
    pointer-events:none;
}
.account-card.account-card--account .account-card-top,
.account-card.account-card--credit .account-card-top{
    margin-bottom:16px;
}
.account-card.account-card--account .account-icon,
.account-card.account-card--credit .account-icon{
    border:1px solid rgba(255,255,255,.22);
    background:rgba(255,255,255,.12);
    color:var(--card-ink);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.2);
}
.account-card.account-card--account .account-icon{
    font-weight:800;
}
.account-card.account-card--credit .account-icon{
    position:relative;
    width:42px;
    height:30px;
    border-radius:7px;
    background:linear-gradient(135deg,#ffe8ae 0%,#d39443 100%);
    border-color:rgba(255,235,177,.7);
    color:transparent;
    font-size:0;
    box-shadow:inset 0 1px 1px rgba(255,255,255,.58),0 4px 10px rgba(0,0,0,.14);
}
.account-card.account-card--credit .account-icon::before{
    content:"";
    position:absolute;
    inset:6px 8px;
    border:1px solid rgba(107,70,20,.5);
    border-radius:4px;
}
.account-card.account-card--credit .account-icon::after{
    content:"";
    position:absolute;
    top:6px;
    bottom:6px;
    left:19px;
    width:1px;
    background:rgba(107,70,20,.46);
    box-shadow:-7px 8px 0 -0.4px rgba(107,70,20,.42),7px -8px 0 -0.4px rgba(107,70,20,.42);
}
.account-card.account-card--account:hover .account-icon{
    background:rgba(255,255,255,.18);
    color:var(--card-ink);
}
.account-card.account-card--credit:hover .account-icon{
    background:linear-gradient(135deg,#ffe8ae 0%,#d39443 100%);
    color:transparent;
}
.account-card.account-card--account small,
.account-card.account-card--credit small{
    display:block;
    color:var(--card-muted);
    font-size:var(--font-xs);
    font-weight:700;
    letter-spacing:.12em;
    line-height:1.35;
    text-transform:uppercase;
}
.account-card.account-card--account h3,
.account-card.account-card--credit h3{
    margin:6px 0 14px;
    color:var(--card-ink);
    font-size:18px;
    letter-spacing:-.02em;
}
.account-card.account-card--account strong,
.account-card.account-card--credit strong{
    display:block;
    margin-top:auto;
    color:var(--card-ink);
    font-size:24px;
    letter-spacing:-.04em;
}
.account-card.account-card--account > span:not(.badge),
.account-card.account-card--credit > span:not(.badge){
    display:block;
    margin-top:3px;
    color:var(--card-muted);
    font-size:var(--font-xs);
}
.account-card--credit .card-limit-balance{margin-top:auto}
.account-card.account-card--credit .card-limit-balance small{letter-spacing:.08em}
.account-card.account-card--credit .card-limit-balance strong{margin:4px 0 1px;font-size:25px;font-variant-numeric:tabular-nums}
.account-card.account-card--credit .card-limit-balance strong.is-negative{color:#ffd0d0}
.account-card--credit .card-limit-balance span{display:block;color:var(--card-muted);font-size:11px}
.account-card--credit .card-limit-track{height:6px;margin-top:12px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.18)}
.account-card--credit .card-limit-track>span{display:block;height:100%;border-radius:inherit;background:var(--card-ink);opacity:.9}
.account-card--credit .card-limit-meta{display:flex;justify-content:space-between;gap:12px;margin-top:5px;color:var(--card-muted);font-size:10px;font-weight:700;font-variant-numeric:tabular-nums}
.account-card.account-card--credit .card-limit-reconciled{margin-top:6px;color:var(--card-muted);font-size:9px;letter-spacing:.06em}
.account-card.account-card--credit > span.card-cycle{margin-top:9px}
.account-card.account-card--account .badge,
.account-card.account-card--credit .badge{
    border:1px solid rgba(255,255,255,.24);
    background:rgba(255,255,255,.14);
    color:var(--card-ink);
}
.account-card.account-card--account .badge.settled,
.account-card.account-card--credit .badge.settled{
    border-color:rgba(185,246,211,.42);
    background:rgba(86,190,125,.2);
    color:#e2ffed;
}
.account-card.account-card--account .badge.cancelled,
.account-card.account-card--credit .badge.cancelled{
    background:rgba(255,255,255,.1);
    color:rgba(248,250,252,.72);
}
.account-card.account-card--account .crud-card-actions,
.account-card.account-card--credit .crud-card-actions{
    justify-content:flex-end;
    margin-top:16px;
    padding-top:12px;
    border-top:1px solid var(--card-border);
}
.account-card.account-card--account .crud-edit-button,
.account-card.account-card--credit .crud-edit-button,
.account-card.account-card--account .crud-delete-button,
.account-card.account-card--credit .crud-delete-button{
    border:1px solid rgba(255,255,255,.18);
    background:rgba(255,255,255,.08);
    color:var(--card-ink);
}
.account-card.account-card--account .crud-edit-button:hover,
.account-card.account-card--credit .crud-edit-button:hover{
    border-color:rgba(255,255,255,.42);
    background:rgba(255,255,255,.17);
    color:#fff;
}
.account-card.account-card--account .crud-delete-button,
.account-card.account-card--credit .crud-delete-button{
    color:#ffd0d0;
}
.account-card.account-card--account .crud-delete-button:hover,
.account-card.account-card--credit .crud-delete-button:hover{
    border-color:rgba(255,174,174,.55);
    background:rgba(180,46,46,.22);
    color:#ffe5e5;
}

/* Paleta aproximada das principais instituições; nomes desconhecidos usam o fallback azul-grafite. */
.account-card:is(.account-card--account,.account-card--credit)[class*="brand-nubank"],
.account-card:is(.account-card--account,.account-card--credit)[class*="brand-nu"]{
    --card-gradient:linear-gradient(135deg,#4b1680 0%,#820ad1 55%,#b04cdc 100%);
    --card-highlight:rgba(222,166,255,.4);
    --card-border:rgba(211,169,239,.52);
}
.account-card:is(.account-card--account,.account-card--credit)[class*="brand-itau"]{
    --card-gradient:linear-gradient(135deg,#f28a22 0%,#d85a05 55%,#9d2d00 100%);
    --card-highlight:rgba(255,220,130,.34);
    --card-border:rgba(255,186,113,.58);
}
.account-card:is(.account-card--account,.account-card--credit)[class*="brand-inter"]{
    --card-gradient:linear-gradient(135deg,#ff9a3d 0%,#f36c21 54%,#bd3c08 100%);
    --card-highlight:rgba(255,226,164,.34);
    --card-border:rgba(255,192,127,.58);
}
.account-card:is(.account-card--account,.account-card--credit)[class*="brand-santander"]{
    --card-gradient:linear-gradient(135deg,#d7193f 0%,#af082d 54%,#70061f 100%);
    --card-highlight:rgba(255,146,164,.34);
    --card-border:rgba(255,154,172,.5);
}
.account-card:is(.account-card--account,.account-card--credit)[class*="brand-bradesco"]{
    --card-gradient:linear-gradient(135deg,#c12742 0%,#9f1532 54%,#631025 100%);
    --card-highlight:rgba(255,160,175,.3);
    --card-border:rgba(255,153,171,.5);
}
.account-card:is(.account-card--account,.account-card--credit)[class*="brand-caixa"]{
    --card-gradient:linear-gradient(135deg,#087aca 0%,#005ca9 54%,#003c74 100%);
    --card-highlight:rgba(99,196,255,.36);
    --card-border:rgba(116,196,246,.52);
}
.account-card:is(.account-card--account,.account-card--credit)[class*="brand-banco-do-brasil"],
.account-card:is(.account-card--account,.account-card--credit)[class*="brand-bb"]{
    --card-gradient:linear-gradient(135deg,#075eb3 0%,#064a9b 54%,#002e65 100%);
    --card-highlight:rgba(255,211,73,.36);
    --card-border:rgba(119,179,242,.52);
}
.account-card:is(.account-card--account,.account-card--credit)[class*="brand-c6"]{
    --card-gradient:linear-gradient(135deg,#34383e 0%,#17191d 54%,#08090b 100%);
    --card-highlight:rgba(190,198,209,.28);
    --card-border:rgba(176,187,199,.44);
}
.account-card:is(.account-card--account,.account-card--credit)[class*="brand-neon"]{
    --card-gradient:linear-gradient(135deg,#12c7d0 0%,#048b9b 54%,#005865 100%);
    --card-highlight:rgba(162,255,245,.38);
    --card-border:rgba(129,236,232,.54);
}
.account-card:is(.account-card--account,.account-card--credit)[class*="brand-picpay"]{
    --card-gradient:linear-gradient(135deg,#31d38a 0%,#11a968 54%,#087343 100%);
    --card-highlight:rgba(185,255,220,.38);
    --card-border:rgba(132,238,185,.54);
}
.account-card:is(.account-card--account,.account-card--credit)[class*="brand-mercado-pago"],
.account-card:is(.account-card--account,.account-card--credit)[class*="brand-pagbank"]{
    --card-gradient:linear-gradient(135deg,#1782e8 0%,#0963c8 54%,#06418c 100%);
    --card-highlight:rgba(139,215,255,.38);
    --card-border:rgba(118,200,251,.54);
}
.account-card:is(.account-card--account,.account-card--credit)[class*="brand-original"]{
    --card-gradient:linear-gradient(135deg,#2c7b5c 0%,#1e553f 54%,#12352a 100%);
    --card-highlight:rgba(159,238,198,.32);
    --card-border:rgba(130,215,173,.5);
}
.account-card:is(.account-card--account,.account-card--credit)[class*="brand-wise"]{
    --card-gradient:linear-gradient(135deg,#3e6b2c 0%,#163b27 54%,#0c2518 100%);
    --card-highlight:rgba(185,235,123,.3);
    --card-border:rgba(158,214,130,.5);
}

/* A escolha do usuário tem prioridade sobre a paleta inferida pela instituição. */
.account-card:is(.account-card--account,.account-card--credit).has-custom-color{
    --card-gradient:linear-gradient(135deg,color-mix(in srgb,var(--custom-card-color) 78%,#111827) 0%,color-mix(in srgb,var(--custom-card-color) 58%,#111827) 56%,color-mix(in srgb,var(--custom-card-color) 32%,#020617) 100%);
    --card-highlight:color-mix(in srgb,var(--custom-card-color) 45%,transparent);
    --card-border:color-mix(in srgb,var(--custom-card-color) 52%,rgba(255,255,255,.38));
}
.card-color-field{display:grid;grid-template-columns:auto minmax(120px,1fr);align-items:end;gap:9px 14px;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}
.card-color-field>small{grid-column:1/-1;color:var(--muted);font-weight:500}.card-color-field input[type="color"]{min-height:42px;padding:4px;cursor:pointer}.card-color-field input[type="color"]:disabled{cursor:not-allowed;opacity:.48}

/* O seletor mais específico mantém o acabamento mesmo com os overrides antigos do tema escuro. */
html[data-theme="dark"] .account-card.account-card--account,
html[data-theme="dark"] .account-card.account-card--credit{
    background:var(--card-gradient);
    border-color:var(--card-border);
    color:var(--card-ink);
    box-shadow:0 20px 36px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.18);
}
html[data-theme="dark"] .account-card.account-card--account small,
html[data-theme="dark"] .account-card.account-card--credit small,
html[data-theme="dark"] .account-card.account-card--account > span:not(.badge),
html[data-theme="dark"] .account-card.account-card--credit > span:not(.badge){
    color:var(--card-muted);
}
html[data-theme="dark"] .account-card.account-card--account h3,
html[data-theme="dark"] .account-card.account-card--credit h3,
html[data-theme="dark"] .account-card.account-card--account strong,
html[data-theme="dark"] .account-card.account-card--credit strong{
    color:var(--card-ink);
}
html[data-theme="dark"] .account-card.account-card--account .crud-card-actions,
html[data-theme="dark"] .account-card.account-card--credit .crud-card-actions{
    border-color:var(--card-border);
}

@media(max-width:760px){
    .account-card.account-card--account,
    .account-card.account-card--credit{
        min-height:220px;
        padding:19px;
    }
    .card-color-field{grid-template-columns:1fr}
    .card-color-field>small{grid-column:auto}
}
@media(prefers-reduced-motion:reduce){
    .account-card.account-card--account,
    .account-card.account-card--credit,
    .account-card.account-card--account:hover,
    .account-card.account-card--credit:hover{
        transition:none!important;
        transform:none!important;
    }
}

/* source: components/finance.css */
/* Movimentações e compromissos: leitura financeira e ações consistentes. */
.ledger-filter{padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:16px;align-items:end}
.ledger-filter label{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:12px;font-weight:650;color:var(--muted)}
.ledger-filter label input,.ledger-filter label select{min-height:42px;width:100%}
.movement-ledger-filter{display:flex;flex-wrap:wrap;gap:12px}.movement-ledger-filter label{flex:1 1 140px}.movement-ledger-filter label.grow{flex:2 1 240px}.movement-filter-actions{display:flex;align-items:center;gap:12px;min-height:42px}.movement-filter-actions .text-link{padding:10px 2px}.movement-status-shortcuts{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 14px}.movement-status-shortcuts a{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:12px;font-weight:700;text-decoration:none}.movement-status-shortcuts a:hover,.movement-status-shortcuts a.active{border-color:var(--accent-orange-border);background:var(--accent-orange-soft);color:var(--text)}.movement-status-shortcuts span{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--surface2);font-size:10px}.movement-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.movement-summary-grid .panel{display:flex;flex-direction:column;min-height:132px;padding:17px}.movement-summary-grid span,.movement-summary-grid small{color:var(--muted);font-size:var(--font-xs)}.movement-summary-grid strong{margin:8px 0 4px;font-size:20px;letter-spacing:-.03em}.movement-summary-grid strong.income{color:var(--success)}.movement-summary-grid strong.expense{color:var(--danger)}.movement-pending-summary{border-color:color-mix(in srgb,var(--warning) 38%,var(--line))}.movement-pending-summary a{align-self:flex-start;margin-top:auto;color:var(--accent-orange-strong);font-size:12px;font-weight:750;text-decoration:none}
.finance-ledger .data-table{font-size:13px}
.finance-ledger .data-table th{font-size:var(--font-xs);letter-spacing:.04em;padding-block:16px}
.finance-ledger .data-table td{padding:17px 16px}
.finance-ledger .data-table td strong{font-size:13px}
.finance-ledger .data-table td small{font-size:var(--font-xs);line-height:1.55}
.finance-ledger .data-table td:nth-child(2){min-width:210px;max-width:380px;overflow-wrap:anywhere}
.finance-ledger .data-table td:first-child{white-space:nowrap}
.finance-ledger .data-table tbody tr{transition:background-color .16s ease}
.finance-ledger .data-table tbody tr:hover{background:var(--surface2)}
.finance-ledger .data-table .amount{font-size:15px;font-weight:750;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.finance-ledger .data-table .amount.income,.finance-ledger .ledger-kind.income{color:var(--success)}
.finance-ledger .data-table .amount.expense,.finance-ledger .data-table .amount.card_payment,.finance-ledger .ledger-kind.expense{color:var(--danger)}
.finance-ledger .data-table .amount.transfer,.finance-ledger .data-table .amount.adjustment{color:var(--text)}
.finance-ledger .ledger-kind{display:inline-flex;padding:5px 9px;border:1px solid var(--line);border-radius:8px;font-size:var(--font-xs);font-weight:700;background:var(--surface2)}
.finance-ledger .badge{font-size:var(--font-xs);padding:6px 10px;font-weight:650;white-space:nowrap}
.finance-ledger .crud-actions{flex-wrap:nowrap}
.finance-ledger .ledger-installment-link{flex:0 0 auto;min-width:138px;min-height:38px;padding:8px 11px;font-size:12px;line-height:1.2;white-space:nowrap;overflow-wrap:normal;word-break:normal}
.finance-ledger :is(.crud-edit-button,.crud-delete-button,.ledger-settle){display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:8px 11px;border:1px solid var(--line);border-radius:9px;background:var(--surface);font-size:12px;white-space:nowrap;transition:background-color .16s ease,border-color .16s ease}
.finance-ledger .crud-edit-button:hover,.finance-ledger .ledger-settle:hover{background:var(--accent-orange-soft);border-color:var(--accent-orange-border);color:var(--text)}
.finance-ledger .crud-delete-button{color:var(--danger)}
.finance-ledger .crud-delete-button:hover{background:color-mix(in srgb,var(--danger) 12%,var(--surface));border-color:var(--danger)}
.finance-ledger .ledger-settle::before{content:"✓"}
.finance-ledger .data-table .ledger-due{display:inline-block;padding:3px 7px;border-radius:6px;background:var(--surface2);color:var(--muted)}
.finance-ledger .data-table .ledger-due.is-overdue{background:color-mix(in srgb,var(--danger) 12%,var(--surface));color:var(--danger);font-weight:700}


.commitments-month-nav .icon-button{border:1px solid var(--line);border-radius:10px;background:var(--surface2)}
.commitments-month-nav .icon-button:hover{background:var(--accent-orange-soft);color:var(--text)}
.commitments-filter-actions .primary-action::before{content:"≡";margin-right:7px}
@media(max-width:760px){
    .ledger-filter{display:grid;grid-template-columns:minmax(0,1fr);padding:16px}
    .ledger-filter>:first-child{grid-column:auto}
    .ledger-filter>button{width:100%;min-height:42px}
    .movement-ledger-filter>*{width:100%;flex-basis:100%!important}.movement-filter-actions{justify-content:space-between}.movement-filter-actions .secondary-button{width:auto}.movement-summary-grid{grid-template-columns:minmax(0,1fr)}
    .finance-ledger .data-table td{padding:14px 12px}
    .finance-ledger .table-wrap{scrollbar-width:thin}
    .finance-ledger :is(.crud-edit-button,.crud-delete-button,.ledger-settle,.ledger-installment-link){min-height:44px}
}
@media(min-width:761px) and (max-width:1100px){.movement-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Parcelamentos e recorrências — continuação do visual financeiro v6. */
.finance-installments-filter.ledger-filter{display:flex;flex-wrap:wrap;gap:12px}
.finance-installments-filter.ledger-filter .grow{flex:1 1 240px}
.finance-installments-filter.ledger-filter .text-link{display:inline-flex;align-items:center;min-height:42px;padding:10px}
.finance-installment-card{border-top:3px solid var(--accent-orange);padding:24px}
.finance-installment-card.is-receivable{border-top-color:var(--success)}
.finance-installment-card.is-receivable .finance-installment-progress span{background:var(--success)}
.finance-installment-card.is-receivable .finance-installment-status .pill{border-color:color-mix(in srgb,var(--success) 38%,var(--line));background:color-mix(in srgb,var(--success) 10%,var(--surface));color:var(--success)}
.finance-installment-related{display:block;margin-top:6px;color:var(--success);font-size:12px;line-height:1.5}
.finance-installment-shortcuts{margin-top:-4px}
.finance-installment-card.is-finished{border-top-color:var(--line);opacity:1}
.finance-installment-card .panel-head{gap:18px}
.finance-installment-card .panel-head h3{font-size:20px;overflow-wrap:anywhere}
.finance-installment-card .panel-head p{font-size:13px;line-height:1.6;color:var(--muted)}
.finance-installment-status .pill{display:inline-flex;padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:var(--surface2);color:var(--text);font-size:12px;white-space:nowrap}
.finance-installment-metrics{gap:12px;margin-block:20px}
.finance-installment-metrics>div{padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface2);min-width:0}
.finance-installment-metrics span{font-size:12px;color:var(--muted)}
.finance-installment-metrics strong{font-size:18px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.finance-installment-progress{height:8px}
.finance-installment-progress span{background:var(--accent-orange)}
.finance-installment-card.is-finished .finance-installment-progress span{background:var(--muted)}
.finance-installment-progress-label{display:block;font-size:12px;line-height:1.5;margin-top:8px;color:var(--muted)}
.finance-installment-details{margin-top:18px;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.finance-installment-details summary{padding:14px 16px;cursor:pointer;background:var(--surface2);font-size:13px;font-weight:700;color:var(--text)}
.finance-installment-details summary:hover{background:var(--accent-orange-soft)}
.finance-installment-details summary:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-3px}
.finance-installment-details.finance-ledger .data-table td:nth-child(2){min-width:120px}
.finance-installment-details .data-table td:last-child{font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}
.finance-installment-details .data-table .table-actions{width:1%;min-width:112px;white-space:nowrap;overflow-wrap:normal}.installment-settle-button{display:inline-flex;align-items:center;justify-content:center;min-width:88px;white-space:nowrap;overflow-wrap:normal;line-height:1.2}
.finance-installment-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;padding-top:18px}
.finance-installment-actions .installment-cancel{color:var(--danger);min-height:42px}
.installment-cancel::before{content:"×";margin-right:7px;font-size:16px}
.finance-installment-actions .installment-cancel:hover{background:color-mix(in srgb,var(--danger) 10%,var(--surface));border-color:var(--danger);color:var(--danger)}
.finance-installment-actions .installment-delete{min-height:42px;color:var(--danger)}
.finance-installment-actions .installment-delete:hover{background:color-mix(in srgb,var(--danger) 12%,var(--surface));border-color:var(--danger);color:var(--danger)}
.finance-installments-note p{font-size:13px;line-height:1.7}
.finance-closing-checklist{margin-bottom:14px;min-height:0;border-top:3px solid var(--warning)}
.finance-closing-checklist.is-ready{border-top-color:var(--success)}
.finance-closing-checklist .panel-head p{margin:5px 0 0;color:var(--muted);font-size:12px}
.finance-closing-checklist .pill{display:inline-flex;padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:var(--surface2);font-size:12px;font-weight:700;white-space:nowrap}
.finance-closing-checklist.is-ready .pill{color:var(--success);border-color:color-mix(in srgb,var(--success) 35%,var(--line));background:color-mix(in srgb,var(--success) 9%,var(--surface))}
.finance-closing-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}
.finance-closing-items a{display:flex;min-width:0;flex-direction:column;gap:5px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface2);color:inherit;text-decoration:none}
.finance-closing-items a:hover{border-color:var(--accent-orange-border);background:var(--accent-orange-soft)}
.finance-closing-items span,.finance-closing-items small{color:var(--muted);font-size:12px}.finance-closing-items strong{font-size:21px}
.finance-closing-footer{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-top:16px}.finance-closing-footer .report-note{margin:0}.finance-closing-footer form{flex:0 0 auto}.finance-closing-footer .primary-action{margin:0}
.finance-month-position,.finance-closing-invoices{margin-bottom:14px;min-height:0}.finance-month-position .panel-head p,.finance-closing-invoices .panel-head p{margin:5px 0 0;color:var(--muted);font-size:12px}.finance-month-position .pill{display:inline-flex;padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:var(--surface2);font-size:12px;font-weight:700;white-space:nowrap}.finance-month-position-summary,.finance-closing-invoice-summary{margin:18px 0 14px}.finance-closing-account-table input{width:132px;min-height:38px;margin-left:auto;text-align:right;font-variant-numeric:tabular-nums}.finance-closing-account-table output{font-weight:750;font-variant-numeric:tabular-nums;white-space:nowrap}.finance-closing-note{display:grid;gap:7px;margin-top:16px;color:var(--muted);font-size:12px;font-weight:650}.finance-closing-note textarea{resize:vertical}.finance-account-closing-actions{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-top:12px}.finance-account-closing-actions .report-note{margin:0}.finance-account-closing-actions .primary-action{flex:0 0 auto}.finance-closing-invoice-list{display:grid;gap:8px}.finance-closing-invoice-list article{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(120px,auto);align-items:center;gap:14px;padding:12px 14px;border:1px solid var(--line);border-radius:11px;background:var(--surface2)}.finance-closing-invoice-list article>div{display:grid;gap:3px}.finance-closing-invoice-list article>div:last-child{text-align:right}.finance-closing-invoice-list small{color:var(--muted);font-size:11px}.finance-closing-invoice-list .badge{white-space:nowrap}
.finance-closing-audit{margin-bottom:14px;min-height:0}.finance-closing-audit .panel-head p{margin:5px 0 0;color:var(--muted);font-size:12px}.finance-closing-audit-summary{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.finance-closing-audit-summary span{padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface2);font-size:12px;color:var(--muted)}.finance-closing-audit-summary strong{color:var(--text)}.finance-closing-audit-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.finance-closing-audit-list article{display:flex;align-items:center;gap:12px;padding:11px 12px;border:1px solid var(--line);border-radius:11px}.finance-closing-audit-list article>div{display:flex;min-width:0;flex-direction:column}.finance-closing-audit-list article strong{font-size:13px;overflow-wrap:anywhere}.finance-closing-audit-list article small{margin-top:3px;color:var(--muted);font-size:11px}
.invoice-trends-panel{margin-bottom:14px;min-height:0}.invoice-trends-panel .panel-head p{margin:5px 0 0;color:var(--muted);font-size:12px}.invoice-increase-alert{padding:7px 10px;border:1px solid color-mix(in srgb,var(--danger) 35%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--danger) 10%,var(--surface));color:var(--danger);font-size:12px;font-weight:700}.invoice-trend-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}.invoice-trend-overview>div{padding:13px;border:1px solid var(--line);border-radius:11px;background:var(--surface2)}.invoice-trend-overview span,.invoice-trend-overview small{display:block;color:var(--muted);font-size:11px}.invoice-trend-overview strong{display:block;margin:5px 0;font-size:19px}.invoice-trend-bars{display:flex;align-items:end;gap:10px;height:170px;margin-top:18px;padding-top:25px}.invoice-trend-bars>div{display:flex;flex:1;height:100%;min-width:54px;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px}.invoice-trend-bars i{display:block;width:min(34px,70%);min-height:3px;border-radius:7px 7px 2px 2px;background:var(--text)}.invoice-trend-bars strong,.invoice-trend-bars small{font-size:10px;white-space:nowrap}.invoice-trend-bars small{color:var(--muted)}.invoice-card-trends{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:18px}.invoice-card-trends article{display:grid;grid-template-columns:minmax(0,1fr) 110px;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:11px}.invoice-card-trends article>div:first-child{display:flex;min-width:0;flex-direction:column}.invoice-card-trends article strong{font-size:13px}.invoice-card-trends article span{align-self:flex-start;margin:4px 0;padding:3px 6px;border-radius:6px;background:color-mix(in srgb,var(--danger) 10%,var(--surface));color:var(--danger);font-size:10px}.invoice-card-trends article small{color:var(--muted);font-size:11px}.invoice-card-mini-bars{display:flex;align-items:end;gap:4px;height:42px}.invoice-card-mini-bars i{flex:1;min-height:2px;border-radius:3px 3px 1px 1px;background:var(--muted)}
.notification-scope-shortcuts{margin-bottom:14px}.notification-top{align-items:center;flex-wrap:wrap}.notification-priority{margin-left:auto;padding:4px 8px;border-radius:999px;background:var(--surface2);color:var(--muted);font-size:var(--font-xs);font-weight:700;white-space:nowrap}.notification-type-critical .notification-priority{background:color-mix(in srgb,var(--danger) 12%,var(--surface));color:var(--danger)}.notification-type-warning .notification-priority{background:color-mix(in srgb,var(--warning) 14%,var(--surface));color:color-mix(in srgb,var(--warning) 70%,var(--text))}
.recurring-ledger .data-table td:first-child{white-space:normal;min-width:190px;max-width:320px;overflow-wrap:anywhere}
.recurring-ledger .data-table td:nth-child(2){min-width:90px}
.recurring-ledger .recurring-toggle{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:8px 11px;font-size:12px;white-space:nowrap}
@media(max-width:620px){
    .finance-installment-card{padding:18px}
    .finance-installment-card .panel-head{flex-direction:column}
    .finance-installments-filter.ledger-filter>*{width:100%}
    .finance-installment-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
    .finance-installment-actions,.finance-installment-actions form,.finance-installment-actions :is(.installment-cancel,.installment-delete){width:100%}
    .recurring-ledger .recurring-toggle{min-height:44px}
    .finance-closing-items{grid-template-columns:1fr}
    .finance-closing-footer,.finance-account-closing-actions{align-items:stretch;flex-direction:column}.finance-closing-footer button,.finance-account-closing-actions button{width:100%}.finance-closing-account-table input{min-height:44px}.finance-closing-invoice-list article{grid-template-columns:minmax(0,1fr) auto}.finance-closing-invoice-list article>div:last-child{grid-column:1/-1;text-align:left}
    .finance-closing-audit-list{grid-template-columns:1fr}
    .invoice-trend-overview,.invoice-card-trends{grid-template-columns:1fr}.invoice-card-trends article{grid-template-columns:minmax(0,1fr) 90px}.invoice-trend-bars{overflow-x:auto}.invoice-trend-bars>div{flex:0 0 58px}
}

/* Fila de conciliação rápida das movimentações pendentes. */
.movement-reconciliation-panel{margin-bottom:14px;padding:20px}
.movement-reconciliation-panel .panel-head{margin-bottom:14px}
.movement-reconciliation-panel .panel-head p{margin-top:5px;color:var(--muted);font-size:12px}
.movement-reconciliation-list{display:grid;gap:8px}
.movement-reconciliation-list article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}
.movement-reconciliation-list article>div{display:flex;min-width:0;flex-direction:column;gap:3px}
.movement-reconciliation-list article small{color:var(--muted);font-size:11px}
.movement-reconciliation-list article small.is-overdue{color:var(--danger);font-weight:700}
.movement-reconciliation-amount{font-size:14px;font-variant-numeric:tabular-nums}
.movement-reconciliation-list .ledger-settle{min-height:38px}
.movement-reconciliation-list .ledger-settle::before{content:"✓"}
@media(max-width:760px){
    .movement-reconciliation-panel{padding:16px}
    .movement-reconciliation-panel .panel-head{align-items:flex-start}
    .movement-reconciliation-list article{grid-template-columns:minmax(0,1fr) auto}
    .movement-reconciliation-list article>div{grid-column:1/-1}
    .movement-reconciliation-list .ledger-settle{min-height:44px}
}
@media(max-width:380px){.finance-installment-metrics{grid-template-columns:minmax(0,1fr)}}

.recurring-bulk-toolbar{display:flex;align-items:end;gap:14px;flex-wrap:wrap;margin-bottom:18px}.recurring-bulk-toolbar>div{flex:1 1 240px}.recurring-bulk-toolbar label{min-width:180px}.recurring-select-cell{width:42px}.table-secondary{display:block;margin-top:4px;color:var(--muted);font-size:12px}.audit-json{max-width:560px;max-height:260px;overflow:auto;margin-top:10px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface2);font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere}.data-table details summary{cursor:pointer;color:var(--accent);font-size:12px;margin-top:5px}
@media(max-width:760px){.recurring-bulk-toolbar>*{width:100%}.recurring-bulk-toolbar label{min-width:0}}

/* Ciclo completo de faturas e conciliações de cartão. */
.invoice-header.account-card.invoice-brand-header .invoice-state.invoice-closed{background:var(--surface2);color:var(--text);border-color:var(--line)}
.invoice-header.account-card.invoice-brand-header .invoice-state.invoice-partial{background:var(--warning-soft);color:var(--warning);border-color:color-mix(in srgb,var(--warning) 45%,var(--line))}
.invoice-pay-form>input{width:150px;min-height:42px}
.invoice-check small{display:block;margin-top:4px;color:var(--muted);font-size:11px}
.invoice-history-list{display:grid;padding:8px 24px 16px}
.invoice-history-list article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:11px 0;border-bottom:1px solid var(--line)}
.invoice-history-list article:last-child{border-bottom:0}.invoice-history-list article>div{display:grid;gap:3px}.invoice-history-list small{color:var(--muted)}.invoice-history-list .invoice-credit{color:var(--success)}
.invoice-adjustment-form{border-top:1px solid var(--line);padding:0 24px 20px}.invoice-adjustment-form>summary{cursor:pointer;padding:14px 0;font-size:13px;font-weight:700;color:var(--muted)}.invoice-adjustment-form .form-grid{padding-top:8px}
.card-invoice-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}.card-invoice-overview>span{display:grid;gap:3px;padding:9px;border:1px solid color-mix(in srgb,var(--card-ink) 25%,transparent);border-radius:10px;background:color-mix(in srgb,var(--card-surface) 72%,transparent)}.card-invoice-overview small{font-size:10px!important}.card-invoice-overview strong{font-size:12px;overflow-wrap:anywhere}
.card-reconciliation-history{margin-top:10px;font-size:11px}.card-reconciliation-history summary{cursor:pointer;font-weight:700}.card-reconciliation-history>div{margin-top:7px;padding:7px 9px;border-radius:9px;background:color-mix(in srgb,var(--card-surface) 72%,transparent)}.card-reconciliation-history p{display:flex;justify-content:space-between;gap:8px;margin:4px 0}.card-reconciliation-history span{font-size:10px}
@media(max-width:760px){.invoice-history-list{padding-inline:18px}.invoice-history-list article{grid-template-columns:minmax(0,1fr) auto}.invoice-history-list article form{grid-column:2}.invoice-adjustment-form{padding-inline:18px}.invoice-pay-form>input{width:100%}.card-invoice-overview{grid-template-columns:minmax(0,1fr)}}
.invoice-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px}.invoice-month-navigation{display:flex;align-items:center;gap:10px}.invoice-month-navigation .secondary-button{display:grid;place-items:center;width:42px;padding:0}.invoice-month-navigation strong{min-width:70px;text-align:center;font-variant-numeric:tabular-nums}.invoice-month-navigation>a:last-child:not(.secondary-button){font-size:12px;font-weight:700}.invoice-filter-bar{margin:0}.invoice-filter-bar label{display:grid;gap:5px;font-size:11px;font-weight:700;color:var(--muted)}.invoice-filter-bar select{min-width:190px}.invoice-status-filter{margin-bottom:16px}.invoice-summary-grid{margin-bottom:20px}.invoice-summary-grid .metric-card strong{font-variant-numeric:tabular-nums}.invoice-summary-grid .metric-expense strong{color:var(--danger)}
@media(max-width:900px){.invoice-toolbar{align-items:stretch;flex-direction:column}.invoice-filter-bar{width:100%}}
@media(max-width:620px){.invoice-month-navigation{flex-wrap:wrap}.invoice-month-navigation>a:last-child:not(.secondary-button){width:100%}.invoice-filter-bar label,.invoice-filter-bar select,.invoice-filter-bar .secondary-button{width:100%}.invoice-summary-grid{grid-template-columns:minmax(0,1fr)}}
.invoice-forecast-panel{margin-bottom:20px}.invoice-forecast-panel .panel-head p{max-width:760px}.invoice-forecast-legend{display:flex;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:12px;font-weight:700}.invoice-forecast-legend span{display:flex;align-items:center;gap:6px}.invoice-forecast-legend i{width:10px;height:10px;border-radius:50%;background:var(--accent-orange)}.invoice-forecast-legend i.projected{background:var(--muted)}.invoice-forecast-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.invoice-forecast-card{display:grid;gap:12px;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface2)}.invoice-forecast-card.is-current{border-color:var(--accent-orange-border);box-shadow:inset 3px 0 0 var(--accent-orange)}.invoice-forecast-card>div:first-child{display:flex;justify-content:space-between;gap:10px}.invoice-forecast-card>div:first-child span{font-size:10px;font-weight:800;color:var(--muted);letter-spacing:.06em}.invoice-forecast-card>div:first-child a{font-size:12px;font-weight:800}.invoice-forecast-card>strong{font-size:22px;font-variant-numeric:tabular-nums}.invoice-forecast-card dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}.invoice-forecast-card dl div{display:grid;gap:3px}.invoice-forecast-card dt{font-size:10px;color:var(--muted)}.invoice-forecast-card dd{margin:0;font-size:12px;font-weight:750;font-variant-numeric:tabular-nums}.invoice-forecast-card details summary{cursor:pointer;font-size:11px;font-weight:700;color:var(--muted)}.invoice-forecast-card details>div{display:grid;gap:5px;margin-top:8px}.invoice-forecast-card details p{display:flex;justify-content:space-between;gap:8px;margin:0;font-size:11px}.invoice-forecast-card>small{color:var(--muted);font-size:11px}.invoice-payment-balance{flex-basis:100%;padding:8px 10px;border-radius:9px;background:var(--success-soft);color:var(--success);font-size:11px;font-weight:700;text-align:right}.invoice-payment-balance.is-negative{background:var(--warning-soft);color:var(--warning)}
@media(max-width:900px){.invoice-forecast-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.invoice-forecast-grid{grid-template-columns:minmax(0,1fr)}.invoice-forecast-legend{width:100%}.invoice-payment-balance{text-align:left}}

/* Cadastros financeiros: categorias e contatos. */
.finance-directory .data-table td:first-child{white-space:normal;min-width:180px;max-width:320px;overflow-wrap:anywhere}
.finance-directory .data-table td:nth-child(2){min-width:130px}
.finance-directory .data-table td:nth-child(3){overflow-wrap:anywhere;max-width:300px}
.finance-directory .ledger-kind.both{color:var(--text)}
.finance-directory .is-muted{opacity:1}
.finance-directory .is-muted td:first-child strong{color:var(--muted)}
.finance-directory .directory-archive{color:var(--text)}
.finance-directory .directory-archive::before{content:"▣"}
.finance-directory .directory-archive:hover{color:var(--text);background:var(--accent-orange-soft);border-color:var(--accent-orange-border)}
.finance-contacts-filter.ledger-filter{display:flex;gap:12px;flex-wrap:wrap}
.finance-contacts-filter.ledger-filter .grow{flex:1 1 260px}
.finance-contacts-filter.ledger-filter .text-link{display:inline-flex;align-items:center;min-height:42px;padding:10px}
@media(max-width:620px){
    .finance-contacts-filter.ledger-filter>*{width:100%}
    .finance-directory .data-table td:first-child{min-width:160px}
}

/* Rastreabilidade financeira: composição legível e conferência entre módulos. */
.finance-traceability-filter{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:14px}.finance-traceability-filter label{flex:0 1 190px}.finance-traceability-filter label.grow{flex:1 1 320px}.finance-traceability-filter .text-link{display:inline-flex;align-items:center;min-height:42px;padding:10px 2px}.finance-traceability-intro,.finance-traceability-group,.finance-traceability-checks,.finance-traceability-history{min-height:0;margin-bottom:14px}.finance-traceability-intro .panel-head p,.finance-traceability-group .panel-head p,.finance-traceability-checks .panel-head p,.finance-traceability-history .panel-head p{max-width:850px;margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.6}.finance-traceability-intro .pill,.finance-traceability-checks .pill{display:inline-flex;padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:var(--surface2);font-size:12px;font-weight:750;white-space:nowrap}.finance-traceability-intro .pill.is-ok{border-color:color-mix(in srgb,var(--success) 38%,var(--line));background:color-mix(in srgb,var(--success) 10%,var(--surface));color:var(--success)}.finance-traceability-intro .pill.is-warning{border-color:color-mix(in srgb,var(--warning) 45%,var(--line));background:color-mix(in srgb,var(--warning) 12%,var(--surface));color:var(--warning)}
.finance-traceability-source-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:18px}.finance-traceability-source-strip span{display:flex;min-width:0;flex-direction:column;gap:4px;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--surface2);color:var(--muted);font-size:11px}.finance-traceability-source-strip strong{color:var(--text);font-size:18px;font-variant-numeric:tabular-nums}
.finance-traceability-group{border-top:3px solid var(--line)}.finance-traceability-group--competence{border-top-color:var(--accent-orange)}.finance-traceability-group--cash{border-top-color:var(--success)}.finance-traceability-group--forecast{border-top-color:var(--info)}.finance-traceability-group--credit{border-top-color:var(--warning)}.finance-traceability-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}.finance-traceability-metric{display:flex;min-width:0;min-height:210px;flex-direction:column;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--surface2);box-shadow:inset 3px 0 0 var(--line)}.finance-traceability-metric.is-realized{box-shadow:inset 3px 0 0 var(--accent-orange)}.finance-traceability-metric.is-cash{box-shadow:inset 3px 0 0 var(--success)}.finance-traceability-metric.is-projected{box-shadow:inset 3px 0 0 var(--info)}.finance-traceability-metric.is-credit{box-shadow:inset 3px 0 0 var(--warning)}.finance-traceability-metric.is-attention{box-shadow:inset 3px 0 0 var(--danger)}.finance-traceability-metric>span,.finance-traceability-metric>small{color:var(--muted);font-size:11px}.finance-traceability-metric>strong{margin:7px 0 3px;font-size:22px;font-variant-numeric:tabular-nums;letter-spacing:-.03em}.finance-traceability-metric.is-attention>strong{color:var(--danger)}.finance-traceability-metric>p{margin:14px 0;color:var(--muted);font-size:12px;line-height:1.55}.finance-traceability-metric>a{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;color:var(--text);font-size:12px;font-weight:750;text-decoration:none}.finance-traceability-metric>a:hover{color:var(--accent-orange-strong)}
.finance-traceability-check-list{display:grid;gap:8px;margin-top:18px}.finance-traceability-check-list>a{display:grid;grid-template-columns:34px minmax(0,1fr) minmax(180px,auto);align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:11px;background:var(--surface2);color:inherit;text-decoration:none}.finance-traceability-check-list>a:hover{border-color:var(--accent-orange-border);background:var(--accent-orange-soft)}.finance-traceability-check-list>a.is-invalid{border-color:color-mix(in srgb,var(--danger) 42%,var(--line))}.finance-traceability-check-icon{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--success) 12%,var(--surface));color:var(--success);font-weight:850}.is-invalid .finance-traceability-check-icon{background:color-mix(in srgb,var(--danger) 12%,var(--surface));color:var(--danger)}.finance-traceability-check-list>a>span:nth-child(2){display:grid;gap:3px}.finance-traceability-check-list strong{font-size:13px}.finance-traceability-check-list small{color:var(--muted);font-size:11px}.finance-traceability-check-values{display:grid;gap:3px;text-align:right;font-variant-numeric:tabular-nums}.finance-traceability-check-values b{font-size:12px}.finance-traceability-check-values em{color:var(--danger);font-size:11px;font-style:normal;font-weight:750}.finance-traceability-history .audit-json{max-width:720px;overflow:auto}.finance-traceability-history details summary{cursor:pointer;margin-top:6px;color:var(--muted);font-size:11px;font-weight:700}
@media(max-width:1050px){.finance-traceability-source-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.finance-traceability-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.finance-traceability-filter>*{width:100%;flex-basis:100%!important}.finance-traceability-source-strip,.finance-traceability-metrics{grid-template-columns:minmax(0,1fr)}.finance-traceability-metric{min-height:0}.finance-traceability-check-list>a{grid-template-columns:34px minmax(0,1fr)}.finance-traceability-check-values{grid-column:2;text-align:left}.finance-traceability-intro .panel-head,.finance-traceability-checks .panel-head{align-items:flex-start;flex-direction:column}}

/* source: system/tokens.css */
/* 01 — Contrato de cores e medidas. Alterar aqui, não nos módulos. */
html[data-theme][data-accent="green"]{--appearance-light:#167447;--appearance-dark:#7cdaa5}
html[data-theme][data-accent="blue"]{--appearance-light:#245faa;--appearance-dark:#99c5ff}
html[data-theme][data-accent="purple"]{--appearance-light:#7040a0;--appearance-dark:#d6b4fc}
html[data-theme][data-accent="teal"]{--appearance-light:#0f766e;--appearance-dark:#5eead4}
html[data-theme][data-accent="pink"]{--appearance-light:#be185d;--appearance-dark:#f9a8d4}
html[data-theme][data-accent="indigo"]{--appearance-light:#4338ca;--appearance-dark:#a5b4fc}
html[data-theme][data-accent="slate"]{--appearance-light:#475569;--appearance-dark:#cbd5e1}
html[data-theme][data-accent]:not([data-accent="orange"]){
  --accent:var(--appearance-light);--accent-orange:var(--accent);--accent-orange-strong:var(--accent);
  --accent-orange-soft:color-mix(in srgb,var(--accent) 12%,var(--surface));
  --accent-orange-border:color-mix(in srgb,var(--accent) 60%,var(--surface));
  --action-bg:var(--accent);--action-hover:color-mix(in srgb,var(--accent) 85%,#000);--action-ink:#fff;
  --link:var(--accent);--link-hover:var(--action-hover);--focus-ring:var(--accent);
}
html[data-theme="dark"][data-accent]:not([data-accent="orange"]){--accent:var(--appearance-dark);--action-ink:#151b23;--action-hover:color-mix(in srgb,var(--accent) 85%,#fff)}
/* Aliases usados pelos módulos; resolvidos no elemento que recebe o tema. */
html[data-theme]{
  --font-md:1rem;--font-lg:1.125rem;--font-xl:1.375rem;--font-2xl:1.75rem;
  --text-strong:var(--text);--text-muted:var(--muted);
  --accent-soft:var(--accent-orange-soft);--surface-muted:var(--surface2);
  --border-strong:var(--muted);--line-strong:var(--muted);
  --radius-sm:10px;--radius-md:14px;--shadow-lg:var(--shadow);
  --warning-text:var(--warning);--info-text:var(--info);
}
:root{
  --nav-accent-text:#ffd7bd;--nav-accent-soft:#2a211d;--nav-accent-border:#6f4934;
  --bg:#f6f7f9;--surface:#ffffff;--surface2:#eef1f5;
  --text:#202631;--muted:#596575;--line:#d8dee7;
  --accent:#e87535;--accent-orange:var(--accent);--accent-orange-strong:#a84216;
  --accent-orange-soft:#fff0e5;--accent-orange-border:#dca780;
  --action-bg:#e87535;--action-hover:#f18b4b;--action-ink:#25170f;
  --success:#167447;--success-soft:#e8f5ed;--danger:#b72f3e;--danger-soft:#fff0f1;
  --warning:#805700;--warning-soft:#fff4d5;--info:#245faa;--info-soft:#eaf2ff;
  --link:#9e3c13;--link-hover:#77300f;--focus-ring:#ac4718;
  --border:var(--line);--surface-2:var(--surface2);
  --font-xs:.75rem;--font-sm:.8125rem;--font-body:.9375rem;--font-label:.8125rem;
  --font-title:clamp(1.65rem,2.3vw,2rem);--font-section:1.125rem;
  --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;
  --control-height:42px;--control-small:36px;--control-radius:10px;
  --motion-fast:150ms;--shadow:0 8px 24px rgba(20,24,32,.06);
}
html[data-theme][data-accent]:not([data-accent="orange"]){
  --nav-accent-text:var(--appearance-dark);
  --nav-accent-soft:color-mix(in srgb,var(--appearance-dark) 12%,#151921);
  --nav-accent-border:color-mix(in srgb,var(--appearance-dark) 45%,#151921);
}
html[data-theme="dark"]{
  --bg:#0d1014;--surface:#151b23;--surface2:#202936;
  --text:#edf1f7;--muted:#acb7c7;--line:#354153;
  --accent:#ff995d;--accent-orange-strong:#ffba8e;
  --accent-orange-soft:#34251e;--accent-orange-border:#9b603e;
  --action-bg:#ff995d;--action-hover:#ffb17f;--action-ink:#25170f;
  --success:#7cdaa5;--success-soft:#163a29;--danger:#ff909b;--danger-soft:#3c202a;
  --warning:#f3d07d;--warning-soft:#382f19;--info:#99c5ff;--info-soft:#1c304b;
  --link:#ffba8e;--link-hover:#ffd8be;--focus-ring:#ffba8e;
  --shadow:0 10px 28px rgba(0,0,0,.22);
}

/* source: system/typography.css */
/* 02 — Escala tipográfica comum, sem reduzir tamanho no modo compacto. */
html{font-size:16px}
body{font-size:var(--font-body);line-height:1.5}
button,input,select,textarea{font-family:inherit}
.page-head h1,.home-hero h1{font-size:var(--font-title);line-height:1.2;letter-spacing:-.035em}
.panel h2,.panel h3,.modal-head h3{font-size:var(--font-section);line-height:1.35}
.page-head p,.subtle,.report-note,.goal-caption,.security-note{font-size:var(--font-sm);line-height:1.6}
.form-grid label,.filter-bar label,.login-card label{font-size:var(--font-label)}
.data-table{font-size:var(--font-sm)}
.data-table th,.data-table td small,.metric-card small{font-size:var(--font-xs)}
.data-table td strong{font-size:var(--font-sm)}
.eyebrow{font-size:var(--font-xs);letter-spacing:.09em;line-height:1.5}
.amount,.invoice-total,.metric-card>strong,.account-card>strong{font-variant-numeric:tabular-nums}
.metric-card>strong,.page-head h1{overflow-wrap:anywhere}
.density-compact{--control-height:38px;--control-small:34px}
.density-compact .data-table td{padding-block:10px}
@media(pointer:coarse){:root{--control-height:44px;--control-small:44px}}
@media(max-width:760px),(pointer:coarse){body.density-compact{--control-height:44px;--control-small:44px}}
.appearance-panel{max-width:900px}
.appearance-preview{padding:20px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface2);min-width:0}
.density-compact .appearance-preview{padding:12px}

/* source: system/semantics.css */
/* 03 — Estados e séries. Identidade visual não muda significado financeiro. */
html[data-theme] body :is(.badge.overdue,.status.danger){color:var(--danger);background:var(--danger-soft);font-size:var(--font-xs)}
html[data-theme] body .status.muted{color:var(--muted);background:var(--surface2)}
html[data-theme] body .amount-income{color:var(--success)}
html[data-theme] body .amount-expense{color:var(--danger)}
html body :is(.amount.income,.result.positive strong,.investment-result.positive strong){color:var(--success)}
html body :is(.amount.expense,.amount.card_payment,.result.negative strong,.investment-result.negative strong){color:var(--danger)}
html body :is(.amount.transfer,.amount.adjustment){color:var(--text)}
html body :is(.badge.settled,.badge.completed,.status.success){color:var(--success);background:var(--success-soft)}
html body :is(.badge.pending,.badge.paused,.status.warning){color:var(--warning);background:var(--warning-soft)}
html body :is(.badge.cancelled,.badge.inactive){color:var(--muted);background:var(--surface2)}
html body :is(.badge.active,.badge.planned){color:var(--info);background:var(--info-soft)}
html body :is(.badge.priority-critical,.status.critical){color:var(--danger);background:var(--danger-soft)}
html body :is(.flow-income,.movement-dot.income,.chart-legend i.income,.finance-analysis-bar-pair i.income){background:var(--success)}
html body :is(.flow-expense,.movement-dot.expense,.chart-legend i.expense,.finance-analysis-bar-pair i.expense){background:var(--danger)}
.metric-card.metric-income>strong{color:var(--success)}
.metric-card.metric-expense>strong{color:var(--danger)}
html body .invoice-brand-header .invoice-state.settled{background:var(--success-soft);color:var(--success)}
html body .invoice-brand-header .invoice-state.pending{background:var(--warning-soft);color:var(--warning)}
html body .invoice-brand-header .invoice-state.invoice-overdue{background:var(--danger-soft);color:var(--danger)}

/* source: system/buttons.css */
/* 04 — Botões. As classes existentes são aliases do mesmo componente. */
html[data-theme] body :is(.ui-button,.primary-action,.login-button,.secondary-action,.secondary-button,.ghost-button,.crud-edit-button,.crud-delete-button,.danger-action){
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:var(--control-height);padding:10px 14px;border-radius:var(--control-radius);
  font-size:var(--font-sm);font-weight:650;line-height:1.35;text-decoration:none;
  border:1px solid var(--line);cursor:pointer;max-width:100%;overflow-wrap:normal;word-break:normal;
  transition:background-color var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast);
}
html[data-theme] body :is(.primary-action,.login-button){background:var(--action-bg);color:var(--action-ink);border-color:transparent;box-shadow:0 3px 9px rgba(0,0,0,.1)}
html[data-theme] body :is(.primary-action,.login-button):hover{background:var(--action-hover);color:var(--action-ink);filter:none;transform:none;box-shadow:0 4px 12px rgba(0,0,0,.14)}
html[data-theme] body :is(.secondary-action,.secondary-button,.crud-edit-button){background:var(--surface);color:var(--text)}
html[data-theme] body :is(.secondary-action,.secondary-button,.crud-edit-button):hover{background:var(--accent-orange-soft);border-color:var(--accent-orange-border);color:var(--text);transform:none;box-shadow:none}
html[data-theme] body :is(.ghost-button,.ui-button--quiet){background:transparent;color:var(--muted);border-color:transparent;box-shadow:none}
html[data-theme] body :is(.ghost-button,.ui-button--quiet):hover{background:var(--surface2);color:var(--text);transform:none;box-shadow:none}
html[data-theme] body :is(.crud-delete-button,.installment-cancel,.ui-button--danger){color:var(--danger);background:var(--surface);border-color:var(--line)}
html[data-theme] body :is(.crud-delete-button,.installment-cancel,.ui-button--danger):hover{color:var(--danger);background:var(--danger-soft);border-color:var(--danger);transform:none;box-shadow:none}
html[data-theme] body .danger-action{color:var(--danger);background:var(--danger-soft);border-color:var(--danger)}
html[data-theme] body .danger-action:hover{color:var(--danger);background:var(--danger-soft);box-shadow:inset 0 0 0 1px var(--danger)}
html[data-theme] body .directory-archive{color:var(--text);background:var(--surface);border-color:var(--line)}
html[data-theme] body .directory-archive:hover{color:var(--text);background:var(--surface2);border-color:var(--muted)}
html[data-theme] body :is(.crud-edit-button,.crud-delete-button,.ui-button--small){min-height:var(--control-small);padding:7px 10px;font-size:var(--font-xs)}
html[data-theme] body :is(.modal-close,.search-close,.icon-button,.theme-toggle,.topbar-icon){display:inline-flex;align-items:center;justify-content:center;min-height:var(--control-height);min-width:var(--control-height);border-radius:var(--control-radius);text-decoration:none}
html[data-theme] body :is(.primary-action,.secondary-action,.secondary-button,.ghost-button,.crud-edit-button,.crud-delete-button,.danger-action):active{transform:none;box-shadow:inset 0 2px 4px rgba(0,0,0,.15)}
html[data-theme] body :is(button,a)[aria-busy="true"]{cursor:progress}
html[data-theme] body :is(button:disabled,a[aria-disabled="true"]){opacity:.55;cursor:not-allowed;transform:none;filter:none;box-shadow:none}
html[data-theme] body :is(button:disabled,a[aria-disabled="true"]):hover{filter:none;transform:none;box-shadow:none}
html[data-theme] :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}
html[data-theme] body :is(a.primary-action,a.secondary-action,a.secondary-button,.shortcut-stack a,.quick-links a,.quick-add-grid a):is(:hover,:visited){text-decoration:none}
html[data-theme] body :is(.text-link,.back-link){color:var(--link)}
html[data-theme] body :is(p,li)>a:not([class]){color:var(--link);text-decoration:underline;text-underline-offset:3px}
html[data-theme] body :is(p,li)>a:not([class]):hover{color:var(--link-hover);text-decoration:underline}
/* A tinta dos controles sobre cartões acompanha sua superfície. */
html[data-theme] body .account-card:is(.account-card--account,.account-card--credit) .crud-edit-button{background:rgba(0,0,0,.2);color:#fff;border-color:rgba(255,255,255,.4)}
html[data-theme] body .account-card:is(.account-card--account,.account-card--credit) .crud-delete-button{background:rgba(0,0,0,.25);color:#fff;border-color:rgba(255,255,255,.4)}
html[data-theme] body .account-card .crud-edit-button:hover{background:rgba(0,0,0,.4)}
html[data-theme] body .account-card .crud-delete-button:hover{background:#7f1d2d;color:#fff}
html[data-theme] body .account-card:hover{border-color:var(--card-border,var(--line))}
/* Cards informativos não sugerem uma ação inexistente. */
html[data-theme] body :is(.metric-card,.item-card):not(a):hover{transform:none;border-color:var(--line);box-shadow:var(--shadow)}
@media(prefers-reduced-motion:reduce){html[data-theme] body :is(a,button){transition:none;transform:none}}

/* source: system/icons.css */
/* Ícones vetoriais decorativos; o texto continua sendo o nome acessível. */
:root{
--icon-checklist:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m3%206%202%202%203-4M11%206h10M3%2013l2%202%203-4M11%2013h10M3%2020h5M11%2020h10%22%2F%3E%3C%2Fsvg%3E");
--icon-print:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%209V3h12v6M6%2018H3V9h18v9h-3M6%2014h12v7H6zM17%2012h1%22%2F%3E%3C%2Fsvg%3E");
--icon-clock:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M12%207v5l3%202%22%2F%3E%3C%2Fsvg%3E");
--icon-settings:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%207h16M4%2017h16%22%2F%3E%3Ccircle%20cx%3D%229%22%20cy%3D%227%22%20r%3D%223%22%2F%3E%3Ccircle%20cx%3D%2215%22%20cy%3D%2217%22%20r%3D%223%22%2F%3E%3C%2Fsvg%3E");
--icon-chevron-down:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%209l6%206%206-6%22%2F%3E%3C%2Fsvg%3E");
--icon-edit:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M16%203l5%205M4%2020l4-1L21%206l-4-4L4%2015z%22%2F%3E%3C%2Fsvg%3E");
--icon-trash:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%206h18M9%206V3h6v3M5%206l1%2015h12l1-15M10%2010v7M14%2010v7%22%2F%3E%3C%2Fsvg%3E");
--icon-plus:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%205v14M5%2012h14%22%2F%3E%3C%2Fsvg%3E");
--icon-check:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2012l5%205L20%206%22%2F%3E%3C%2Fsvg%3E");
--icon-close:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%206l12%2012M18%206L6%2018%22%2F%3E%3C%2Fsvg%3E");
--icon-open:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14%203h7v7M21%203L10%2014M10%205H4v15h15v-6%22%2F%3E%3C%2Fsvg%3E");
--icon-filter:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%205h18M6%2012h12M10%2019h4%22%2F%3E%3C%2Fsvg%3E");
--icon-archive:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%203h18v5H3zM5%208v13h14V8M9%2012h6%22%2F%3E%3C%2Fsvg%3E");
--icon-search:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M21%2021l-6-6M17%2010a7%207%200%201%201-14%200%207%207%200%200%201%2014%200%22%2F%3E%3C%2Fsvg%3E");
--icon-back:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M19%2012H5m6-6-6%206%206%206%22%2F%3E%3C%2Fsvg%3E");
--icon-download:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203v12m-5-5%205%205%205-5M4%2016v5h16v-5%22%2F%3E%3C%2Fsvg%3E");
--icon-play:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%203l15%209-15%209z%22%2F%3E%3C%2Fsvg%3E");
--icon-sparkles:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203l3%206%206%203-6%203-3%206-3-6-6-3%206-3z%22%2F%3E%3C%2Fsvg%3E");
--icon-refresh:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2011a8%208%200%201%200%202%205.5M20%204v7h-7%22%2F%3E%3C%2Fsvg%3E");
--icon-calculator:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%224%22%20y%3D%222%22%20width%3D%2216%22%20height%3D%2220%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M8%206h8M8%2011h.01M12%2011h.01M16%2011h.01M8%2015h.01M12%2015h.01M16%2015h.01M8%2019h.01M12%2019h.01M16%2019h.01%22%2F%3E%3C%2Fsvg%3E");
--icon-chart:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2020V10M10%2020V4M16%2020v-7M22%2020H2%22%2F%3E%3C%2Fsvg%3E");
}
html[data-theme] body :is(.crud-edit-button,.crud-delete-button,.danger-action,.icon-button.danger,.directory-archive,[data-crud-new],.filter-bar>button.secondary-button,.filter-bar>button.secondary-action,.form-actions .primary-action,.modal-actions .primary-action,.form-actions .secondary-action,.modal-actions .secondary-action,[data-ui-icon])::before{content:"";display:inline-block;flex:0 0 18px;width:18px;height:18px;min-width:18px;margin:0;background:currentColor;mask:var(--control-icon) center/contain no-repeat;-webkit-mask:var(--control-icon) center/contain no-repeat;font-size:0;}
html[data-theme] body :is(.crud-edit-button){--control-icon:var(--icon-edit)}
html[data-theme] body :is(.crud-delete-button,.danger-action,.icon-button.danger){--control-icon:var(--icon-trash)}
html[data-theme] body :is(.directory-archive){--control-icon:var(--icon-archive)}
html[data-theme] body :is([data-crud-new]){--control-icon:var(--icon-plus)}
html[data-theme] body :is(.filter-bar>button.secondary-button,.filter-bar>button.secondary-action){--control-icon:var(--icon-filter)}
html[data-theme] body :is(.form-actions .primary-action,.modal-actions .primary-action){--control-icon:var(--icon-check)}
html[data-theme] body :is(.form-actions .secondary-action,.modal-actions .secondary-action){--control-icon:var(--icon-close)}
html[data-theme] body [data-ui-icon="edit"]{--control-icon:var(--icon-edit)}
html[data-theme] body [data-ui-icon="trash"]{--control-icon:var(--icon-trash)}
html[data-theme] body [data-ui-icon="plus"]{--control-icon:var(--icon-plus)}
html[data-theme] body [data-ui-icon="check"]{--control-icon:var(--icon-check)}
html[data-theme] body [data-ui-icon="close"]{--control-icon:var(--icon-close)}
html[data-theme] body [data-ui-icon="open"]{--control-icon:var(--icon-open)}
html[data-theme] body [data-ui-icon="filter"]{--control-icon:var(--icon-filter)}
html[data-theme] body [data-ui-icon="archive"]{--control-icon:var(--icon-archive)}
html[data-theme] body [data-ui-icon="search"]{--control-icon:var(--icon-search)}
html[data-theme] body [data-ui-icon="back"]{--control-icon:var(--icon-back)}
html[data-theme] body [data-ui-icon="download"]{--control-icon:var(--icon-download)}
html[data-theme] body [data-ui-icon="play"]{--control-icon:var(--icon-play)}
html[data-theme] body [data-ui-icon="sparkles"]{--control-icon:var(--icon-sparkles)}
html[data-theme] body [data-ui-icon="refresh"]{--control-icon:var(--icon-refresh)}
html[data-theme] body [data-ui-icon="calculate"]{--control-icon:var(--icon-calculator)}
html[data-theme] body [data-ui-icon="chart"]{--control-icon:var(--icon-chart)}
html[data-theme] body [data-ui-icon="checklist"]{--control-icon:var(--icon-checklist)}
html[data-theme] body [data-ui-icon="print"]{--control-icon:var(--icon-print)}
html[data-theme] body [data-ui-icon="clock"]{--control-icon:var(--icon-clock)}
html[data-theme] body [data-ui-icon="settings"]{--control-icon:var(--icon-settings)}
html[data-theme] body [aria-busy="true"]::before{content:"";mask:none;-webkit-mask:none;background:transparent;width:16px;height:16px;flex:0 0 16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ui-spin .8s linear infinite}
html[data-theme] body .quick-add-grid a::before{content:"";width:24px;height:24px;align-self:center;justify-self:center;border:0;border-radius:0;background:var(--accent-orange-strong);mask:var(--icon-plus) center/contain no-repeat;-webkit-mask:var(--icon-plus) center/contain no-repeat;transform:none}
html[data-theme] body .finance-ledger .ledger-settle::before{content:"";display:inline-block;width:18px;height:18px;background:currentColor;mask:var(--icon-check) center/contain no-repeat;-webkit-mask:var(--icon-check) center/contain no-repeat}
@keyframes ui-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){html[data-theme] body [aria-busy="true"]::before{animation:none;border-style:dotted}}
@media(max-width:600px){html[data-theme] body .topbar-actions .primary-action[data-ui-icon]{font-size:0;padding:10px}.topbar-actions .primary-action[data-ui-icon]::after{content:none}}

/* source: system/forms.css */
/* 06 — Formulários e campos. */
:root{--field-bg:#fff;--field-hover:#fbfcfd;--field-placeholder:#778293;--field-disabled:#edf0f4}
html[data-theme="dark"]{--field-bg:#111720;--field-hover:#171f2a;--field-placeholder:#8491a3;--field-disabled:#1b2430}
html[data-theme] body :where(.content,.modal-card,.login-card,.settings-card) :is(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="button"]):not([type="submit"]),select,textarea){width:100%;max-width:100%;min-width:0;min-height:var(--control-height);padding:9px 11px;border:1px solid var(--line);border-radius:var(--control-radius);background:var(--field-bg);color:var(--text);font:inherit;line-height:1.4;outline:0;box-shadow:0 1px 0 rgba(0,0,0,.02);transition:border-color var(--motion-fast),background-color var(--motion-fast),box-shadow var(--motion-fast)}
html[data-theme] body :where(.content,.modal-card,.login-card,.settings-card) textarea{min-height:92px;resize:vertical}
html[data-theme] body :where(.content,.modal-card,.login-card,.settings-card) :is(input,select,textarea)::placeholder{color:var(--field-placeholder);opacity:1}
html[data-theme] body :where(.content,.modal-card,.login-card,.settings-card) :is(input,select,textarea):hover:not(:disabled):not([readonly]){border-color:var(--muted);background:var(--field-hover)}
html[data-theme] body :where(.content,.modal-card,.login-card,.settings-card) :is(input,select,textarea):focus{border-color:var(--focus-ring);background:var(--field-bg);box-shadow:0 0 0 3px color-mix(in srgb,var(--focus-ring) 20%,transparent)}
html[data-theme] body :where(.content,.modal-card,.login-card,.settings-card) :is(input,select,textarea):disabled,
html[data-theme] body :where(.content,.modal-card,.login-card,.settings-card) :is(input,select,textarea)[readonly]{background:var(--field-disabled);color:var(--muted);cursor:not-allowed;box-shadow:none}
html[data-theme] body :where(.content,.modal-card,.login-card,.settings-card) :is(input,select,textarea).is-invalid,
html[data-theme] body :where(.content,.modal-card,.login-card,.settings-card) :is(input,select,textarea)[aria-invalid="true"]{border-color:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 18%,transparent)}
html[data-theme] body :where(.form-grid,.inline-form,.filter-bar,.goal-filters,.commitments-filter,.report-filter) label{position:relative;display:flex;flex-direction:column;gap:7px;min-width:0;color:var(--text);font-size:var(--font-label);font-weight:650;line-height:1.35}
.field-required-indicator{position:absolute;right:0;top:0;color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.02em}
.objective-simulator .field-required-indicator{position:static;align-self:flex-start}
.field-help,.field-error,:where(.form-grid,.inline-form) label>small{font-size:var(--font-xs);font-weight:450;line-height:1.45}
.field-help,:where(.form-grid,.inline-form) label>small{color:var(--muted)}
.field-error{color:var(--danger);margin-top:1px}.field-error[hidden]{display:none}
html[data-theme] body input[type="checkbox"],html[data-theme] body input[type="radio"]{width:18px;height:18px;accent-color:var(--accent);cursor:pointer}
html[data-theme] body :is(.check-label,label:has(>input[type="checkbox"]),label:has(>input[type="radio"])){flex-direction:row;align-items:center;gap:9px}
html[data-theme] body fieldset{min-width:0;margin:0;padding:15px;border:1px solid var(--line);border-radius:12px}
html[data-theme] body legend{padding:0 7px;color:var(--muted);font-size:var(--font-label);font-weight:700}
.form-section{grid-column:1/-1;padding-top:6px;border-top:1px solid var(--line)}.form-section:first-child{padding-top:0;border-top:0}
@media(max-width:560px){.field-required-indicator{position:static;align-self:flex-start}.modal-card :is(input:not([type=checkbox]):not([type=radio]),textarea,.searchable-select-input){font-size:16px}}
/* Proteção de alterações em formulários modais. */
html[data-theme] body .modal form[data-dirty="1"] :is(.form-actions,.modal-actions)::before{content:"Alterações não salvas";margin-right:auto;color:var(--warning);font-size:var(--font-xs);font-weight:750}
@media(max-width:520px){html[data-theme] body .modal form[data-dirty="1"] :is(.form-actions,.modal-actions)::before{width:100%;text-align:left}}

/* Conteúdo longo não aumenta as colunas nem comprime os controles adjacentes. */
html[data-theme] body .form-grid>*{min-width:0}
html[data-theme] body :is(.form-grid,.inline-form) :is(label,legend,.field-help,.field-error){max-width:100%;overflow-wrap:anywhere}
html[data-theme] body :is(.form-grid,.inline-form) input:is([type="checkbox"],[type="radio"]){flex-shrink:0}
html[data-theme] body :is(.form-actions,.modal-actions){display:flex;flex-wrap:wrap;align-items:center;gap:8px}
html[data-theme] body :is(.form-actions,.modal-actions)>:is(button,a){flex-shrink:0;max-width:100%;white-space:normal;overflow-wrap:normal;word-break:normal}
html[data-theme] body :is(.form-actions,.modal-actions)>:is(button,a) span{min-width:0;overflow-wrap:normal;word-break:normal}
@media(max-width:560px){html[data-theme] body :is(.form-actions,.modal-actions)>:is(button,a){flex:1 1 140px;min-height:44px}}
.weekday-picker label>span{flex:1 1 auto;min-width:0;width:100%}
.weekday-picker label{min-height:44px}

/* source: system/filters.css */
/* 07 — Barras de filtro. */
html[data-theme] body :is(.filter-bar,.goal-filters,.commitments-filter,.report-filter){display:flex;align-items:flex-end;flex-wrap:wrap;gap:10px;margin:0 0 16px;padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 4px 14px rgba(20,24,32,.035)}
html[data-theme] body :is(.filter-bar,.goal-filters,.commitments-filter,.report-filter)>:is(label,input,.searchable-select){flex:1 1 175px;min-width:0}
html[data-theme] body :is(.filter-bar,.goal-filters,.commitments-filter,.report-filter)>label:has(input[name="q"]){flex-basis:240px}
html[data-theme] body :is(.filter-bar,.goal-filters,.commitments-filter,.report-filter)>:is(button,a){flex:0 0 auto}
html[data-theme] body .filter-bar.compact-filter{justify-content:flex-start}
html[data-theme] body .filter-bar.compact-filter>:is(label,input,.searchable-select){flex:0 1 240px}
.filter-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--accent-orange-soft);color:var(--accent-orange-strong);font-size:11px;font-weight:800}
.filter-clear{display:inline-flex;align-items:center;justify-content:center;min-height:var(--control-height);padding:8px 10px;color:var(--muted);font-size:var(--font-sm);font-weight:650;text-decoration:none;border-radius:9px}
.filter-clear:hover{background:var(--surface2);color:var(--text);text-decoration:none}.filter-bar.filter-active{border-color:var(--accent-orange-border)}
@media(max-width:760px){html[data-theme] body :is(.filter-bar,.goal-filters,.commitments-filter,.report-filter)>:is(label,input,.searchable-select){flex-basis:calc(50% - 5px)}}
@media(max-width:520px){html[data-theme] body :is(.filter-bar,.goal-filters,.commitments-filter,.report-filter){align-items:stretch;padding:12px}html[data-theme] body :is(.filter-bar,.goal-filters,.commitments-filter,.report-filter)>*{flex-basis:100%!important;width:100%}.filter-clear{border:1px solid var(--line)}}

/* source: system/overlays.css */
/* 08 — Modais, confirmação e selects pesquisáveis. */
html[data-theme] body .modal{padding:clamp(10px,3vw,28px);background:rgba(8,12,18,.68);backdrop-filter:blur(6px);overscroll-behavior:contain}
html[data-theme] body .modal-card{width:min(580px,100%);max-height:min(90dvh,900px);padding:0;overflow:auto;overscroll-behavior:contain;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 26px 80px rgba(0,0,0,.35);scrollbar-gutter:stable}
html[data-theme] body .modal-card.wide{width:min(800px,100%)}
html[data-theme] body .modal-head{position:sticky;top:0;z-index:6;align-items:center;margin:0;padding:19px 21px 16px;background:color-mix(in srgb,var(--surface) 94%,transparent);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
html[data-theme] body .modal-head :is(h2,h3){margin:3px 0 0}
html[data-theme] body .modal-head>div{min-width:0;flex:1;overflow-wrap:anywhere}
html[data-theme] body .modal-head>:is(button,.modal-close,.icon-button){flex-shrink:0}
html[data-theme] body .searchable-select{min-width:0;max-width:100%}
html[data-theme] body .searchable-select-option{white-space:normal;overflow-wrap:anywhere;min-width:0;max-width:100%}
html[data-theme] body .searchable-select-option>*{min-width:0}
html[data-theme] body .modal-card>form{padding:20px 21px 21px}
html[data-theme] body .modal-card>.notice{margin:15px 21px 0}
html[data-theme] body .modal-card :is(.form-actions,.modal-actions){position:sticky;bottom:0;z-index:5;grid-column:1/-1;margin:8px -21px -21px;padding:15px 21px;background:color-mix(in srgb,var(--surface) 95%,transparent);border-top:1px solid var(--line);backdrop-filter:blur(12px)}
html[data-theme] body.layer-open{overflow:hidden}
html[data-theme] body .modal-close{color:var(--muted);background:var(--surface2);border:1px solid transparent}
html[data-theme] body .modal-close:hover{color:var(--text);border-color:var(--line);background:var(--field-hover)}
.confirm-dialog{width:min(460px,calc(100% - 28px));padding:22px;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.4)}
.confirm-dialog::backdrop{background:rgba(8,12,18,.7);backdrop-filter:blur(5px)}
.confirm-dialog :is(h2,h3){margin:0 0 8px}.confirm-dialog p{margin:0;color:var(--muted);line-height:1.55}
.confirm-dialog :is(.modal-actions,.form-actions){margin:20px 0 0;padding:15px 0 0;border-top:1px solid var(--line)}
html[data-theme] body .searchable-select{position:relative;width:100%}
html[data-theme] body .searchable-select-input{padding-right:44px}
html[data-theme] body .searchable-select-toggle{position:absolute;right:1px;top:1px;width:40px;height:calc(100% - 2px);border:0;border-left:1px solid var(--line);border-radius:0 9px 9px 0;background:transparent;color:var(--muted);font-size:0;cursor:pointer}
html[data-theme] body .searchable-select-toggle::before{content:"";display:block;width:18px;height:18px;margin:auto;background:currentColor;mask:var(--icon-chevron-down) center/contain no-repeat;-webkit-mask:var(--icon-chevron-down) center/contain no-repeat;transition:transform var(--motion-fast)}
html[data-theme] body .searchable-select:has(.searchable-select-list:not([hidden])) .searchable-select-toggle::before{transform:rotate(180deg)}
html[data-theme] body .searchable-select-toggle:hover{background:var(--surface2);color:var(--text)}
html[data-theme] body .searchable-select-list{z-index:1300;top:calc(100% + 7px);max-height:min(310px,42dvh);padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:11px;box-shadow:0 18px 44px rgba(0,0,0,.24);overscroll-behavior:contain}
html[data-theme] body .searchable-select-option{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:38px;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:var(--text);font-size:var(--font-sm);text-align:left}
html[data-theme] body .searchable-select-option:hover,html[data-theme] body .searchable-select-option.active{background:var(--surface2)}
html[data-theme] body .searchable-select-option.selected{color:var(--accent-orange-strong);font-weight:750}
html[data-theme] body .searchable-select-option.selected::after{content:"";width:16px;height:16px;flex:0 0 16px;background:currentColor;mask:var(--icon-check) center/contain no-repeat;-webkit-mask:var(--icon-check) center/contain no-repeat}
html[data-theme] body .searchable-select-option:disabled{opacity:.5;cursor:not-allowed}
html[data-theme] body .searchable-select-empty{padding:18px 12px;text-align:center;color:var(--muted);font-size:var(--font-sm)}
html[data-theme] body select[aria-invalid="true"]+.searchable-select .searchable-select-input{border-color:var(--danger)}
@media(max-width:620px){html[data-theme] body .modal{align-items:flex-end;padding:0}html[data-theme] body .modal-card,html[data-theme] body .modal-card.wide{width:100%;max-height:94dvh;border-radius:18px 18px 0 0}.modal-head{padding-inline:17px!important}.modal-card>form{padding-inline:17px!important}.modal-card :is(.form-actions,.modal-actions){margin-inline:-17px!important;padding-inline:17px!important}}

/* source: system/feedback.css */
/* 09 — Mensagens, feedback e ausência de dados. */
html[data-theme] body :is(.notice,.alert,.budget-notice,.report-note){position:relative;margin-block:0 16px;padding:13px 15px 13px 43px;border:1px solid var(--info);border-left-width:4px;border-radius:12px;background:var(--info-soft);color:var(--text);font-size:var(--font-sm);line-height:1.55;overflow-wrap:anywhere}
html[data-theme] body :is(.notice,.alert,.budget-notice,.report-note)::before{content:"i";position:absolute;left:14px;top:13px;display:grid;place-items:center;width:18px;height:18px;border:1px solid currentColor;border-radius:50%;color:var(--info);font-size:11px;font-weight:800}
html[data-theme] body :is(.notice,.alert,.budget-notice,.report-note).success{border-color:var(--success);background:var(--success-soft)}
html[data-theme] body :is(.notice,.alert,.budget-notice,.report-note).success::before{content:"✓";color:var(--success)}
html[data-theme] body :is(.notice,.alert,.budget-notice,.report-note).warning{border-color:var(--warning);background:var(--warning-soft)}
html[data-theme] body :is(.notice,.alert,.budget-notice,.report-note).warning::before{content:"!";color:var(--warning)}
html[data-theme] body :is(.notice,.alert,.budget-notice,.report-note).error,
html[data-theme] body .alert:not(.success):not(.warning){border-color:var(--danger);background:var(--danger-soft)}
html[data-theme] body :is(.notice,.alert,.budget-notice,.report-note).error::before,
html[data-theme] body .alert:not(.success):not(.warning)::before{content:"!";color:var(--danger)}
html[data-theme] body :is(.notice,.alert,.budget-notice,.report-note)>:is(strong,p){color:inherit}
html[data-theme] body :is(.empty-state,.table-empty,.report-empty,.empty-mini){min-height:150px;padding:28px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center;color:var(--muted);line-height:1.5}
html[data-theme] body td.table-empty{display:table-cell;height:150px}
html[data-theme] body :is(.empty-state,.report-empty) :is(h2,h3,h4,strong){margin:0;color:var(--text)}
html[data-theme] body :is(.empty-state,.report-empty) p{margin:0;max-width:560px;color:var(--muted)}
html[data-theme] body .empty-icon{width:42px;height:42px;border-radius:13px;background:var(--surface2);color:var(--accent-orange-strong);font-size:18px}
html[data-theme] body :is(.empty-state,.report-empty) :is(.primary-action,.secondary-action,.secondary-button){margin-top:8px}
html[data-theme] body [role="status"][aria-busy="true"]{cursor:progress}
html[data-theme] body form[aria-busy="true"]{opacity:.88}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* source: system/tables.css */
/* 10 — Tabelas, ações, ordenação e paginação. */
html[data-theme] body .table-panel{min-width:0;overflow:hidden}
html[data-theme] body .table-wrap{position:relative;width:100%;max-width:100%;overflow:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}
html[data-theme] body .data-table{width:100%;min-width:680px;border-collapse:separate;border-spacing:0;background:var(--surface);color:var(--text)}
html[data-theme] body .data-table th{position:relative;padding:12px 15px;background:var(--surface2);color:var(--muted);font-weight:750;line-height:1.35;letter-spacing:.015em;border-bottom:1px solid var(--line);white-space:nowrap}
html[data-theme] body .data-table td{min-width:0;padding:14px 15px;color:var(--text);line-height:1.45;vertical-align:middle;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
html[data-theme] body .data-table tbody tr:last-child>td{border-bottom:0}
@media(hover:hover){html[data-theme] body .data-table tbody tr:not(.table-is-empty):hover>td{background:color-mix(in srgb,var(--surface2) 52%,var(--surface))}}
html[data-theme] body .data-table :is(th,td).right,
html[data-theme] body .data-table :is(th,td).table-numeric{text-align:right;font-variant-numeric:tabular-nums}
html[data-theme] body .data-table td>strong{display:block;color:var(--text);font-weight:720}
html[data-theme] body .data-table td>small,html[data-theme] body .data-table .table-sub{display:block;margin-top:4px;color:var(--muted);line-height:1.45}
html[data-theme] body .data-table :is(.badge,.status,.pill){white-space:nowrap}
html[data-theme] body .data-table button{white-space:nowrap;overflow-wrap:normal;word-break:normal}
/* Links e summaries de ação precisam da mesma proteção que botões. */
html[data-theme] body .data-table :is(a.primary-action,a.secondary-action,a.secondary-button,a.text-link,summary.secondary-action){white-space:nowrap;overflow-wrap:normal;word-break:normal;flex-shrink:0;width:max-content;max-width:none}
html[data-theme] body .data-table :is(a.primary-action,a.secondary-action,a.secondary-button,a.text-link,summary.secondary-action)>span{overflow-wrap:normal;word-break:normal}
html[data-theme] body .data-table :is(.crud-actions,.inline-actions){display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
html[data-theme] body .data-table td.action-cell{display:table-cell}
html[data-theme] body .data-table td:is(.action-cell,.table-actions){width:1%;text-align:right;white-space:nowrap;overflow-wrap:normal;word-break:normal}
html[data-theme] body .data-table td:is(.action-cell,.table-actions) :is(form,.crud-actions,.inline-actions){margin:0;flex-wrap:nowrap}
html[data-theme] body .data-table td:is(.action-cell,.table-actions) :is(button,a){white-space:nowrap;overflow-wrap:normal;word-break:normal}
html[data-theme] body .data-table th[aria-sort]{padding-right:31px}
html[data-theme] body .data-table th[aria-sort]::after{content:"↕";position:absolute;right:12px;color:var(--muted)}
html[data-theme] body .data-table th[aria-sort="ascending"]::after{content:"↑";color:var(--accent-orange-strong)}
html[data-theme] body .data-table th[aria-sort="descending"]::after{content:"↓";color:var(--accent-orange-strong)}
.pagination,.pager{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;margin:18px 0 0;padding:0;list-style:none}
.pagination :is(a,button,span),.pager :is(a,button,span){display:inline-grid;place-items:center;min-width:38px;min-height:38px;padding:7px 10px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);font-size:var(--font-sm);font-weight:650;text-decoration:none}
.pagination :is(a,button):hover,.pager :is(a,button):hover{background:var(--surface2);border-color:var(--muted)}
.pagination :is(.active,[aria-current="page"]),.pager :is(.active,[aria-current="page"]){background:var(--accent-orange-soft);border-color:var(--accent-orange-border);color:var(--accent-orange-strong)}
.pagination :is(.disabled,[aria-disabled="true"]),.pager :is(.disabled,[aria-disabled="true"]){opacity:.5;pointer-events:none}
@media(max-width:680px){
  html[data-theme] body .table-wrap:has(>.data-table-responsive){overflow:visible}
  html[data-theme] body .data-table-responsive{display:block;min-width:0;background:transparent}
  html[data-theme] body .data-table-responsive thead{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
  html[data-theme] body .data-table-responsive tbody{display:grid;gap:12px}
  html[data-theme] body .data-table-responsive tbody tr{display:block;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:13px;overflow:hidden;box-shadow:0 5px 16px rgba(20,24,32,.045)}
  html[data-theme] body .data-table-responsive tbody td{display:grid;grid-template-columns:minmax(92px,38%) minmax(0,1fr);align-items:start;gap:12px;width:100%;padding:11px 13px;text-align:left!important;white-space:normal;border-bottom:1px solid var(--line);background:transparent}
  html[data-theme] body .data-table-responsive tbody td::before{content:attr(data-label);color:var(--muted);font-size:var(--font-xs);font-weight:750;line-height:1.45}
  html[data-theme] body .data-table-responsive tbody td:last-child{border-bottom:0}
  html[data-theme] body .data-table-responsive tbody td[colspan]{display:block;text-align:center!important}
  html[data-theme] body .data-table-responsive tbody td[colspan]::before{content:none}
  html[data-theme] body .data-table-responsive tbody td.table-actions{display:block;width:100%;padding-top:12px;background:color-mix(in srgb,var(--surface2) 45%,var(--surface))}
  html[data-theme] body .data-table-responsive tbody td.table-actions::before{display:block;margin-bottom:8px}
  html[data-theme] body .data-table-responsive tbody td.table-actions :is(.crud-actions,.inline-actions,.action-cell){justify-content:flex-start}
}
@media(max-width:420px){html[data-theme] body .data-table-responsive tbody td{grid-template-columns:1fr;gap:4px}.pagination,.pager{justify-content:flex-start}}

/* Ações mantêm palavras inteiras, inclusive nos rótulos internos dos ícones. */
html[data-theme] body .data-table :is(.crud-actions,.inline-actions,.task-actions)>:is(a,button,form){flex-shrink:0;max-width:100%}
html[data-theme] body .data-table :is(button,a.secondary-action,a.primary-action,a.text-link,summary.secondary-action)>span{overflow-wrap:normal;word-break:normal}
html[data-theme] body .data-table .task-actions .text-button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--control-small);padding:7px 10px;border:1px solid var(--line);border-radius:var(--control-radius);background:var(--surface);color:var(--text);font-size:var(--font-xs);font-weight:650;text-decoration:none}
html[data-theme] body .data-table .task-actions .text-button:hover{background:var(--accent-orange-soft);border-color:var(--accent-orange-border)}
@media(max-width:680px){
  /* No formato de lista, ações ocupam a linha inteira, sem a coluna de rótulo. */
  html[data-theme] body .data-table-responsive tbody td:is(.action-cell,.table-actions,:has(>.crud-actions),:has(>.inline-actions),:has(>.task-actions)){display:block;width:100%;white-space:normal}
  html[data-theme] body .data-table-responsive tbody td:is(.action-cell,.table-actions,:has(>.crud-actions),:has(>.inline-actions),:has(>.task-actions))::before{display:block;margin-bottom:8px}
  html[data-theme] body .data-table-responsive tbody td :is(.crud-actions,.inline-actions,.task-actions){display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px;max-width:100%}
  html[data-theme] body .data-table-responsive tbody td:is(.action-cell,.table-actions) :is(.crud-actions,.inline-actions){flex-wrap:wrap}
  html[data-theme] body .data-table-responsive tbody td :is(button,a.primary-action,a.secondary-action,a.secondary-button,a.text-link,summary.secondary-action){white-space:normal;width:auto;max-width:100%;overflow-wrap:normal;word-break:normal}
  html[data-theme] body .data-table-responsive :is(.badge,.pill,.status){max-width:100%;white-space:normal;overflow-wrap:normal}
}

/* source: system/cards.css */
/* 11 — Cards de indicadores, conteúdo e atalhos. */
html[data-theme] body :is(.summary-grid,.stats-grid,.cards-grid,.goal-grid,.module-grid){align-items:stretch}
html[data-theme] body :is(.metric-card,.stat-card,.item-card,.goal-card,.module-grid article){min-width:0;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}
html[data-theme] body :is(.metric-card,.stat-card){display:flex;flex-direction:column;min-height:142px;padding:18px}
html[data-theme] body :is(.metric-card,.stat-card)>:is(span,.metric-top){color:var(--muted);font-size:var(--font-xs);font-weight:650}
html[data-theme] body :is(.metric-card,.stat-card)>strong{display:block;margin:auto 0 5px;padding-top:13px;color:var(--text);font-size:clamp(1.35rem,2vw,1.65rem);line-height:1.18;letter-spacing:-.035em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
html[data-theme] body :is(.metric-card,.stat-card)>small{display:block;color:var(--muted);font-size:var(--font-xs);line-height:1.45;overflow-wrap:anywhere}
html[data-theme] body .metric-icon{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:9px;background:var(--surface2);color:var(--accent-orange-strong)}
html[data-theme] body :is(.item-card,.goal-card,.module-grid article){padding:18px}
html[data-theme] body :is(.item-card,.goal-card) :is(h2,h3,h4,p,small,strong,span){overflow-wrap:anywhere}
html[data-theme] body :is(.item-card,.goal-card)>p{color:var(--muted);line-height:1.55}
html[data-theme] body :is(.item-card-head,.goal-card-top,.panel-head){min-width:0;gap:12px}
html[data-theme] body :is(.item-card-head,.goal-card-top,.panel-head)>:first-child{min-width:0}
html[data-theme] body :is(.item-actions,.goal-actions,.routine-footer){display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:auto}
html[data-theme] body .muted-card{opacity:.78}
html[data-theme] body a.item-card{color:var(--text);text-decoration:none;transition:border-color var(--motion-fast),background-color var(--motion-fast),box-shadow var(--motion-fast)}
@media(hover:hover){html[data-theme] body a.item-card:hover{background:var(--field-hover);border-color:var(--accent-orange-border);box-shadow:0 10px 26px rgba(20,24,32,.1);text-decoration:none}}
html[data-theme] body a.item-card:active{box-shadow:inset 0 2px 5px rgba(0,0,0,.1)}
html[data-theme] body :is(.shortcut-stack,.quick-links) a{min-width:0;min-height:46px;align-items:center;gap:12px}
html[data-theme] body :is(.shortcut-stack,.quick-links) a>:first-child{min-width:0;overflow-wrap:anywhere}
@media(max-width:1100px){html[data-theme] body :is(.summary-grid,.stats-grid,.module-grid){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){html[data-theme] body :is(.summary-grid,.stats-grid,.stats-grid.compact,.module-grid,.goal-grid){grid-template-columns:minmax(0,1fr)}html[data-theme] body :is(.metric-card,.stat-card){min-height:128px}}

/* Recolhimento progressivo: o cabeçalho permanece visível e mantém suas ações. */
html[data-theme] body [data-card-collapse-header="1"]{display:flex;align-items:flex-start;gap:10px}
html[data-theme] body [data-card-collapse-header="1"]>:first-child{min-width:0;margin-right:auto}
html[data-theme] body .card-collapse-toggle{display:inline-grid;place-items:center;width:34px;height:34px;min-width:34px;min-height:34px;flex:0 0 34px;padding:0;border:1px solid var(--line);border-radius:9px;background:var(--surface2);color:var(--muted);cursor:pointer;transition:border-color var(--motion-fast),background-color var(--motion-fast),color var(--motion-fast)}
html[data-theme] body .card-collapse-toggle span{display:block;width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform var(--motion-fast)}
html[data-theme] body [data-content-collapsed="1"]>.card-collapse-toggle span,
html[data-theme] body [data-content-collapsed="1"]>[data-card-collapse-header]>.card-collapse-toggle span{transform:translateY(2px) rotate(-135deg)}
html[data-theme] body [data-collapsible-card="1"][data-content-collapsed="1"]>:not([data-card-collapse-header="1"]){display:none!important}
html[data-theme] body [data-collapsible-card="1"][data-content-collapsed="1"]{min-height:0!important}
html[data-theme] body [data-collapsible-card="1"][data-content-collapsed="1"]>[data-card-collapse-header="1"]{margin-bottom:0!important;border-bottom-color:transparent}
@media(hover:hover){html[data-theme] body .card-collapse-toggle:hover{border-color:var(--accent-orange-border);background:var(--accent-orange-soft);color:var(--text)}}
html[data-theme] body .card-collapse-toggle:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}
@media(prefers-reduced-motion:reduce){html[data-theme] body .card-collapse-toggle,html[data-theme] body .card-collapse-toggle span{transition:none}}

/* Título e recolhimento têm sua própria linha; selos nunca espremem o nome. */
html[data-theme] body .item-card>.item-card-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start}
html[data-theme] body .item-card>.item-card-head>:first-child{grid-column:1;grid-row:1;margin-right:0}
html[data-theme] body .item-card>.item-card-head>:is(.pill,.badge,.status){grid-column:1/-1;grid-row:2;justify-self:start;max-width:100%;width:max-content;overflow-wrap:normal;word-break:normal;white-space:normal}
html[data-theme] body .item-card>.item-card-head>.card-collapse-toggle{grid-column:2;grid-row:1}
html[data-theme] body .goal-card-top{flex-wrap:wrap}
html[data-theme] body .goal-card-top>.badge{flex-shrink:0;max-width:100%;overflow-wrap:normal;word-break:normal}
/* Formulários de ação podem mudar de linha, mas não esmagar seus botões. */
html[data-theme] body :is(.item-actions,.crud-card-actions,.goal-actions,.routine-footer .inline-actions){flex-wrap:wrap;min-width:0;gap:8px}
html[data-theme] body :is(.item-actions,.crud-card-actions,.goal-actions,.routine-footer .inline-actions)>:is(a,button,form){flex-shrink:0;max-width:100%}
html[data-theme] body :is(.item-actions,.crud-card-actions,.goal-actions,.routine-footer) :is(button,a) :is(span,strong){overflow-wrap:normal;word-break:normal}
html[data-theme] body .routine-footer .text-button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--control-small);padding:7px 10px;border:1px solid var(--line);border-radius:var(--control-radius);background:var(--surface);color:var(--text);font-size:var(--font-xs);font-weight:650;line-height:1.35;text-decoration:none;cursor:pointer}
html[data-theme] body .routine-footer .text-button:hover{background:var(--accent-orange-soft);border-color:var(--accent-orange-border)}
@media(max-width:560px){html[data-theme] body .cards-grid{grid-template-columns:minmax(0,1fr)}}
/* A atualização de preço é um grupo completo, não uma coluna comprimida entre ações. */
@media(max-width:760px){
  html[data-theme] body .asset-actions>.price-inline{display:flex;flex:1 1 100%;width:100%;max-width:100%;gap:8px;flex-wrap:wrap;align-items:center}
  html[data-theme] body .asset-actions>.price-inline>input:not([type="hidden"]){flex:1 1 120px;width:120px;min-width:0;max-width:100%}
  html[data-theme] body .asset-actions>.price-inline>button{flex:0 0 auto}
}
.goal-card-foot{flex-wrap:wrap;align-items:center}
.goal-card-foot>span{flex:0 0 auto}
.goal-card-foot>.crud-actions{flex-wrap:wrap;min-width:0;max-width:100%}

/* source: system/navigation.css */
/* 12 — Navegação principal, cabeçalhos, abas e retorno. */
:root{--sidebar-width:260px}
html[data-theme] body .shell{grid-template-columns:var(--sidebar-width) minmax(0,1fr)}
html[data-theme] body .sidebar{width:var(--sidebar-width);padding:20px 14px;background:linear-gradient(180deg,#151921 0%,#0e1117 100%);border-right:1px solid #262d38}
html[data-theme] body .sidebar nav{padding-right:3px;scrollbar-width:thin;scrollbar-color:#3a4351 transparent}
html[data-theme] body .nav-label{margin:19px 10px 7px;color:#8f99a8;font-size:11px;font-weight:800;letter-spacing:.13em}
html[data-theme] body .nav-link{position:relative;min-height:40px;margin:2px 0;padding:9px 11px;border:1px solid transparent;border-radius:10px;color:#c6ceda;font-size:var(--font-sm);font-weight:560;line-height:1.35}
@media(hover:hover){html[data-theme] body .nav-link:hover{background:#202732;border-color:#2e3846;color:#fff}}
html[data-theme] body .nav-link.active{background:var(--nav-accent-soft);border-color:var(--nav-accent-border);color:var(--nav-accent-text);box-shadow:inset 3px 0 0 var(--accent)}
html[data-theme] body .nav-link.active::after{content:"";width:6px;height:6px;margin-left:auto;border-radius:50%;background:var(--accent)}
html[data-theme] body .sidebar-user{padding:14px 7px 0}
html[data-theme] body .topbar{height:68px;padding:0 clamp(16px,2.4vw,30px);background:color-mix(in srgb,var(--surface) 88%,transparent);border-color:var(--line);backdrop-filter:blur(14px)}
html[data-theme] body .top-search{min-height:42px;background:var(--surface2);border-color:var(--line);color:var(--muted)}
html[data-theme] body .top-search:hover{background:var(--field-hover);border-color:var(--muted)}
html[data-theme] body .page-head{min-width:0;gap:18px;align-items:flex-end}
html[data-theme] body .page-head>div:first-child{min-width:0}
html[data-theme] body :is(.page-actions,.head-actions,.topbar-actions){display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}
html[data-theme] body :is(.report-tabs,.tabs){display:flex;gap:5px;max-width:100%;padding:4px;overflow-x:auto;background:var(--surface2);border:1px solid var(--line);border-radius:12px;scroll-snap-type:x proximity;scrollbar-width:thin}
html[data-theme] body :is(.report-tabs,.tabs) a{min-height:38px;padding:9px 12px;display:inline-flex;align-items:center;border-radius:8px;color:var(--muted);font-size:var(--font-sm);font-weight:680;white-space:nowrap;text-decoration:none;scroll-snap-align:start}
html[data-theme] body :is(.report-tabs,.tabs) a:hover{background:color-mix(in srgb,var(--surface) 60%,transparent);color:var(--text);text-decoration:none}
html[data-theme] body :is(.report-tabs,.tabs) a:is(.active,[aria-current="page"]){background:var(--surface);color:var(--text);box-shadow:0 2px 8px rgba(20,24,32,.09)}
html[data-theme] body .back-link{display:inline-flex;align-items:center;gap:7px;min-height:38px;margin-bottom:10px;padding:7px 9px;border-radius:9px;color:var(--muted);font-weight:650;text-decoration:none}
html[data-theme] body .back-link::before{content:"";width:17px;height:17px;background:currentColor;mask:var(--icon-back) center/contain no-repeat;-webkit-mask:var(--icon-back) center/contain no-repeat}
html[data-theme] body .back-link:hover{background:var(--surface2);color:var(--text);text-decoration:none}
html[data-theme] body .skip-link{position:fixed;left:14px;top:10px;z-index:3000;padding:9px 12px;border-radius:9px;background:var(--action-bg);color:var(--action-ink);font-weight:750;transform:translateY(-160%)}
html[data-theme] body .skip-link:focus{transform:translateY(0)}

/* source: system/responsive.css */
/* 13 — Adaptação global para desktop, tablet, celular e zoom. */
@media(max-width:1000px){html[data-theme] body .content{padding:28px 22px}}
@media(max-width:760px){
  :root{--sidebar-width:min(86vw,280px)}
  html[data-theme] body .shell{grid-template-columns:minmax(0,1fr)}
  html[data-theme] body .sidebar{position:fixed;left:calc(-1 * var(--sidebar-width) - 10px);width:var(--sidebar-width);height:100dvh;z-index:1300;box-shadow:16px 0 48px rgba(0,0,0,.36)}
  html[data-theme] body .sidebar.open{left:0}
  html[data-theme] body .sidebar-backdrop{position:fixed;inset:0;z-index:1200;border:0;background:rgba(4,8,13,.62);backdrop-filter:blur(3px)}
  html[data-theme] body .topbar{height:64px;padding-inline:13px;gap:9px}
  html[data-theme] body .menu-button{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text)}
  html[data-theme] body .topbar-actions{gap:7px;flex-wrap:nowrap}
  html[data-theme] body .topbar-actions :is(.theme-toggle,.topbar-icon){width:42px;min-width:42px}
  html[data-theme] body .content{padding:22px 15px}
  html[data-theme] body .page-head{flex-direction:column;align-items:stretch;margin-bottom:20px}
  html[data-theme] body :is(.page-actions,.head-actions){width:100%;justify-content:flex-start}
  html[data-theme] body :is(.page-actions,.head-actions)>*{flex:1 1 150px;margin-left:0}
  html[data-theme] body .panel-head{align-items:flex-start;flex-wrap:wrap}
  html[data-theme] body .panel-head>:is(a,button,.page-actions){flex-shrink:1}
  html[data-theme] body :is(.report-tabs,.tabs){margin-inline:-1px}
}
@media(max-width:520px){
  html[data-theme] body .content{padding:18px 12px}
  html[data-theme] body .page-head h1{font-size:1.6rem}
  html[data-theme] body :is(.page-actions,.head-actions)>*{flex-basis:100%;width:100%}
  html[data-theme] body .topbar-actions .primary-action{width:42px;flex:0 0 42px}
  html[data-theme] body :is(.panel,.item-card,.goal-card){border-radius:14px}
  html[data-theme] body .content>.panel:not(.table-panel){padding:17px}
  html[data-theme] body :is(.item-actions,.goal-actions,.routine-footer) :is(button,a){flex:1 1 120px}
}
@media(pointer:coarse){html[data-theme] body :is(.nav-link,.report-tabs a,.tabs a,.pagination a,.pagination button,.pager a,.pager button){min-height:44px}}
@media(prefers-reduced-motion:reduce){html[data-theme] body .sidebar{transition:none}html[data-theme] body :is(.report-tabs,.tabs){scroll-behavior:auto}}

/* source: system/visualizations.css */
/* 14 — Gráficos, legendas e progresso. */
:root{--chart-neutral:#667487;--chart-grid:color-mix(in srgb,var(--line) 62%,transparent)}
html[data-theme="dark"]{--chart-neutral:#8f9bad}
html[data-theme] body :is(.report-chart,.balance-spark,.line-points,.finance-analysis-bars,.investment-evolution-bars,.investment-performance-bars,.patrimony-evolution-bars,.patrimony-report-bars,.goal-history-chart,.study-bars){position:relative;max-width:100%;background-image:repeating-linear-gradient(to top,transparent 0,transparent 24%,var(--chart-grid) 25%,transparent 26%);border-bottom:1px solid var(--line)}
html[data-theme] body :is(.report-chart,.balance-spark,.line-points){padding-inline:4px}
html[data-theme] body :is(.report-chart-bars i,.balance-spark i,.line-points i,.finance-analysis-bar-pair i,.investment-evolution-column i,.investment-performance-bar-group i,.patrimony-evolution-column i,.patrimony-report-column i,.goal-history-chart span,.study-bar-track span,.flow-bars span){background:var(--chart-neutral);outline:0;transition:opacity var(--motion-fast),box-shadow var(--motion-fast)}
html[data-theme] body :is(.report-chart-bars i,.finance-analysis-bar-pair i).income{background:var(--success)}
html[data-theme] body :is(.report-chart-bars i,.finance-analysis-bar-pair i).expense{background:var(--danger)}
html[data-theme] body .report-chart-bars i.positive,
html[data-theme] body :is(.positive-bar,.line-points i.positive){background:var(--success)}
html[data-theme] body :is(.negative-bar,.line-points i.negative){background:var(--danger)}
html[data-theme] body .report-chart-bars i.neutral{background:var(--info)}
html[data-theme] body :is(.investment-evolution-column i,.study-bar-track span){background:var(--info)}
html[data-theme] body :is(.goal-history-chart span,.patrimony-report-column i:not(.negative-bar)){background:var(--success)}
html[data-theme] body .flow-bars .flow-income{background:var(--success)}
html[data-theme] body .flow-bars .flow-expense{background:var(--danger)}
@media(hover:hover){html[data-theme] body :is(.report-chart-bars i,.balance-spark i,.line-points i,.finance-analysis-bar-pair i,.investment-evolution-column i,.investment-performance-bar-group i,.patrimony-evolution-column i,.patrimony-report-column i,.goal-history-chart span,.study-bar-track span,.flow-bars span):hover{opacity:.78}}
html[data-theme] body :is(.report-chart-bars i,.balance-spark i,.line-points i,.finance-analysis-bar-pair i,.investment-evolution-column i,.investment-performance-bar-group i,.patrimony-evolution-column i,.patrimony-report-column i,.goal-history-chart span,.study-bar-track span,.flow-bars span)[tabindex]:focus-visible{box-shadow:0 0 0 3px var(--focus-ring)}
html[data-theme] body .chart-legend{display:flex;align-items:center;gap:10px 17px;flex-wrap:wrap;color:var(--muted)}
html[data-theme] body .chart-legend span{display:inline-flex;align-items:center;gap:6px}
html[data-theme] body .chart-legend i{width:10px;height:10px;flex:0 0 10px;border-radius:3px;background:var(--chart-neutral)}
html[data-theme] body .chart-legend i.income{background:var(--success)}
html[data-theme] body .chart-legend i.expense{background:var(--danger)}
html[data-theme] body .chart-legend i.positive{background:var(--success)}
html[data-theme] body .chart-legend i.neutral{background:var(--info)}
html[data-theme] body :is(.progress,.progress-track,.routine-progress,.routine-dashboard-progress,.planner-goal-progress,.week-routine-progress,.nutrition-history-track,.study-distribution-track,.vehicle-monthly-track,.finance-analysis-track,.allocation-bar,.report-ranking i,.report-dual-bars i){position:relative;display:block;width:100%;height:8px;overflow:hidden;border-radius:999px;background:var(--surface2);border:1px solid color-mix(in srgb,var(--line) 76%,transparent)}
html[data-theme] body :is(.progress,.progress-track,.routine-progress,.routine-dashboard-progress,.planner-goal-progress,.week-routine-progress,.nutrition-history-track,.study-distribution-track,.vehicle-monthly-track,.finance-analysis-track,.allocation-bar,.report-ranking i,.report-dual-bars i)>:is(span,i,b){display:block;height:100%;max-width:100%;border-radius:inherit;background:var(--info)}
html[data-theme] body :is(.routine-progress,.routine-dashboard-progress,.planner-goal-progress,.week-routine-progress,.progress-track.success,.report-dual-bars i)>:is(span,i,b){background:var(--success)}
html[data-theme] body :is(.allocation-bar,.study-distribution-track)>:is(span,i,b){background:var(--info)}
html[data-theme] body :is(.progress-track.warning,.budget-progress.warning)>:is(span,i,b){background:var(--warning)}
html[data-theme] body :is(.progress-track.danger,.progress-track.over,.budget-progress.danger,.budget-progress.over)>:is(span,i,b){background:var(--danger)}
html[data-theme] body [role="progressbar"]:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}
html[data-theme] body :is(.report-chart-col small,.line-points small,.balance-caption,.goal-history-chart small){color:var(--muted);font-size:var(--font-xs);font-variant-numeric:tabular-nums}
@media(max-width:680px){html[data-theme] body :is(.report-chart,.line-points,.finance-analysis-bars,.investment-evolution-bars,.patrimony-evolution-bars,.patrimony-report-bars,.goal-history-chart){overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}}

/* source: system/content.css */
/* 15 — Listas, detalhes, notificações e painéis auxiliares. */
html[data-theme] body .panel{min-width:0}
html[data-theme] body .panel-head{display:flex;align-items:flex-start;justify-content:space-between}
html[data-theme] body .panel-head :is(h2,h3){overflow-wrap:anywhere}
html[data-theme] body :is(.finance-list,.planning-list,.compact-list,.position-list,.wealth-list,.notification-list){min-width:0}
html[data-theme] body :is(.finance-row,.plan-row,.check-row,.compact-row,.position-row,.wealth-row){min-width:0;padding-block:13px;border-bottom:1px solid var(--line)}
html[data-theme] body :is(.finance-row,.plan-row,.check-row,.compact-row,.position-row,.wealth-row):last-child{border-bottom:0}
html[data-theme] body :is(.finance-row,.plan-row,.check-row,.compact-row,.position-row,.wealth-row)>*{min-width:0}
html[data-theme] body :is(.finance-row,.plan-row,.check-row,.compact-row,.position-row,.wealth-row) :is(strong,small,p,span){overflow-wrap:anywhere}
html[data-theme] body :is(.finance-row,.plan-row,.check-row,.compact-row,.position-row,.wealth-row):focus-within{background:color-mix(in srgb,var(--surface2) 45%,transparent)}
/* Descrições podem quebrar; ações não devem ser comprimidas em letras isoladas. */
html[data-theme] body :is(.finance-row,.plan-row,.check-row,.compact-row,.position-row,.wealth-row) :is(.crud-actions,.inline-actions){display:flex;flex-wrap:wrap;gap:8px;max-width:100%}
html[data-theme] body :is(.finance-row,.plan-row,.check-row,.compact-row,.position-row,.wealth-row) :is(button,a.secondary-action,a.primary-action,form){flex-shrink:0;max-width:100%}
html[data-theme] body :is(.finance-row,.plan-row,.check-row,.compact-row,.position-row,.wealth-row) :is(button,a.secondary-action,a.primary-action) span{overflow-wrap:normal;word-break:normal}
html[data-theme] body details{min-width:0;padding:0;border:1px solid var(--line);border-radius:13px;background:var(--surface);overflow:hidden}
html[data-theme] body details+details{margin-top:10px}
html[data-theme] body details>summary{display:flex;align-items:center;gap:10px;min-height:46px;padding:11px 14px;color:var(--text);font-size:var(--font-sm);font-weight:720;cursor:pointer;list-style:none;background:var(--surface)}
html[data-theme] body details>summary::-webkit-details-marker{display:none}
html[data-theme] body details>summary::after{content:"";width:18px;height:18px;margin-left:auto;flex:0 0 18px;background:var(--muted);mask:var(--icon-chevron-down) center/contain no-repeat;-webkit-mask:var(--icon-chevron-down) center/contain no-repeat;transition:transform var(--motion-fast)}
html[data-theme] body details[open]>summary{border-bottom:1px solid var(--line);background:var(--surface2)}
html[data-theme] body details[open]>summary::after{transform:rotate(180deg)}
html[data-theme] body details>summary:hover{background:var(--surface2)}
html[data-theme] body details>summary:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-3px}
html[data-theme] body .flash-review details>p{margin:0;padding:12px 14px}
html[data-theme] body .notification-item{position:relative;min-width:0;border-color:var(--line);background:var(--surface);box-shadow:0 5px 16px rgba(20,24,32,.04)}
html[data-theme] body .notification-item.unread{border-color:var(--accent-orange-border);box-shadow:inset 3px 0 0 var(--accent)}
html[data-theme] body .notification-item.unread .notification-dot{background:var(--accent)}
html[data-theme] body .notification-item.notification-type-critical.unread{border-color:color-mix(in srgb,var(--danger) 50%,var(--line));box-shadow:inset 3px 0 0 var(--danger)}
html[data-theme] body .notification-item.notification-type-warning.unread{border-color:color-mix(in srgb,var(--warning) 50%,var(--line));box-shadow:inset 3px 0 0 var(--warning)}
html[data-theme] body .notification-item.notification-type-critical.unread .notification-dot{background:var(--danger)}
html[data-theme] body .notification-item.notification-type-warning.unread .notification-dot{background:var(--warning)}
html[data-theme] body .notification-top{align-items:flex-start;flex-wrap:wrap}
html[data-theme] body .notification-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
html[data-theme] body .settings-grid>*{min-width:0}
html[data-theme] body :is(.settings-card,.security-card,.focus-card,.form-hint){border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--text)}
html[data-theme] body .form-hint{padding:12px 14px;background:var(--info-soft);color:var(--text);line-height:1.55}
html[data-theme] body hr{height:1px;margin:20px 0;border:0;background:var(--line)}
html[data-theme] body :is(code,kbd){border:1px solid var(--line);border-radius:6px;background:var(--surface2);color:var(--text);font-size:.85em}
html[data-theme] body code{padding:2px 5px}html[data-theme] body kbd{padding:2px 6px;box-shadow:inset 0 -1px 0 var(--line)}
@media(max-width:620px){html[data-theme] body :is(.finance-row,.plan-row,.check-row,.compact-row,.wealth-row){align-items:flex-start;flex-wrap:wrap}.notification-item{padding:15px}.notification-actions>*{flex:1 1 120px}}

/* source: system/completion.css */
/* 17 — Consolidação transversal das telas e componentes. */
:root{--module-gap:16px;--panel-padding:clamp(18px,2vw,22px);--radius-small:10px;--radius-medium:14px;--radius-large:18px}
html[data-theme="light"]{color-scheme:light}html[data-theme="dark"]{color-scheme:dark}
html[data-theme] body ::selection{background:color-mix(in srgb,var(--accent) 32%,transparent);color:var(--text)}
html[data-theme] body .content{width:100%;max-width:1500px}
html[data-theme] body .page-head{position:relative;margin-bottom:24px;padding-bottom:2px}
html[data-theme] body .page-head h1{margin:6px 0 5px}
html[data-theme] body .page-head p{max-width:76ch;color:var(--muted)}
html[data-theme] body .page-head .eyebrow{color:var(--accent-orange-strong)}
html[data-theme] body .panel{min-height:0;padding:var(--panel-padding)}
html[data-theme] body .panel.table-panel{padding:0;overflow:hidden}
html[data-theme] body .panel-head{min-height:0;margin:0 0 16px;gap:14px}
html[data-theme] body .panel-head :is(h2,h3){margin:4px 0 0}
html[data-theme] body .panel-head .eyebrow{color:color-mix(in srgb,var(--accent-orange-strong) 72%,var(--muted))}
html[data-theme] body .panel-head>small{max-width:42ch;color:var(--muted);line-height:1.45;text-align:right}
html[data-theme] body .table-panel>.panel-head{margin:0;padding:18px 20px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface2) 38%,var(--surface))}
html[data-theme] body .table-panel>.panel-head+.table-wrap{margin-top:0}
html[data-theme] body .section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:26px 0 12px}
html[data-theme] body .section-title :is(h2,h3){margin:4px 0 0}
html[data-theme] body :is(.content-grid,.dashboard-grid,.home-main-grid,.home-section-grid,.home-bottom-grid){gap:var(--module-gap)}
html[data-theme] body .home-custom-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--module-gap);margin-bottom:var(--module-gap)}
html[data-theme] body .home-custom-grid>.compact-panel{min-height:220px}
html[data-theme] body .home-widget-settings{display:grid;gap:9px}.home-widget-settings>p{margin:0 0 4px;color:var(--muted);font-size:var(--font-xs)}.home-widget-setting{display:grid;grid-template-columns:minmax(0,1fr) 110px;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}.home-widget-setting:last-child{border-bottom:0}.home-widget-setting label:last-child{display:grid;grid-template-columns:auto 62px;align-items:center;gap:8px;color:var(--muted);font-size:var(--font-xs)}
html[data-theme] body .content>.summary-grid{margin-bottom:var(--module-gap)}
html[data-theme] body :is(.page-actions,.head-actions,.hero-actions){row-gap:8px}
html[data-theme] body :is(.page-actions,.head-actions,.hero-actions)>form{display:inline-flex;margin:0}
html[data-theme] body :is(.page-actions,.head-actions,.hero-actions)>form>button{width:100%}
html[data-theme] body .panel-head>:is(a,button):not(.primary-action):not(.secondary-action):not(.secondary-button):not(.crud-edit-button):not(.crud-delete-button):not(.card-collapse-toggle){display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:7px 10px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--link);font-size:var(--font-xs);font-weight:680;text-decoration:none;white-space:normal}
@media(hover:hover){html[data-theme] body .panel-head>:is(a,button):not(.primary-action):not(.secondary-action):not(.secondary-button):not(.crud-edit-button):not(.crud-delete-button):not(.card-collapse-toggle):hover{border-color:var(--accent-orange-border);background:var(--accent-orange-soft);color:var(--text);text-decoration:none}}
html[data-theme] body .text-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:7px 9px;border:1px solid transparent;border-radius:9px;color:var(--muted);font-size:var(--font-xs);font-weight:650;text-decoration:none}
@media(hover:hover){html[data-theme] body .text-button:hover{border-color:var(--line);background:var(--surface2);color:var(--text);text-decoration:none}}
html[data-theme] body .text-button.ui-action-danger{color:var(--danger)}
@media(hover:hover){html[data-theme] body .text-button.ui-action-danger:hover{border-color:color-mix(in srgb,var(--danger) 55%,var(--line));background:var(--danger-soft);color:var(--danger)}}
html[data-theme] body :is(.secondary-action,.secondary-button,.ghost-button,.text-link).ui-action-danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 34%,var(--line))}
@media(hover:hover){html[data-theme] body :is(.secondary-action,.secondary-button,.ghost-button,.text-link).ui-action-danger:hover{color:var(--danger);border-color:var(--danger);background:var(--danger-soft);text-decoration:none}}
html[data-theme] body .text-link:hover{text-decoration:none}
html[data-theme] body :is(p,li)>.text-link:hover{text-decoration:underline;text-underline-offset:3px}
html[data-theme] body :is(.quick-links,.shortcut-stack){display:grid;gap:8px;margin-top:16px}
html[data-theme] body :is(.quick-links,.shortcut-stack)>a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:11px 13px;border:1px solid var(--line);border-radius:11px;background:color-mix(in srgb,var(--surface2) 32%,var(--surface));color:var(--text);font-size:var(--font-sm);font-weight:620;text-decoration:none}
html[data-theme] body :is(.quick-links,.shortcut-stack)>a>span:last-child{display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border:1px solid var(--line);border-radius:50%;color:var(--muted);font-size:0}
html[data-theme] body :is(.quick-links,.shortcut-stack)>a>span:last-child::before{content:"";width:14px;height:14px;background:currentColor;mask:var(--icon-open) center/contain no-repeat;-webkit-mask:var(--icon-open) center/contain no-repeat}
@media(hover:hover){html[data-theme] body :is(.quick-links,.shortcut-stack)>a:hover{border-color:var(--accent-orange-border);background:var(--accent-orange-soft);color:var(--text);text-decoration:none}html[data-theme] body :is(.quick-links,.shortcut-stack)>a:hover>span:last-child{border-color:var(--accent-orange-border);color:var(--accent-orange-strong)}}
html[data-theme] body :is(.focus-card,.asset-kpis>div,.health-home-grid>div,.signal-grid>div,.week-stats>div){min-width:0;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--surface2) 42%,var(--surface))}
html[data-theme] body :is(.focus-card,.asset-kpis>div,.health-home-grid>div,.signal-grid>div,.week-stats>div) :is(strong,span,small,p){overflow-wrap:anywhere}
html[data-theme] body :is(.finance-row,.plan-row,.check-row,.compact-row,.position-row,.wealth-row,.review-row,.study-activity-row){border-radius:9px;transition:background-color var(--motion-fast)}
@media(hover:hover){html[data-theme] body :is(.finance-row,.plan-row,.check-row,.compact-row,.position-row,.wealth-row,.review-row,.study-activity-row):hover{background:color-mix(in srgb,var(--surface2) 58%,transparent)}}
html[data-theme] body :is(.metric-card,.stat-card) .metric-top{align-items:flex-start;gap:10px}
html[data-theme] body :is(.metric-card,.stat-card) :is(strong,small,span){overflow-wrap:anywhere}
html[data-theme] body .badge,html[data-theme] body .pill,html[data-theme] body .status{border:1px solid color-mix(in srgb,currentColor 24%,transparent);line-height:1.25}
html[data-theme] body .empty-state.compact-empty{min-height:120px;padding:20px 14px}
html[data-theme] body :is(.report-note,.security-note,.form-hint,.notice,.budget-notice){max-width:100%}
@media(max-width:760px){
  html[data-theme] body .home-custom-grid{grid-template-columns:minmax(0,1fr)}
  html[data-theme] body .page-head{margin-bottom:20px}
  html[data-theme] body .panel-head{margin-bottom:13px}
  html[data-theme] body .panel-head>small{max-width:none;text-align:left}
  html[data-theme] body .table-panel>.panel-head{padding:16px}
  html[data-theme] body .section-title{align-items:flex-start;flex-direction:column}
}
@media(max-width:520px){
  :root{--module-gap:12px;--panel-padding:17px}
  html[data-theme] body :is(.page-actions,.head-actions,.hero-actions)>:is(a,button,form){width:100%}
  html[data-theme] body :is(.page-actions,.head-actions,.hero-actions)>form>button{justify-content:center}
  html[data-theme] body .panel-head>:is(a,button):not(.primary-action):not(.secondary-action):not(.secondary-button):not(.crud-edit-button):not(.crud-delete-button):not(.card-collapse-toggle){min-height:40px;border-color:var(--line);background:var(--surface2)}
  html[data-theme] body .home-widget-setting{grid-template-columns:minmax(0,1fr) 92px}
}

/* source: modules/finance.css */
/* Etapa 4 — Consolidação de todas as telas do Financeiro. */
html[data-theme] body[data-section="finance"] :is(.finance-analysis-summary,.finance-forecast-summary,.finance-installments-summary,.commitments-summary){margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="finance"] :is(.finance-dashboard-forecast,.finance-interest-overview,.finance-interest-analysis,.finance-analysis-history,.finance-forecast-months,.finance-forecast-events,.budget-table-panel){margin-block:var(--module-gap)}
html[data-theme] body[data-section="finance"] :is(.finance-interest-overview,.finance-interest-analysis){box-shadow:inset 3px 0 0 color-mix(in srgb,var(--danger) 68%,var(--line)),var(--shadow)}
html[data-theme] body[data-section="finance"] .finance-interest-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
html[data-theme] body[data-section="finance"] .finance-category-analysis-row{padding:12px 0;border-bottom:1px solid var(--line)}
html[data-theme] body[data-section="finance"] .finance-category-analysis-row:last-child{border-bottom:0}
html[data-theme] body[data-section="finance"] .finance-category-analysis-row>div:first-child{min-width:0;align-items:baseline}
html[data-theme] body[data-section="finance"] .finance-category-analysis-row>div:first-child>*{min-width:0;overflow-wrap:anywhere}
html[data-theme] body[data-section="finance"] .finance-analysis-track>span{background:var(--danger)}
html[data-theme] body[data-section="finance"] .budget-progress.ok>span{background:var(--success)}
html[data-theme] body[data-section="finance"] :is(.budget-progress.warning,.budget-progress.projected)>span{background:var(--warning)}
html[data-theme] body[data-section="finance"] .budget-progress.exceeded>span{background:var(--danger)}
html[data-theme] body[data-section="finance"] .budget-status.ok{color:var(--success)}
html[data-theme] body[data-section="finance"] :is(.budget-status.warning,.budget-status.projected){color:var(--warning)}
html[data-theme] body[data-section="finance"] .budget-status.exceeded{color:var(--danger)}
html[data-theme] body[data-section="finance"] .budget-toolbar{margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="finance"] .budget-toolbar>.filter-bar{flex:1 1 340px}
html[data-theme] body[data-section="finance"] .budget-context{margin-bottom:var(--module-gap);padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}
html[data-theme] body[data-section="finance"] .budget-context span{min-width:180px;flex:1 1 220px}
html[data-theme] body[data-section="finance"] .budget-table tr[id^="budget-category-"]{scroll-margin-top:96px}
html[data-theme] body[data-section="finance"] .budget-table tr[id^="budget-category-"]:target{background:var(--accent-orange-soft);box-shadow:inset 4px 0 0 var(--accent)}
html[data-theme] body[data-section="finance"] .finance-priority-panel{min-height:0;margin-top:var(--module-gap);border-color:color-mix(in srgb,var(--warning) 42%,var(--line))}
html[data-theme] body[data-section="finance"] .finance-priority-list{display:grid;gap:10px;margin-top:16px}
html[data-theme] body[data-section="finance"] .finance-priority-item{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;border:1px solid var(--line);border-radius:13px;background:var(--surface2)}
html[data-theme] body[data-section="finance"] .finance-priority-item.is-critical{border-color:color-mix(in srgb,var(--danger) 48%,var(--line));background:var(--danger-soft)}
html[data-theme] body[data-section="finance"] .finance-priority-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--warning-soft);color:var(--warning);font-weight:850}
html[data-theme] body[data-section="finance"] .finance-priority-item.is-critical .finance-priority-mark{background:color-mix(in srgb,var(--danger) 16%,var(--surface));color:var(--danger)}
html[data-theme] body[data-section="finance"] .finance-priority-item strong{display:block;font-size:var(--font-sm)}
html[data-theme] body[data-section="finance"] .finance-priority-item p{margin:4px 0 0;color:var(--muted);font-size:var(--font-xs);line-height:1.5}
html[data-theme] body[data-section="finance"] .finance-priority-item form{margin:0}
html[data-theme] body[data-section="finance"] .finance-priority-item .secondary-action{white-space:nowrap}
html[data-theme] body[data-section="finance"] .forecast-month-grid{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:12px}
html[data-theme] body[data-section="finance"] .forecast-month-card{background:color-mix(in srgb,var(--surface2) 38%,var(--surface));box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 8%,transparent)}
html[data-theme] body[data-section="finance"] .forecast-month-card>div:first-child{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
html[data-theme] body[data-section="finance"] .forecast-month-values>:is(span,b){font-variant-numeric:tabular-nums}
html[data-theme] body[data-section="finance"] .forecast-row-negative>td{background:color-mix(in srgb,var(--danger-soft) 62%,var(--surface))}
html[data-theme] body[data-section="finance"] .forecast-row-estimate:not(.forecast-row-negative)>td{background:color-mix(in srgb,var(--info-soft) 42%,var(--surface))}
html[data-theme] body[data-section="finance"] .forecast-estimate-badge{display:inline-flex;align-items:center;min-height:24px;padding:3px 9px;border:1px solid color-mix(in srgb,var(--info) 42%,var(--line));border-radius:999px;background:var(--info-soft);color:var(--info);font-size:var(--font-xs);font-weight:750;white-space:nowrap}
html[data-theme] body[data-section="finance"] .forecast-estimate-breakdown{display:block;margin-top:9px;color:var(--info);line-height:1.4}
html[data-theme] body[data-section="finance"] :is(.finance-mini-estimate,.finance-forecast-estimate){color:var(--text)}
html[data-theme] body[data-section="finance"] .finance-mini-estimate{position:relative;margin:12px 0 0;padding-left:20px;font-size:var(--font-xs);line-height:1.5}
html[data-theme] body[data-section="finance"] .finance-mini-estimate::before{content:"i";position:absolute;left:0;top:0;display:grid;place-items:center;width:15px;height:15px;border:1px solid var(--info);border-radius:50%;color:var(--info);font-size:9px;font-weight:800}
html[data-theme] body[data-section="finance"] .finance-forecast-mini>div{min-width:0;background:color-mix(in srgb,var(--surface2) 38%,var(--surface))}
html[data-theme] body[data-section="finance"] .finance-forecast-arrow{color:var(--muted)}
html[data-theme] body[data-section="finance"] .finance-analysis-comparison{margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="finance"] .finance-comparison-grid>div,
html[data-theme] body[data-section="finance"] .finance-recurring-analysis>div{background:color-mix(in srgb,var(--surface2) 38%,var(--surface))}
html[data-theme] body[data-section="finance"] .finance-installment-card{border-top-color:var(--accent);box-shadow:var(--shadow)}
html[data-theme] body[data-section="finance"] .finance-installment-card.is-finished{border-top-color:var(--success)}
html[data-theme] body[data-section="finance"] .finance-installment-card.is-finished .finance-installment-progress>span{background:var(--success)}
html[data-theme] body[data-section="finance"] .finance-installment-metrics>div{background:color-mix(in srgb,var(--surface2) 45%,var(--surface))}
html[data-theme] body[data-section="finance"] .invoice-panel{border-color:var(--line);box-shadow:var(--shadow)}
html[data-theme] body[data-section="finance"] .invoice-footer{background:color-mix(in srgb,var(--surface2) 34%,var(--surface));border-top:1px solid var(--line)}
html[data-theme] body[data-section="finance"] :is(.settle-context,.settlement-card-total){background:var(--surface2);border-color:var(--line)}
html[data-theme] body[data-section="finance"] .commitments-bulk-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface2) 58%,var(--surface))}
html[data-theme] body[data-section="finance"] .commitments-select-all{display:inline-flex;align-items:center;gap:9px;margin:0;font-size:var(--font-sm);font-weight:750;cursor:pointer}
html[data-theme] body[data-section="finance"] .commitments-select-all input,
html[data-theme] body[data-section="finance"] .commitments-selection-column input{width:18px;height:18px;margin:0;accent-color:var(--accent);cursor:pointer}
html[data-theme] body[data-section="finance"] .commitments-bulk-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0}
html[data-theme] body[data-section="finance"] .commitments-selected-summary{color:var(--muted);font-size:var(--font-xs);font-variant-numeric:tabular-nums}
html[data-theme] body[data-section="finance"] .commitments-selection-column{width:48px;text-align:center}
html[data-theme] body[data-section="finance"] .commitments-batch-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
html[data-theme] body[data-section="finance"] .commitments-batch-summary>div{display:grid;gap:5px;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}
html[data-theme] body[data-section="finance"] .commitments-batch-summary small{color:var(--muted)}
html[data-theme] body[data-section="finance"] .commitments-batch-summary strong{font-size:1.08rem;font-variant-numeric:tabular-nums}
html[data-theme] body[data-section="finance"] .commitments-batch-list{padding:11px 13px;border-left:3px solid var(--accent);border-radius:0 10px 10px 0;background:var(--accent-orange-soft);color:var(--text);font-size:var(--font-xs);line-height:1.5;overflow-wrap:anywhere}
html[data-theme] body[data-section="finance"] .finance-option-card{background:color-mix(in srgb,var(--surface2) 48%,var(--surface))}
html[data-theme] body[data-section="finance"] .finance-option-chosen{border-color:color-mix(in srgb,var(--success) 55%,var(--line));box-shadow:inset 3px 0 0 var(--success)}
html[data-theme] body[data-section="finance"] .finance-decision-callout.is-success{border-left-color:var(--success);background:var(--success-soft)}
html[data-theme] body[data-section="finance"] .finance-decision-callout.is-attention{border-left-color:var(--warning);background:var(--warning-soft)}
html[data-theme] body[data-section="finance"] .finance-decision-callout.is-danger{border-left-color:var(--danger);background:var(--danger-soft)}
html[data-theme] body[data-section="finance"] .finance-risk.is-safe{background:var(--success-soft);color:var(--success)}
html[data-theme] body[data-section="finance"] .finance-risk.is-attention{background:var(--warning-soft);color:var(--warning)}
html[data-theme] body[data-section="finance"] .finance-risk.is-danger{background:var(--danger-soft);color:var(--danger)}
html[data-theme] body[data-section="finance"] .finance-row{padding-inline:8px}
html[data-theme] body[data-section="finance"] .recurring-vehicle-box{padding:14px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface2) 55%,var(--surface))}
html[data-theme] body[data-section="finance"] .recurring-vehicle-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
html[data-theme] body[data-section="finance"] .recurring-vehicle-box>small{display:block;margin-top:9px;color:var(--muted);line-height:1.45}
@media(max-width:960px){html[data-theme] body[data-section="finance"] .finance-interest-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
  html[data-theme] body[data-section="finance"] .commitments-bulk-toolbar{align-items:stretch;flex-direction:column}
  html[data-theme] body[data-section="finance"] .commitments-bulk-actions{align-items:stretch;flex-direction:column}
  html[data-theme] body[data-section="finance"] .commitments-bulk-actions .primary-action{width:100%}
  html[data-theme] body[data-section="finance"] .finance-forecast-mini{gap:9px}
  html[data-theme] body[data-section="finance"] .finance-forecast-arrow{display:grid;place-items:center;height:24px}
  html[data-theme] body[data-section="finance"] .budget-toolbar{align-items:stretch;flex-direction:column}
  html[data-theme] body[data-section="finance"] .budget-toolbar>.filter-bar{width:100%;flex-basis:auto}
  html[data-theme] body[data-section="finance"] .finance-simulator-settings{grid-template-columns:minmax(0,1fr)}
  html[data-theme] body[data-section="finance"] .finance-simulator-settings label:first-child{grid-column:auto}
  html[data-theme] body[data-section="finance"] .finance-priority-item{grid-template-columns:32px minmax(0,1fr)}
  html[data-theme] body[data-section="finance"] .finance-priority-item form{grid-column:2}
}
@media(max-width:520px){
  html[data-theme] body[data-section="finance"] .commitments-batch-summary{grid-template-columns:minmax(0,1fr)}
  html[data-theme] body[data-section="finance"] .finance-interest-summary{grid-template-columns:minmax(0,1fr)}
  html[data-theme] body[data-section="finance"] .budget-context{display:grid}
  html[data-theme] body[data-section="finance"] .invoice-footer{padding:16px}
  html[data-theme] body[data-section="finance"] .finance-installment-metrics{grid-template-columns:minmax(0,1fr)}
  html[data-theme] body[data-section="finance"] .recurring-vehicle-fields{grid-template-columns:minmax(0,1fr)}
  html[data-theme] body[data-section="finance"] .finance-priority-item{grid-template-columns:minmax(0,1fr)}
  html[data-theme] body[data-section="finance"] .finance-priority-mark{display:none}
  html[data-theme] body[data-section="finance"] .finance-priority-item form{grid-column:1}
  html[data-theme] body[data-section="finance"] .finance-priority-item .secondary-action{width:100%}
}

/* Rodada 30 — planejamento financeiro de longo prazo. */
html[data-theme] body[data-section="finance"] .long-term-summary{margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="finance"] :is(.long-term-settings,.long-term-scenarios,.long-term-decision){margin-block:var(--module-gap)}
html[data-theme] body[data-section="finance"] .long-term-settings .form-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}
html[data-theme] body[data-section="finance"] .long-term-settings .form-actions{grid-column:1/-1}
html[data-theme] body[data-section="finance"] .long-term-scenario-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}
html[data-theme] body[data-section="finance"] .long-term-scenario-card{display:grid;gap:8px;padding:18px;border:1px solid var(--line);border-top:3px solid var(--info);border-radius:16px;background:color-mix(in srgb,var(--surface2) 45%,var(--surface))}
html[data-theme] body[data-section="finance"] .long-term-scenario-card.is-expected{border-top-color:var(--success)}
html[data-theme] body[data-section="finance"] .long-term-scenario-card.is-critical{border-top-color:var(--danger)}
html[data-theme] body[data-section="finance"] .long-term-scenario-card>strong{font-size:1.45rem;font-variant-numeric:tabular-nums}
html[data-theme] body[data-section="finance"] .long-term-scenario-card>small{color:var(--muted)}
html[data-theme] body[data-section="finance"] .long-term-scenario-card dl{display:grid;gap:6px;margin:4px 0}
html[data-theme] body[data-section="finance"] .long-term-scenario-card dl div{display:flex;justify-content:space-between;gap:12px;font-size:.8rem}
html[data-theme] body[data-section="finance"] .long-term-scenario-card :is(dt,dd){margin:0}
html[data-theme] body[data-section="finance"] .long-term-two-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--module-gap);align-items:start}
html[data-theme] body[data-section="finance"] .long-term-card-list{display:grid;gap:12px;margin-top:16px}
html[data-theme] body[data-section="finance"] .long-term-item{padding:16px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface2) 45%,var(--surface))}
html[data-theme] body[data-section="finance"] .long-term-item.is-inactive{opacity:.68}
html[data-theme] body[data-section="finance"] .long-term-item-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}
html[data-theme] body[data-section="finance"] .long-term-item-head h4{margin:7px 0 3px}
html[data-theme] body[data-section="finance"] .long-term-item-head small{display:block;color:var(--muted);line-height:1.4}
html[data-theme] body[data-section="finance"] .long-term-item-head>strong{font-variant-numeric:tabular-nums;white-space:nowrap}
html[data-theme] body[data-section="finance"] .long-term-item .progress-track{margin:14px 0 8px}
html[data-theme] body[data-section="finance"] .long-term-item .progress-track>span{background:var(--success)}
html[data-theme] body[data-section="finance"] .long-term-item-metrics{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:.75rem}
html[data-theme] body[data-section="finance"] .long-term-item>small{display:block;margin-top:8px;color:var(--muted)}
html[data-theme] body[data-section="finance"] :is(.long-term-item,.long-term-create)>details,
html[data-theme] body[data-section="finance"] .long-term-item>details{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}
html[data-theme] body[data-section="finance"] :is(.long-term-item>details,.long-term-create)>summary{cursor:pointer;color:var(--accent);font-weight:750}
html[data-theme] body[data-section="finance"] .long-term-create{margin-top:16px;padding:14px;border:1px dashed var(--line);border-radius:14px}
html[data-theme] body[data-section="finance"] .long-term-inline-form{margin-top:14px}
html[data-theme] body[data-section="finance"] .long-term-inline-form+.danger{margin-top:8px}
html[data-theme] body[data-section="finance"] .long-term-strategy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}
html[data-theme] body[data-section="finance"] .long-term-strategy{display:grid;gap:6px;padding:15px;border:1px solid var(--line);border-radius:14px;background:var(--surface2)}
html[data-theme] body[data-section="finance"] .long-term-strategy.is-recommended{border-color:color-mix(in srgb,var(--success) 55%,var(--line));box-shadow:inset 3px 0 0 var(--success)}
html[data-theme] body[data-section="finance"] .long-term-strategy p{margin:4px 0;color:var(--muted);font-size:.78rem;line-height:1.45}
html[data-theme] body[data-section="finance"] .long-term-strategy b{color:var(--success);font-size:.75rem}
html[data-theme] body[data-section="finance"] .long-term-decision .finance-decision-callout{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding:16px;border-left:4px solid;border-radius:12px}
html[data-theme] body[data-section="finance"] .long-term-decision .finance-decision-callout p{margin:5px 0 0;color:var(--muted)}
@media(max-width:1050px){html[data-theme] body[data-section="finance"] .long-term-two-columns{grid-template-columns:1fr}}
@media(max-width:760px){
  html[data-theme] body[data-section="finance"] :is(.long-term-scenario-grid,.long-term-settings .form-grid){grid-template-columns:1fr}
  html[data-theme] body[data-section="finance"] .long-term-strategy-grid{grid-template-columns:1fr}
  html[data-theme] body[data-section="finance"] .long-term-decision .finance-decision-callout{align-items:flex-start;flex-direction:column}
}
.account-status-filter{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 22px}.account-status-filter a{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:12px;font-weight:700;text-decoration:none}.account-status-filter a:hover{border-color:var(--accent-orange-border);color:var(--text)}.account-status-filter a.active{border-color:var(--accent-orange-border);background:var(--accent-orange-soft);color:var(--accent-orange-strong)}.account-status-filter a span{display:grid;place-items:center;min-width:21px;height:21px;padding:0 6px;border-radius:999px;background:var(--surface2);font-size:11px}.account-status-filter a.active span{background:var(--surface)}
.movement-origin{display:flex;align-items:center;gap:10px;min-width:150px}.movement-origin-icon{position:relative;display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border:1px solid #53697e;border-radius:10px;background:linear-gradient(135deg,#344454,#172331);color:#f8fafc;font-size:13px;font-weight:800;box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 4px 10px rgba(15,23,42,.12)}.movement-origin-copy{display:flex;flex-direction:column;min-width:0}.movement-origin-copy strong,.movement-origin-copy small{overflow:hidden;max-width:180px;text-overflow:ellipsis;white-space:nowrap}.movement-origin--card .movement-origin-icon{width:38px;height:28px;border-color:#d2a258;border-radius:7px;background:linear-gradient(135deg,#ffe8ae,#d39443);color:transparent;font-size:0}.movement-origin--card .movement-origin-icon::before{content:"";position:absolute;inset:6px 8px;border:1px solid rgba(107,70,20,.5);border-radius:3px}.movement-origin--card .movement-origin-icon::after{content:"";position:absolute;top:6px;bottom:6px;left:18px;width:1px;background:rgba(107,70,20,.46)}.movement-origin--none .movement-origin-icon{border-color:var(--line);background:var(--surface2);color:var(--muted);box-shadow:none}.movement-destination{color:var(--accent-orange-strong)!important}
.account-uploaded-icon{display:block;width:42px;height:42px;padding:4px;border:1px solid rgba(255,255,255,.42);border-radius:11px;background:#fff;object-fit:contain;box-shadow:0 4px 12px rgba(15,23,42,.18)}.movement-origin .movement-origin-uploaded,.movement-origin--card .movement-origin-uploaded{width:34px;height:34px;padding:3px;border:1px solid var(--line);border-radius:10px;background:#fff;object-fit:contain;box-shadow:0 4px 10px rgba(15,23,42,.12)}
.movement-category-splits{display:flex;flex-direction:column;align-items:flex-start;gap:5px}.movement-category-splits>span{display:inline-flex;align-items:center;gap:7px;padding:4px 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface2);font-size:12px;font-weight:700;white-space:nowrap}.movement-category-splits small{color:var(--muted);font-variant-numeric:tabular-nums}.movement-split-editor{padding:14px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface2) 48%,var(--surface))}.movement-split-editor>legend{padding:0 7px;color:var(--text);font-size:13px;font-weight:800}.movement-split-toggle{margin:0}.movement-split-content{margin-top:13px}.movement-split-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.movement-split-head p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.movement-split-rows{display:grid;gap:10px}.movement-split-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(120px,.65fr) auto;align-items:end;gap:10px}.movement-split-row .icon-button{margin-bottom:2px}.movement-split-summary{margin-top:10px;color:var(--muted);font-size:12px;font-weight:750}.movement-split-summary.is-valid{color:var(--success)}.movement-split-summary.is-invalid{color:var(--danger)}
@media(max-width:620px){.movement-split-head{align-items:stretch;flex-direction:column}.movement-split-row{grid-template-columns:minmax(0,1fr) auto}.movement-split-row label:first-child{grid-column:1/-1}}
.finance-review-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:var(--module-gap)}.finance-review-state{display:inline-flex;align-items:center;min-height:34px;padding:7px 12px;border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:800}.finance-review-state.is-ready{border-color:color-mix(in srgb,var(--success) 48%,var(--line));background:var(--success-soft);color:var(--success)}.finance-review-state:is(.needs-review,.is-advisory){border-color:color-mix(in srgb,var(--warning) 48%,var(--line));background:var(--warning-soft);color:var(--warning)}.finance-review-summary{margin-bottom:var(--module-gap)}.finance-review-summary>a{color:inherit;text-decoration:none;transition:border-color .2s ease,transform .2s ease}.finance-review-summary>a:hover{border-color:var(--accent-orange-border);transform:translateY(-1px)}.finance-review-section{margin-bottom:var(--module-gap);scroll-margin-top:20px}.finance-review-section .panel-head p{max-width:760px}.finance-review-overdue>td{background:color-mix(in srgb,var(--danger-soft) 42%,var(--surface))}
@media(max-width:760px){.finance-review-toolbar{align-items:stretch;flex-direction:column}.finance-review-toolbar>.filter-bar{width:100%}}
.finance-sanitation-list{display:grid}.finance-sanitation-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:17px 20px;border-top:1px solid var(--line);border-left:4px solid var(--warning)}.finance-sanitation-item.severity-critical{border-left-color:var(--danger)}.finance-sanitation-item h3{margin:7px 0 4px;font-size:var(--font-md)}.finance-sanitation-item p{margin:0;color:var(--muted);font-size:var(--font-sm);line-height:1.5}.finance-sanitation-history{margin:16px 20px 20px}.finance-sanitation-history>summary{cursor:pointer;font-weight:800;color:var(--link)}.finance-sanitation-history .table-wrap{margin-top:10px}
@media(max-width:760px){.finance-sanitation-item{grid-template-columns:minmax(0,1fr);padding:16px}.finance-sanitation-item .health-audit-actions{justify-content:flex-start}.finance-sanitation-item .health-audit-actions>:is(a,form){flex:1 1 145px}.finance-sanitation-item .health-audit-actions form button{width:100%}}
.movement-attachments{margin-bottom:var(--module-gap);scroll-margin-top:20px}.movement-attachment-manager{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface2)}.movement-attachment-manager>div,.movement-attachment-list article>div:first-child{display:flex;flex-direction:column;gap:4px}.movement-attachment-manager small,.movement-attachment-list small{color:var(--muted)}.movement-attachment-upload{display:flex;align-items:flex-end;gap:12px}.movement-attachment-upload label{min-width:280px}.movement-attachment-list{display:grid;gap:8px;margin-top:12px}.movement-attachment-list article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid var(--line);border-radius:12px}.movement-attachment-list .muted{margin:8px 0 0;color:var(--muted)}
@media(max-width:760px){.movement-attachment-manager,.movement-attachment-upload,.movement-attachment-list article{align-items:stretch;flex-direction:column}.movement-attachment-upload label{min-width:0}}

/* Rodada 10 — agenda financeira integrada. */
.finance-calendar-summary{margin-bottom:var(--module-gap)}
.finance-calendar-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--module-gap);margin:var(--module-gap) 0}
.finance-calendar-triad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.finance-calendar-triad>div{padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}.finance-calendar-triad small,.finance-calendar-triad strong{display:block}.finance-calendar-triad strong{margin-top:5px;font-size:var(--font-lg);font-variant-numeric:tabular-nums}
.finance-calendar-alerts,.finance-review-queue{display:grid;gap:8px;margin-top:12px}.finance-calendar-alerts a,.finance-review-queue a{display:flex;flex-direction:column;gap:4px;padding:11px 12px;border:1px solid var(--line);border-radius:11px;background:var(--surface2);color:var(--text);text-decoration:none}.finance-calendar-alerts a:hover,.finance-review-queue a:hover{border-color:var(--accent-orange-border)}.finance-calendar-alerts small,.finance-review-queue small{color:var(--muted)}.finance-review-queue article{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.finance-review-queue form{margin:0}
.finance-calendar-timeline{margin-bottom:var(--module-gap)}.finance-calendar-days{display:grid;gap:14px;margin-top:14px}.finance-calendar-day{overflow:hidden;border:1px solid var(--line);border-radius:14px}.finance-calendar-day.is-critical{border-color:color-mix(in srgb,var(--danger) 55%,var(--line))}.finance-calendar-day>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;background:var(--surface2)}.finance-calendar-day>header>div{display:flex;align-items:center;gap:12px}.finance-calendar-day>header small{color:var(--muted)}.finance-calendar-day>header span,.finance-calendar-day>header b{font-size:var(--font-xs);font-variant-numeric:tabular-nums}.finance-calendar-events{display:grid}.finance-calendar-event{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:13px 14px;border-top:1px solid var(--line)}.finance-calendar-event:first-child{border-top:0}.finance-calendar-event>div:first-child{display:grid;gap:3px}.finance-calendar-event small{color:var(--muted)}.finance-calendar-kind{width:max-content;padding:2px 7px;border-radius:999px;background:var(--info-soft);color:var(--info);font-size:10px;font-weight:800;text-transform:uppercase}.finance-calendar-actions{position:relative}.finance-calendar-actions>summary{cursor:pointer;color:var(--accent-orange-strong);font-size:12px;font-weight:800}.finance-calendar-actions>div{display:grid;gap:10px;margin-top:10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}.finance-calendar-actions form{display:flex;align-items:end;gap:8px;flex-wrap:wrap}.finance-calendar-actions label{min-width:145px}.finance-calendar-actions label:has(input[name=note]){flex:1 1 200px}.finance-reschedule-result{margin:var(--module-gap) 0}
@media(max-width:900px){.finance-calendar-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:680px){.finance-calendar-triad{grid-template-columns:minmax(0,1fr)}.finance-calendar-day>header,.finance-calendar-day>header>div{align-items:flex-start;flex-direction:column}.finance-calendar-event{grid-template-columns:minmax(0,1fr) auto}.finance-calendar-actions{grid-column:1/-1}.finance-calendar-actions form{align-items:stretch;flex-direction:column}.finance-calendar-actions label{min-width:0}}
html[data-theme] body[data-section="finance"] .reserve-command-center{margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="finance"] .reserve-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}
html[data-theme] body[data-section="finance"] .reserve-kpi-grid article{display:grid;gap:6px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface2)}
html[data-theme] body[data-section="finance"] .reserve-kpi-grid span,
html[data-theme] body[data-section="finance"] .reserve-kpi-grid small{color:var(--muted);font-size:.75rem}
html[data-theme] body[data-section="finance"] .reserve-kpi-grid strong{font-size:1.3rem;font-variant-numeric:tabular-nums}
html[data-theme] body[data-section="finance"] .reserve-dashboard-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:16px}
html[data-theme] body[data-section="finance"] :is(.reserve-history-card,.reserve-activity-card){padding:16px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface2) 52%,var(--surface))}
html[data-theme] body[data-section="finance"] .section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
html[data-theme] body[data-section="finance"] .section-heading :is(h4,p){margin:0}
html[data-theme] body[data-section="finance"] .section-heading p{margin-top:5px;color:var(--muted);font-size:.76rem}
html[data-theme] body[data-section="finance"] .chart-legend{display:flex;align-items:center;gap:6px;flex-wrap:wrap;color:var(--muted);font-size:.68rem}
html[data-theme] body[data-section="finance"] .chart-legend i{width:8px;height:8px;border-radius:50%;background:var(--success)}
html[data-theme] body[data-section="finance"] .chart-legend i.is-withdrawal{background:var(--danger)}
html[data-theme] body[data-section="finance"] .chart-legend i.is-yield{background:var(--info)}
html[data-theme] body[data-section="finance"] .reserve-chart{position:relative;display:grid;grid-template-columns:repeat(12,minmax(30px,1fr));align-items:end;gap:8px;height:190px;margin-top:18px;padding:12px 4px 22px;border-bottom:1px solid var(--line)}
html[data-theme] body[data-section="finance"] .reserve-target-line{position:absolute;left:0;right:0;border-top:1px dashed var(--warning);z-index:1}
html[data-theme] body[data-section="finance"] .reserve-target-line em{position:absolute;right:0;bottom:3px;color:var(--warning);font-size:.65rem;font-style:normal}
html[data-theme] body[data-section="finance"] .reserve-chart-month{position:relative;display:flex;align-items:flex-end;justify-content:center;height:145px;z-index:2}
html[data-theme] body[data-section="finance"] .reserve-chart-month>small{position:absolute;bottom:-20px;color:var(--muted);font-size:.65rem}
html[data-theme] body[data-section="finance"] .reserve-flow-bars{display:flex;align-items:flex-end;gap:2px}
html[data-theme] body[data-section="finance"] .reserve-flow-bars i{display:block;width:6px;min-height:2px;border-radius:4px 4px 1px 1px;background:var(--success)}
html[data-theme] body[data-section="finance"] .reserve-flow-bars i.is-withdrawal{background:var(--danger)}
html[data-theme] body[data-section="finance"] .reserve-flow-bars i.is-yield{background:var(--info)}
html[data-theme] body[data-section="finance"] .reserve-flow-bars i.is-negative{outline:1px dashed var(--danger);background:transparent}
html[data-theme] body[data-section="finance"] .reserve-balance-point{position:absolute;left:50%;width:8px;height:8px;border:2px solid var(--surface);border-radius:50%;background:var(--accent);transform:translate(-50%,50%);box-shadow:0 0 0 1px var(--accent)}
html[data-theme] body[data-section="finance"] .reserve-history-table{margin-top:12px}
html[data-theme] body[data-section="finance"] .reserve-history-table summary{cursor:pointer;color:var(--accent);font-weight:750}
html[data-theme] body[data-section="finance"] .reserve-activity-list{display:grid;margin-top:10px}
html[data-theme] body[data-section="finance"] .reserve-activity-list>div{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--line)}
html[data-theme] body[data-section="finance"] .reserve-activity-list>div:last-child{border-bottom:0}
html[data-theme] body[data-section="finance"] .reserve-activity-list :is(p,strong,small,b){margin:0}
html[data-theme] body[data-section="finance"] .reserve-activity-list small{display:block;margin-top:3px;color:var(--muted);font-size:.68rem}
html[data-theme] body[data-section="finance"] .reserve-activity-icon{width:9px;height:9px;border-radius:50%;background:var(--success)}
html[data-theme] body[data-section="finance"] .reserve-activity-icon.is-withdrawal{background:var(--danger)}
html[data-theme] body[data-section="finance"] .reserve-activity-icon.is-yield{background:var(--info)}
html[data-theme] body[data-section="finance"] .reserve-tools-grid{margin-top:var(--module-gap)}
html[data-theme] body[data-section="finance"] .reserve-simulation-result{display:grid;gap:14px;margin-top:18px;padding:16px;border:1px solid var(--line);border-left:4px solid var(--success);border-radius:14px;background:var(--surface2)}
html[data-theme] body[data-section="finance"] .reserve-simulation-result.is-warning{border-left-color:var(--warning)}
html[data-theme] body[data-section="finance"] .reserve-simulation-result :is(h4,p){margin:4px 0}
html[data-theme] body[data-section="finance"] .reserve-result-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
html[data-theme] body[data-section="finance"] .reserve-result-metrics span{display:grid;gap:4px;padding:10px;border:1px solid var(--line);border-radius:10px}
html[data-theme] body[data-section="finance"] .reserve-result-metrics small{color:var(--muted)}
html[data-theme] body[data-section="finance"] .reserve-recommendation{padding-top:10px;border-top:1px solid var(--line)}
html[data-theme] body .home-reserve-panel{margin-block:var(--module-gap)}
html[data-theme] body .home-reserve-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}
html[data-theme] body .home-reserve-grid>div{display:grid;gap:5px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}
html[data-theme] body .home-reserve-grid small,
html[data-theme] body .home-reserve-grid span{color:var(--muted);font-size:.72rem}
html[data-theme] body .home-reserve-grid strong{font-size:1.1rem;font-variant-numeric:tabular-nums}
@media(max-width:1050px){html[data-theme] body[data-section="finance"] .reserve-dashboard-grid{grid-template-columns:1fr}html[data-theme] body .home-reserve-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){html[data-theme] body[data-section="finance"] .reserve-kpi-grid,html[data-theme] body[data-section="finance"] .reserve-result-metrics{grid-template-columns:1fr 1fr}html[data-theme] body[data-section="finance"] .reserve-chart{overflow-x:auto;grid-template-columns:repeat(12,minmax(38px,1fr))}html[data-theme] body[data-section="finance"] .section-heading{display:grid}html[data-theme] body .home-reserve-grid{grid-template-columns:1fr}}
@media(max-width:440px){html[data-theme] body[data-section="finance"] .reserve-kpi-grid,html[data-theme] body[data-section="finance"] .reserve-result-metrics{grid-template-columns:1fr}}
html[data-theme] body[data-section="finance"] .commitments-batch-list{display:grid;gap:8px}
html[data-theme] body[data-section="finance"] .commitments-batch-item{display:grid;grid-template-columns:minmax(0,1fr) 145px;align-items:center;gap:12px;font-weight:650}
html[data-theme] body[data-section="finance"] .commitments-batch-item input{text-align:right;font-variant-numeric:tabular-nums}
html[data-theme] body[data-section="finance"] .settlement-preview{padding:14px 16px;border:1px solid color-mix(in srgb,var(--info) 40%,var(--line));border-radius:13px;background:color-mix(in srgb,var(--info) 8%,var(--surface))}
html[data-theme] body[data-section="finance"] .settlement-preview strong,html[data-theme] body[data-section="finance"] .settlement-preview p{display:block;margin:0}
html[data-theme] body[data-section="finance"] .settlement-preview p{margin-top:5px;color:var(--muted);font-size:var(--font-xs);line-height:1.55}
html[data-theme] body[data-section="finance"] .settlement-history-panel{margin-top:var(--module-gap);min-height:0}
html[data-theme] body[data-section="finance"] .settlement-history-list{display:grid;gap:9px;margin-top:17px}
html[data-theme] body[data-section="finance"] .settlement-history-item{border:1px solid var(--line);border-radius:14px;background:var(--surface2)}
html[data-theme] body[data-section="finance"] .settlement-history-item>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;cursor:pointer;list-style:none}
html[data-theme] body[data-section="finance"] .settlement-history-item>summary::-webkit-details-marker{display:none}
html[data-theme] body[data-section="finance"] .settlement-history-item>summary>span{display:flex;align-items:flex-end;gap:10px;min-width:0}
html[data-theme] body[data-section="finance"] .settlement-history-item>summary>span:first-child{display:grid;gap:4px}
html[data-theme] body[data-section="finance"] .settlement-history-item>summary small{color:var(--muted)}
html[data-theme] body[data-section="finance"] .settlement-history-content{display:grid;gap:14px;padding:16px;border-top:1px solid var(--line)}
html[data-theme] body[data-section="finance"] .settlement-history-impact{display:flex;align-items:center;gap:10px}
html[data-theme] body[data-section="finance"] .settlement-history-impact small{color:var(--muted)}
html[data-theme] body[data-section="finance"] .settlement-history-content ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}
html[data-theme] body[data-section="finance"] .settlement-history-content li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;padding:8px 10px;border-radius:9px;background:var(--surface)}
html[data-theme] body[data-section="finance"] .settlement-history-content li small{grid-column:1/-1;color:var(--muted)}
html[data-theme] body[data-section="finance"] .settlement-reconcile-form{display:grid;grid-template-columns:180px minmax(220px,1fr) auto;align-items:end;gap:10px}
html[data-theme] body[data-section="finance"] .settlement-reconcile-form label{display:grid;gap:5px;font-size:var(--font-xs);font-weight:650}
@media(max-width:760px){html[data-theme] body[data-section="finance"] .commitments-batch-item,html[data-theme] body[data-section="finance"] .settlement-reconcile-form{grid-template-columns:1fr}html[data-theme] body[data-section="finance"] .settlement-history-item>summary,html[data-theme] body[data-section="finance"] .settlement-history-item>summary>span{align-items:flex-start;flex-direction:column}}
.receipt-reader{margin:16px 20px;padding:16px;border:1px solid var(--line);border-radius:12px;min-width:0;background:var(--surface2)}
.receipt-reader summary{cursor:pointer;font-weight:700;color:var(--link);min-height:44px;overflow-wrap:anywhere}
.receipt-reader label{display:flex;flex-wrap:wrap;gap:8px;margin-block:12px;min-width:0}
.receipt-reader input[type="file"]{max-width:100%;min-width:0;width:100%}
.receipt-reader p{overflow-wrap:anywhere;font-size:var(--font-sm)}
@media(max-width:760px){.receipt-reader{margin:12px;padding:12px}.receipt-reader button{width:100%;white-space:normal;min-height:44px}}

/* source: modules/health.css */
/* Etapa 5 — Saúde, Nutrição e Treinos. */
html[data-theme] body[data-section="health"] :is(.stats-grid,.nutrition-stats,.target-strip,.nutrition-history-kpis){gap:12px}
html[data-theme] body[data-section="health"] :is(.health-home-grid,.macro-mini-grid,.nutrition-comparison-metrics,.nutrition-plan-days,.planned-meal-grid,.body-photo-grid){gap:var(--module-gap)}
html[data-theme] body[data-section="health"] .selected-row>td{background:var(--info-soft);box-shadow:inset 3px 0 0 var(--info)}
html[data-theme] body[data-section="health"] .focus-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px}
html[data-theme] body[data-section="health"] .focus-card>div{min-width:0}
html[data-theme] body[data-section="health"] .focus-card p{margin:4px 0 0;color:var(--muted);line-height:1.5}
html[data-theme] body[data-section="health"] .nutrition-stats .progress>span{background:var(--info)}
html[data-theme] body[data-section="health"] .nutrition-comparison-panel,
html[data-theme] body[data-section="health"] .nutrition-history-panel,
html[data-theme] body[data-section="health"] .planned-meals-panel{margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="health"] .nutrition-comparison-metric{background:color-mix(in srgb,var(--surface2) 42%,var(--surface));border-color:var(--line)}
html[data-theme] body[data-section="health"] .nutrition-comparison-metric-head{min-width:0}
html[data-theme] body[data-section="health"] .nutrition-comparison-metric-head>*{min-width:0;overflow-wrap:anywhere}
html[data-theme] body[data-section="health"] .nutrition-comparison-diff.over{color:var(--danger)}
html[data-theme] body[data-section="health"] .nutrition-comparison-diff.under{color:var(--warning)}
html[data-theme] body[data-section="health"] .nutrition-history-day{background:color-mix(in srgb,var(--surface2) 40%,var(--surface));border-color:var(--line)}
html[data-theme] body[data-section="health"] .nutrition-history-day.good{border-color:color-mix(in srgb,var(--success) 40%,var(--line))}
html[data-theme] body[data-section="health"] .nutrition-history-day.attention{border-color:color-mix(in srgb,var(--warning) 45%,var(--line))}
html[data-theme] body[data-section="health"] .nutrition-history-day.low{border-color:color-mix(in srgb,var(--danger) 42%,var(--line))}
html[data-theme] body[data-section="health"] .nutrition-meal-history{display:grid;gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
html[data-theme] body[data-section="health"] .nutrition-meal-history-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
html[data-theme] body[data-section="health"] .nutrition-meal-history-grid article{display:grid;gap:4px;padding:13px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface2)}
html[data-theme] body[data-section="health"] .nutrition-meal-history-grid strong{font-size:var(--font-xl)}.nutrition-meal-history-grid small{color:var(--muted)}
html[data-theme] body[data-section="health"] :is(.nutrition-plan-day,.planned-meal-card,.nutrition-plan-meal){min-width:0;border-color:var(--line);background:var(--surface)}
html[data-theme] body[data-section="health"] :is(.nutrition-plan-day,.planned-meal-card){box-shadow:var(--shadow)}
html[data-theme] body[data-section="health"] :is(.nutrition-plan-meal-head,.planned-meal-card-head,.nutrition-day-metric-top){gap:12px;flex-wrap:wrap}
html[data-theme] body[data-section="health"] :is(.planned-meal-foods,.nutrition-plan-table){min-width:0}
html[data-theme] body[data-section="health"] .planned-meal-apply{margin-top:auto}
html[data-theme] body[data-section="health"] .nutrition-day-summary{border-color:var(--line);background:color-mix(in srgb,var(--surface2) 38%,var(--surface))}
html[data-theme] body[data-section="health"] .nutrition-day-metric{border-color:var(--line);background:var(--surface)}
html[data-theme] body[data-section="health"] .body-photo-card{overflow:hidden;border-color:var(--line);background:var(--surface);box-shadow:var(--shadow)}
html[data-theme] body[data-section="health"] .body-photo-image{background:var(--surface2)}
html[data-theme] body[data-section="health"] .body-photo-image img{display:block;width:100%;height:100%;object-fit:cover}
html[data-theme] body[data-section="health"] .body-photo-info{min-width:0}
html[data-theme] body[data-section="health"] .finish-panel{border-color:color-mix(in srgb,var(--success) 38%,var(--line));box-shadow:inset 3px 0 0 var(--success),var(--shadow)}
html[data-theme] body[data-section="health"] .compact-row{padding-inline:8px}
html[data-theme] body[data-section="health"] .health-progress-filter{display:flex;align-items:end;justify-content:space-between;gap:18px;padding:16px;margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="health"] .health-progress-filter>div{display:grid;gap:4px}.health-progress-filter small{color:var(--muted)}
html[data-theme] body[data-section="health"] .health-progress-filter label{min-width:180px;margin:0}
html[data-theme] body[data-section="health"] .health-progress-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="health"] .health-progress-weekly{margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="health"] :is(.health-progress-goals,.health-records-panel){margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="health"] .health-goal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 16px 16px}
html[data-theme] body[data-section="health"] .health-goal-card{display:grid;gap:10px;min-width:0;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface2)}
html[data-theme] body[data-section="health"] .health-goal-card h3{margin:4px 0 0}.health-goal-card>strong{font-size:var(--font-xl)}.health-goal-card>strong small{font-size:var(--font-sm);color:var(--muted)}
html[data-theme] body[data-section="health"] .health-new-records{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 16px 16px}
html[data-theme] body[data-section="health"] .health-new-records article{display:grid;gap:5px;padding:16px;border:1px solid color-mix(in srgb,var(--success) 42%,var(--line));border-radius:var(--radius);background:color-mix(in srgb,var(--success) 8%,var(--surface))}.health-new-records h3{margin:0}.health-new-records strong{font-size:var(--font-xl)}.health-new-records small{color:var(--muted)}
html[data-theme] body[data-section="health"] .health-best-list{display:flex;gap:10px 24px;flex-wrap:wrap}.health-best-list span{display:grid;gap:3px}.health-best-list small{color:var(--muted)}
html[data-theme] body[data-section="health"] .health-calendar-toolbar{display:flex;align-items:end;justify-content:space-between;gap:16px;padding:14px 16px;margin-bottom:var(--module-gap)}.health-calendar-toolbar form,.health-calendar-toolbar label{margin:0}
html[data-theme] body[data-section="health"] .health-calendar-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="health"] .health-calendar-panel{overflow:hidden}.health-calendar-weekdays,.health-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.health-calendar-weekdays span{padding:10px;text-align:center;color:var(--muted);font-size:var(--font-xs);font-weight:700;text-transform:uppercase;border-bottom:1px solid var(--line)}
html[data-theme] body[data-section="health"] .health-calendar-day{min-width:0;min-height:150px;padding:10px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface)}.health-calendar-day:nth-child(7n){border-right:0}.health-calendar-day.is-empty{background:color-mix(in srgb,var(--surface2) 50%,var(--surface))}.health-calendar-day.is-today{box-shadow:inset 0 0 0 2px var(--accent-orange)}.health-calendar-day>header{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:8px}.health-calendar-events{display:grid;gap:6px}.calendar-event{display:grid;gap:2px;padding:7px;border-radius:8px;border-left:3px solid var(--info);background:var(--surface2);text-decoration:none;color:inherit}.calendar-event small{color:var(--muted);font-size:var(--font-xs)}.calendar-event.workout{border-left-color:var(--success)}.calendar-event.nutrition{border-left-color:var(--warning)}.calendar-event.body{border-left-color:var(--info)}.calendar-day-add{color:var(--muted);font-size:var(--font-xs)}
html[data-theme] body[data-section="health"] .health-calendar-legend{margin-top:12px}.health-calendar-legend i.calendar-legend-workout{background:var(--success)}.health-calendar-legend i.calendar-legend-nutrition{background:var(--warning)}.health-calendar-legend i.calendar-legend-body{background:var(--info)}
html[data-theme] body[data-section="health"] .health-audit-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:var(--module-gap)}.health-audit-list{display:grid}.health-audit-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:17px 20px;border-bottom:1px solid var(--line);border-left:4px solid var(--info)}.health-audit-item:last-child{border-bottom:0}.health-audit-item.severity-warning{border-left-color:var(--warning)}.health-audit-item.severity-critical{border-left-color:var(--danger)}.health-audit-item h3{margin:8px 0 4px;font-size:var(--font-md)}.health-audit-item p{margin:0;color:var(--muted);font-size:var(--font-sm)}.health-audit-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.health-audit-actions form{margin:0}
html[data-theme] body[data-section="health"] .health-mobile-fab{display:none}
html[data-theme] body[data-section="health"] .health-quick-items{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 var(--module-gap);padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface2)}
html[data-theme] body[data-section="health"] .health-quick-items form{margin:0}.health-quick-items>strong{margin-right:4px;font-size:var(--font-sm)}
html[data-theme] body[data-section="health"] .health-undo-notice{display:flex;align-items:center;justify-content:space-between;gap:14px}.health-undo-notice form{margin:0}
html[data-theme] body[data-section="health"] .inline-favorite-form{display:inline-flex;margin:4px 0 0}.inline-favorite-form .text-button{padding:0;cursor:pointer}
html[data-theme] body[data-section="health"] .health-favorites-panel{min-height:0;margin-bottom:var(--module-gap)}.health-favorites-panel>summary{display:grid;gap:3px;cursor:pointer}.health-favorites-panel>summary span{color:var(--muted);font-size:var(--font-sm)}.health-favorites-panel[open] .health-quick-items{margin:14px 0 0}
html[data-theme] body[data-section="health"] :is(.nutrition-template-panel,.recent-meals-panel){margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="health"] :is(.nutrition-template-grid,.recent-meal-grid){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
html[data-theme] body[data-section="health"] :is(.nutrition-template-card,.recent-meal-card){display:flex;flex-direction:column;gap:12px;min-width:0;padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface2)}
html[data-theme] body[data-section="health"] :is(.nutrition-template-card,.recent-meal-card)>div{display:grid;gap:5px;min-width:0}
html[data-theme] body[data-section="health"] :is(.nutrition-template-card,.recent-meal-card) :is(small,span){color:var(--muted)}
html[data-theme] body[data-section="health"] :is(.nutrition-template-card,.recent-meal-card) form{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:0}
html[data-theme] body[data-section="health"] :is(.nutrition-template-card,.recent-meal-card) label{flex:1;min-width:150px;margin:0}
html[data-theme] body[data-section="health"] .recipe-usage{display:grid;gap:4px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface2)}
html[data-theme] body[data-section="health"] .recipe-usage small{display:block;color:var(--muted)}
html[data-theme] body[data-section="health"] :is(.workout-execution-panel,.workout-suggestions,.workout-bulk-panel){margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="health"] .workout-execution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
html[data-theme] body[data-section="health"] .workout-execution-card{display:grid;gap:8px;min-width:0;padding:15px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface2)}
html[data-theme] body[data-section="health"] .workout-execution-card>div{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.workout-execution-card p{margin:0}.workout-execution-card small{color:var(--muted);line-height:1.45}.workout-execution-card form{margin:2px 0 0}.workout-achievement{font-size:var(--font-xl);font-weight:800}
html[data-theme] body[data-section="health"] .workout-rest-timer{position:fixed;right:18px;bottom:18px;z-index:950;display:grid;grid-template-columns:auto auto;gap:4px 16px;align-items:center;padding:14px 16px;border:1px solid var(--accent-orange);border-radius:var(--radius);background:var(--surface);box-shadow:0 16px 40px rgba(0,0,0,.35)}
html[data-theme] body[data-section="health"] .workout-rest-timer[hidden]{display:none}.workout-rest-timer>span{color:var(--muted);font-size:var(--font-xs);text-transform:uppercase}.workout-rest-timer>strong{grid-row:2;font-size:var(--font-2xl);font-variant-numeric:tabular-nums}.workout-rest-timer>div{grid-column:2;grid-row:1/3;display:flex;gap:6px;align-items:center}
html[data-theme] body[data-section="health"] .health-progress-cell{display:grid;gap:6px;min-width:150px}.health-progress-cell small,.health-progress-subvalue{display:block;color:var(--muted);margin-top:4px}
html[data-theme] body[data-section="health"] .health-progress-detail-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:var(--module-gap);align-items:start;margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="health"] :is(.health-weekly-action-panel,.health-nutrition-integration,.health-correlation-panel,.health-progression-panel){margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="health"] .health-next-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.health-next-steps>a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--line);border-left:4px solid var(--warning);border-radius:12px;background:var(--surface2);color:var(--text);text-decoration:none}.health-next-steps>a.priority-success{border-left-color:var(--success)}.health-next-steps>a span{display:grid;gap:4px}.health-next-steps>a small{color:var(--muted)}.health-next-steps>a b{color:var(--link);font-size:var(--font-xs);white-space:nowrap}
html[data-theme] body[data-section="health"] .health-integration-triad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.health-integration-triad article,.health-integration-scores>div,.health-sleep-metrics>div,.health-body-period>div,.health-correlation-grid article{display:grid;gap:5px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}.health-integration-triad strong{font-size:var(--font-xl)}.health-integration-triad small,.health-integration-scores small,.health-sleep-metrics small,.health-body-period small,.health-correlation-grid small{color:var(--muted)}
html[data-theme] body[data-section="health"] .health-integration-scores{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}.health-integration-scores>div{grid-template-columns:minmax(0,1fr) auto;align-items:center}.health-integration-scores strong{grid-row:1/3;grid-column:2;font-size:var(--font-xl)}
html[data-theme] body[data-section="health"] .health-integration-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.health-sleep-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.health-sleep-metrics strong,.health-body-period strong{font-size:var(--font-lg)}.health-inline-form{margin-top:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}.health-inline-form>summary{padding:12px 14px;cursor:pointer;font-weight:750}.health-inline-form>form{padding:0 14px 14px}.health-sleep-list{display:grid;margin-top:10px}.health-sleep-list>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}.health-sleep-list span{display:grid;gap:2px}.health-sleep-list small{color:var(--muted)}.health-body-period{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.health-body-period+.notice{margin-top:12px}
html[data-theme] body[data-section="health"] .health-correlation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.health-correlation-grid article strong{font-size:var(--font-lg)}.health-progression-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.health-progression-list article{padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}.health-progression-list h3{margin:6px 0}.health-progression-list p{margin:0;color:var(--muted);font-size:var(--font-sm);line-height:1.5}
html[data-theme] body[data-section="health"] .health-shopping-filter,.health-shopping-summary,.health-saved-shopping-list{margin-bottom:var(--module-gap)}.health-shopping-recipes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:14px}.health-shopping-recipes>label{display:grid;grid-template-columns:minmax(0,1fr) 90px;align-items:center;gap:10px;padding:11px;border:1px solid var(--line);border-radius:11px;background:var(--surface2)}.health-shopping-recipes span{display:grid;gap:3px}.health-shopping-recipes small{color:var(--muted)}.health-shopping-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--module-gap)}
html[data-theme] body[data-section="health"] .shopping-covered{opacity:.72}.shopping-covered td{background:color-mix(in srgb,var(--success) 6%,transparent)}
html[data-theme] body[data-section="health"] .pantry-row-actions{position:relative;margin:0 0 8px;padding:0;border:0;border-radius:0;background:transparent;overflow:visible}
html[data-theme] body[data-section="health"] .pantry-row-actions>summary{list-style:none;cursor:pointer;margin:0 0 0 auto;min-height:var(--control-small);border:1px solid var(--line);border-radius:var(--control-radius)}
.pantry-row-actions>summary::-webkit-details-marker{display:none}
html[data-theme] body[data-section="health"] .pantry-adjust-form{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:340px;max-width:100%;margin-top:10px;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface2);box-shadow:none;white-space:normal;text-align:left}
.pantry-adjust-form label{display:grid;gap:6px;min-width:0;margin:0;font-size:var(--font-xs);color:var(--muted)}
.pantry-adjust-form :is(input,select){width:100%;min-width:0;padding:9px 10px;border:1px solid var(--line);border-radius:var(--control-radius);background:var(--surface);color:var(--text);font:inherit}
.pantry-adjust-form button{grid-column:1/-1;margin-left:0}
@media(max-width:680px){html[data-theme] body[data-section="health"] .data-table-responsive td.pantry-action-cell{display:block}html[data-theme] body[data-section="health"] .pantry-action-cell::before{display:block;margin-bottom:8px}html[data-theme] body[data-section="health"] .pantry-action-cell .crud-actions{justify-content:flex-start}html[data-theme] body[data-section="health"] .pantry-row-actions>summary{margin-left:0}html[data-theme] body[data-section="health"] .pantry-adjust-form{width:100%;grid-template-columns:minmax(0,1fr)}}
html[data-theme] body[data-section="health"] .workout-plan-card .item-card-head{flex-wrap:nowrap}
html[data-theme] body[data-section="health"] .workout-plan-card .item-card-head>div{flex:1;min-width:0}
html[data-theme] body[data-section="health"] .workout-plan-card .workout-plan-count{display:inline-flex;width:max-content;max-width:100%;white-space:nowrap;margin-top:10px}
html[data-theme] body[data-section="health"] .workout-plan-card .item-actions{flex-wrap:wrap;gap:8px}
.nested-panel{margin:14px 0}.table-input{min-width:110px;max-width:160px}.table-secondary{display:block;margin-top:4px;color:var(--muted)}
html[data-theme] body[data-section="health"] .health-progress-delta{font-weight:700}.health-progress-delta.positive{color:var(--success)}.health-progress-delta.negative{color:var(--danger)}.health-progress-delta.neutral{color:var(--muted)}
@media(max-width:900px){html[data-theme] body[data-section="health"] .nutrition-plan-days{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1050px){html[data-theme] body[data-section="health"] .health-progress-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}html[data-theme] body[data-section="health"] .health-progress-detail-grid{grid-template-columns:minmax(0,1fr)}html[data-theme] body[data-section="health"] .health-new-records{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1050px){html[data-theme] body[data-section="health"] :is(.health-correlation-grid,.health-progression-list,.health-shopping-recipes){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){html[data-theme] body[data-section="health"] .health-calendar-summary{grid-template-columns:repeat(2,minmax(0,1fr))}html[data-theme] body[data-section="health"] .health-calendar-panel{overflow-x:auto}.health-calendar-weekdays,.health-calendar-grid{min-width:850px}html[data-theme] body[data-section="health"] :is(.nutrition-template-grid,.recent-meal-grid,.nutrition-meal-history-grid,.workout-execution-grid){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){html[data-theme] body[data-section="health"] .health-audit-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.health-audit-item{grid-template-columns:minmax(0,1fr);padding:16px}.health-audit-actions{justify-content:flex-start}.health-audit-actions>:is(a,form){flex:1 1 150px}.health-audit-actions form button{width:100%}html[data-theme] body[data-section="health"] .health-mobile-fab{position:fixed;right:14px;bottom:max(14px,env(safe-area-inset-bottom));z-index:900;display:inline-flex;box-shadow:0 12px 28px rgba(0,0,0,.28)}html[data-theme] body[data-section="health"] .table-wrap{scrollbar-width:thin}}
@media(max-width:680px){
  html[data-theme] body[data-section="health"] .focus-card{align-items:stretch;flex-direction:column}
  html[data-theme] body[data-section="health"] .focus-card .secondary-action{width:100%}
  html[data-theme] body[data-section="health"] :is(.nutrition-plan-days,.planned-meal-grid,.body-photo-grid){grid-template-columns:minmax(0,1fr)}
  html[data-theme] body[data-section="health"] .nutrition-day-metric-values{grid-template-columns:minmax(0,1fr)}
  html[data-theme] body[data-section="health"] .health-progress-filter{align-items:stretch;flex-direction:column}.health-progress-filter label{min-width:0}
  html[data-theme] body[data-section="health"] .health-progress-kpis{grid-template-columns:minmax(0,1fr)}
  html[data-theme] body[data-section="health"] :is(.health-goal-grid,.health-new-records){grid-template-columns:minmax(0,1fr)}
  html[data-theme] body[data-section="health"] .health-calendar-summary{grid-template-columns:minmax(0,1fr)}.health-calendar-toolbar{align-items:stretch;flex-direction:column}.health-calendar-toolbar>a{width:100%}
  html[data-theme] body[data-section="health"] .health-audit-summary{grid-template-columns:minmax(0,1fr)}
  html[data-theme] body[data-section="health"] :is(.nutrition-template-grid,.recent-meal-grid,.nutrition-meal-history-grid){grid-template-columns:minmax(0,1fr)}
  html[data-theme] body[data-section="health"] .workout-execution-grid{grid-template-columns:minmax(0,1fr)}
  html[data-theme] body[data-section="health"] :is(.health-next-steps,.health-integration-triad,.health-integration-scores,.health-correlation-grid,.health-progression-list,.health-shopping-recipes,.health-shopping-summary){grid-template-columns:minmax(0,1fr)}
  html[data-theme] body[data-section="health"] .health-integration-scores>div{grid-template-columns:minmax(0,1fr)}.health-integration-scores strong{grid-row:auto;grid-column:auto}
  html[data-theme] body[data-section="health"] .health-sleep-metrics{grid-template-columns:minmax(0,1fr)}
  html[data-theme] body[data-section="health"] .workout-rest-timer{right:12px;bottom:max(12px,env(safe-area-inset-bottom));left:12px}
  html[data-theme] body[data-section="health"] :is(.nutrition-template-card,.recent-meal-card) form{align-items:stretch}
  html[data-theme] body[data-section="health"] :is(.nutrition-template-card,.recent-meal-card) form button{width:100%;justify-content:center}
}
@media print{html[data-theme] body[data-section="health"] :is(.sidebar,.topbar,.page-actions,.health-shopping-filter){display:none!important}html[data-theme] body[data-section="health"] .shell{display:block}html[data-theme] body[data-section="health"] .content{padding:0}html[data-theme] body[data-section="health"] .health-shopping-result{border:0;box-shadow:none}}

/* source: modules/care.css */
.care-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-block:12px}
.care-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 0;border-bottom:1px solid var(--border,#344454)}
.care-row>div{min-width:0}.care-row h3,.care-row p{overflow-wrap:anywhere;margin:5px 0}
.care-actions form{margin:0}.care-actions button,.care-actions a,.care-row>a{white-space:nowrap;word-break:normal;width:auto;flex-shrink:0}
.care-row:last-child{border-bottom:0}
@media(max-width:760px){.care-row{align-items:stretch;flex-direction:column}.care-row .care-actions{margin:0}.care-actions{align-items:stretch}}

/* source: modules/wellbeing.css */
.wellbeing-intro,.wellbeing-filters,.wellbeing-submit{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.wellbeing-intro p{margin:6px 0 0}.wellbeing-filters label{min-width:150px}.wellbeing-form{display:grid;gap:18px}
.wellbeing-scale{padding:0;border:0}.wellbeing-scale legend{font-weight:700;margin-bottom:9px}
.wellbeing-scale-options{display:grid;grid-template-columns:repeat(5,minmax(90px,1fr));gap:8px}
.wellbeing-scale-options label{position:relative;cursor:pointer}.wellbeing-scale-options input{position:absolute;opacity:0;pointer-events:none}
.wellbeing-scale-options span{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:64px;padding:8px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft);text-align:center;transition:.16s ease}
.wellbeing-scale-options strong{font-size:1.15rem}.wellbeing-scale-options small{color:var(--text-muted)}
.wellbeing-scale-options input:checked+span{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}
.wellbeing-scale-options input:focus-visible+span{outline:3px solid var(--focus-ring);outline-offset:2px}
.wellbeing-events{display:flex;flex-wrap:wrap;gap:8px}.wellbeing-events label{position:relative;cursor:pointer}.wellbeing-events input{position:absolute;opacity:0}
.wellbeing-events span{display:block;padding:9px 13px;border:1px solid var(--border);border-radius:999px;background:var(--surface-soft)}
.wellbeing-events input:checked+span{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}
.wellbeing-events input:focus-visible+span{outline:3px solid var(--focus-ring);outline-offset:2px}
.wellbeing-numbers small,.wellbeing-form>label small{display:block;color:var(--text-muted);font-weight:400;margin:3px 0 7px}
.wellbeing-stats{margin-block:18px}.wellbeing-relations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.wellbeing-relation{display:grid;grid-template-columns:1fr auto;gap:8px 16px;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface-soft)}
.wellbeing-relation h3{margin:0 0 3px}.wellbeing-relation>strong{font-size:1.35rem}.wellbeing-relation p{grid-column:1/-1;margin:4px 0 0;color:var(--text-muted)}
.wellbeing-relation.moderada,.wellbeing-relation.forte{border-color:var(--info-border,var(--accent))}
.wellbeing-history td{vertical-align:top;min-width:145px}.wellbeing-history td:last-child{min-width:90px}
@media(max-width:900px){.wellbeing-relations{grid-template-columns:1fr 1fr}.wellbeing-scale-options{grid-template-columns:repeat(5,minmax(64px,1fr))}.wellbeing-scale-options small{font-size:.68rem}}
@media(max-width:620px){.wellbeing-intro,.wellbeing-filters,.wellbeing-submit{align-items:stretch;flex-direction:column}.wellbeing-filters label,.wellbeing-filters button{width:100%}.wellbeing-scale-options{grid-template-columns:repeat(5,1fr);gap:4px}.wellbeing-scale-options span{min-height:54px;padding:5px 2px}.wellbeing-scale-options small{font-size:0;width:1px;height:1px;overflow:hidden}.wellbeing-relations{grid-template-columns:1fr}.wellbeing-history thead{display:none}.wellbeing-history,.wellbeing-history tbody,.wellbeing-history tr,.wellbeing-history td{display:block;width:100%}.wellbeing-history tr{padding:12px;border:1px solid var(--border);border-radius:12px}.wellbeing-history td{display:grid;grid-template-columns:105px 1fr;gap:8px;min-width:0;padding:7px 0;border:0}.wellbeing-history td::before{content:attr(data-label);font-weight:700;color:var(--text-muted)}.wellbeing-history td[colspan]{display:block}}

/* source: modules/planning-studies.css */
/* Etapa 6 — Planejamento, Metas e Estudos. */
html[data-theme] body:is([data-section="planning"],[data-section="studies"]) :is(.today-columns,.goal-grid,.routine-grid,.study-performance-grid){gap:var(--module-gap)}
html[data-theme] body[data-section="planning"] .week-board{gap:12px;padding:2px 2px 10px;scroll-snap-type:x proximity;scrollbar-width:thin}
html[data-theme] body[data-section="planning"] .week-day{min-width:180px;min-height:360px;background:var(--surface);border-color:var(--line);scroll-snap-align:start}
html[data-theme] body[data-section="planning"] .week-day.today{border-color:var(--accent-orange-border);box-shadow:inset 0 3px 0 var(--accent),var(--shadow)}
html[data-theme] body[data-section="planning"] .week-day-head{background:color-mix(in srgb,var(--surface2) 42%,var(--surface));border-color:var(--line)}
html[data-theme] body[data-section="planning"] .week-item{background:var(--surface2);border:1px solid transparent}
html[data-theme] body[data-section="planning"] .week-item.event{border-left-color:var(--info)}
html[data-theme] body[data-section="planning"] .week-item.task{border-left-color:var(--chart-neutral)}
html[data-theme] body[data-section="planning"] .week-item.routine{border-left:3px solid var(--success)}
html[data-theme] body[data-section="planning"] .check-button{display:grid;place-items:center;min-width:38px;width:38px;height:38px;border-color:var(--line);background:var(--surface);color:var(--muted)}
html[data-theme] body[data-section="planning"] .check-button.done{border-color:color-mix(in srgb,var(--success) 44%,var(--line));background:var(--success-soft);color:var(--success)}
html[data-theme] body[data-section="planning"] .goal-card{display:flex;flex-direction:column;min-height:260px;background:var(--surface)}
html[data-theme] body[data-section="planning"] .goal-card-top{gap:10px}
html[data-theme] body[data-section="planning"] .goal-card>p{min-height:0}
html[data-theme] body[data-section="planning"] .goal-values>div,
html[data-theme] body[data-section="planning"] .goal-projection-kpis>div,
html[data-theme] body[data-section="planning"] .goal-review-metrics>div{min-width:0;border-color:var(--line);background:color-mix(in srgb,var(--surface2) 42%,var(--surface))}
html[data-theme] body[data-section="planning"] :is(.goal-review-item,.goal-suggested-action,.goal-next-milestone,.auto-goal-card,.week-conflict-item,.week-focus-item,.week-reorganization-item){border-color:var(--line);background:color-mix(in srgb,var(--surface2) 34%,var(--surface))}
html[data-theme] body[data-section="planning"] .goal-projection-status.success{color:var(--success);background:var(--success-soft)}
html[data-theme] body[data-section="planning"] .goal-projection-status.warning{color:var(--warning);background:var(--warning-soft)}
html[data-theme] body[data-section="planning"] :is(.plan-row,.check-row,.routine-dashboard-row,.planner-goal-row){padding-inline:8px}
html[data-theme] body[data-section="studies"] .study-next-block{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:var(--module-gap);border-color:var(--accent-orange-border);box-shadow:inset 3px 0 0 var(--accent),var(--shadow)}
html[data-theme] body[data-section="studies"] .study-next-block>div{min-width:0}
html[data-theme] body[data-section="studies"] .study-next-block p{margin:5px 0 0;color:var(--muted)}
html[data-theme] body[data-section="studies"] .cycle-row{grid-template-columns:38px minmax(150px,1fr) auto auto auto auto;gap:10px;padding:14px 8px;border-color:var(--line);border-radius:10px}
html[data-theme] body[data-section="studies"] .cycle-row.is-next{background:var(--accent-orange-soft);box-shadow:inset 3px 0 0 var(--accent)}
html[data-theme] body[data-section="studies"] .cycle-pos{background:var(--surface2);color:var(--text)}
html[data-theme] body[data-section="studies"] .cycle-row>:is(a,button,form){justify-self:end;margin:0}
html[data-theme] body[data-section="studies"] .cycle-row>form button{width:100%}
html[data-theme] body[data-section="studies"] :is(.study-cycle-performance-row,.study-distribution-row,.study-activity-row,.review-row,.flash-review){border-color:var(--line)}
html[data-theme] body[data-section="studies"] :is(.study-cycle-metrics>div,.study-review-summary>div,.study-performance-summary .metric-card){min-width:0}
html[data-theme] body[data-section="studies"] .study-bar-track>span{background:var(--info)}
html[data-theme] body[data-section="studies"] .flash-review details{margin:10px 0;background:var(--surface2)}
html[data-theme] body[data-section="studies"] .review-actions{margin-top:10px}
@media(max-width:980px){
  html[data-theme] body[data-section="studies"] .cycle-row{grid-template-columns:38px minmax(0,1fr) auto auto}
  html[data-theme] body[data-section="studies"] .cycle-row>.crud-edit-button{grid-column:3}
  html[data-theme] body[data-section="studies"] .cycle-row>form{grid-column:4}
}
@media(max-width:680px){
  html[data-theme] body[data-section="planning"] .week-board{grid-template-columns:repeat(7,minmax(230px,78vw))}
  html[data-theme] body[data-section="studies"] .study-next-block{align-items:stretch;flex-direction:column}
  html[data-theme] body[data-section="studies"] .study-next-block>.primary-action{width:100%}
  html[data-theme] body[data-section="studies"] .cycle-row{grid-template-columns:38px minmax(0,1fr)}
  html[data-theme] body[data-section="studies"] .cycle-row>.pill{grid-column:2;justify-self:start}
  html[data-theme] body[data-section="studies"] .cycle-row>:is(.text-link,.crud-edit-button,form){grid-column:2;width:100%;justify-self:stretch}
  html[data-theme] body[data-section="studies"] .cycle-row>:is(.text-link,.crud-edit-button){justify-content:center}
}
.study-planning-nav{display:flex;align-items:center;justify-content:flex-end;gap:.65rem;margin:-.25rem 0 1rem}.study-planning-nav strong{margin-right:auto;color:var(--text-strong)}
.study-integrated-kpis{margin-bottom:1rem}.study-capacity-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.7rem}.study-capacity-days article{padding:.85rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-soft)}.study-capacity-days article>div:first-child{display:flex;justify-content:space-between;gap:.5rem}.study-capacity-days small{display:block;margin-top:.45rem;color:var(--text-muted)}.study-capacity-track{height:.45rem;margin:.55rem 0;border-radius:999px;background:var(--surface-muted);overflow:hidden}.study-capacity-track span{display:block;height:100%;border-radius:inherit;background:var(--accent)}
.study-week-board{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.7rem;overflow-x:auto}.study-week-day{min-width:145px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-soft);overflow:hidden}.study-week-day.is-today{border-color:var(--accent)}.study-week-day>header{display:flex;justify-content:space-between;padding:.7rem .75rem;background:var(--surface-muted)}.study-week-day>div{display:grid;gap:.45rem;padding:.55rem}.study-agenda-item{display:grid;gap:.15rem;padding:.55rem;border-left:3px solid var(--border-strong);border-radius:.35rem;background:var(--surface)}.study-agenda-item.block{border-left-color:var(--accent)}.study-agenda-item.session{border-left-color:var(--success)}.study-agenda-item.task{border-left-color:var(--warning)}.study-agenda-item.event{border-left-color:var(--info)}.study-agenda-item small,.study-agenda-item span,.study-week-empty{font-size:.74rem;color:var(--text-muted)}.study-agenda-item>div{display:flex;gap:.55rem;align-items:center}.study-agenda-item form{display:inline}.study-agenda-item button,.study-agenda-item a{font:inherit;color:var(--accent);border:0;background:none;padding:0;cursor:pointer}.study-agenda-item em{font-size:.74rem;color:var(--success);font-style:normal}
.study-planning-analysis{margin-top:1rem}.study-subject-balance,.study-goal-list{display:grid;gap:.7rem}.study-subject-balance article,.study-goal-list article{padding:.8rem;border:1px solid var(--border);border-radius:var(--radius-md)}.study-subject-balance article>div:first-child,.study-goal-list article>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.study-subject-balance p{margin:.45rem 0;color:var(--text-muted)}.study-subject-balance .status-neglected{border-color:color-mix(in srgb,var(--danger) 55%,var(--border))}.study-subject-balance .status-overloaded{border-color:color-mix(in srgb,var(--warning) 55%,var(--border))}.study-goal-list form{margin-top:.35rem}.study-template-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.study-template-grid article{padding:.9rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-soft)}.study-template-grid article>div{display:flex;align-items:center;justify-content:space-between;gap:.65rem}.study-template-grid article>div:last-child{justify-content:flex-start}.study-template-grid form{display:inline}

/* Rodada 19 · planejamento por objetivos */
.objective-summary{margin-bottom:var(--module-gap)}.objective-top-grid{align-items:start}.objective-top-grid>.panel{margin:0}.objective-conflict-list,.objective-recommendations{display:grid;gap:10px}.objective-conflict-list article,.objective-recommendations article,.objective-simulation-result{padding:14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface2)}.objective-conflict-list strong{display:block;margin-top:8px}.objective-conflict-list p,.objective-recommendations p,.objective-simulation-result p{margin:6px 0;color:var(--muted)}.objective-goal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.objective-goal-grid>article{display:grid;gap:13px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface2)}.objective-goal-grid h3{margin:0}.objective-card-head,.objective-resource-row,.objective-progress-compare{display:flex;align-items:center;justify-content:space-between;gap:8px}.objective-card-head>div{display:flex;gap:6px}.objective-progress-compare>div{display:grid;gap:4px}.objective-progress-compare span,.objective-resource-row{font-size:var(--font-xs);color:var(--muted)}.objective-progress-compare strong{font-size:var(--font-md)}.objective-simulator form{margin-top:14px}.objective-simulation-result{margin-top:14px}.objective-simulation-result>div{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:6px 10px;align-items:end}.objective-simulation-result small{color:var(--muted)}.objective-plan-config,.objective-steps,.objective-weekly-review{margin-top:var(--module-gap)}.objective-step-list{display:grid;gap:8px;margin:14px 0}.objective-step-list>article{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start;padding:13px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface2)}.objective-step-list article.is-complete{opacity:.62}.objective-step-list article.is-complete strong{text-decoration:line-through}.objective-step-list article>div>div{display:flex;align-items:center;gap:8px}.objective-step-list p{margin:5px 0 0;color:var(--muted)}.objective-step-list small{color:var(--muted)}.objective-step-form{padding-top:16px;border-top:1px solid var(--line)}.objective-weekly-review .table-wrap{margin-top:16px}
@media(max-width:1050px){.objective-goal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.objective-goal-grid{grid-template-columns:1fr}.objective-card-head,.objective-resource-row{align-items:flex-start;flex-direction:column}.objective-progress-compare{align-items:flex-start}.objective-simulation-result>div{grid-template-columns:auto 1fr}}
@media(max-width:1100px){.study-capacity-days,.study-week-board{grid-template-columns:repeat(4,minmax(155px,1fr))}}@media(max-width:720px){.study-planning-nav{flex-wrap:wrap;justify-content:flex-start}.study-planning-nav strong{width:100%;margin:0}.study-capacity-days,.study-week-board{grid-template-columns:1fr}.study-week-day{min-width:0}}
.study-review-intelligence{margin-bottom:1rem}.study-review-intelligence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.study-review-intelligence-grid>div{display:grid;gap:.2rem;padding:.85rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-soft)}.study-review-intelligence-grid span,.study-review-intelligence-grid small{color:var(--text-muted)}.study-review-intelligence-grid strong{font-size:1.15rem}.study-review-forecast{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.study-review-forecast span{padding:.45rem .6rem;border-radius:999px;background:var(--surface-muted);font-size:.78rem}@media(max-width:720px){.study-review-intelligence-grid{grid-template-columns:1fr}}
.smart-week-summary{margin-bottom:1rem}.week-item.is-movable{cursor:grab}.week-item.is-movable:active{cursor:grabbing}.week-item.is-dragging{opacity:.45}.week-item.is-pending{outline:2px solid var(--accent);outline-offset:2px}.week-day.is-drop-target{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.planner-drag-hint{opacity:.72}.smart-week-actions{position:sticky;bottom:1rem;z-index:15;display:flex;justify-content:flex-end;align-items:center;gap:1rem;margin-top:1rem;padding:.8rem 1rem;border:1px solid var(--accent-orange-border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow)}.smart-week-actions[hidden]{display:none}.planning-preview-list{display:grid;gap:.7rem}.planning-preview-item{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(170px,1fr) minmax(170px,1fr);gap:1rem;align-items:center;padding:1rem;border:1px solid var(--line);border-radius:var(--radius-md)}.planning-preview-item>div{display:grid;gap:.25rem}.planning-preview-item span,.planning-preview-item small{color:var(--text-muted)}.planning-preview-conflicts{margin-top:1rem;padding:1rem;border:1px solid var(--warning);border-radius:var(--radius-md)}.planning-preview-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1rem}@media(max-width:720px){.planner-drag-hint{display:none}.planning-preview-item{grid-template-columns:1fr}.smart-week-actions{align-items:stretch;flex-direction:column}.planning-preview-actions{flex-direction:column}.planning-preview-actions button{width:100%}}

/* Rodada 56 · planejamento de tempo e capacidade real */
.real-time-planning,.estimate-learning-panel,.actual-time-history{margin-bottom:1rem}.real-capacity-days{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));gap:.65rem;margin-top:1rem;overflow-x:auto}.capacity-day{display:grid;gap:.45rem;min-width:130px;padding:.8rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface2)}.capacity-day>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:.4rem}.capacity-day small{color:var(--muted);line-height:1.45}.capacity-day.overloaded{border-color:color-mix(in srgb,var(--danger) 55%,var(--line));box-shadow:inset 0 3px 0 var(--danger)}.capacity-day.busy{border-color:color-mix(in srgb,var(--warning) 50%,var(--line))}.capacity-day-bar{height:6px;border-radius:99px;background:var(--surface);overflow:hidden}.capacity-day-bar span{display:block;height:100%;border-radius:inherit;background:var(--success)}.capacity-day.busy .capacity-day-bar span{background:var(--warning)}.capacity-day.overloaded .capacity-day-bar span{background:var(--danger)}.capacity-day .text-button{justify-self:start;padding:0}.quick-timer-form,.active-time-tracker{display:flex;align-items:end;gap:.75rem;margin-top:1rem;padding:1rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface2)}.quick-timer-form label{display:grid;gap:.35rem;min-width:min(420px,70%);font-size:var(--font-xs);font-weight:700}.quick-timer-form select{width:100%;padding:.65rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--text)}.quick-timer-form .primary-action{margin-left:0}.active-time-tracker{align-items:center;justify-content:space-between}.active-time-tracker>div{display:grid;gap:.25rem}.active-time-tracker small{color:var(--muted)}.time-redistribution-suggestions{margin-top:1rem;padding:1rem;border-left:3px solid var(--warning);border-radius:var(--radius-sm);background:var(--warning-soft)}.time-redistribution-suggestions p{margin:.45rem 0}.time-redistribution-suggestions small{color:var(--muted)}.estimate-learning-list,.actual-time-list{display:grid;gap:.6rem;margin-top:1rem}.estimate-learning-list article,.actual-time-list article{display:grid;grid-template-columns:minmax(200px,1fr) auto auto;gap:1rem;align-items:center;padding:.8rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface2)}.estimate-learning-list article>div,.actual-time-list article>div{display:grid;gap:.2rem}.estimate-learning-list small,.actual-time-list small{color:var(--muted)}.actual-time-history summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;list-style:none}.actual-time-history summary>span{display:grid;gap:.35rem}.actual-time-history summary>small{color:var(--muted)}.week-item.time-block{border-left:3px solid var(--info)}.week-item.time-block.break{border-left-color:var(--success)}.week-item.time-block.travel{border-left-color:var(--warning)}.time-block-actions{display:flex;gap:.5rem;padding-top:.25rem}.time-block-actions form{margin:0}.time-block-actions .text-button{padding:0}.text-button.danger{color:var(--danger)}
@media(max-width:900px){.real-capacity-days{grid-template-columns:repeat(7,minmax(180px,1fr))}.estimate-learning-list article,.actual-time-list article{grid-template-columns:1fr auto}.estimate-learning-list .link-action{grid-column:1/-1;justify-content:center}}
@media(max-width:620px){.quick-timer-form,.active-time-tracker{align-items:stretch;flex-direction:column}.quick-timer-form label{min-width:0;width:100%}.quick-timer-form button,.active-time-tracker form,.active-time-tracker button{width:100%}.estimate-learning-list article,.actual-time-list article{grid-template-columns:1fr}}

/* Rodada 60 · revisão semanal guiada */
.weekly-review-head{align-items:center}.weekly-review-status{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding:1rem 1.1rem;border:1px solid var(--line);border-left:4px solid var(--warning);border-radius:var(--radius-md);background:var(--surface)}.weekly-review-status.is-completed{border-left-color:var(--success)}.weekly-review-status>div:first-child{display:flex;align-items:center;gap:.65rem;min-width:0}.weekly-review-status small{color:var(--muted)}.weekly-review-status form{margin:0}.weekly-review-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.weekly-review-kpis article{display:grid;gap:.35rem;padding:1rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}.weekly-review-kpis span,.weekly-review-kpis small{color:var(--muted)}.weekly-review-kpis strong{font-size:var(--font-lg);overflow-wrap:anywhere}.weekly-comparison,.weekly-review-history{min-height:0;margin-bottom:1rem}.weekly-comparison>summary,.weekly-review-history>summary,.weekly-review-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;list-style:none}.weekly-comparison>summary::-webkit-details-marker,.weekly-review-history>summary::-webkit-details-marker,.weekly-review-panel>summary::-webkit-details-marker{display:none}.weekly-comparison>summary>span,.weekly-review-history>summary>span,.weekly-review-panel>summary>span{display:grid;gap:.3rem}.weekly-comparison>summary>small,.weekly-review-history>summary>small,.weekly-review-panel>summary>small{color:var(--muted)}.weekly-comparison-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.6rem;margin-top:1rem}.weekly-comparison-grid article{display:grid;gap:.35rem;padding:.75rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface2)}.weekly-comparison-grid span,.weekly-comparison-grid small{font-size:var(--font-xs);color:var(--muted)}.weekly-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.weekly-review-panel{min-height:0;margin:0}.weekly-review-panel[open]>summary{padding-bottom:1rem;border-bottom:1px solid var(--line)}.weekly-metric-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;margin-top:1rem}.weekly-metric-row>div{display:grid;gap:.25rem;padding:.7rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface2)}.weekly-metric-row span,.weekly-metric-row small{font-size:var(--font-xs);color:var(--muted)}.weekly-metric-row strong{overflow-wrap:anywhere}.weekly-compact-list,.weekly-goal-list{display:grid;gap:.45rem;margin-top:1rem;max-height:260px;overflow:auto}.weekly-compact-list>div,.weekly-goal-list>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.6rem;padding:.6rem;border-bottom:1px solid var(--line);color:var(--text);text-decoration:none}.weekly-compact-list small,.weekly-goal-list small{color:var(--muted)}.weekly-panel-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem}.weekly-finance-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin-top:1rem}.weekly-finance-columns>div{padding:.8rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface2)}.weekly-finance-columns h4{margin:0 0 .65rem}.weekly-finance-columns p{display:flex;justify-content:space-between;gap:.5rem;margin:.4rem 0;color:var(--muted)}.weekly-finance-columns p strong{color:var(--text);text-align:right}.weekly-reserve-progress{margin-top:1rem}.weekly-reserve-progress>div{height:8px;border-radius:99px;background:var(--surface2);overflow:hidden}.weekly-reserve-progress>div span{display:block;height:100%;border-radius:inherit;background:var(--success)}.weekly-reserve-progress p{margin:.55rem 0;color:var(--muted)}.weekly-empty{padding-top:1rem}.weekly-decisions{min-height:0;margin-bottom:1rem}.weekly-decision-list{display:grid;gap:.65rem;margin-top:1rem}.weekly-decision-list article{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border:1px solid var(--line);border-left:3px solid var(--info);border-radius:var(--radius-sm);background:var(--surface2)}.weekly-decision-list article.severity-warning{border-left-color:var(--warning)}.weekly-decision-list article.severity-critical{border-left-color:var(--danger)}.weekly-decision-list p{margin:.3rem 0 0;color:var(--muted)}.weekly-review-form fieldset{display:grid;gap:1rem;margin:0;padding:0;border:0}.weekly-review-form fieldset:disabled{opacity:.78}.weekly-review-form>.panel,.weekly-review-form fieldset>.panel{min-height:0}.weekly-notes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:1rem}.weekly-notes-grid label,.weekly-priority-list label{display:grid;gap:.35rem;font-size:var(--font-xs);font-weight:700;color:var(--muted)}.weekly-notes-grid textarea,.weekly-priority-list input,.weekly-priority-list select{width:100%;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);padding:.7rem;font:inherit}.weekly-priority-list{display:grid;gap:.65rem;margin-top:1rem}.weekly-priority-list>div{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(150px,.35fr);gap:.75rem;align-items:end;padding:.75rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface2)}.weekly-priority-number{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--accent-orange-soft);color:var(--accent);font-weight:800}.weekly-review-actions{position:sticky;bottom:1rem;z-index:8;display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1rem 0;padding:.8rem 1rem;border:1px solid var(--accent-orange-border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow)}.weekly-review-actions>span{color:var(--muted)}.weekly-review-actions>div{display:flex;gap:.6rem}.weekly-review-actions .primary-action{margin-left:0}.weekly-history-list{display:grid;gap:.45rem;margin-top:1rem}.weekly-history-list>a{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem;border-bottom:1px solid var(--line);color:var(--text);text-decoration:none}.weekly-history-list>a>div{display:grid;gap:.2rem}.weekly-history-list small{color:var(--muted)}
@media(max-width:1100px){.weekly-review-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.weekly-comparison-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.weekly-review-grid{grid-template-columns:1fr}}
@media(max-width:700px){.weekly-review-status,.weekly-decision-list article,.weekly-review-actions{align-items:stretch;flex-direction:column}.weekly-review-status>div:first-child{align-items:flex-start;flex-direction:column}.weekly-review-kpis,.weekly-comparison-grid,.weekly-notes-grid,.weekly-finance-columns{grid-template-columns:1fr}.weekly-metric-row{grid-template-columns:repeat(2,minmax(0,1fr))}.weekly-priority-list>div{grid-template-columns:auto minmax(0,1fr)}.weekly-priority-list>div label:last-child{grid-column:2}.weekly-review-actions>div,.weekly-review-actions button{width:100%}.weekly-review-actions>div{flex-direction:column}.weekly-compact-list>div,.weekly-goal-list>a{grid-template-columns:1fr}.weekly-panel-actions{align-items:stretch;flex-direction:column}}

/* Rodada 58 · documentos, contratos e garantias */
.personal-record-metrics{margin-bottom:1rem}.personal-record-detail{margin-top:1rem}.personal-record-detail .detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.record-action-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(14rem,1fr);gap:1rem;margin-top:1.25rem;padding:1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-soft)}.record-columns{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(18rem,1fr);gap:1.25rem}.document-list{display:grid;gap:.65rem;margin-top:1rem}.document-list article{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem;border:1px solid var(--border);border-radius:var(--radius-sm)}.document-list article small,.timeline-list small{display:block;color:var(--muted);margin-top:.2rem}.timeline-list{display:grid;gap:.75rem;margin-top:1rem}.timeline-list article{display:grid;grid-template-columns:.7rem 1fr;gap:.7rem;align-items:start}.timeline-list article>span{width:.65rem;height:.65rem;margin-top:.3rem;border-radius:50%;background:var(--accent)}.align-end{align-self:end}@media(max-width:850px){.personal-record-detail .detail-grid,.record-action-grid,.record-columns{grid-template-columns:1fr}.document-list article{align-items:flex-start;flex-direction:column}.personal-record-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* source: modules/my-day.css */
.my-day-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-block:20px}
.my-day-column{min-width:0;align-self:start}
.my-day-item{padding:18px 0;border-bottom:1px solid var(--border,#344454)}
.my-day-item:last-child{border-bottom:0}
.my-day-item h3,.my-day-item p{overflow-wrap:anywhere;margin-block:8px}
.my-day-actions,.my-day-links,.my-day-date,.my-day-decision{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.my-day-actions{margin-top:12px}
.my-day-actions form{margin:0}
.my-day-actions button,.my-day-actions a,.my-day-links a{white-space:nowrap;word-break:normal;width:auto;flex-shrink:0}
.my-day-date{margin-bottom:18px;align-items:end}
.my-day-decision{justify-content:space-between;padding:12px 0}
.my-day-close{margin-block:18px}
@media(max-width:1100px){.my-day-columns{grid-template-columns:1fr}}

/* source: modules/productivity.css */
html[data-theme] body[data-section="productivity"] .productivity-summary{margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="productivity"] .productivity-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.8fr);gap:var(--module-gap);margin-bottom:var(--module-gap);align-items:start}
html[data-theme] body[data-section="productivity"] .productivity-list{display:grid;gap:8px}
html[data-theme] body[data-section="productivity"] .productivity-item{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;border:1px solid var(--line);border-left:4px solid var(--info);border-radius:12px;background:var(--surface2);cursor:pointer}
html[data-theme] body[data-section="productivity"] .productivity-item.domain-finance{border-left-color:var(--success)}
html[data-theme] body[data-section="productivity"] .productivity-item.domain-health{border-left-color:var(--accent-orange)}
html[data-theme] body[data-section="productivity"] .productivity-item.domain-study{border-left-color:#8b5cf6}
html[data-theme] body[data-section="productivity"] .productivity-item>span{display:grid;gap:3px;min-width:0}
html[data-theme] body[data-section="productivity"] .productivity-item small,html[data-theme] body[data-section="productivity"] .productivity-item em{color:var(--muted);font-size:var(--font-xs);font-style:normal}
html[data-theme] body[data-section="productivity"] .productivity-item strong{overflow-wrap:anywhere}
html[data-theme] body[data-section="productivity"] .productivity-item>a{color:var(--link);font-size:var(--font-xs);font-weight:750;text-decoration:none}
html[data-theme] body[data-section="productivity"] .productivity-item-mark{width:10px;height:10px;margin:auto;border-radius:50%;background:var(--line-strong)}
html[data-theme] body[data-section="productivity"] .productivity-bulk{display:flex;align-items:end;justify-content:flex-end;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
html[data-theme] body[data-section="productivity"] .productivity-bulk label{min-width:220px}
html[data-theme] body[data-section="productivity"] .productivity-source-list{display:grid;gap:3px}
html[data-theme] body[data-section="productivity"] .productivity-settings .stack-form{display:grid;gap:14px}
html[data-theme] body[data-section="productivity"] .productivity-inbox-panel{margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="productivity"] :is(.productivity-inbox-list,.productivity-reminders,.productivity-templates){display:grid;gap:10px}
html[data-theme] body[data-section="productivity"] :is(.productivity-inbox-list,.productivity-reminders,.productivity-templates)>article{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}
html[data-theme] body[data-section="productivity"] :is(.productivity-inbox-list,.productivity-reminders,.productivity-templates) h3{margin:4px 0;font-size:var(--font-md)}
html[data-theme] body[data-section="productivity"] :is(.productivity-inbox-list,.productivity-reminders,.productivity-templates) p{margin:0;color:var(--muted);font-size:var(--font-sm)}
html[data-theme] body[data-section="productivity"] .productivity-inbox-list>article>form{display:flex;align-items:end;gap:8px;flex-wrap:wrap}
html[data-theme] body[data-section="productivity"] .productivity-inbox-list>article>form label{min-width:150px}
html[data-theme] body[data-section="productivity"] .productivity-reminders>article{grid-template-columns:minmax(0,1fr) minmax(260px,auto)}
html[data-theme] body[data-section="productivity"] .productivity-reminders .item-actions{justify-content:flex-end}
html[data-theme] body[data-section="productivity"] .productivity-snooze{display:flex;align-items:center;gap:5px}
html[data-theme] body[data-section="productivity"] .productivity-snooze input{max-width:175px}
html[data-theme] body[data-section="productivity"] .productivity-templates>article{grid-template-columns:minmax(0,1fr) auto auto}
html[data-theme] body[data-section="productivity"] .productivity-templates>article>form{display:flex;align-items:center;gap:7px}
html[data-theme] body[data-section="productivity"] .productivity-templates input[type="datetime-local"]{max-width:180px}
@media(max-width:980px){html[data-theme] body[data-section="productivity"] .productivity-grid{grid-template-columns:minmax(0,1fr)}html[data-theme] body[data-section="productivity"] :is(.productivity-inbox-list,.productivity-reminders,.productivity-templates)>article{grid-template-columns:minmax(0,1fr)}html[data-theme] body[data-section="productivity"] .productivity-reminders .item-actions{justify-content:flex-start}}
@media(max-width:620px){html[data-theme] body[data-section="productivity"] .productivity-item{grid-template-columns:22px minmax(0,1fr)}html[data-theme] body[data-section="productivity"] .productivity-item>a{grid-column:2}html[data-theme] body[data-section="productivity"] .productivity-bulk,html[data-theme] body[data-section="productivity"] .productivity-inbox-list>article>form,html[data-theme] body[data-section="productivity"] .productivity-snooze,html[data-theme] body[data-section="productivity"] .productivity-templates>article>form{align-items:stretch;flex-direction:column}html[data-theme] body[data-section="productivity"] .productivity-bulk label,html[data-theme] body[data-section="productivity"] .productivity-inbox-list>article>form label,html[data-theme] body[data-section="productivity"] .productivity-snooze input,html[data-theme] body[data-section="productivity"] .productivity-templates input[type="datetime-local"]{width:100%;max-width:none;min-width:0}}

/* source: modules/wealth.css */
/* Etapa 7 — Investimentos, Patrimônio e Veículos. */
html[data-theme] body:is([data-section="investments"],[data-section="patrimony"]) :is(.investment-allocation-summary,.investment-attention-summary,.investment-performance-summary,.investment-evolution-summary,.investment-contribution-summary,.patrimony-analysis-summary,.patrimony-evolution-summary,.vehicle-summary-grid){margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="investments"] :is(.investment-allocation-mini>div,.investment-attention-mini-grid>div,.investment-flow-metrics>div){min-width:0;border-color:var(--line);background:color-mix(in srgb,var(--surface2) 42%,var(--surface))}
html[data-theme] body[data-section="investments"] :is(.investment-priority-card,.investment-contribution-highlight,.investment-xirr-content,.investment-twr-content){border-color:var(--line);background:color-mix(in srgb,var(--surface2) 32%,var(--surface))}
html[data-theme] body[data-section="investments"] .investment-priority-card,
html[data-theme] body[data-section="investments"] .investment-contribution-highlight{padding:18px;border:1px solid var(--line);border-radius:14px}
html[data-theme] body[data-section="investments"] .investment-performance-bar-group .buy,
html[data-theme] body[data-section="investments"] .investment-performance-legend .buy{background:var(--info)}
html[data-theme] body[data-section="investments"] .investment-performance-bar-group .sell,
html[data-theme] body[data-section="investments"] .investment-performance-legend .sell{background:var(--warning)}
html[data-theme] body[data-section="investments"] .investment-performance-bar-group .income,
html[data-theme] body[data-section="investments"] .investment-performance-legend .income{background:var(--success)}
html[data-theme] body[data-section="investments"] .investment-performance-legend{flex-wrap:wrap}
html[data-theme] body[data-section="investments"] :is(.investment-performance-row,.investment-attention-list>div,.investment-income-ranking>div){padding:12px 8px;border-color:var(--line);border-radius:9px}
@media(hover:hover){html[data-theme] body[data-section="investments"] :is(.investment-performance-row,.investment-attention-list>div,.investment-income-ranking>div):hover{background:var(--surface2)}}
html[data-theme] body[data-section="investments"] .position-row{padding-inline:8px}
html[data-theme] body[data-section="investments"] .position-number{background:var(--surface2);color:var(--text)}
html[data-theme] body[data-section="investments"] .investment-result.positive{color:var(--success)}
html[data-theme] body[data-section="investments"] .investment-result.negative{color:var(--danger)}
html[data-theme] body[data-section="investments"] .investment-fx-panel{margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="investments"] .investment-fx-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
html[data-theme] body[data-section="investments"] .investment-fx-grid>div{display:grid;gap:4px;padding:14px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface2) 42%,var(--surface))}
html[data-theme] body[data-section="investments"] .investment-fx-grid span,
html[data-theme] body[data-section="investments"] .investment-fx-grid small{color:var(--text-muted)}
html[data-theme] body[data-section="investments"] .investment-fx-grid strong{font-size:1.15rem}
html[data-theme] body[data-section="investments"] .amount small{display:block;margin-top:3px;color:var(--text-muted);font-weight:500}
html[data-theme] body[data-section="investments"] .price-inline{display:flex;flex-wrap:wrap;gap:7px}
html[data-theme] body[data-section="investments"] .price-inline input{flex:1 1 120px;min-width:0}
html[data-theme] body:is([data-section="investments"],[data-section="patrimony"]) .allocation-bar>i{background:var(--info)}
html[data-theme] body[data-section="patrimony"] .wealth-row{padding-inline:8px}
html[data-theme] body[data-section="patrimony"] :is(.vehicle-cost-split>div,.vehicle-signal,.vehicle-monthly-item,.vehicle-usage-kpis>div,.asset-kpis>div){border-color:var(--line);background:color-mix(in srgb,var(--surface2) 42%,var(--surface))}
html[data-theme] body[data-section="patrimony"] .vehicle-signal.is-warning{border-color:color-mix(in srgb,var(--warning) 48%,var(--line));background:var(--warning-soft)}
html[data-theme] body[data-section="patrimony"] .vehicle-signal.is-danger{border-color:color-mix(in srgb,var(--danger) 48%,var(--line));background:var(--danger-soft)}
html[data-theme] body[data-section="patrimony"] .vehicle-dashboard-card{min-height:0}
html[data-theme] body[data-section="patrimony"] .vehicle-cost-type-panel{overflow:hidden}
html[data-theme] body[data-section="patrimony"] .vehicle-monthly-track>span{background:var(--info)}
@media(max-width:760px){
  html[data-theme] body[data-section="investments"] :is(.investment-priority-card,.investment-contribution-highlight){align-items:flex-start;display:grid}
  html[data-theme] body[data-section="investments"] :is(.investment-priority-value,.investment-contribution-highlight>div:last-child){text-align:left}
}
@media(max-width:520px){
  html[data-theme] body:is([data-section="investments"],[data-section="patrimony"]) :is(.investment-allocation-mini,.investment-attention-mini-grid,.investment-flow-metrics,.vehicle-monthly-grid,.vehicle-usage-kpis){grid-template-columns:minmax(0,1fr)}
}
html[data-theme] body[data-section="investments"] .investment-assets-filter-panel{min-height:0;margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="investments"] .investment-assets-filter{grid-template-columns:minmax(180px,1.4fr) repeat(5,minmax(120px,1fr)) auto auto;align-items:end;margin:16px 0 0}
html[data-theme] body[data-section="investments"] .investment-price-fx-history{min-height:0;margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="investments"] .investment-price-fx-history .panel-head form{display:flex;align-items:center;gap:8px}
html[data-theme] body[data-section="investments"] .investment-history-legend{display:flex;flex-wrap:wrap;gap:18px;margin-top:18px;color:var(--muted);font-size:var(--font-xs)}
html[data-theme] body[data-section="investments"] .investment-history-legend span:before{content:'';display:inline-block;width:18px;height:3px;margin-right:7px;border-radius:99px;vertical-align:middle;background:currentColor}
html[data-theme] body[data-section="investments"] .investment-history-legend .series-price{color:var(--accent)}
html[data-theme] body[data-section="investments"] .investment-history-legend .series-fx{color:var(--info)}
html[data-theme] body[data-section="investments"] .investment-history-legend .series-brl{color:var(--success)}
html[data-theme] body[data-section="investments"] .investment-history-chart{display:block;width:100%;height:auto;max-height:250px;margin-top:10px;overflow:visible}
html[data-theme] body[data-section="investments"] .investment-history-chart polyline{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
html[data-theme] body[data-section="investments"] .investment-history-chart .series-price{stroke:var(--accent)}
html[data-theme] body[data-section="investments"] .investment-history-chart .series-fx{stroke:var(--info)}
html[data-theme] body[data-section="investments"] .investment-history-chart .series-brl{stroke:var(--success)}
html[data-theme] body[data-section="investments"] .investment-history-chart .chart-axis{stroke:var(--line);stroke-width:1}
html[data-theme] body[data-section="investments"] .investment-history-range{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:var(--font-xs)}
html[data-theme] body[data-section="investments"] .asset-setup-assistant{padding:15px;border:1px solid var(--line);border-radius:14px;background:var(--surface2)}
html[data-theme] body[data-section="investments"] .asset-setup-assistant>p{margin:0 0 12px;color:var(--muted);font-size:var(--font-xs)}
html[data-theme] body[data-section="investments"] .asset-preset-list{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}
html[data-theme] body[data-section="investments"] .asset-search-row{display:grid;grid-template-columns:minmax(180px,1fr) 100px auto;align-items:end;gap:8px}
html[data-theme] body[data-section="investments"] .asset-search-results{display:grid;gap:6px;margin-top:10px;color:var(--muted);font-size:var(--font-xs)}
html[data-theme] body[data-section="investments"] .asset-search-result{padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);text-align:left;cursor:pointer}
html[data-theme] body[data-section="investments"] .asset-search-result:hover{border-color:var(--accent);background:var(--accent-orange-soft)}
@media(max-width:1250px){html[data-theme] body[data-section="investments"] .investment-assets-filter{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){html[data-theme] body[data-section="investments"] .investment-assets-filter,html[data-theme] body[data-section="investments"] .asset-search-row{grid-template-columns:1fr}html[data-theme] body[data-section="investments"] .investment-price-fx-history .panel-head{align-items:stretch;display:grid;gap:10px}html[data-theme] body[data-section="investments"] .investment-price-fx-history .panel-head form{display:grid;grid-template-columns:1fr auto}html[data-theme] body[data-section="investments"] .investment-history-range strong{display:none}}

/* Rodada 48 · Conciliação de investimentos */
.investment-reconciliation-intro,.investment-reconciliation-overview,.investment-reconciliation-history{margin-bottom:18px}.investment-reconciliation-filter{display:flex;align-items:end;gap:12px;margin-bottom:18px}.investment-reconciliation-filter label{width:min(100%,460px)}.investment-reconciliation-table{margin-bottom:16px}.investment-reconciliation-table td small,.reconciliation-history-list td small{display:block;color:var(--text-muted);margin-top:3px}.reconciliation-quantity-input{min-width:140px;text-align:right}.investment-reconciliation-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface2);margin-bottom:16px}.reconciliation-live-summary{display:grid;grid-template-columns:auto auto;gap:2px 12px;text-align:right}.reconciliation-live-summary span{color:var(--text-muted)}.reconciliation-live-summary strong{font-size:1.25rem}.reconciliation-live-summary small{grid-column:1/-1;color:var(--text-muted)}.investment-snapshot-list{display:grid;gap:10px}.investment-snapshot-list>div{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;padding-bottom:10px;border-bottom:1px solid var(--line)}.investment-snapshot-list>div:last-child{border-bottom:0;padding-bottom:0}.investment-snapshot-list strong{text-align:right}.investment-snapshot-list small{grid-column:1/-1;color:var(--text-muted)}.reconciliation-history-list{display:grid;gap:12px}.reconciliation-history-list details{border:1px solid var(--line);border-radius:14px;overflow:hidden}.reconciliation-history-list summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;cursor:pointer;background:var(--surface2)}.reconciliation-history-list summary small{display:block;color:var(--text-muted);margin-top:3px}.reconciliation-history-list summary>.right{display:flex;align-items:center;gap:12px}.reconciliation-history-list details>.table-wrap,.reconciliation-history-list details>.report-note{margin:14px 16px}.reconciliation-history-list .data-table{min-width:720px}
@media(max-width:700px){.investment-reconciliation-actions,.reconciliation-history-list summary{align-items:flex-start;display:grid}.reconciliation-live-summary{text-align:left}.reconciliation-history-list summary>.right{justify-content:space-between}.reconciliation-quantity-input{min-width:112px}}

/* Rodada 49 · Resultado e tributação avançados */
.investment-tax-filter{align-items:end}.investment-tax-filter label{max-width:180px}.investment-tax-warning{margin-bottom:18px}.investment-tax-summary,.investment-tax-breakdown,.investment-tax-monthly,.investment-tax-memory,.investment-tax-positions,.investment-tax-movements{margin-bottom:18px}.investment-tax-waterfall{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.investment-tax-waterfall>div,.investment-tax-movement-grid>div,.tax-memory-grid>div{display:flex;flex-direction:column;gap:5px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}.investment-tax-waterfall span,.investment-tax-movement-grid span,.tax-memory-grid span{color:var(--text-muted);font-size:.78rem}.investment-tax-waterfall strong{font-size:1.08rem}.investment-tax-waterfall .total{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,var(--surface2))}.investment-tax-monthly .data-table,.investment-tax-positions .data-table{min-width:1080px}.investment-tax-monthly td small,.investment-tax-positions td small{display:block;margin-top:3px;color:var(--text-muted)}.investment-tax-monthly tr.is-empty-period{opacity:.55}.tax-memory-list{display:grid;gap:12px}.tax-memory-list details{overflow:hidden;border:1px solid var(--line);border-radius:14px}.tax-memory-list summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 16px;cursor:pointer;background:var(--surface2)}.tax-memory-list summary small{display:block;margin-top:4px;color:var(--text-muted)}.tax-memory-list summary>.right{display:flex;align-items:center;gap:18px;text-align:right}.tax-memory-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:16px}.tax-memory-grid strong{overflow-wrap:anywhere}.tax-formula{margin:0 16px 16px;padding:12px 14px;border-left:3px solid var(--accent);background:var(--surface2);border-radius:0 10px 10px 0}.investment-tax-movement-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.investment-tax-movement-grid strong{font-size:1.35rem}.investment-tax-method{margin-bottom:28px}.investment-tax-method p{max-width:1050px}.investment-tax-positions>.notice{margin:14px 16px}
@media(max-width:1000px){.investment-tax-waterfall{grid-template-columns:repeat(2,minmax(0,1fr))}.investment-tax-waterfall .total{grid-column:1/-1}.tax-memory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.investment-tax-movement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.investment-tax-waterfall,.tax-memory-grid,.investment-tax-movement-grid{grid-template-columns:1fr}.investment-tax-waterfall .total{grid-column:auto}.tax-memory-list summary{align-items:flex-start;display:grid}.tax-memory-list summary>.right{justify-content:space-between;text-align:left}}
@media print{body[data-section="investments"] .investment-tax-memory details{break-inside:avoid}body[data-section="investments"] .investment-tax-memory details[open]>.tax-memory-grid{display:grid}body[data-section="investments"] .investment-tax-waterfall,body[data-section="investments"] .investment-tax-movement-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.investment-tax-monthly tr.is-empty-period{opacity:1}}
.investment-tax-cost-evolution{margin-bottom:18px}.investment-tax-cost-evolution .data-table{min-width:980px}.investment-tax-cost-evolution td small{display:block;margin-top:3px;color:var(--text-muted)}
html[data-theme] body[data-section="patrimony"] .payment-preview{padding:11px 13px;border:1px solid var(--line);border-radius:10px;background:var(--surface2);color:var(--muted);font-size:12px;line-height:1.5}
html[data-theme] body[data-section="patrimony"] .vehicle-category-settings{margin-bottom:var(--module-gap);overflow:visible}
html[data-theme] body[data-section="patrimony"] .vehicle-category-settings>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:2px;cursor:pointer;list-style:none}
html[data-theme] body[data-section="patrimony"] .vehicle-category-settings>summary::-webkit-details-marker{display:none}
html[data-theme] body[data-section="patrimony"] .vehicle-category-settings>summary>span{display:grid;gap:4px}
html[data-theme] body[data-section="patrimony"] .vehicle-category-settings>summary>small{color:var(--accent);font-weight:700}
html[data-theme] body[data-section="patrimony"] .vehicle-category-settings[open]>summary{padding-bottom:18px;border-bottom:1px solid var(--line)}
html[data-theme] body[data-section="patrimony"] .vehicle-category-form{padding-top:18px}
html[data-theme] body[data-section="patrimony"] .vehicle-forecast-panel{margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="patrimony"] .vehicle-forecast-list{display:grid;gap:0}
html[data-theme] body[data-section="patrimony"] .vehicle-forecast-list>div{display:grid;grid-template-columns:100px minmax(0,1fr) auto;align-items:center;gap:16px;padding:12px 4px;border-bottom:1px solid var(--line)}
html[data-theme] body[data-section="patrimony"] .vehicle-forecast-list>div:last-child{border-bottom:0}
html[data-theme] body[data-section="patrimony"] .vehicle-forecast-list span{display:grid;gap:2px;min-width:0}
html[data-theme] body[data-section="patrimony"] .vehicle-forecast-list time,html[data-theme] body[data-section="patrimony"] .vehicle-forecast-list small{color:var(--muted)}
html[data-theme] body[data-section="patrimony"] .vehicle-forecast-value{display:flex;align-items:flex-end;gap:5px}
html[data-theme] body[data-section="patrimony"] .vehicle-linked-rules{margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="patrimony"] .vehicle-linked-rule-list{display:grid;gap:9px;margin-top:16px}
html[data-theme] body[data-section="patrimony"] .vehicle-linked-rule-list>div{display:grid;grid-template-columns:minmax(220px,1fr) auto auto auto;align-items:center;gap:14px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}
html[data-theme] body[data-section="patrimony"] .vehicle-linked-rule-list>div>span:first-child{display:grid;gap:3px;min-width:0}
html[data-theme] body[data-section="patrimony"] .vehicle-linked-rule-list small{color:var(--muted)}
html[data-theme] body[data-section="patrimony"] .vehicle-link-empty{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:0;margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="patrimony"] .vehicle-link-empty h3{margin:5px 0}
html[data-theme] body[data-section="patrimony"] .vehicle-link-empty p{margin:0;color:var(--muted)}
html[data-theme] body[data-section="patrimony"] .vehicle-comparison{margin-bottom:var(--module-gap)}
@media(max-width:900px){html[data-theme] body[data-section="patrimony"] .vehicle-linked-rule-list>div{grid-template-columns:minmax(0,1fr) auto}html[data-theme] body[data-section="patrimony"] .vehicle-linked-rule-list>div>.secondary-button{justify-self:start}}
@media(max-width:760px){html[data-theme] body[data-section="patrimony"] .vehicle-category-settings>summary{align-items:flex-start}html[data-theme] body[data-section="patrimony"] .vehicle-forecast-list>div{grid-template-columns:82px minmax(0,1fr)}html[data-theme] body[data-section="patrimony"] .vehicle-forecast-list .vehicle-forecast-value{grid-column:2;align-items:flex-start}html[data-theme] body[data-section="patrimony"] .vehicle-link-empty{align-items:flex-start;flex-direction:column}}

/* source: modules/application.css */
/* Etapa 8 — Home, IA, Insights, Relatórios, Configurações e Notificações. */
.settings-grid+#two-factor{margin-top:var(--module-gap)}
html[data-theme] body[data-section="home"] .home-hero{margin-bottom:24px}
html[data-theme] body[data-section="home"] .home-kpi{position:relative;min-width:0;overflow:hidden;border-color:var(--line);background:var(--surface);box-shadow:var(--shadow)}
html[data-theme] body[data-section="home"] .home-kpi::after{content:"";position:absolute;right:0;bottom:0;width:52px;height:3px;background:var(--accent);opacity:.72}
html[data-theme] body[data-section="home"] .home-kpi.is-danger::after{background:var(--danger)}
html[data-theme] body[data-section="home"] .home-kpi.is-warning::after{background:var(--warning)}
html[data-theme] body[data-section="home"] .home-kpi :is(strong,small){overflow-wrap:anywhere}
html[data-theme] body[data-section="home"] .home-finance-numbers>div{background:var(--surface2);border-color:var(--line)}
html[data-theme] body[data-section="home"] .home-finance-numbers>div:first-child strong{color:var(--success)}
html[data-theme] body[data-section="home"] .home-finance-numbers>div:nth-child(2) strong{color:var(--danger)}
html[data-theme] body[data-section="home"] .focus-primary{position:relative;overflow:hidden;background:linear-gradient(145deg,#18212d,#252f3d);border:1px solid #39475a;box-shadow:inset 3px 0 0 var(--accent)}
html[data-theme] body[data-section="home"] .focus-primary.is-critical{box-shadow:inset 3px 0 0 var(--danger)}
html[data-theme] body[data-section="home"] .focus-primary a{display:inline-flex;align-items:center;gap:7px;color:#fff;text-decoration:none}
html[data-theme] body[data-section="home"] .home-command-item{background:color-mix(in srgb,var(--surface2) 42%,var(--surface));border-color:var(--line);transition:border-color var(--motion-fast),background-color var(--motion-fast),box-shadow var(--motion-fast)}
@media(hover:hover){html[data-theme] body[data-section="home"] .home-command-item:hover{border-color:var(--accent-orange-border);background:var(--accent-orange-soft);box-shadow:0 8px 20px rgba(20,24,32,.08);transform:none}}
html[data-theme] body[data-section="home"] .home-command-item.is-alert{border-color:color-mix(in srgb,var(--danger) 46%,var(--line));box-shadow:inset 3px 0 0 var(--danger)}
html[data-theme] body[data-section="home"] .week-strip-day{background:var(--surface);border-color:var(--line)}
html[data-theme] body[data-section="home"] .week-strip-day.today{background:var(--accent-orange-soft);border-color:var(--accent-orange-border);color:var(--text);box-shadow:inset 0 3px 0 var(--accent)}
html[data-theme] body[data-section="home"] .week-strip-day.today :is(span,small){color:var(--muted)}
html[data-theme] body[data-section="home"] .wealth-composition i{background:var(--info)}
html[data-theme] body[data-section="home"] .insight.compact{background:var(--surface2);border-color:var(--line)}
html[data-theme] body[data-section="ai"] .ai-shell{gap:var(--module-gap)}
html[data-theme] body[data-section="ai"] :is(.ai-history-panel,.ai-usage-panel){top:84px}
html[data-theme] body[data-section="ai"] .ai-conversation-item{border-color:transparent}
html[data-theme] body[data-section="ai"] .ai-conversation-item.is-active{border-color:var(--accent-orange-border);background:var(--accent-orange-soft);box-shadow:inset 3px 0 0 var(--accent)}
html[data-theme] body[data-section="ai"] .ai-message.is-user .ai-message-content{border-color:var(--accent-orange-border);background:var(--accent-orange-soft);color:var(--text)}
html[data-theme] body[data-section="ai"] .ai-message.is-assistant .ai-message-content{background:var(--surface)}
html[data-theme] body[data-section="ai"] .ai-suggestions button{min-height:48px;background:color-mix(in srgb,var(--surface2) 44%,var(--surface));border-color:var(--line)}
@media(hover:hover){html[data-theme] body[data-section="ai"] .ai-suggestions button:hover{border-color:var(--accent-orange-border);background:var(--accent-orange-soft)}}
html[data-theme] body[data-section="ai"] .ai-usage-panel .progress-track>span{background:var(--info)}
html[data-theme] body[data-section="ai"] .ai-simulation-list,html[data-theme] body[data-section="ai"] .ai-action-list{display:grid;gap:8px;width:min(100%,680px);padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}
html[data-theme] body[data-section="ai"] .ai-simulation-list>strong,html[data-theme] body[data-section="ai"] .ai-action-list>strong{font-size:var(--font-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
html[data-theme] body[data-section="ai"] .ai-simulation-list article{padding:10px;border-radius:9px;background:var(--surface);border:1px solid var(--line)}
html[data-theme] body[data-section="ai"] .ai-simulation-list h4,html[data-theme] body[data-section="ai"] .ai-simulation-list p{margin:0 0 6px}.ai-simulation-list small{color:var(--muted)}
html[data-theme] body[data-section="ai"] .ai-action-list form{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border-radius:9px;background:var(--surface);border:1px solid var(--line)}
html[data-theme] body[data-section="ai"] .ai-action-list form>div{display:grid;gap:3px}.ai-action-list form small{color:var(--muted)}
html[data-theme] body[data-section="ai"] .ai-source-list{width:min(100%,680px);padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
html[data-theme] body[data-section="ai"] .ai-source-list summary{cursor:pointer;font-size:var(--font-xs);font-weight:750}.ai-source-list ul{display:grid;gap:8px;margin:10px 0 0;padding-left:18px}.ai-source-list li span{display:block;color:var(--muted);font-size:var(--font-xs)}
html[data-theme] body[data-section="ai"] .ai-feedback{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.ai-feedback>span{font-size:var(--font-xs);color:var(--muted)}.ai-feedback .is-selected{background:var(--accent-orange-soft);color:var(--accent-orange-strong)}
html[data-theme] body[data-section="ai"] .ai-feedback-summary{display:grid;gap:7px;padding-top:12px;border-top:1px solid var(--line);font-size:var(--font-xs)}
html[data-theme] body[data-section="ai"] .ai-rerun{width:min(100%,680px);padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
html[data-theme] body[data-section="ai"] .ai-rerun summary{cursor:pointer;font-size:var(--font-xs);font-weight:750}.ai-rerun form{display:grid;gap:10px;margin-top:12px}.ai-rerun textarea{width:100%}
html[data-theme] body[data-section="ai"] .ai-confirm-action{max-width:760px}.ai-confirm-action .detail-list{margin:18px 0}
html[data-theme] body[data-section="insights"] .insight-card{border-color:var(--line);background:var(--surface);box-shadow:var(--shadow)}
html[data-theme] body[data-section="insights"] .insight-card.severity-critical::before{background:var(--danger)}
html[data-theme] body[data-section="insights"] .insight-card.severity-warning::before{background:var(--warning)}
html[data-theme] body[data-section="insights"] .insight-card.severity-success::before{background:var(--success)}
html[data-theme] body[data-section="insights"] .insight-card.severity-info::before{background:var(--info)}
html[data-theme] body[data-section="insights"] .insights-area-card{background:color-mix(in srgb,var(--surface2) 42%,var(--surface));border-color:var(--line)}
html[data-theme] body[data-section="insights"] .insights-area-card.is-active{border-color:var(--accent-orange-border);background:var(--accent-orange-soft);box-shadow:inset 3px 0 0 var(--accent)}
html[data-theme] body[data-section="reports"] .reports-grid{gap:var(--module-gap)}
html[data-theme] body[data-section="reports"] .report-panel{min-height:0}
html[data-theme] body[data-section="reports"] :is(.asset-kpis>div,.nutrition-report-grid>div,.evolution-domain-card){border-color:var(--line);background:color-mix(in srgb,var(--surface2) 40%,var(--surface))}
html[data-theme] body[data-section="reports"] .report-highlight{border-radius:13px;background:color-mix(in srgb,var(--surface2) 42%,var(--surface));padding:16px}
html[data-theme] body[data-section="reports"] .report-ranking>div{padding:9px 0;border-bottom:1px solid var(--line)}
html[data-theme] body[data-section="reports"] .report-ranking>div:last-child{border-bottom:0}
html[data-theme] body[data-section="reports"] .report-category-ranking{gap:0}
html[data-theme] body[data-section="reports"] .report-category-ranking>a{display:grid;gap:8px;padding:11px 8px;border-bottom:1px solid var(--line);border-radius:10px;color:inherit;text-decoration:none;transition:background-color var(--motion-fast),border-color var(--motion-fast)}
html[data-theme] body[data-section="reports"] .report-category-ranking>a:last-child{border-bottom-color:transparent}
html[data-theme] body[data-section="reports"] .report-category-ranking>a>div{display:flex;align-items:center;justify-content:space-between;gap:12px}
html[data-theme] body[data-section="reports"] .report-category-ranking>a span{display:flex;align-items:center;gap:8px}
html[data-theme] body[data-section="reports"] .report-category-ranking>a span small{color:var(--muted);font-weight:600}
@media(hover:hover){html[data-theme] body[data-section="reports"] .report-category-ranking>a:hover{background:var(--accent-orange-soft);border-color:var(--accent-orange-border)}}
html[data-theme] body[data-section="reports"] .report-category-detail{scroll-margin-top:88px}
html[data-theme] body[data-section="reports"] .report-category-detail .panel-head p{margin:5px 0 0;color:var(--muted);font-size:var(--font-sm)}
html[data-theme] body[data-section="reports"] .report-category-table td small{display:block;margin-top:4px;color:var(--muted)}
html[data-theme] body[data-section="reports"] .report-category-table :is(th,td).table-actions{width:1%;min-width:112px;white-space:nowrap}
html[data-theme] body[data-section="reports"] .report-category-table td.table-actions .secondary-button{min-width:88px;max-width:none;white-space:nowrap;overflow-wrap:normal}
html[data-theme] body[data-section="settings"] .settings-grid{gap:var(--module-gap)}
html[data-theme] body[data-section="settings"] .settings-grid>.panel{height:100%}
html[data-theme] body[data-section="settings"] .settings-grid>.panel>h2{margin-top:0;padding-bottom:12px;border-bottom:1px solid var(--line)}
html[data-theme] body[data-section="settings"] .security-sessions{margin-top:var(--module-gap)}
html[data-theme] body[data-section="notifications"] .notification-summary-grid{margin-bottom:var(--module-gap)}
html[data-theme] body[data-section="notifications"] .notification-item{padding:17px}
html[data-theme] body[data-section="notifications"] .notification-body{min-width:0}
html[data-theme] body[data-section="notifications"] .notification-body p{margin:6px 0 0;color:var(--muted)}
@media(max-width:820px){html[data-theme] body[data-section="ai"] :is(.ai-history-panel,.ai-usage-panel){position:static}}
@media(max-width:620px){
  html[data-theme] body[data-section="home"] .home-hero{align-items:stretch}
  html[data-theme] body[data-section="home"] .home-finance-numbers{grid-template-columns:minmax(0,1fr)}
  html[data-theme] body[data-section="ai"] .ai-message{max-width:100%}
  html[data-theme] body[data-section="ai"] .ai-action-list form{align-items:stretch;flex-direction:column}.ai-action-list form button{width:100%}
  html[data-theme] body[data-section="notifications"] .notification-item{padding:15px}
  html[data-theme] body[data-section="reports"] .report-category-ranking>a>div{align-items:flex-start;flex-direction:column}
  html[data-theme] body[data-section="reports"] .report-category-ranking>a span{width:100%;justify-content:space-between}
}
.report-export-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin:-4px 0 16px}.report-export-actions>span{margin-right:4px;color:var(--muted);font-size:12px}.report-export-actions .secondary-action{margin:0}
@media(max-width:620px){.report-export-actions{align-items:stretch;flex-direction:column}.report-export-actions .secondary-action{justify-content:center}}

/* Rodada 7 · painéis, filtros, exportações e operações */
html[data-theme] body .home-custom-grid>.home-widget-wide{grid-column:1/-1}
html[data-theme] body .home-custom-grid>.home-widget-compact{min-height:0;padding-bottom:16px}
.home-round7-grid,.operations-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--module-gap);margin-bottom:var(--module-gap)}
.home-quality-panel.is-clean{border-color:color-mix(in srgb,var(--success) 35%,var(--line))}.home-quality-panel.has-attention{border-color:color-mix(in srgb,var(--warning) 45%,var(--line))}
.monthly-comparison-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.monthly-comparison-grid>div{display:grid;gap:4px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.monthly-comparison-grid span,.monthly-comparison-grid small{color:var(--muted);font-size:var(--font-xs)}.monthly-comparison-grid strong{font-size:var(--font-lg)}
.home-widget-setting-advanced{grid-template-columns:minmax(150px,1fr) 90px 130px}.home-widget-setting-advanced>label:nth-child(2),.home-widget-setting-advanced>label:nth-child(3){display:grid;gap:5px;color:var(--muted);font-size:var(--font-xs)}.home-widget-metrics{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:7px 16px;padding:8px 12px;border-radius:var(--radius-sm);background:var(--surface-2)}.home-widget-metrics label{display:flex!important;grid-template-columns:none!important;gap:7px!important;align-items:center;color:var(--text)!important}.settings-inline-action{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:8px}
.saved-filter-bar{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 16px;padding:11px 13px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}.saved-filter-bar>div,.saved-filter-form,.saved-filter-chip{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.saved-filter-bar small{color:var(--muted)}.saved-filter-chip{padding:5px 8px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line)}.saved-filter-chip form{display:inline-flex}.saved-filter-chip .text-button{min-height:0;padding:0 2px}.saved-filter-form input{min-width:180px}
.report-export-config{align-items:flex-start}.report-export-config form{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.report-export-config form>span{color:var(--muted);font-size:var(--font-xs)}.report-export-config label{display:flex;align-items:center;gap:5px;font-size:var(--font-xs)}
.operations-summary-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.operations-grid>.panel{min-width:0}.operations-grid .compact-row{gap:12px}.operations-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.operations-actions-grid form{display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding:15px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface2)}.operations-actions-grid form .secondary-action{width:100%;justify-content:center}.operations-actions-grid form small{color:var(--muted);line-height:1.5}.manual-operations-panel .compact-notice{margin:16px 0 0}
.continuity-panel{margin-bottom:var(--module-gap)}.continuity-settings-form{padding:16px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface2);margin-bottom:18px}.continuity-settings-form .form-grid{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:12px}.continuity-settings-form label>span{display:block;margin-bottom:7px;font-size:.82rem;font-weight:700;color:var(--muted)}.continuity-settings-form input[type=number]{width:100%}.continuity-settings-form .check-row{display:flex;align-items:center;gap:10px;margin:14px 0}.continuity-settings-form .check-row span{margin:0;color:var(--text)}.continuity-report-table{margin-top:10px}
@media(max-width:900px){.home-round7-grid,.operations-grid{grid-template-columns:1fr}.operations-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.operations-actions-grid{grid-template-columns:1fr}.home-widget-setting-advanced{grid-template-columns:minmax(120px,1fr) 84px 120px}.continuity-settings-form .form-grid{grid-template-columns:repeat(2,minmax(140px,1fr))}}
@media(max-width:620px){.monthly-comparison-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-widget-setting-advanced{grid-template-columns:1fr 1fr}.home-widget-setting-advanced>label:first-child,.home-widget-metrics{grid-column:1/-1}.settings-inline-action,.saved-filter-bar,.saved-filter-form,.report-export-config form{align-items:stretch;flex-direction:column}.saved-filter-form input{min-width:0;width:100%}.operations-summary-grid,.continuity-settings-form .form-grid{grid-template-columns:1fr}}
.recovery-code-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.55rem;margin-top:.8rem}.recovery-code-grid code{display:block;padding:.7rem;border:1px solid var(--border);border-radius:.6rem;text-align:center;letter-spacing:.08em;background:var(--surface2)}.security-setup{display:grid;gap:1rem;max-width:58rem}.security-setup>label,.two-factor-manual>label{display:grid;gap:.4rem}.two-factor-enrollment{display:grid;grid-template-columns:minmax(17rem,.8fr) minmax(18rem,1.2fr);gap:1.25rem;align-items:stretch}.two-factor-qr,.two-factor-manual{min-width:0;padding:1.1rem;border:1px solid var(--border);border-radius:14px;background:var(--surface2)}.two-factor-qr{display:flex;flex-direction:column;align-items:center;text-align:center}.two-factor-qr .eyebrow,.two-factor-manual .eyebrow{align-self:flex-start}.two-factor-qr-frame{display:grid;place-items:center;width:min(280px,100%);aspect-ratio:1;margin:.8rem auto;background:#fff;border:10px solid #fff;border-radius:14px;box-shadow:0 8px 24px rgba(0,0,0,.12);overflow:hidden}.two-factor-qr-frame img{display:block;width:100%;height:100%;object-fit:contain}.two-factor-qr p{margin:.2rem 0 .9rem}.two-factor-open-app{width:100%}.two-factor-manual p{margin:.8rem 0 1rem}.two-factor-manual details{margin-top:.8rem}.two-factor-confirm-form{max-width:30rem}.break-all{display:block;overflow-wrap:anywhere;word-break:break-all;padding:.75rem;margin-top:.6rem}.settings-security-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}.settings-security-actions form{padding:1rem;border:1px solid var(--border);border-radius:12px}.account-danger-zone{margin-top:var(--module-gap);border-color:color-mix(in srgb,var(--danger) 42%,var(--border))}.danger-action{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.7rem 1rem;border:1px solid var(--danger);border-radius:.7rem;background:transparent;color:var(--danger);font:inherit;font-weight:700;cursor:pointer}.danger-action:hover{background:color-mix(in srgb,var(--danger) 12%,transparent)}@media(max-width:720px){.settings-security-actions,.two-factor-enrollment{grid-template-columns:1fr}.recovery-code-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.two-factor-qr-frame{width:min(250px,100%)}.two-factor-open-app{display:inline-flex}}

/* Rodada 16 · inteligência integrada, explicável e personalizável */
.insight-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:var(--module-gap);margin-bottom:var(--module-gap)}.insight-dashboard-grid>.panel{margin:0;min-width:0}.insight-comparison-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.insight-comparison-item{display:grid;gap:5px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface2)}.insight-comparison-item small,.insight-comparison-item span{color:var(--muted);font-size:var(--font-xs)}.insight-comparison-item strong{font-size:var(--font-lg)}.insight-comparison-item span.positive{color:var(--success)}.insight-comparison-item span.negative{color:var(--danger)}.insight-goal-list{display:grid;gap:8px}.insight-goal-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);color:inherit;text-decoration:none;background:var(--surface2)}.insight-goal-row>div{display:grid;gap:3px;min-width:0}.insight-goal-row small,.insight-goal-row span{color:var(--muted);font-size:var(--font-xs)}.insight-goal-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.insight-goal-row b{color:var(--accent)}.insight-preferences-panel{margin-bottom:var(--module-gap)}.insight-preferences-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;list-style:none}.insight-preferences-panel>summary::-webkit-details-marker{display:none}.insight-preferences-panel>summary>span:first-child{display:grid;gap:5px}.insight-preferences-panel>summary>span:last-child{color:var(--muted);font-size:var(--font-xs)}.insight-preferences-form{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:16px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.insight-preferences-form fieldset{display:grid;align-content:start;gap:10px;min-width:0;margin:0;padding:14px;border:1px solid var(--line);border-radius:var(--radius-sm)}.insight-preferences-form legend{padding:0 6px;font-weight:700}.insight-preferences-form label{display:flex;align-items:center;gap:8px}.insight-preferences-form label:has(select){align-items:flex-start;flex-direction:column}.insight-preferences-form select{width:100%}.insight-domain-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.insight-preferences-form .form-actions{grid-column:1/-1;display:flex;justify-content:flex-end}.insight-data-explanation{margin-top:14px;padding:11px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface2)}.insight-data-explanation summary{cursor:pointer;font-weight:700}.insight-data-explanation p{font-size:var(--font-sm)}.insight-data-explanation dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:10px 0 0}.insight-data-explanation dl div{display:flex;justify-content:space-between;gap:10px;padding-top:7px;border-top:1px solid var(--line)}.insight-data-explanation :is(dt,dd){margin:0;font-size:var(--font-xs)}.insight-data-explanation dt{color:var(--muted)}.insight-feedback-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:12px}.insight-feedback-row>span{margin-right:auto;color:var(--muted);font-size:var(--font-xs)}.insight-feedback-row form{display:inline-flex}.feedback-button{min-height:32px;padding:5px 9px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--muted);font:inherit;font-size:var(--font-xs);cursor:pointer}.feedback-button.is-selected,.feedback-button:hover{border-color:var(--accent-orange-border);background:var(--accent-orange-soft);color:var(--text)}
@media(max-width:1100px){.insight-dashboard-grid{grid-template-columns:1fr}.insight-comparison-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.insight-preferences-form{grid-template-columns:1fr 1fr}.insight-preferences-form fieldset:last-of-type{grid-column:1/-1}}
@media(max-width:620px){.insight-comparison-grid,.insight-domain-options,.insight-data-explanation dl,.insight-preferences-form{grid-template-columns:1fr}.insight-preferences-form fieldset:last-of-type{grid-column:auto}.insight-preferences-panel>summary{align-items:flex-start;flex-direction:column}.insight-goal-row{align-items:flex-start}}

/* Rodada 17 · entrega inteligente de notificações */
.notification-delivery-panel{margin-bottom:var(--module-gap);scroll-margin-top:90px}.notification-delivery-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer;list-style:none}.notification-delivery-panel>summary::-webkit-details-marker{display:none}.notification-delivery-panel>summary>span:first-child{display:grid;gap:5px}.notification-delivery-content{display:grid;gap:18px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.notification-channel-status{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.notification-channel-status article{display:grid;gap:6px;padding:13px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface2)}.notification-channel-status article span,.notification-channel-status article small{color:var(--muted);font-size:var(--font-xs)}.notification-preferences-form{display:grid;grid-template-columns:1.2fr repeat(5,minmax(130px,1fr));gap:12px;align-items:end}.notification-preferences-form>fieldset{display:grid;gap:9px;align-self:stretch;margin:0;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm)}.notification-preferences-form>fieldset label{display:flex;align-items:center;gap:7px}.notification-preferences-form>label{display:grid;gap:6px;color:var(--muted);font-size:var(--font-xs)}.notification-preferences-form>label :is(select,input){width:100%}.notification-preferences-form .form-actions{grid-column:1/-1;display:flex;justify-content:flex-end}.notification-verification-box{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px;border:1px solid var(--warning);border-radius:var(--radius-sm);background:var(--warning-soft)}.notification-verification-box>div{margin-right:auto}.notification-verification-box p{margin:4px 0 0;color:var(--muted);font-size:var(--font-xs)}.notification-verification-box form{display:flex;align-items:center;gap:8px}.notification-verification-box input{width:170px}.notification-scope-shortcuts{overflow-x:auto}
.push-device-box{border-color:var(--line);background:var(--surface2)}.push-device-list{display:grid;gap:8px}.push-device-list>strong{font-size:var(--font-sm)}.push-device-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border:1px solid var(--line);border-radius:var(--radius-sm)}.push-device-list article div{display:grid;gap:3px}.push-device-list article small{color:var(--muted)}
@media(max-width:1180px){.notification-channel-status{grid-template-columns:repeat(2,minmax(0,1fr))}.notification-preferences-form{grid-template-columns:repeat(3,minmax(0,1fr))}.notification-preferences-form>fieldset{grid-column:1/-1}}
@media(max-width:620px){.notification-channel-status,.notification-preferences-form{grid-template-columns:1fr}.notification-preferences-form>fieldset{grid-column:auto}.notification-delivery-panel>summary,.notification-verification-box{align-items:flex-start;flex-direction:column}.notification-verification-box form,.notification-verification-box input,.notification-verification-box button{width:100%}}

/* Rodada 18 · automações pessoais seguras e explicáveis */
.automation-center{margin-bottom:var(--module-gap);scroll-margin-top:90px}.automation-summary{grid-template-columns:repeat(4,minmax(0,1fr));margin:16px 0}.automation-proposal-list,.automation-rule-list,.automation-history{display:grid;gap:10px}.automation-proposal-list>article,.automation-rule-list>article,.automation-history>article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface2)}.automation-proposal-list article>div:first-child,.automation-rule-list article>div:first-child,.automation-history article>div:first-child{min-width:0}.automation-proposal-list h3,.automation-rule-list h3{margin:4px 0}.automation-proposal-list p,.automation-rule-list p,.automation-history p{margin:4px 0;color:var(--muted);font-size:var(--font-sm)}.automation-proposal-list small,.automation-rule-list small,.automation-history small{color:var(--muted);font-size:var(--font-xs)}.automation-rule-list article.is-muted{opacity:.58}.automation-history>article>div:last-child{display:grid;justify-items:end;gap:6px;flex:0 0 auto}.automation-grid{align-items:start}.automation-grid>.panel{margin:0}.automation-grid #automation-rules{scroll-margin-top:90px}
@media(max-width:900px){.automation-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.automation-summary{grid-template-columns:1fr}.automation-proposal-list>article,.automation-rule-list>article,.automation-history>article{align-items:stretch;flex-direction:column}.automation-proposal-list .item-actions,.automation-rule-list .item-actions{width:100%}.automation-proposal-list .item-actions form,.automation-proposal-list .item-actions button{width:100%}.automation-history>article>div:last-child{justify-items:start}}

/* Rodada 20 · qualidade e conciliação dos dados */
.quality-tags{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;margin-bottom:.45rem}.quality-preview .notice{margin-top:1rem}.quality-preview .stat-card p{margin:.45rem 0 0;line-height:1.5}.quality-preview .form-actions{display:flex;justify-content:flex-end;align-items:center;gap:.75rem;margin-top:1rem}.quality-preview .form-actions form{margin:0}

/* Rodada 32 · navegação e configurações por objetivo */
.sidebar-collapse-toggle{align-self:flex-end;display:grid;place-items:center;min-width:44px;min-height:44px;margin-bottom:8px;border:1px solid #303846;border-radius:9px;background:transparent;color:#c6ceda;cursor:pointer}
.sidebar-collapse-toggle:hover{background:#202732;color:#fff}
@media(min-width:761px){
html.sidebar-collapsed{--sidebar-width:76px}
html.sidebar-collapsed[data-theme] body .sidebar{padding:12px 8px}
html.sidebar-collapsed .sidebar-collapse-toggle{align-self:center}
html.sidebar-collapsed .sidebar-collapse-toggle svg{transform:rotate(180deg)}
html.sidebar-collapsed[data-theme] body .sidebar .brand{justify-content:center;padding:0 0 12px}
html.sidebar-collapsed .sidebar .brand>div,html.sidebar-collapsed .sidebar .user-meta,html.sidebar-collapsed .sidebar .sidebar-shortcuts-title,html.sidebar-collapsed .sidebar .sidebar-shortcuts a>span,html.sidebar-collapsed .sidebar .module-hub-link>span,html.sidebar-collapsed .sidebar .sidebar-group>.nav-link{display:none!important}
html.sidebar-collapsed[data-theme] body .sidebar .sidebar-group>summary::after,html.sidebar-collapsed[data-theme] body .sidebar nav>.nav-link::after{display:none}
html.sidebar-collapsed[data-theme] body .sidebar .module-hub-link,html.sidebar-collapsed[data-theme] body .sidebar .sidebar-shortcuts a,html.sidebar-collapsed[data-theme] body .sidebar nav>.nav-link{justify-content:center;padding:10px 0;gap:0;min-height:44px}
html.sidebar-collapsed[data-theme] body .sidebar nav>.nav-link{font-size:0}
html.sidebar-collapsed[data-theme] body .sidebar .sidebar-user{flex-direction:column;gap:8px;padding:10px 0 0}
}
@media(max-width:760px){.sidebar-collapse-toggle{display:none}}
html[data-theme] body .sidebar .sidebar-group>summary.nav-label:has(.module-hub-link){padding:0;gap:0}
html[data-theme] body .sidebar .module-hub-link{display:flex;align-items:center;gap:11px;flex:1;min-width:0;min-height:44px;padding:10px 0 10px 11px;color:inherit;text-decoration:none;border-radius:8px}
html[data-theme] body .sidebar .sidebar-group>summary.nav-label::after{margin:0;min-width:44px;min-height:44px;mask-size:14px;-webkit-mask-size:14px}
html[data-theme] body .sidebar .module-hub-link[aria-current]{color:var(--nav-accent-text)}
html[data-theme] body .module-hub-section{margin:24px 0}
html[data-theme] body .module-hub-section h2{font-size:17px;margin:0 0 12px}
html[data-theme] body .module-hub-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:14px}
html[data-theme] body .module-hub-card{display:flex;align-items:center;gap:14px;min-height:112px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--text);text-decoration:none}
html[data-theme] body .module-hub-card:hover{background:var(--surface2);border-color:var(--accent)}
html[data-theme] body .module-hub-card-icon{width:26px;height:26px;flex:0 0 26px;color:var(--accent)}
html[data-theme] body .module-hub-card strong{display:block;font-size:15px}
html[data-theme] body .module-hub-card small{display:block;margin-top:6px;color:var(--muted);line-height:1.5}
html[data-theme] body .module-hub-arrow{margin-left:auto;flex-shrink:0}
/* O menu não deve herdar o formato de cartão dos details do conteúdo. */
html[data-theme] body .sidebar details.sidebar-group{margin:3px 0;padding:0;border:0;border-radius:10px;background:transparent;overflow:visible}
html[data-theme] body .sidebar .sidebar-group>summary.nav-label{display:flex;justify-content:flex-start;gap:11px;min-height:44px;margin:0;padding:10px 11px;border:0;border-radius:10px;background:transparent;color:#c6ceda;font-size:13px;font-weight:650;letter-spacing:0;text-transform:none;line-height:1.4}
html[data-theme] body .sidebar .module-nav-icon{display:block;flex:0 0 21px;width:21px;height:21px;color:#aebbd0}
html[data-theme] body .sidebar .sidebar-group>summary.nav-label::after{content:"";margin-left:auto;width:14px;height:14px;flex-basis:14px;background:#aebbd0}
html[data-theme] body .sidebar .sidebar-group[open]>summary.nav-label,html[data-theme] body .sidebar .sidebar-group>summary.nav-label:hover{background:#202732;color:#fff}
html[data-theme] body .sidebar .sidebar-group:has(.nav-link.active)>summary.nav-label{color:var(--nav-accent-text);background:var(--nav-accent-soft)}
html[data-theme] body .sidebar .sidebar-group:has(.nav-link.active) .module-nav-icon{color:var(--nav-accent-text)}
html[data-theme] body .sidebar .sidebar-group>.nav-link{margin-left:20px;padding-left:13px;border-left:1px solid #3a4351;border-radius:0 8px 8px 0;font-size:12px}
.daily-flow-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 18px}
.daily-flow-actions a,.daily-flow-actions button{min-height:44px;display:inline-flex;align-items:center}
#meal-records,#meal-plan,#meal-recent,#finish-workout{scroll-margin-top:90px}
@media(max-width:600px){.daily-flow-actions>a,.daily-flow-actions>button{flex:1 1 45%;justify-content:center}}
html[data-theme] body .sidebar-shortcuts{display:grid;grid-template-columns:minmax(0,1fr);gap:2px;margin:0 0 12px;padding:0 0 12px;border-bottom:1px solid #303846}
html[data-theme] body .sidebar-shortcuts-title{padding:4px 11px 6px;color:#a5afbe;font-size:10px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}
html[data-theme] body .sidebar-shortcuts a{display:flex;align-items:center;gap:11px;min-height:44px;padding:8px 11px;border:1px solid transparent;border-radius:9px;color:#c6ceda;font-size:12px;font-weight:560;line-height:1.4;text-decoration:none}
html[data-theme] body .sidebar-shortcuts a svg{flex:0 0 19px;width:19px;height:19px;color:#aebbd0}
html[data-theme] body .sidebar-shortcuts a:hover{background:#202732;color:#fff;border-color:#303846}
html[data-theme] body .sidebar-shortcuts a[aria-current="page"]{background:var(--nav-accent-soft);color:var(--nav-accent-text);border-color:var(--nav-accent-border)}
html[data-theme] body .sidebar-shortcuts a[aria-current="page"] svg{color:var(--nav-accent-text)}
.sidebar-group{border-bottom:1px solid var(--line);padding:4px 0}
.sidebar-group>summary.nav-label{display:flex;align-items:center;justify-content:space-between;min-height:44px;margin:0;cursor:pointer;list-style:none}
.sidebar-group>summary::-webkit-details-marker{display:none}
.sidebar-group>summary::after{content:'+';font-size:18px}
.sidebar-group[open]>summary::after{content:'−'}
.sidebar-group>summary:focus-visible,.settings-navigation a:focus-visible{outline:2px solid var(--text);outline-offset:-2px}
.settings-navigation{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.settings-navigation a{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border:1px solid var(--line);border-radius:10px;color:var(--text);text-decoration:none}
.settings-navigation a[aria-current]{background:var(--surface2);border-color:var(--text);font-weight:800}
.settings-organized .settings-grid{display:contents}
.settings-organized [data-settings-group]{margin-bottom:20px;scroll-margin-top:90px}
.settings-organized [data-settings-group][hidden]{display:none!important}
@media(max-width:600px){.settings-navigation a{flex:1 1 45%;justify-content:center}}

/* Rodada 28 · portabilidade e recuperação pessoal */
.portability-panel details{padding:.85rem 0;border-top:1px solid var(--line)}.portability-panel summary{cursor:pointer;font-weight:800}.portability-form{margin-top:1rem}.portability-modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;padding:1rem;border:1px solid var(--line);border-radius:var(--radius-sm)}.portability-integrity{margin-bottom:var(--module-gap)}.portability-actions{display:flex;align-items:flex-start;justify-content:flex-end;gap:1rem;margin-top:var(--module-gap)}.portability-confirm{max-width:760px;grid-template-columns:repeat(2,minmax(0,1fr))}.portability-confirm button{align-self:end}@media(max-width:720px){.portability-modules,.portability-confirm{grid-template-columns:1fr}.portability-actions{align-items:stretch;flex-direction:column}.portability-actions form,.portability-actions button{width:100%}}

/* Rodada 40 · homologação real de UX e operação */
.ux-homologation-panel{margin-bottom:18px}.homologation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.homologation-card{border:1px solid var(--line);border-radius:14px;padding:15px;background:var(--surface-soft);display:flex;flex-direction:column;gap:12px;min-width:0}.homologation-card.is-failed{border-color:color-mix(in srgb,var(--danger) 55%,var(--line))}.homologation-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.homologation-card-head>div{display:flex;flex-direction:column;gap:3px}.homologation-card-head small,.homologation-card p,.homologation-form>small,.homologation-evidence small{color:var(--text-muted)}.homologation-card p{font-size:.82rem;line-height:1.45;margin:0}.homologation-form{display:grid;gap:9px;margin-top:auto}.homologation-form label{display:grid;gap:5px;font-size:.78rem}.homologation-form select,.homologation-form textarea{width:100%;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);padding:9px}.homologation-form textarea{resize:vertical}.homologation-form button{justify-self:start}.homologation-evidence{display:grid;gap:5px;margin-top:auto;padding:11px;border-radius:10px;background:var(--surface);font-size:.8rem}.homologation-evidence span{line-height:1.4}@media(max-width:1100px){.homologation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.homologation-grid{grid-template-columns:1fr}}

/* source: modules/quick-capture.css */
.quick-capture-card{width:min(820px,100%)}
.quick-capture-intro{margin:5px 0 0;color:var(--muted);font-size:.78rem}
.quick-capture-command{display:grid;gap:12px}
.quick-capture-command>label,.quick-capture-notes{display:grid;gap:6px;color:var(--muted);font-size:.72rem;font-weight:700}
.quick-capture-command textarea{min-height:78px;font-size:1rem}
.quick-capture-examples,.quick-capture-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.quick-capture-examples button{border:1px solid var(--line);border-radius:999px;background:var(--surface2);color:var(--muted);padding:7px 10px;font-size:.7rem}
.quick-capture-examples button:hover{border-color:var(--accent-orange-strong);color:var(--text)}
.quick-capture-tools [data-quick-preview]{margin-left:auto}
.quick-capture-file{margin:0;padding:9px 11px;border-radius:10px;background:var(--surface2);color:var(--muted);font-size:.72rem}
.quick-capture-feedback{margin:12px 0 0;padding:10px 12px;border-radius:10px;background:var(--info-soft,#e9f2ff);color:var(--text);font-size:.76rem}
.quick-capture-feedback:empty,.quick-capture-feedback[hidden]{display:none}
.quick-capture-feedback.error{background:var(--danger-soft,#fff0f1);color:var(--danger)}
.quick-capture-review{display:grid;gap:14px;margin-top:4px}
.quick-capture-review-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,230px);gap:14px;align-items:end;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface2)}
.quick-capture-review-head>div{display:grid;gap:4px}.quick-capture-review-head strong{font-size:1rem;line-height:1.35}.quick-capture-review-head small{color:var(--muted)}
.quick-capture-review-head>label{display:grid;gap:5px;font-size:.7rem;color:var(--muted);font-weight:700}
.quick-capture-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.quick-capture-fields>label{display:grid;gap:6px;color:var(--muted);font-size:.72rem;font-weight:700}.quick-capture-fields>.span-2{grid-column:1/-1}
.quick-capture-review .notice{margin:0}.quick-capture-review .notice p{margin:0}.quick-capture-review .notice p+p{margin-top:5px}
.quick-capture-recents{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.quick-capture-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px}.quick-capture-section-head small{color:var(--muted);font-size:.7rem}
.quick-capture-recent{display:grid;grid-template-columns:minmax(0,1fr) 40px;gap:7px;align-items:center}
.quick-capture-recent+.quick-capture-recent{margin-top:6px}
.quick-capture-reuse{display:grid;text-align:left;gap:3px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--text);padding:9px 11px;min-width:0}
.quick-capture-reuse strong,.quick-capture-reuse small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quick-capture-reuse small{color:var(--muted);font-size:.67rem}
.quick-capture-star{width:40px;height:40px;border:1px solid var(--line);border-radius:11px;background:var(--surface2);color:var(--accent-orange-strong);font-size:1rem}
.quick-capture-full-forms{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}.quick-capture-full-forms>summary{cursor:pointer;color:var(--muted);font-size:.76rem;font-weight:700}.quick-capture-full-forms .quick-add-grid{margin-top:10px}
@media(max-width:640px){.quick-capture-review-head,.quick-capture-fields{grid-template-columns:minmax(0,1fr)}.quick-capture-fields>.span-2{grid-column:auto}.quick-capture-tools>*{flex:1 1 100%}.quick-capture-tools [data-quick-preview]{margin-left:0}.quick-capture-section-head{display:grid}.quick-capture-card{max-height:94dvh}.quick-capture-examples{overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px}.quick-capture-examples button{white-space:nowrap}.quick-capture-review .modal-actions{display:grid;grid-template-columns:1fr 1fr}.quick-capture-review .modal-actions button{width:100%}}

/* source: modules/contingency.css */
.contingency-head{align-items:flex-start}.contingency-safety{margin-bottom:18px}.contingency-baseline{margin-bottom:18px}.contingency-form{display:grid;gap:22px}.contingency-general{display:grid;grid-template-columns:2fr 1fr 1.25fr;gap:12px}.contingency-general label,.contingency-input-grid label{display:grid;gap:7px}.contingency-general small,.contingency-input-grid small{color:var(--text-muted);line-height:1.45}.contingency-input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.contingency-input-grid fieldset{display:grid;align-content:start;gap:13px;margin:0;padding:18px;border:1px solid var(--border);border-radius:var(--radius-medium);background:var(--surface-2)}.contingency-input-grid legend{padding:0 8px;color:var(--accent);font-weight:800}.contingency-input-grid .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.contingency-submit{display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid var(--border);padding-top:18px}.contingency-submit p{margin:0;color:var(--text-muted);max-width:760px}.contingency-result{display:grid;gap:18px;margin-top:20px}.contingency-result-summary{margin:0}.contingency-actions{display:grid;gap:10px}.contingency-action{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--border);border-left:4px solid var(--info);border-radius:var(--radius-medium);padding:15px 17px;background:var(--surface-2)}.contingency-action.is-critical{border-left-color:var(--danger)}.contingency-action.is-attention{border-left-color:var(--warning)}.contingency-action.is-stable{border-left-color:var(--success)}.contingency-action span{font-size:.73rem;font-weight:800;letter-spacing:.08em;color:var(--text-muted)}.contingency-action h3{margin:4px 0}.contingency-action p{margin:0;color:var(--text-muted)}.contingency-action .secondary-action{flex:0 0 auto}.contingency-section{margin:0;padding:0;overflow:hidden}.contingency-section>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;list-style:none;padding:18px 20px;background:var(--surface-2)}.contingency-section>summary::-webkit-details-marker{display:none}.contingency-section>summary:after{content:'⌄';color:var(--text-muted);font-size:1.1rem;transition:transform .2s}.contingency-section[open]>summary:after{transform:rotate(180deg)}.contingency-section>summary>span{display:grid;gap:3px}.contingency-section>summary strong{font-size:1rem}.contingency-section>summary small{margin-left:auto;color:var(--text-muted)}.contingency-section>.table-wrap,.contingency-section>p,.contingency-section>h3,.contingency-section>.contingency-stat-list,.contingency-section>.notice,.contingency-section>.contingency-capacity-bar,.contingency-section>.contingency-deferrals,.contingency-section>.contingency-goals{margin-left:20px;margin-right:20px}.contingency-section>.table-wrap,.contingency-section>.contingency-stat-list,.contingency-section>.contingency-capacity-bar,.contingency-section>.contingency-goals{margin-top:18px}.contingency-section>:last-child{margin-bottom:20px}.contingency-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.contingency-stat-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--radius-medium);overflow:hidden}.contingency-stat-list>div{display:grid;gap:4px;padding:13px;background:var(--surface)}.contingency-stat-list span{color:var(--text-muted);font-size:.82rem}.contingency-capacity-bar{height:9px;border-radius:999px;background:var(--surface-muted);overflow:hidden}.contingency-capacity-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--success),var(--accent),var(--danger))}.contingency-deferrals,.contingency-goals{display:grid;gap:8px}.contingency-deferrals article,.contingency-goals article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-small);background:var(--surface-2)}.contingency-deferrals article>div,.contingency-goals article>div{display:grid;gap:3px}.contingency-deferrals small,.contingency-goals small{color:var(--text-muted)}.contingency-deferrals span{font-size:.78rem;color:var(--warning);font-weight:800}.contingency-goals article.is-attention,.contingency-goals article.is-review{border-left:3px solid var(--warning)}.contingency-goals p{margin:3px 0 0;color:var(--text-muted)}.contingency-disclaimer{text-align:center;color:var(--text-muted);font-size:.84rem}.contingency-method{margin-top:18px}.contingency-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.contingency-method-grid>div{padding:15px;border:1px solid var(--border);border-radius:var(--radius-medium);background:var(--surface-2)}.contingency-method-grid p{margin:6px 0 0;color:var(--text-muted);line-height:1.5}
@media(max-width:900px){.contingency-general{grid-template-columns:1fr 1fr}.contingency-general label:first-child{grid-column:1/-1}.contingency-input-grid,.contingency-detail-grid,.contingency-method-grid{grid-template-columns:1fr}}
@media(max-width:640px){.contingency-general,.contingency-input-grid .form-grid,.contingency-stat-list{grid-template-columns:1fr}.contingency-general label:first-child{grid-column:auto}.contingency-submit,.contingency-action{align-items:stretch;flex-direction:column}.contingency-submit button,.contingency-action .secondary-action{width:100%;justify-content:center}.contingency-section>summary{align-items:flex-start}.contingency-section>summary small{display:none}.contingency-deferrals article,.contingency-goals article{align-items:flex-start;flex-direction:column}.contingency-goals .text-link{min-height:42px;display:flex;align-items:center}}

/* source: modules/consistency.css */
.consistency-head{align-items:flex-end}.consistency-principle{display:flex;gap:14px;align-items:flex-start;margin-bottom:16px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--accent) 8%,var(--surface));font-size:12px;line-height:1.55}.consistency-principle strong{white-space:nowrap}.consistency-principle span{color:var(--muted)}.consistency-summary{margin-bottom:16px}.consistency-domains,.consistency-history,.consistency-method{margin-bottom:16px}.consistency-domains .panel-head>small,.consistency-history .panel-head>small{color:var(--muted);font-size:var(--font-xs)}.consistency-domain-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}.consistency-domain-grid article{display:flex;min-width:0;min-height:155px;flex-direction:column;padding:15px;border:1px solid var(--line);border-radius:14px;background:var(--surface2)}.consistency-domain-grid article>div{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.consistency-domain-grid article>div>span{color:var(--muted);font-size:12px;font-weight:700}.consistency-domain-grid article>strong{margin-top:20px;font-size:22px;letter-spacing:-.03em}.consistency-domain-grid article>small{margin-top:5px;color:var(--muted);font-size:var(--font-xs);line-height:1.45}.consistency-domain-grid article>a{margin-top:auto;padding-top:14px;color:var(--text);font-size:var(--font-xs);font-weight:700;text-decoration:none}.consistency-trend{display:inline-flex;width:max-content;max-width:100%;padding:4px 7px;border-radius:999px;background:var(--surface);color:var(--muted);font-size:10px;font-weight:750;white-space:nowrap}.consistency-trend.higher{background:color-mix(in srgb,var(--success,#2e8b57) 15%,var(--surface));color:var(--success,#28704f)}.consistency-trend.lower,.consistency-trend.paused{background:color-mix(in srgb,var(--warning,#c58a2f) 17%,var(--surface));color:var(--warning-text,#8a621e)}.consistency-trend.stable{background:color-mix(in srgb,#4f7fb5 14%,var(--surface));color:var(--info-text,#426c8e)}.consistency-history{padding:0}.consistency-history .panel-head{padding:22px 22px 0}.consistency-table{min-width:1050px}.consistency-table td{vertical-align:top}.consistency-table .current-week td{background:color-mix(in srgb,var(--accent) 5%,var(--surface))}.consistency-load{display:inline-flex;padding:5px 8px;border-radius:999px;background:var(--surface2);font-size:var(--font-xs);font-weight:750;white-space:nowrap}.consistency-load.sustainable{background:color-mix(in srgb,var(--success,#2e8b57) 15%,var(--surface));color:var(--success,#28704f)}.consistency-load.overloaded{background:color-mix(in srgb,var(--danger,#b34b4b) 14%,var(--surface));color:var(--danger,#a33)}.consistency-load.current{background:color-mix(in srgb,#4f7fb5 14%,var(--surface));color:var(--info-text,#426c8e)}.consistency-bottom{margin-bottom:16px}.consistency-bottom>.panel{min-height:0}.consistency-trend-list,.consistency-signal-list{display:grid;gap:8px;margin-top:16px}.consistency-trend-list>a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:12px;color:inherit;text-decoration:none}.consistency-trend-list a>div{display:grid;gap:4px;min-width:0}.consistency-trend-list strong,.consistency-signal-list strong{font-size:12px}.consistency-trend-list small,.consistency-signal-list span{color:var(--muted);font-size:var(--font-xs);line-height:1.5}.consistency-signal-list>a{display:grid;gap:5px;padding:13px;border-left:3px solid var(--line);border-radius:0 11px 11px 0;background:var(--surface2);color:inherit;text-decoration:none}.consistency-signal-list>a.attention{border-color:var(--warning,#c58a2f)}.consistency-signal-list>a.positive{border-color:var(--success,#2e8b57)}.consistency-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.consistency-method-grid p{margin:0;padding:14px;border:1px solid var(--line);border-radius:12px;color:var(--muted);font-size:12px;line-height:1.6}.consistency-method-grid strong{color:var(--text)}
@media(max-width:1100px){.consistency-domain-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.consistency-method-grid{grid-template-columns:1fr}}
@media(max-width:720px){.consistency-principle{flex-direction:column}.consistency-principle strong{white-space:normal}.consistency-domain-grid{grid-template-columns:1fr}.consistency-domain-grid article{min-height:145px}.consistency-head{align-items:flex-start}.consistency-bottom{grid-template-columns:1fr}.consistency-trend-list>a{grid-template-columns:1fr auto}.consistency-trend-list>a>.consistency-trend{grid-column:1/-1}.consistency-history .panel-head{padding:18px 16px 0}}

/* source: modules/notes.css */
.notes-workspace{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);min-height:calc(100dvh - 210px);border:1px solid var(--border);border-radius:var(--radius-lg,18px);background:var(--surface);overflow:hidden}.notes-list-panel{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--border);background:var(--surface2)}.notes-search{padding:14px;border-bottom:1px solid var(--border)}.notes-list{display:flex;flex-direction:column;overflow:auto}.notes-list-item{display:grid;gap:4px;padding:14px 16px;border-bottom:1px solid var(--border);color:var(--text);text-decoration:none}.notes-list-item:hover{background:var(--field-hover)}.notes-list-item.active{background:var(--accent-soft);box-shadow:inset 3px 0 var(--accent)}.notes-list-item strong,.notes-list-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notes-list-item span,.notes-list-item time{color:var(--muted);font-size:.78rem}.notes-list-item[hidden]{display:none}.notes-editor-panel{min-width:0}.notes-editor{display:grid;grid-template-rows:auto auto minmax(380px,1fr) auto;height:100%;min-height:0}.notes-editor-toolbar{display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:8px 18px;border-bottom:1px solid var(--border)}.notes-save-state{color:var(--muted);font-size:.82rem;font-weight:700}.notes-save-state.saving{color:var(--warning)}.notes-save-state.saved{color:var(--success)}.notes-save-state.error{color:var(--danger)}.notes-title,.notes-content{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.notes-title{min-height:68px!important;padding:18px 24px!important;font-family:var(--font-display,inherit)!important;font-size:clamp(1.35rem,2vw,2rem)!important;font-weight:800!important}.notes-content{min-height:380px!important;padding:8px 24px 28px!important;resize:none!important;line-height:1.75!important}.notes-editor footer{display:flex;justify-content:space-between;gap:16px;padding:10px 18px;border-top:1px solid var(--border);color:var(--muted);font-size:.75rem}.notes-welcome{min-height:100%;display:grid;place-content:center;justify-items:center}.notes-welcome form{margin-top:12px}.shared-files-panel{margin-top:20px;scroll-margin-top:20px}.shared-files-summary{display:grid;justify-items:end;color:var(--muted);font-size:.8rem}.shared-files-summary strong{color:var(--text);font-size:1rem}.shared-file-upload{display:grid;grid-template-columns:minmax(260px,1.2fr) minmax(220px,1fr) auto;gap:12px;align-items:end;padding:18px;border:1px dashed var(--border);border-radius:14px;background:var(--surface2)}.shared-file-picker{display:grid;gap:6px}.shared-file-picker>span{font-weight:800}.shared-file-picker input[type=file]{padding:9px}.shared-file-picker small{color:var(--muted)}.shared-files-tools{display:flex;justify-content:flex-end;margin-top:16px}.shared-files-tools label{width:min(360px,100%)}.shared-files-grid{display:grid;gap:10px;margin-top:16px}.shared-file-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface2)}.shared-file-card[hidden]{display:none}.shared-file-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--accent-soft);color:var(--accent);font-size:1.25rem;font-weight:900}.shared-file-copy{display:grid;gap:3px;min-width:0}.shared-file-copy strong,.shared-file-copy p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shared-file-copy p{margin:0;color:var(--muted);font-size:.85rem}.shared-file-copy small{color:var(--muted)}.shared-file-actions{display:flex;align-items:center;gap:8px}.shared-file-actions form{margin:0}@media(max-width:900px){.shared-file-upload{grid-template-columns:1fr 1fr}.shared-file-upload button{grid-column:1/-1;justify-self:end}}@media(max-width:760px){.notes-page-head{align-items:flex-start}.notes-workspace{grid-template-columns:1fr;min-height:auto}.notes-list-panel{max-height:240px;border-right:0;border-bottom:1px solid var(--border)}.notes-editor{min-height:65dvh}.notes-title{padding-inline:16px!important}.notes-content{padding-inline:16px!important}.notes-editor footer{align-items:flex-start;flex-direction:column;gap:3px}.shared-files-summary{justify-items:start}.shared-file-upload{grid-template-columns:1fr}.shared-file-upload button{grid-column:auto;width:100%}.shared-file-card{grid-template-columns:40px minmax(0,1fr)}.shared-file-icon{width:40px;height:40px}.shared-file-actions{grid-column:1/-1;flex-wrap:wrap;padding-top:4px}.shared-file-actions>a,.shared-file-actions form,.shared-file-actions button{flex:1}.shared-file-actions button{width:100%}}
.notes-editor .notes-editor-toolbar{gap:12px}.notes-editor-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.notes-editor-actions form{margin:0}@media(max-width:760px){.notes-editor .notes-editor-toolbar{align-items:flex-start;flex-direction:column}.notes-editor-actions{width:100%;justify-content:flex-start}.notes-editor-actions>button{flex:1}}
.notes-editor{display:flex;flex-direction:column}.notes-editor .notes-content{flex:1}.notes-recovery-panel{margin:12px 16px;padding:14px;border:1px solid var(--border);border-radius:12px;min-width:0;background:var(--surface2)}.notes-recovery-panel[hidden]{display:none}.notes-recovery-panel textarea{width:100%;min-height:160px;max-height:360px;resize:vertical;white-space:pre-wrap}.notes-recovery-panel .page-actions{flex-wrap:wrap}.notes-recovery-panel button{white-space:normal;overflow-wrap:normal}.notes-recovery-panel [data-note-history-list]{display:grid;gap:6px;margin-top:10px}.notes-recovery-panel summary{cursor:pointer}

/* source: modules/mobile-pwa.css */
.offline-banner{position:fixed;z-index:1400;top:0;left:50%;transform:translate(-50%,-120%);padding:9px 16px;border-radius:0 0 12px 12px;background:var(--warning,#f5b942);color:#201508;font-size:.82rem;font-weight:800;box-shadow:var(--shadow-lg);transition:transform .2s ease}.offline-banner.visible{transform:translate(-50%,0)}
.toast-region{position:fixed;z-index:10000;right:max(20px,env(safe-area-inset-right));top:calc(20px + env(safe-area-inset-top));display:grid;gap:10px;width:min(420px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;pointer-events:none;padding:4px}.app-toast{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--border);border-left:4px solid var(--info);border-radius:14px;background:var(--surface);color:var(--text);box-shadow:var(--shadow-lg);animation:toast-in .2s ease;pointer-events:auto}.app-toast-content{flex:1;min-width:0;overflow-wrap:anywhere;line-height:1.5}.app-toast.error{border-left-color:var(--danger)}.app-toast.success{border-left-color:var(--success)}.app-toast.warning{border-left-color:var(--warning)}.app-toast .app-toast-close{flex:0 0 32px;width:32px;min-height:32px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:24px;line-height:1;cursor:pointer}.app-toast-close:hover{background:var(--surface2);color:var(--text)}.app-toast-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes toast-in{from{opacity:0;transform:translateX(12px)}}
.app-toast.success{background:color-mix(in srgb,var(--success) 14%,var(--surface));border-color:var(--success);color:var(--success)}
@media(prefers-reduced-motion:reduce){.app-toast{animation:none}}
.pwa-install-button[hidden]{display:none!important}.mobile-bottom-nav{display:none}
.camera-capture-field{display:flex;align-items:center;justify-content:center;min-height:42px;padding:9px 13px;border:1px dashed var(--border-strong,var(--border));border-radius:10px;color:var(--text);font-weight:700;cursor:pointer}.camera-capture-field input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.camera-capture-field small{display:block;color:var(--muted);font-weight:500}.draft-restored-note{color:var(--warning);font-size:.78rem}
@media(max-width:760px){
  body{padding-bottom:calc(70px + env(safe-area-inset-bottom))}.content{padding-bottom:24px}.topbar{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.top-search span,.top-search kbd{display:none}.top-search{width:42px;min-width:42px;justify-content:center;padding:0}.pwa-install-button{padding:9px}.pwa-install-button span{display:none}
  .mobile-bottom-nav{position:fixed;z-index:1200;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(5,1fr);padding:7px max(7px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(7px,env(safe-area-inset-left));border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(16px);box-shadow:0 -8px 28px #0003}.mobile-bottom-nav a{display:grid;place-items:center;gap:2px;min-width:0;min-height:48px;padding:4px 2px;border-radius:10px;color:var(--muted);font-size:.66rem;font-weight:700;text-decoration:none}.mobile-bottom-nav a::before{font-size:1.1rem;line-height:1}.mobile-bottom-nav a.active{background:var(--accent-soft);color:var(--accent-strong,var(--accent))}.mobile-bottom-nav .nav-home::before{content:'⌂'}.mobile-bottom-nav .nav-money::before{content:'$'}.mobile-bottom-nav .nav-meal::before{content:'◒'}.mobile-bottom-nav .nav-workout::before{content:'↟'}.mobile-bottom-nav .nav-study::before{content:'▤'}
  body.layer-open .mobile-bottom-nav{display:none}
  .toast-region{right:12px;top:calc(12px + env(safe-area-inset-top));width:calc(100vw - 24px)}.offline-banner{width:100%;text-align:center;padding-top:calc(9px + env(safe-area-inset-top))}
  .modal{align-items:flex-end;padding:0}.modal-card,.modal-card.wide{width:100%;max-width:none;max-height:min(92dvh,920px);border-radius:20px 20px 0 0;padding-bottom:calc(18px + env(safe-area-inset-bottom))}.modal-head{position:sticky;z-index:3;top:0;background:var(--surface-elevated,var(--surface));padding-top:4px}.modal-actions,.form-actions{position:sticky;z-index:2;bottom:0;margin-inline:-2px;padding:10px 2px calc(2px + env(safe-area-inset-bottom));background:linear-gradient(transparent,var(--surface-elevated,var(--surface)) 22%)}
  .form-grid,.filter-grid{grid-template-columns:minmax(0,1fr)}.form-grid>.span2,.form-grid>.span-2,.filter-grid>.span2{grid-column:1}.form-grid input,.form-grid select,.form-grid textarea{font-size:16px}
  .table-wrap{max-width:100%;overscroll-behavior-inline:contain;scroll-snap-type:x proximity}.data-table:not(.data-table-responsive){min-width:680px}.data-table:not(.data-table-responsive) th:first-child,.data-table:not(.data-table-responsive) td:first-child{position:sticky;left:0;z-index:1;background:var(--surface);box-shadow:6px 0 12px -12px #000}.data-table:not(.data-table-responsive) th:first-child{z-index:2;background:var(--surface-muted,var(--surface))}
  .movement-attachment-upload{display:grid;grid-template-columns:1fr}.camera-capture-field{width:100%}
}
@media(display-mode:standalone){.pwa-install-button{display:none!important}.topbar{padding-top:env(safe-area-inset-top)}}
@media(max-width:760px){nav.mobile-bottom-nav{grid-template-columns:repeat(6,minmax(0,1fr))}.mobile-bottom-nav .nav-notes::before{content:'✎'}}

/* source: system/accessibility.css */
/* 16 — Acessibilidade, robustez visual e impressão. */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
html[data-theme] body [aria-disabled="true"]{cursor:not-allowed}
html[data-theme] body :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}
html[data-theme] body :is(.panel,.item-card,.goal-card,.notification-item):focus-within{border-color:color-mix(in srgb,var(--focus-ring) 55%,var(--line))}
html[data-theme] body [data-tooltip]{position:relative}
html[data-theme] body [data-tooltip]::after{content:attr(data-tooltip);position:absolute;left:50%;bottom:calc(100% + 8px);z-index:2000;width:max-content;max-width:min(240px,80vw);padding:6px 8px;border-radius:7px;background:#0e1218;color:#fff;font-size:11px;font-weight:600;line-height:1.35;white-space:normal;pointer-events:none;opacity:0;transform:translate(-50%,4px);transition:opacity var(--motion-fast),transform var(--motion-fast)}
@media(hover:hover){html[data-theme] body [data-tooltip]:hover::after{opacity:1;transform:translate(-50%,0)}}
html[data-theme] body [data-tooltip]:focus-visible::after{opacity:1;transform:translate(-50%,0)}
@media(prefers-contrast:more){
  :root{--line:#9199a6}
  html[data-theme="dark"]{--line:#788598;--muted:#d0d7e2}
  html[data-theme] body :is(.panel,.metric-card,.stat-card,.item-card,.goal-card,input,select,textarea,button){border-width:2px}
  html[data-theme] body .nav-link.active{outline:2px solid var(--accent)}
}
@media(forced-colors:active){
  html[data-theme] body *{forced-color-adjust:auto}
  html[data-theme] body :is(.badge,.status,.pill,.notice,.alert,.budget-notice){border:1px solid CanvasText}
  html[data-theme] body :is(.progress,.progress-track,[role="progressbar"])>:is(span,i,b){background:Highlight}
}
@media(prefers-reduced-transparency:reduce){html[data-theme] body :is(.topbar,.modal-head,.modal-actions,.form-actions,.modal,.command-overlay,.sidebar-backdrop){backdrop-filter:none}}
@media(prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}html[data-theme] body *,html[data-theme] body *::before,html[data-theme] body *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
.table-wrap[tabindex="0"]{scrollbar-gutter:stable;outline-offset:3px}
.list-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 28px;color:var(--muted);font-size:.82rem}.list-pagination>div{display:flex;gap:8px;flex-wrap:wrap}
[aria-busy="true"]{opacity:.72;cursor:progress}.pagination-load-more[aria-disabled="true"]{pointer-events:none}
.finance-period-comparison .comparison-breakdowns{margin-top:18px}.finance-period-comparison h4{margin:0 0 10px}.report-comparison-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:760px){
  html[data-theme] body :is(button,.primary-action,.secondary-action,.secondary-button,.ghost-button,.icon-button,.nav-link,summary){min-height:44px}
  .modal{padding:0;align-items:flex-end}.modal-card{width:100%;max-height:96dvh;border-radius:18px 18px 0 0;padding-bottom:max(18px,env(safe-area-inset-bottom))}
  .modal-head{position:sticky;top:-1px;z-index:4;background:var(--surface);padding-top:4px}
  .form-actions{position:sticky;bottom:-1px;z-index:4;background:var(--surface);padding:12px 0 max(4px,env(safe-area-inset-bottom))}
  .list-pagination{align-items:stretch;flex-direction:column}.list-pagination>div>*{flex:1;text-align:center;justify-content:center}
  .report-comparison-kpis{grid-template-columns:1fr}.comparison-breakdowns{grid-template-columns:1fr!important}
}
@media print{
  @page{margin:14mm}
  html,body{background:#fff!important;color:#000!important;font-size:10pt}
  .sidebar,.topbar,.sidebar-backdrop,.page-actions,.head-actions,.filter-bar,.report-filter,.form-actions,.modal,.command-overlay,.crud-actions,.notification-actions,.skip-link{display:none!important}
  .shell,.main{display:block!important;min-height:0!important}
  .content{max-width:none!important;padding:0!important}
  .page-head{margin-bottom:14pt!important}
  .panel,.metric-card,.stat-card,.item-card,.goal-card{break-inside:avoid;box-shadow:none!important;border:1px solid #bbb!important;background:#fff!important;color:#000!important}
  .table-wrap{overflow:visible!important}
  .data-table{display:table!important;min-width:0!important;font-size:8.5pt}
  .data-table thead{display:table-header-group!important;position:static!important;width:auto!important;height:auto!important;clip:auto!important}
  .data-table tbody{display:table-row-group!important}.data-table tr{display:table-row!important;box-shadow:none!important}
  .data-table th,.data-table td{display:table-cell!important;padding:6pt!important;border-color:#bbb!important;color:#000!important}
  .data-table td::before{display:none!important;content:none!important}
  a{color:#000!important;text-decoration:none!important}
}

/* source: modules/mobile-simple.css */
/* Mobile presentation only; the desktop dashboard and navigation remain unchanged. */
@media(max-width:760px){
 html[data-mobile-viewport] body .modal.open{top:var(--mobile-visible-top,0px);bottom:auto;height:var(--mobile-visible-height,100dvh);max-height:var(--mobile-visible-height,100dvh);padding:0;align-items:flex-end}
 html[data-mobile-viewport] body .modal.open .modal-card{max-height:calc(var(--mobile-visible-height,100dvh) - 8px);width:100%;scroll-padding-block:70px 110px}
 html[data-mobile-viewport] body .modal-card :is(.form-actions,.modal-actions){bottom:0;min-height:64px;padding-bottom:max(12px,env(safe-area-inset-bottom));background:var(--surface);flex-wrap:wrap}
 html[data-mobile-viewport] body .modal-card :is(input,select,textarea,.searchable-select-input){font-size:16px;scroll-margin-block:70px 110px}
 html[data-mobile-viewport] body .modal-card :is(.form-actions,.modal-actions) button{min-height:44px;white-space:normal}
 html[data-mobile-keyboard] .mobile-bottom-nav,html[data-mobile-keyboard] .health-mobile-fab{display:none!important}
 html[data-mobile-viewport] .field-error{display:block;line-height:1.45;white-space:normal;overflow-wrap:anywhere;margin-top:6px}
 html[data-mobile-viewport] .field-error[hidden]{display:none}
}
.mobile-quick-choices{display:none!important}
@media(max-width:760px){
 html[data-mobile-view="compact"] .mobile-quick-choices{display:block!important;width:100%;min-width:0;border:1px solid var(--line);border-radius:12px}
 .mobile-quick-choices>summary{padding:12px;min-height:48px;cursor:pointer}
 .mobile-quick-choices>p{padding:0 12px;font-size:12px;color:var(--muted)}
 .mobile-choice-group{display:flex;flex-wrap:wrap;gap:8px;padding:12px;min-width:0}
 .mobile-choice-group>strong,.mobile-choice-group>small{width:100%}
 .mobile-choice-group>button{min-height:44px;max-width:100%;white-space:normal;overflow-wrap:anywhere}
}
.mobile-fold-source{display:contents}
.mobile-list-fold{width:100%;min-width:0;margin:10px 0;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.mobile-list-fold>summary{min-height:48px;padding:12px;cursor:pointer;overflow-wrap:anywhere}
.mobile-list-fold>summary small{display:block;color:var(--muted);font-size:12px;margin-top:4px}
.mobile-list-fold-content{padding:12px;display:grid;gap:10px;min-width:0}
.mobile-list-fold-content>:is(a,button){min-height:44px;white-space:normal}
.record-mobile-context,.mobile-record-toggle{display:none!important}
@media(max-width:760px){
 html[data-mobile-view="compact"] body[data-section="health"] .health-mobile-fab,
 html[data-mobile-view="compact"] body[data-section="health"] .workout-rest-timer{bottom:calc(82px + env(safe-area-inset-bottom))}
 html[data-mobile-view="compact"] body.layer-open .health-mobile-fab,
 html[data-mobile-view="compact"] body.layer-open .workout-rest-timer{display:none!important}
 html[data-mobile-view="compact"] .mobile-records-ready td:first-child{position:static!important;box-shadow:none!important;z-index:auto!important}
 html[data-mobile-view="compact"] .mobile-records-ready .mobile-record-actions form{max-width:100%}
 html[data-mobile-view="compact"] .mobile-records-ready{display:block;width:100%;min-width:0!important}
 html[data-mobile-view="compact"] .mobile-records-ready thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 html[data-mobile-view="compact"] .mobile-records-ready tbody{display:grid;gap:12px;padding:10px}
 html[data-mobile-view="compact"] table.mobile-records-ready[data-mobile-records] tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);min-width:0}
 html[data-mobile-view="compact"] .mobile-records-ready td{display:block!important;min-width:0!important;width:auto!important;max-width:none!important;padding:0!important;border:0!important;text-align:left!important;white-space:normal!important;overflow-wrap:anywhere}
 html[data-mobile-view="compact"] .mobile-records-ready td::before{content:attr(data-label);display:block;font-size:11px;color:var(--muted);margin-bottom:4px}
 html[data-mobile-view="compact"] .mobile-records-ready .mobile-record-title{grid-column:1/-1;order:-1;font-size:15px}
 html[data-mobile-view="compact"] .mobile-records-ready .mobile-record-title::before,html[data-mobile-view="compact"] .mobile-records-ready .mobile-record-actions::before{display:none!important}
 html[data-mobile-view="compact"] .mobile-records-ready .mobile-record-actions{grid-column:1/-1;display:flex!important;flex-wrap:wrap;gap:8px;align-items:center}
 html[data-mobile-view="compact"] .mobile-records-ready .crud-actions{display:flex;flex-wrap:wrap;gap:8px;min-width:0}
 html[data-mobile-view="compact"] .mobile-records-ready .mobile-record-actions button,html[data-mobile-view="compact"] .mobile-records-ready .mobile-record-actions a{min-height:44px;max-width:100%;white-space:normal;word-break:normal;overflow-wrap:normal}
 html[data-mobile-view="compact"] .mobile-records-ready tr:not(.mobile-record-expanded) .mobile-record-detail{display:none!important}
 html[data-mobile-view="compact"] .mobile-record-toggle{display:inline-flex!important}
 html[data-mobile-view="compact"] .mobile-records-ready td[colspan]{grid-column:1/-1}
 html[data-mobile-view="compact"] .mobile-records-ready td[colspan]::before{display:none}
 html[data-mobile-view="compact"] .record-desktop-context{display:none}
 html[data-mobile-view="compact"] .record-mobile-context{display:inline!important}
}
.mobile-module-overview{display:none}
@media(max-width:760px){
 html[data-mobile-view="compact"] .module-desktop-overview{display:none!important}
 html[data-mobile-view="compact"] .mobile-module-overview{display:block}
 .mobile-module-overview h1{font-size:28px;margin:8px 0}.mobile-module-overview h2{font-size:18px}
 html[data-theme] body .mobile-module-overview .text-link{display:flex;min-height:44px;align-items:center;gap:8px;width:100%;white-space:normal}
 html[data-theme] body .mobile-module-overview .mobile-choice-list>:is(a,button){width:100%;margin-inline:0;justify-self:stretch;justify-content:center}
 .mobile-module-balance{display:grid;gap:8px;padding:18px 0;border-bottom:1px solid var(--line)}
 .mobile-module-balance>strong{font-size:28px}.mobile-module-overview small{color:var(--muted)}
 .mobile-module-overview .mobile-today-row>span{min-width:0;overflow-wrap:anywhere}
 .mobile-module-more{margin:16px 0}.mobile-module-more>summary{padding:14px 0;min-height:48px;cursor:pointer}
}
.mobile-today,.mobile-simple-nav,.mobile-return-compact{display:none!important}
.mobile-choice-list{display:grid;gap:10px;margin:16px 0}.mobile-choice-list>a,.mobile-choice-list>button{min-height:48px;justify-content:flex-start;white-space:normal}
.mobile-form-details{min-width:0;border:1px solid var(--line);border-radius:12px;padding:0!important}
.mobile-form-details>summary{padding:14px;min-height:48px;cursor:pointer;color:var(--text);font-weight:600;overflow-wrap:anywhere}
.mobile-form-details>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.mobile-form-details-content{padding:14px;border-top:1px solid var(--line)}
.mobile-simple-nav :is(a,button):focus-visible,.mobile-record-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}
@media(max-width:360px){
 html[data-mobile-view="compact"] table.mobile-records-ready[data-mobile-records] tbody tr{grid-template-columns:minmax(0,1fr)}
 html[data-mobile-view="compact"] .mobile-today-row{flex-wrap:wrap}
}
@media(max-width:760px){
 html[data-mobile-view="compact"] .home-complete,html[data-mobile-view="compact"] .mobile-legacy-nav{display:none!important}
 html[data-mobile-view="compact"] .mobile-today{display:block!important}
 html[data-mobile-view="compact"] nav.mobile-simple-nav{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))}
 html[data-mobile-view="compact"] .topbar #menuButton,html[data-mobile-view="compact"] .topbar [data-quick-add-open],html[data-mobile-view="compact"] .topbar .theme-toggle{display:none}
 html[data-mobile-view="full"] .mobile-return-compact{display:flex!important;position:relative;margin:12px auto;max-width:calc(100% - 24px)}
 .mobile-simple-nav>a,.mobile-simple-nav>button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:48px;border:0;border-radius:10px;background:transparent;color:var(--text);font:inherit;font-size:11px;text-decoration:none;padding:4px 1px;cursor:pointer}
 .mobile-simple-nav>a::before,.mobile-simple-nav>button::before{display:none!important}
 .mobile-simple-nav span{font-size:22px;line-height:1}.mobile-simple-nav [aria-current="page"]{color:var(--accent);background:var(--accent-soft)}
 .mobile-simple-nav [data-modal-open="mobileRegister"]{background:var(--accent);color:#161616;font-weight:700}
 body.layer-open nav.mobile-simple-nav,body.menu-open nav.mobile-simple-nav{display:none!important}
 .mobile-today{padding-bottom:12px}.mobile-today h1{font-size:28px;margin:6px 0}.mobile-today h2{font-size:17px;margin:0 0 10px}.mobile-today p{color:var(--muted);line-height:1.5}
 .mobile-today-register{width:100%;min-height:50px;margin:14px 0}
 .mobile-today-section{padding:20px 0;border-bottom:1px solid var(--line)}
 .mobile-today-row{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:12px 0;color:var(--text);text-decoration:none;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
 .mobile-today-row small{display:block;color:var(--muted);font-size:12px}.mobile-today-row>strong{white-space:nowrap}.mobile-today-section>.text-link{display:inline-flex;align-items:center;min-height:44px}.mobile-today-footnote{font-size:12px}
}

/* Keep the vehicle card toggle tooltip within the narrow first-use viewport. */
@media(max-width:650px){
 html[data-theme] body .vehicle-dashboard-card .card-collapse-toggle[data-tooltip]::after{left:auto;right:0;transform:translateY(4px)}
 html[data-theme] body .vehicle-dashboard-card .card-collapse-toggle[data-tooltip]:focus-visible::after{transform:translateY(0)}
}
