/* UX14 — aplicação do sistema das quatro pranchas aprovadas ao app real.
   Mantém os componentes, IDs e dados existentes; esta camada ajusta a apresentação. */
body.clean-ui {
  --bg: #F8FAFC;
  --surface: #FFFFFF;
  --surface-2: #FFFFFF;
  --ink: #0F172A;
  --muted: #64748B;
  --line: #E6ECF5;
  --line-input: #D7E0EC;
  --brand: #1677FF;
  --brand-2: #1D4ED8;
  --accent: #1677FF;
  --pos: #16A34A;
  --neg: #DC2626;
  --warn: #D97706;
  --clean-blue: #1677FF;
  --clean-blue-ink: #1D4ED8;
  --clean-blue-wash: #E8F3FF;
  --clean-green: #16A34A;
  --clean-green-wash: #DCFCE7;
  --clean-coral: #DC2626;
  --clean-coral-wash: #FFE4E6;
  --clean-yellow: #D97706;
  --clean-yellow-wash: #FEF3C7;
  --clean-icon-blue: #DBEAFE;
  --clean-icon-green: #DCFCE7;
  --clean-icon-coral: #FFE4E6;
  --clean-icon-yellow: #FEF3C7;
  --radius: 13px;
  --radius-1: 9px;
  --radius-2: 12px;
  --radius-3: 13px;
  --radius-4: 14px;
  --radius-5: 16px;
  --shadow: 0 2px 6px rgb(15 23 42 / 3%);
  --shadow-card: 0 2px 6px rgb(15 23 42 / 3%);
  --grad-btn-gold: #1677FF;
  --grad-banner: #E8F3FF;
  --grad-omni: #1677FF;
  --grad-progress: #1677FF;
  color: var(--ink);
  background: var(--bg);
}

.clean-ui [hidden] { display: none !important; }
.clean-ui :is(button, a, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 3px solid #1677FF;
  outline-offset: 2px;
}
.clean-ui :is(h1, h2, h3, h4) { letter-spacing: -.025em; }
.clean-ui .status-bar { min-height: calc(21px + var(--safe-t, 0px)); padding-top: calc(4px + var(--safe-t, 0px)); }
.clean-ui #app.app-shell { padding-bottom: calc(68px + var(--safe-b, 0px)); }
.clean-ui .topbar.top-header { padding: 8px 18px 10px; gap: 8px; }
.clean-ui .clean-brand { gap: 8px; font-size: 15px; font-weight: 650; }
.clean-ui .clean-brand :is(img, .clean-brand-mark),
.clean-ui .clean-brand > svg { width: 34px; height: 34px; border-radius: 10px; }
.clean-ui .clean-brand > svg { padding: 6px; background: #1677FF; }
.clean-ui .clean-brand > svg use { stroke: #fff; }
.clean-ui .clean-avatar { width: 38px; height: 38px; min-width: 38px; background: #DBEAFE; color: #1D4ED8; font-size: 17px; }
.clean-ui .clean-notifications { width: 40px; height: 40px; min-width: 40px; }
.clean-ui .clean-notifications svg { width: 22px; height: 22px; }
.clean-ui .clean-notifications .clean-notification-dot { top: 5px; right: 5px; }
.clean-ui .content-area,
.clean-ui .view.screen .content-area { padding: 0 18px 18px; gap: 10px; }
.clean-ui .clean-page-title { margin: 3px 0 8px; font-size: 26px; line-height: 1.16; font-weight: 750; }
.clean-ui .clean-greeting { margin: 2px 0 1px; font-size: 27px; line-height: 1.14; font-weight: 750; }
.clean-ui .clean-greeting + p,
.clean-ui .home-month { margin: 0; color: #64748B; font-size: 14px; line-height: 1.35; }
.clean-ui .home-month { width: fit-content; min-height: 25px; padding: 0; border: 0; background: transparent; text-align: left; }

/* Shared cards, rows, controls and pastel icon circles. */
.clean-ui :is(.card, .mini-stat, .trip-card, .task-item, .lic-card) {
  border-color: #E6ECF5; border-radius: 13px; background: #fff; box-shadow: 0 2px 6px rgb(15 23 42 / 3%);
}
.clean-ui .card { padding: 12px; margin-bottom: 0; }
.clean-ui .content-area > .card { margin-bottom: 0; }
.clean-ui :is(.card-title, .card-head h2) { font-size: 15px; font-weight: 700; }
.clean-ui .card-title-row { margin-bottom: 8px; }
.clean-ui .grid-2 { gap: 8px; }
.clean-ui .clean-icon { width: 42px; height: 42px; background: #DBEAFE; color: #1D4ED8; }
.clean-ui .clean-icon svg { width: 22px; height: 22px; }
.clean-ui .tone-blue { background: #DBEAFE; color: #1D4ED8; }
.clean-ui .tone-green { background: #DCFCE7; color: #16A34A; }
.clean-ui .tone-coral { background: #FFE4E6; color: #DC2626; }
.clean-ui .tone-yellow { background: #FEF3C7; color: #D97706; }
.clean-ui .row-icon { width: 38px; height: 38px; background: #DBEAFE; color: #1D4ED8; }
.clean-ui .row-icon.tone-blue { background: #DBEAFE; color: #1D4ED8; }
.clean-ui .row-icon.tone-green { background: #DCFCE7; color: #16A34A; }
.clean-ui .row-icon.tone-coral { background: #FFE4E6; color: #DC2626; }
.clean-ui .row-icon.tone-yellow { background: #FEF3C7; color: #D97706; }
.clean-ui .row-text strong { font-size: 13px; font-weight: 600; }
.clean-ui .row-text span { font-size: 11.5px; line-height: 1.35; }
.clean-ui .row-item { min-height: 52px; padding: 8px 0; }
.clean-ui .row-right strong { font-size: 13px; }
.clean-ui :is(.badge, .pill) { border-radius: 999px; font-size: 11px; }
.clean-ui .badge-green { color: #166534; background: #DCFCE7; border-color: #BBF7D0; }
.clean-ui .badge-gold { color: #92400E; background: #FEF3C7; border-color: #FDE68A; }
.clean-ui .badge-dark { color: #1D4ED8; background: #DBEAFE; border-color: #BFDBFE; }
.clean-ui .badge-red { color: #B91C1C; background: #FFE4E6; border-color: #FECDD3; }
.clean-ui :is(.btn, .btn-full, .btn-dark-full) { min-height: 46px; border-radius: 10px; font-size: 14px; font-weight: 650; }
.clean-ui :is(.btn-primary, .btn-full, .btn-dark-full) { background: #1677FF; border-color: #1677FF; }
.clean-ui .btn-ghost { border-color: #E6ECF5; color: #1D4ED8; }
.clean-ui :is(.seg-control, .segmented) { padding: 3px; gap: 4px; border-radius: 11px; background: #F1F5F9; }
.clean-ui :is(.seg-item, .seg, .list-filter, .chip) { min-height: 40px; border-radius: 9px; font-size: 12.5px; }
.clean-ui :is(.seg-item.active, .seg.is-on, .chip.is-on) { color: #fff; background: #1677FF; border-color: #1677FF; }
.clean-ui :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]), select, textarea) { border-color: #D7E0EC; border-radius: 9px; }

/* 01 — welcome, 02 — setup. Keep the existing signup and consent flow intact. */
.clean-ui #login.welcome-mode { justify-content: flex-start; }
.clean-ui #login .welcome-pane { width: 100%; max-width: 430px; margin: 0 auto; padding: 22px 24px 18px; gap: 10px; }
.clean-ui #login .welcome-logo { width: 64px; height: 64px; border-radius: 18px; background: #1677FF; color: #fff; }
.clean-ui #login .welcome-logo svg { width: 42px; height: 42px; }
.clean-ui #login .welcome-brand-name { margin-top: 0; font-size: 16px; }
.clean-ui #login .welcome-pane h1 { margin: 8px 0 0; font-size: 27px; line-height: 1.16; }
.clean-ui #login .welcome-lede { margin: 0; font-size: 14px; line-height: 1.4; }
.clean-ui #login .welcome-art { width: min(100%, 270px); height: 180px; margin: 4px auto; }
.clean-ui #login .welcome-art-card { border-radius: 15px; box-shadow: 0 5px 16px rgb(15 23 42 / 8%); }
.clean-ui #login .welcome-actions { gap: 8px; margin-top: auto; }
.clean-ui #login .welcome-terms { margin-top: 6px; font-size: 11px; }
.clean-ui #login > .top-header { padding: 10px 18px; }
.clean-ui #login #auth-title { font-size: 27px !important; }
.clean-ui #login .auth-description { margin: 0 0 8px; font-size: 14px; }
.clean-ui #login .auth-features { gap: 4px; margin: 6px 0 14px; }
.clean-ui #login .auth-features .clean-icon { width: 46px; height: 46px; }
.clean-ui #login .auth-features > span { gap: 5px; font-size: 12px; }
.clean-ui #login .auth-trial { margin-top: 12px; padding: 14px; border-radius: 14px; background: #E8F3FF; border-color: #B6D8FF; }
.clean-ui #login .auth-trial h2 { font-size: 16px; }
.clean-ui #intro > .top-header { padding: 10px 18px 8px; gap: 8px; }
.clean-ui #intro .content-area { padding-top: 0; gap: 9px; }
.clean-ui #intro .intro-step-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
.clean-ui #intro .intro-progress { margin: 4px auto 7px; }
.clean-ui #intro .intro-step-panel > .card { padding: 12px; }
.clean-ui #intro .intro-choice-card:nth-child(1) { order: 2; }
.clean-ui #intro .intro-choice-card:nth-child(2) { order: 1; }
.clean-ui #intro .intro-choice-card { min-height: 154px; padding: 12px 8px; border-radius: 12px; }
.clean-ui #intro .intro-choice-card .clean-icon { width: 62px; height: 62px; }
.clean-ui #intro .intro-choice-card strong { font-size: 14px; }
.clean-ui #intro .intro-choice-card > span:last-child { font-size: 11px; line-height: 1.35; }
.clean-ui #intro .intro-tile { min-height: 54px; font-size: 12px; }
.clean-ui #intro .intro-tile > span { width: 32px; height: 32px; border-radius: 50%; }

/* 03 — compact dashboard with the approved action and card hierarchy. */
.clean-ui #view-home-new > .content-area { gap: 8px; }
.clean-ui #view-home-new .grid-2 { gap: 8px; }
.clean-ui #view-home-new .clean-home-stat { min-height: 62px; padding: 8px; gap: 8px; }
.clean-ui #view-home-new .clean-home-stat .clean-icon { width: 42px; height: 42px; }
.clean-ui #view-home-new .clean-home-stat :is(small, .stat-label) { margin-bottom: 1px; font-size: 11px; }
.clean-ui #view-home-new .clean-home-stat strong { font-size: clamp(16px, 4.3vw, 19px); line-height: 1.15; white-space: nowrap; }
.clean-ui #view-home-new .clean-home-actions { gap: 8px; margin: 0; }
.clean-ui #view-home-new .clean-home-actions > button { min-height: 76px; padding: 5px 3px; gap: 5px; font-size: 12px; }
.clean-ui #view-home-new .clean-home-actions .clean-icon { width: 52px; height: 52px; }
.clean-ui #view-home-new .clean-home-actions .clean-icon svg { width: 25px; height: 25px; }
.clean-ui #view-home-new .clean-home-blocks { display: flex; flex-direction: column; gap: 9px; }
.clean-ui #view-home-new #home-cards { display: grid; gap: 9px; order: 1; }
.clean-ui #view-home-new #home-dock { display: grid; gap: 8px; order: 2; }
.clean-ui #view-home-new .home-tools { order: 3; justify-content: flex-end; min-height: 34px; }
.clean-ui #view-home-new #home-toggle-all { display: none; }
.clean-ui #view-home-new .home-tools .mini-btn { min-height: 36px; padding: 6px 9px; font-size: 12px; }
.clean-ui #view-home-new #home-cards > .card { padding: 11px 12px; }
.clean-ui #view-home-new #home-cards .card-head { min-height: 22px; margin: 0 0 5px; }
.clean-ui #view-home-new #home-cards .card-head h2 { font-size: 14px; }
.clean-ui #view-home-new #home-cards [data-card="daily"] .chart-box { height: 106px; min-height: 0; margin: 0; }
.clean-ui #view-home-new #home-cards [data-card="daily"] .chart-box svg { height: 100%; max-height: 106px; }
.clean-ui #view-home-new #home-cards [data-card="daily"] .chart-period { margin-top: 1px; font-size: 11px; }
.clean-ui #view-home-new #home-cards [data-card="daily"] .chart-period summary { min-height: 28px; padding: 4px 0; }
.clean-ui #view-home-new #home-cards [data-card="daily"] .chart-hint { display: none; }
.clean-ui #view-home-new #home-cards [data-card="bills"] .bill-list > :nth-child(n+3) { display: none; }
.clean-ui #view-home-new #home-cards [data-card="bills"] .bill-list { gap: 0; }
.clean-ui #view-home-new #home-cards [data-card="bills"] .bill,
.clean-ui #view-home-new #home-cards [data-card="bills"] .bill-row { min-height: 48px; padding: 6px 0; }
.clean-ui #view-home-new .calm-banner,
.clean-ui #view-home-new .clean-home-blocks ~ .card { display: none; }

/* 04–08 use focused flow headers, leaving the full destination bar available. */
.clean-ui #app.app-flow > #top-header { display: none; }
.clean-ui .flow-header { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; align-items: center; gap: 8px; min-height: 52px; padding: 4px 16px 8px; }
.clean-ui .flow-header h1 { margin: 0; text-align: center; font-size: 17px; line-height: 1.25; font-weight: 700; }
.clean-ui .flow-header .flow-back { width: 42px; height: 42px; min-width: 42px; border: 0; border-radius: 50%; color: #0F172A; background: transparent; display: inline-grid; place-items: center; }
.clean-ui .flow-header .flow-back svg { width: 22px; height: 22px; }
.clean-ui .flow-header .flow-end { min-width: 42px; justify-self: end; }
.clean-ui #view-list-new .flow-header .flow-end { min-width: 42px; }
.clean-ui .flow-month { display: flex; align-items: center; justify-content: center; gap: 8px; width: fit-content; min-height: 36px; margin: 0 auto 2px; padding: 4px 12px; border: 1px solid #E6ECF5; border-radius: 10px; background: #fff; color: #0F172A; font-size: 13px; font-weight: 600; }
.clean-ui .flow-month svg { width: 16px; height: 16px; color: #64748B; }
.clean-ui .flow-header .flow-search { border: 0; background: transparent; }
.clean-ui #view-voice .voice-head,
.clean-ui #view-scanner .scanner-head,
.clean-ui #view-tx .tx-head { display: none; }
.clean-ui #view-voice .content-area,
.clean-ui #view-scanner .content-area,
.clean-ui #view-tx .content-area,
.clean-ui #view-list-new .content-area,
.clean-ui #view-bills-new .content-area { gap: 9px; }
.clean-ui #view-voice .content-area > .sub-back,
.clean-ui #view-scanner .content-area > .sub-back,
.clean-ui #view-tx .content-area > .sub-back { display: none; }
.clean-ui #view-voice .voice-banner { padding: 14px; border-radius: 14px; background: #E8F3FF; }
.clean-ui #view-voice .voice-illustration { min-height: 94px; gap: 12px; }
.clean-ui #view-voice .voice-mic { width: 66px; height: 66px; border: 5px solid #B6D8FF; border-radius: 50%; background: #DBEAFE; color: #1D4ED8; }
.clean-ui #view-voice .voice-mic svg { width: 31px; height: 31px; }
.clean-ui #view-voice .voice-banner p { font-size: 14px; line-height: 1.4; }
.clean-ui #view-voice .voice-guide { padding: 10px 12px; border-radius: 11px; background: #fff; border: 1px solid #B6D8FF; }
.clean-ui #view-voice .voice-actions { gap: 8px; }
.clean-ui #view-scanner .calm-banner { padding: 12px; }
.clean-ui #view-scanner .calm-banner h2 { font-size: 25px; }
.clean-ui #view-scanner .scanner-vault { background: #FEF3C7; border-color: #FDE68A; }
.clean-ui #view-scanner .scanner-demo-preview { display: grid; gap: 8px; padding: 12px; border: 1px solid #E6ECF5; border-radius: 15px; background: #fff; }
.clean-ui #view-scanner .scanner-demo-preview[hidden] { display: none !important; }
.clean-ui #view-scanner .scanner-demo-preview-head { display: flex; align-items: center; justify-content: space-between; color: #64748B; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
.clean-ui #view-scanner .scanner-demo-preview-head > span { padding: 5px 9px; border-radius: 999px; background: #E8F3FF; color: #1D4ED8; }
.clean-ui #view-scanner .scanner-demo-preview-head svg { width: 20px; height: 20px; color: #1677FF; }
.clean-ui #view-scanner .scanner-demo-frame { position: relative; display: grid; min-height: 214px; place-items: center; padding: 15px; border-radius: 13px; background: #64748B; }
.clean-ui #view-scanner .scanner-demo-paper { display: grid; width: min(100%, 285px); gap: 3px; padding: 13px 15px; border-radius: 9px; background: #fff; color: #0F172A; box-shadow: 0 4px 12px rgb(15 23 42 / 14%); text-align: center; }
.clean-ui #view-scanner .scanner-demo-paper > strong:first-child { font-size: 14px; }
.clean-ui #view-scanner .scanner-demo-paper > small { color: #64748B; font-size: 9px; line-height: 1.25; }
.clean-ui #view-scanner .scanner-demo-items { display: grid; gap: 4px; margin-top: 6px; padding-top: 6px; border-top: 1px solid #E6ECF5; }
.clean-ui #view-scanner .scanner-demo-item,.clean-ui #view-scanner .scanner-demo-total { display: flex; justify-content: space-between; gap: 10px; color: #334155; font-size: 11px; }
.clean-ui #view-scanner .scanner-demo-total { margin-top: 3px; padding-top: 5px; border-top: 1px dashed #94A3B8; color: #0F172A; font-size: 13px; }
.clean-ui #view-scanner .scanner-demo-corner { position: absolute; width: 18px; height: 18px; border-color: #1677FF; border-style: solid; }
.clean-ui #view-scanner .scanner-demo-corner.top-left { top: 10px; left: 10px; border-width: 3px 0 0 3px; }
.clean-ui #view-scanner .scanner-demo-corner.top-right { top: 10px; right: 10px; border-width: 3px 3px 0 0; }
.clean-ui #view-scanner .scanner-demo-corner.bottom-left { bottom: 10px; left: 10px; border-width: 0 0 3px 3px; }
.clean-ui #view-scanner .scanner-demo-corner.bottom-right { right: 10px; bottom: 10px; border-width: 0 3px 3px 0; }
.clean-ui #view-scanner .scanner-demo-caption { margin: 0; color: #92400E; font-size: 10px; line-height: 1.35; }
.clean-ui #view-scanner .scanner-demo-status { display: flex; align-items: center; justify-content: center; min-height: 40px; border-radius: 999px; background: #E8F3FF; color: #1677FF; font-size: 14px; font-weight: 700; }
.clean-ui #view-scanner .scanner-demo-status[hidden] { display: none !important; }
.clean-ui #view-tx .seg-control { margin-bottom: 0; }
.clean-ui #view-tx .tx-val-input-wrap { margin: 6px 0 10px; padding: 0; }
.clean-ui #view-tx .tx-val-input-wrap input { font-size: 28px; }
.clean-ui #view-tx .cat-grid { gap: 7px; }
.clean-ui #view-tx .cat-opt { min-height: 74px; padding: 7px 3px; gap: 4px; font-size: 11.5px; }
.clean-ui #view-tx .cat-opt .cat-ico { width: 38px; height: 38px; }
.clean-ui #view-tx .tx-picker { padding: 8px 0; }
.clean-ui #view-list-new .flow-header,
.clean-ui #view-bills-new .flow-header { margin-bottom: 2px; }
.clean-ui #view-list-new .list-summary { gap: 7px; }
.clean-ui #view-list-new .clean-home-stat { min-height: 58px; padding: 7px; gap: 7px; }
.clean-ui #view-list-new .clean-home-stat .clean-icon { width: 36px; height: 36px; }
.clean-ui #view-list-new .clean-home-stat strong { font-size: 16px; }
.clean-ui #view-list-new .list-search { min-height: 42px; border-radius: 10px; }
.clean-ui #view-list-new .list-search > span { display: inline-grid; place-items: center; width: 38px; color: #64748B; }
.clean-ui #view-list-new .list-search > span svg { width: 19px; height: 19px; }
.clean-ui #view-list-new .list-search input { min-height: 40px; font-size: 14px; }
.clean-ui #view-list-new .list-filters { gap: 5px; }
.clean-ui #view-list-new .list-filter { min-height: 38px; padding: 7px 5px; font-size: 11.5px; }
.clean-ui #view-list-new #list-tx-cards { gap: 9px; }
.clean-ui #view-list-new #list-tx-cards > .card { padding: 9px 11px; }
.clean-ui #view-bills-new .calm-banner { padding: 14px; }
.clean-ui #view-bills-new .calm-banner h2 { font-size: 24px; }
.clean-ui #view-bills-new .bills-new-row { min-height: 54px; padding: 8px 0; }
.clean-ui #view-bills-new .bills-new-radar { background: #FEF3C7; border-color: #FDE68A; }
.clean-ui #view-bills-new .bills-new-radar-summary { display: flex; align-items: center; gap: 8px; min-height: 40px; list-style: none; cursor: pointer; }
.clean-ui #view-bills-new .bills-new-radar-summary::-webkit-details-marker { display: none; }
.clean-ui #view-bills-new .bills-new-radar-summary::after { content: '⌄'; margin-left: auto; color: #64748B; }
.clean-ui #view-bills-new .bills-new-radar[open] .bills-new-radar-summary::after { content: '⌃'; }
.clean-ui #view-bills-new .bills-new-radar:not([open]) { padding-top: 4px; padding-bottom: 4px; }
.clean-ui #view-bills-new .bills-new-radar-summary .card-title { font-size: 13px; }
.clean-ui #view-bills-new .bills-new-radar-summary .badge { font-size: 10px; }

/* 09–14 — stable compact cards, readable settings and focused bottom tabs. */
.clean-ui #view-goals-new .goals-new-banner,
.clean-ui #view-activity-new .activity-new-banner { background: #E8F3FF; border-color: #B6D8FF; }
.clean-ui #view-goals-new .goals-new-banner h2 { font-size: 25px; }
.clean-ui #view-goals-new .goals-new-list { gap: 9px; }
.clean-ui #view-home-new #bars .bar-value { fill: #0F172A; font-size: 8.5px; font-weight: 600; }
@media (max-width: 600px) {
  .clean-ui #view-goals-new .goals-new-banner { padding: 10px 12px; }
  .clean-ui #view-goals-new .goals-new-banner h2 { margin: 2px 0; font-size: 21px; }
  .clean-ui #view-goals-new .goals-new-banner .calm-banner-top { font-size: 11px; }
  .clean-ui #view-goals-new .goals-new-goal { padding: 9px 11px; border-radius: 13px; }
  .clean-ui #view-goals-new .goals-new-goal .card-title-row { gap: 5px; }
  .clean-ui #view-goals-new .goals-new-title { gap: 6px; font-size: 14px; line-height: 1.2; }
  .clean-ui #view-goals-new .goals-new-title .clean-icon { width: 28px; height: 28px; flex: 0 0 28px; }
  .clean-ui #view-goals-new .goals-new-title .clean-icon svg { width: 16px; height: 16px; }
  .clean-ui #view-goals-new .goals-new-goal .badge { padding: 4px 7px; font-size: 9px; }
  .clean-ui #view-goals-new .goals-new-meta { margin: 4px 0 2px; font-size: 11px; }
  .clean-ui #view-goals-new .goals-new-goal .progress-track { height: 8px; margin: 4px 0; }
  .clean-ui #view-goals-new .goals-add-value { min-height: 36px; margin-top: 4px; padding: 6px 10px; font-size: 12px; }
}
.clean-ui #view-agenda .clean-calendar { padding: 10px; border-radius: 13px; }
.clean-ui #view-agenda .clean-calendar-day { min-height: 38px; font-size: 13px; }
.clean-ui #view-ritual .clean-review-summary { gap: 6px; padding: 10px; }
.clean-ui #view-ritual .clean-review-stat { gap: 5px; }
.clean-ui #view-ritual .clean-review-stat .clean-icon { width: 30px; height: 30px; }
.clean-ui #view-ritual .clean-review-stat strong { font-size: 14px; }
.clean-ui #view-ritual .ritual-banner { background: #DCFCE7; border-color: #BBF7D0; }
.clean-ui #view-activity-new .activity-new-banner { background: #E8F3FF; }
.clean-ui #view-activity-new .activity-new-more { width: 100%; min-height: 38px; margin-top: 7px; border: 1px solid #D7E0EC; border-radius: 10px; background: #fff; color: #1D4ED8; font-size: 12px; font-weight: 650; }
.clean-ui #view-settings-new .clean-profile-card { background: #E8F3FF; border-color: #B6D8FF; }
.clean-ui #view-settings-new .clean-settings-group > summary { min-height: 50px; padding: 10px 12px; }
.clean-ui #view-settings-new .clean-settings-group > :not(summary) { padding: 10px; }
.clean-ui #view-tasks-new .content-area { gap: 9px; }

.clean-ui .bottom-nav {
  height: calc(66px + var(--safe-b, 0px));
  padding: 3px 8px calc(4px + var(--safe-b, 0px));
  border-top-color: #E6ECF5; background: #fff;
}
.clean-ui .nav-item { min-height: 48px; gap: 2px; font-size: 10.5px; }
.clean-ui .nav-item :is(svg, .nav-emoji svg) { width: 22px; height: 22px; }
.clean-ui .nav-item.active { color: #1677FF; }
.clean-ui .nav-omni { width: 52px; height: 52px; margin-top: -8px; background: #1677FF; }
.clean-ui .nav-item .nav-omni-label { display: none; }

/* Reading and receipt review remain unobstructed on small phones and landscape. */
.clean-ui dialog.sheet { background: #fff; border-color: #E6ECF5; }
.clean-ui .receipt-draft-preview { border: 1px solid #E6ECF5; border-radius: 13px; background: #F8FAFC; }
.clean-ui .receipt-draft-preview > strong { color: #0F172A; }
.clean-ui .receipt-draft-preview > p { color: #64748B; }
.clean-ui .att-btn { border-color: #D7E0EC; border-radius: 10px; background: #F8FAFC; }
.clean-ui .menu-panel { border-color: #E6ECF5; }

@media (min-width: 700px) {
  .clean-ui #app.app-shell { padding-bottom: 92px; }
  .clean-ui .flow-header { max-width: 800px; margin: 0 auto; }
  .clean-ui #view-home-new .clean-home-blocks { max-width: 760px; margin-left: auto; margin-right: auto; }
}
@media (max-width: 380px) {
  .clean-ui .content-area, .clean-ui .view.screen .content-area { padding-left: 14px; padding-right: 14px; }
  .clean-ui #view-home-new .clean-home-stat { padding: 6px; }
  .clean-ui #view-home-new .clean-home-stat strong { font-size: 15px; }
  .clean-ui .flow-header { padding-left: 12px; padding-right: 12px; }
}

/* Final visual corrections from the 393px capture against the approved boards. */
.clean-ui :is(button, a, input, select, textarea, summary, [tabindex]):focus-visible {
  outline-width: 2px;
  outline-offset: 2px;
}

/* 01 — keep the onboarding illustration in its own compact area above both actions. */
.clean-ui #login .welcome-pane {
  min-height: calc(100dvh - var(--safe-t, 0px));
  justify-content: flex-start;
  gap: 8px;
}
.clean-ui #login .welcome-art {
  display: grid;
  grid-template-columns: repeat(3, 58px);
  grid-template-rows: repeat(2, 52px);
  place-content: center;
  gap: 5px 9px;
  width: 100%;
  height: 112px;
  min-height: 0;
  margin: 2px auto;
}
.clean-ui #login .welcome-art-card { width: 58px; height: 52px; border-radius: 13px; }
.clean-ui #login .welcome-art-card svg { width: 28px; height: 28px; }
.clean-ui #login .welcome-art-card:nth-child(4) { grid-column: 1; grid-row: 2; }
.clean-ui #login .welcome-art-card:nth-child(5) { grid-column: 2; grid-row: 2; }
.clean-ui #login .welcome-actions { margin-top: 0; }

/* 02 — compact progress and a clear title/subtitle hierarchy. */
.clean-ui #intro > .top-header {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  grid-template-rows: 40px auto;
  align-items: center;
  gap: 5px 8px;
  padding: 6px 18px 8px;
}
.clean-ui #intro #intro-back {
  grid-column: 1;
  grid-row: 1;
  display: grid;
  place-items: center;
  width: 40px;
  min-height: 40px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  font-size: 0;
}
.clean-ui #intro #intro-back::before { content: '‹'; font-size: 30px; line-height: 1; }
.clean-ui #intro #intro-progress {
  grid-column: 2;
  grid-row: 1;
  width: min(100%, 142px);
  margin: 0 auto;
}
.clean-ui #intro > .top-header > .badge { display: none; }
.clean-ui #intro .top-title-group {
  grid-column: 1 / -1;
  grid-row: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}
.clean-ui #intro .top-title-group h1 { order: 1; margin: 0; font-size: 25px; line-height: 1.18; }
.clean-ui #intro .top-title-group .eyebrow { order: 2; margin: 0; font-size: 13.5px; line-height: 1.35; color: #64748B; }
.clean-ui #intro .content-area { padding-top: 2px; }
.clean-ui #intro .intro-step-panel > .card { border: 1px solid #E6ECF5; border-radius: 13px; background: #fff; box-shadow: 0 2px 6px rgb(15 23 42 / 3%); }

/* 06 — show the six primary categories first; extra categories remain scrollable. */
.clean-ui #view-tx .cat-grid { max-height: 156px; overflow-y: auto; overscroll-behavior: contain; }

/* 09 — approved task dashboard, while keeping list management in the options menu. */
.clean-ui #app.app-tasks-flow > .top-header { display: flex !important; }
.clean-ui #view-tasks-new .task-flow.tf-dashboard-list { padding: 2px 18px calc(16px + var(--safe-b, 0px)); }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-list-header { position: static; padding: 0 0 3px; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-list-header > button:first-child { display: none; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-list-header h1 { color: #0F172A; font-size: 26px; font-weight: 800; letter-spacing: -.025em; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-list-header > button:last-child { width: 36px; min-width: 36px; min-height: 36px; padding: 8px; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-page-subtitle { margin: 0 0 4px; color: #64748B; font-size: 13.5px; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-progress-card { padding: 10px 12px; border: 1px solid #E6ECF5; border-radius: 12px; background: #fff; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-progress-label { display: flex; justify-content: space-between; align-items: center; gap: 8px; font-size: 13px; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-progress-label strong { font-weight: 600; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-progress-label span { color: #64748B; font-size: 12px; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-progress-track { height: 7px; margin-top: 7px; overflow: hidden; border-radius: 999px; background: #E6ECF5; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-progress-track > span { display: block; height: 100%; border-radius: inherit; background: #1677FF; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-task-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; padding: 3px; border-radius: 10px; background: #F1F5F9; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-task-tab { min-height: 38px; padding: 7px 5px; border: 0; border-radius: 8px; background: transparent; color: #475569; font-size: 12px; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-task-tab.is-active { background: #DCEEFF; color: #1677FF; font-weight: 650; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-search { min-height: 40px; margin: 0; padding: 8px 11px; font-size: 13px !important; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-task-list { gap: 6px; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-task-row { min-height: 58px; padding: 5px 6px; border-radius: 10px; background: #fff; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-task-title { font-size: 13px; font-weight: 600; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-task-content small { font-size: 11px; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-check:empty::before { width: 18px; height: 18px; border-color: #94A3B8; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-add-floating {
  position: static;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  height: auto;
  min-height: 46px;
  margin: 8px 0 0;
  padding: 10px 14px;
  border-radius: 10px;
  background: #1677FF;
  box-shadow: none;
  color: #fff !important;
  font-size: 14px;
  font-weight: 650;
}
.clean-ui #view-tasks-new .tf-dashboard-list .tf-add-floating svg { width: 19px; height: 19px; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-quick-add { bottom: calc(82px + var(--safe-b, 0px)); }

/* 11–12 — the persistent Plans tab is the return path; match the approved title row. */
.clean-ui #view-agenda .content-area > .sub-back,
.clean-ui #view-ritual .content-area > .sub-back { display: none; }
.clean-ui #view-agenda .content-area,
.clean-ui #view-ritual .content-area { gap: 9px; }
.clean-ui #view-agenda .clean-calendar { padding: 8px; }
.clean-ui #view-agenda .clean-calendar-head { margin-bottom: 4px; }
.clean-ui #view-agenda .clean-calendar-grid { gap: 2px; }
.clean-ui #view-agenda .clean-calendar-weekday { padding: 2px 0; font-size: 11px; }
.clean-ui #view-agenda .clean-calendar-day { min-height: 31px; font-size: 12px; }
.clean-ui #view-agenda .clean-calendar-day.has-events::after { bottom: 1px; width: 4px; height: 4px; }
.clean-ui #view-ritual .content-area > .clean-page-title { order: 0; }
.clean-ui #view-ritual #clean-review-status { order: 1; }
.clean-ui #view-ritual #clean-review-summary { order: 2; }
.clean-ui #view-ritual #clean-review-split { order: 3; }
.clean-ui #view-ritual .ritual-achievements { order: 4; padding: 9px 12px; }
.clean-ui #view-ritual .ritual-achievements > summary { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 32px; cursor: pointer; list-style: none; }
.clean-ui #view-ritual .ritual-achievements > summary::-webkit-details-marker { display: none; }
.clean-ui #view-ritual .ritual-achievements > summary::after { content: '⌄'; color: #64748B; }
.clean-ui #view-ritual .ritual-achievements[open] > summary::after { content: '⌃'; }
.clean-ui #view-ritual .ritual-achievements[open] .ritual-card-text { padding-top: 8px; }
.clean-ui #view-ritual .content-area > .card:has(#ritual-settle) { order: 5; }
.clean-ui #view-ritual .content-area > .card:has(#ritual-next) { order: 6; }
.clean-ui #view-ritual #ritual-approve { order: 7; }
.clean-ui #view-ritual .clean-review-status { padding: 8px 12px; border-color: #BBF7D0; background: #DCFCE7; }
.clean-ui #view-ritual .clean-review-status .row-icon { width: 36px; height: 36px; background: #22C55E; color: #fff; }
.clean-ui #view-ritual .clean-review-summary { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); align-items: center; }
.clean-ui #view-ritual .clean-review-stat { display: grid; grid-template-columns: 30px minmax(0,1fr); align-items: center; gap: 6px; }
.clean-ui #view-ritual .clean-review-stat .clean-icon { width: 30px; height: 30px; }
.clean-ui #view-ritual .clean-review-stat small { font-size: 10px; }
.clean-ui #view-ritual .clean-review-stat strong { font-size: 12px; white-space: nowrap; }

/* 13 — keep the approved recent-activity density without deleting older records. */
.clean-ui #view-activity-new .activity-integrity { order: 3; }
.clean-ui #view-activity-new #activity-new-history { order: 2; }

/* T76 — fidelidade estrutural da prévia aprovada; estados adicionais continuam configuráveis. */
.clean-ui #login .welcome-art {
  position: relative;
  display: block;
  width: min(100%, 278px);
  height: 184px;
  min-height: 184px;
  margin: 7px auto 2px;
}
.clean-ui #login .welcome-art::before {
  content: '';
  position: absolute;
  inset: 26px 9px;
  border: 1.5px dashed #CBD5E1;
  border-radius: 50%;
}
.clean-ui #login .welcome-art-card {
  position: absolute;
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  border-radius: 14px;
  box-shadow: 0 5px 14px rgb(15 23 42 / 9%);
}
.clean-ui #login .welcome-art-card svg { width: 25px; height: 25px; }
.clean-ui #login .welcome-art-card:nth-child(1) { top: 2px; left: 13px; }
.clean-ui #login .welcome-art-card:nth-child(3) { top: 3px; right: 13px; }
.clean-ui #login .welcome-art-card:nth-child(4) { bottom: 2px; left: 16px; }
.clean-ui #login .welcome-art-card:nth-child(5) { right: 16px; bottom: 1px; }
.clean-ui #login .welcome-receipt {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  display: flex;
  width: 108px;
  height: 126px;
  transform: translate(-50%, -50%);
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  padding: 12px 10px 10px;
  border: 1px solid #E6ECF5;
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 4px 12px rgb(15 23 42 / 9%);
}
.clean-ui #login .welcome-receipt strong { width: 100%; padding-bottom: 7px; border-bottom: 1px dashed #CBD5E1; text-align: center; font-size: 16px; }
.clean-ui #login .welcome-receipt i { width: 66%; height: 5px; border-radius: 4px; background: #E2E8F0; }
.clean-ui #login .welcome-receipt i:nth-of-type(2) { width: 48%; }
.clean-ui #login .welcome-receipt small { color: #94A3B8; font-size: 9px; font-weight: 750; letter-spacing: .06em; }
.clean-ui #login .welcome-actions { margin-top: 4px; }

/* Home defaults to the two dashboard panels shown in T76. Extra panels remain in Personalizar. */
.clean-ui #view-home-new .clean-home-stat { position: relative; min-height: 82px; padding: 10px 11px; gap: 9px; }
.clean-ui #view-home-new .clean-home-stat .clean-icon { width: 40px; height: 40px; }
.clean-ui #view-home-new .clean-home-stat strong { font-size: clamp(16px, 4.2vw, 18px); }
.clean-ui #view-home-new .clean-home-expense { padding-right: 29px; }
.clean-ui #view-home-new #header-eye { position: absolute; top: 4px; right: 3px; width: 24px; min-width: 24px; height: 24px; min-height: 24px; padding: 4px; border: 0; color: #64748B; }
.clean-ui #view-home-new #header-eye svg { width: 16px; height: 16px; }
.clean-ui #view-home-new .home-tools { display: none; }
.clean-ui #view-home-new #home-cards [data-card="daily"] .chart-box { height: 84px; }
.clean-ui #view-home-new #home-cards [data-card="daily"] .chart-box svg { max-height: 84px; }
.clean-ui #view-home-new #home-cards [data-card="daily"] .chart-period summary { min-height: 22px; }
.clean-ui #view-home-new #home-cards [data-card="bills"] #bills-all { font-size: 0; }
.clean-ui #view-home-new #home-cards [data-card="bills"] #bills-all::after { content: '›'; font-size: 21px; line-height: 1; }

/* T76 uses expanded, grouped account settings by default; each section remains collapsible. */
.clean-ui #view-settings-new .clean-settings-group { padding: 0; border: 0; background: transparent; }
.clean-ui #view-settings-new .clean-settings-group > summary { border: 0; background: transparent; }
.clean-ui #view-settings-new .clean-settings-group[open] > summary { padding-bottom: 4px; }
.clean-ui #view-settings-new .clean-settings-group > .card { margin: 0 0 8px; }

/* T77 · ícones raster do GPT Images aplicados como sprite nas linhas de lançamentos.
   Os SVGs inline permanecem como fallback e no restante da interface. */
.clean-ui .tx .cat-ico.gpt-icon-sprite {
  border-radius: 50%;
  background-image: url('/icons/ux14-icon-sprite.png');
  background-repeat: no-repeat;
  background-size: 500% 400%;
}
.clean-ui .tx .cat-ico.gpt-icon-sprite > svg { display: none; }

/* T78 · feedback de hover/toque para manter botões e ícones responsivos sem ruído. */
.clean-ui :is(.icon-btn, .clean-home-actions > button, .nav-item:not(#fab), .cat-opt, .tx) {
  transition: color .18s ease, background-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.clean-ui :is(.icon-btn, .clean-home-actions > button, .nav-item:not(#fab), .cat-opt, .tx):focus-visible {
  outline: 3px solid rgba(22, 119, 255, .28);
  outline-offset: 2px;
}
.clean-ui #home-quick-scan .clean-icon {
  transition: color .18s ease, background-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.clean-ui .tx:active,
.clean-ui .cat-opt:active,
.clean-ui .clean-home-actions > button:active { transform: scale(.985); }
.clean-ui .tx:active .cat-ico.gpt-icon-sprite { transform: scale(1.05); }
.clean-ui #home-quick-scan:active .clean-icon {
  background-color: #FFDCD7;
  color: #D63E35;
  box-shadow: 0 0 0 5px rgba(237, 87, 75, .10), 0 7px 16px rgba(237, 87, 75, .18);
}
@media (hover: hover) and (pointer: fine) {
  .clean-ui .icon-btn:hover,
  .clean-ui .nav-item:not(#fab):hover { color: #0B72F0; background-color: #EEF6FF; }
  .clean-ui .nav-item:not(#fab):hover { border-radius: 12px; }
  .clean-ui .cat-opt:hover .cat-ico { transform: translateY(-2px); box-shadow: 0 5px 12px rgba(15, 23, 42, .12); }
  .clean-ui .tx:hover { background-color: color-mix(in srgb, var(--category-bg, #EAF5FF) 38%, transparent); border-radius: 12px; }
  .clean-ui .tx:hover .cat-ico { transform: scale(1.06); }
  .clean-ui #home-quick-scan:hover { color: #D63E35; }
  .clean-ui #home-quick-scan:hover .clean-icon {
    background-color: #FFDCD7;
    color: #D63E35;
    box-shadow: 0 0 0 5px rgba(237, 87, 75, .10), 0 7px 16px rgba(237, 87, 75, .18);
    transform: translateY(-2px) scale(1.05);
  }
}
@media (prefers-reduced-motion: reduce) {
  .clean-ui :is(.icon-btn, .clean-home-actions > button, .nav-item:not(#fab), .cat-opt, .tx, #home-quick-scan .clean-icon) { transition: none; }
}

/* T80 · feedback de interação consistente em toda a interface. */
.clean-ui :is(button, [role="button"], summary):not(:disabled):not([aria-disabled="true"]) {
  transition: color .18s ease, background-color .18s ease, border-color .18s ease,
    box-shadow .18s ease, transform .18s ease, filter .18s ease;
}
.clean-ui a[href] { transition: color .18s ease; }
.clean-ui :is(button, [role="button"], summary):not(:disabled):not([aria-disabled="true"]):active {
  transform: scale(.985);
  filter: saturate(1.08);
}
@media (hover: hover) and (pointer: fine) {
  .clean-ui :is(button, [role="button"], summary):not(:disabled):not([aria-disabled="true"]):hover {
    border-color: color-mix(in srgb, currentColor 24%, #B9D8FF);
    box-shadow: 0 4px 14px rgba(22, 119, 255, .12);
    filter: saturate(1.08) brightness(1.015);
    transform: translateY(-1px);
  }
  .clean-ui a[href]:hover { color: #0B72F0; }
}
@media (prefers-reduced-motion: reduce) {
  .clean-ui :is(button, a[href], [role="button"], summary) { transition: none !important; }
}

/* Screen 12 — match the approved monthly review hierarchy and card proportions. */
.clean-ui #view-ritual .content-area > .clean-page-title { order: 0; margin-bottom: 0; }
.clean-ui #view-ritual .clean-review-month { order: 1; display: grid; grid-template-columns: 36px 1fr 36px; align-items: center; justify-items: center; min-height: 30px; margin: -2px 0 1px; }
.clean-ui #view-ritual .clean-review-month strong { color: #0F172A; font-size: 15px; font-weight: 650; }
.clean-ui #view-ritual .clean-review-month .icon-btn { display: grid; width: 32px; height: 30px; min-height: 30px; padding: 6px; place-items: center; color: #64748B; }
.clean-ui #view-ritual .clean-review-month .icon-btn svg { width: 18px; height: 18px; }
.clean-ui #view-ritual #clean-review-status { order: 2; display: flex; min-height: 43px; padding: 7px 12px; border: 0; border-radius: 14px; background: #DCFCE7; }
.clean-ui #view-ritual #clean-review-status .row-item,
.clean-ui #view-ritual #clean-review-status .row-left { justify-content: center; }
.clean-ui #view-ritual #clean-review-status .row-item { min-height: 0; padding: 0; border: 0; }
.clean-ui #view-ritual #clean-review-status .row-icon { width: 28px; height: 28px; background: #22C55E; color: #fff; }
.clean-ui #view-ritual #clean-review-status .row-text strong { color: #166534; font-size: 15px; }
.clean-ui #view-ritual #clean-review-status .row-text span { display: none; }
.clean-ui #view-ritual #clean-review-status.review-attention { background: #FEF3C7; }
.clean-ui #view-ritual #clean-review-status.review-attention .row-text span { display: block; margin-top: 2px; color: #92400E; font-size: 11px; }
.clean-ui #view-ritual #clean-review-summary { order: 3; display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 7px; padding: 0; border: 0; background: transparent; }
.clean-ui #view-ritual #clean-review-summary .clean-review-stat { display: grid; grid-template-columns: 1fr; justify-items: center; gap: 4px; min-width: 0; min-height: 85px; padding: 9px 3px; border: 1px solid #E6ECF5; border-radius: 15px; background: #fff; box-shadow: 0 3px 10px rgb(15 23 42 / 4%); text-align: center; }
.clean-ui #view-ritual #clean-review-summary .clean-icon { width: 34px; height: 34px; }
.clean-ui #view-ritual #clean-review-summary .tone-green { background: #22C55E; color: #fff; }
.clean-ui #view-ritual #clean-review-summary .tone-coral { background: #F87171; color: #fff; }
.clean-ui #view-ritual #clean-review-summary .tone-blue { background: #DBEAFE; color: #1677FF; }
.clean-ui #view-ritual #clean-review-summary small { display: block; color: #64748B; font-size: 11px; }
.clean-ui #view-ritual #clean-review-summary strong { display: block; color: #0F172A; font-size: clamp(13px, 3.7vw, 15px); line-height: 1.15; white-space: nowrap; }
.clean-ui #view-ritual #clean-review-split { order: 4; padding: 12px; }
.clean-ui #view-ritual #clean-review-split .card-title-row { margin-bottom: 8px; }
.clean-ui #view-ritual #clean-review-split .card-title { font-size: 14px; }
.clean-ui #view-ritual #clean-review-split-badge { color: #64748B; font-size: 12px; white-space: nowrap; }
.clean-ui #view-ritual #clean-review-split .progress-track { height: 12px; margin: 0 0 8px; border-radius: 999px; background: #FACC15; }
.clean-ui #view-ritual #clean-review-split .progress-fill { border-radius: 999px 0 0 999px; }
.clean-ui #view-ritual #clean-review-split-members { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; }
.clean-ui #view-ritual #clean-review-split-members .row-item { min-height: 42px; padding: 2px 0; border: 0; }
.clean-ui #view-ritual #clean-review-split-members .row-left { gap: 7px; }
.clean-ui #view-ritual .clean-review-member-icon { width: 31px; height: 31px; flex: 0 0 31px; }
.clean-ui #view-ritual #clean-review-split-members .row-text strong,
.clean-ui #view-ritual #clean-review-split-members .row-right strong { font-size: 12px; white-space: nowrap; }
.clean-ui #view-ritual #clean-review-split-members .row-right { margin-left: auto; }
.clean-ui #view-ritual .clean-review-settle { order: 5; display: block; padding: 10px 12px; border-color: #FDE68A; border-radius: 14px; background: #FEF3C7; }
.clean-ui #view-ritual .clean-review-settle .card-title-row { margin: 0; }
.clean-ui #view-ritual .clean-review-settle .card-title-row > svg { width: 17px; height: 17px; color: #94A3B8; }
.clean-ui #view-ritual .clean-review-settle-body { display: flex; align-items: center; gap: 9px; padding-top: 5px; }
.clean-ui #view-ritual .clean-review-settle-body > .clean-icon { width: 36px; height: 36px; flex: 0 0 36px; background: #FDE68A; color: #B45309; }
.clean-ui #view-ritual .clean-review-settle .ritual-card-text { margin: 0; color: #713F12; font-size: 13px; }
.clean-ui #view-ritual #clean-review-next-month-card { order: 6; padding: 12px; }
.clean-ui #view-ritual #clean-review-next-month-card .card-title-row { margin-bottom: 4px; }
.clean-ui #view-ritual #clean-review-next-month-list { gap: 0; }
.clean-ui #view-ritual #clean-review-next-month-list .clean-review-bill { display: flex; width: 100%; min-height: 48px; padding: 5px 0; border: 0; border-bottom: 1px solid #E6ECF5; background: transparent; text-align: left; }
.clean-ui #view-ritual #clean-review-next-month-list .clean-review-bill:last-child { border-bottom: 0; }
.clean-ui #view-ritual #clean-review-next-month-list .clean-icon { width: 34px; height: 34px; flex: 0 0 34px; }
.clean-ui #view-ritual #clean-review-next-month-list .row-text strong,
.clean-ui #view-ritual #clean-review-next-month-list .row-right strong { font-size: 13px; }
.clean-ui #view-ritual .clean-review-empty { margin: 8px 0 2px; }
.clean-ui #view-ritual .clean-review-details { order: 7; padding: 0 12px; }
.clean-ui #view-ritual .clean-review-details > summary { min-height: 40px; display: flex; align-items: center; justify-content: space-between; color: #475569; font-size: 12px; font-weight: 600; cursor: pointer; list-style: none; }
.clean-ui #view-ritual .clean-review-details > summary::-webkit-details-marker { display: none; }
.clean-ui #view-ritual .clean-review-details > summary::after { content: '⌄'; color: #64748B; }
.clean-ui #view-ritual .clean-review-details[open] > summary::after { content: '⌃'; }
.clean-ui #view-ritual .clean-review-details-body { display: grid; gap: 8px; padding-bottom: 10px; }
.clean-ui #view-ritual .clean-review-details-body > .card { margin: 0; padding: 10px; }
.clean-ui #view-ritual #ritual-approve { order: 8; }

/* Screen 09 — task rows show the owner and due date at a glance. */
.clean-ui #view-tasks-new .tf-dashboard-list .tf-task-row { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; align-items: center; gap: 5px; min-height: 68px; padding: 6px 7px; border: 1px solid #E6ECF5; border-radius: 12px; background: #fff; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-check { width: 38px; min-width: 38px; min-height: 40px; padding: 10px; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-task-content { gap: 2px; min-height: 48px; padding: 4px 3px; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-task-title { color: #0F172A; font-size: 13.5px; font-weight: 650; line-height: 1.25; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-task-assignee { display: flex; align-items: center; gap: 4px; color: #64748B; font-size: 11px; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-task-assignee svg { width: 14px; height: 14px; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-task-extra { color: #64748B; font-size: 10px; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-task-due { display: inline-flex; align-items: center; gap: 4px; min-height: 30px; padding: 5px 8px; border-radius: 999px; background: #F1F5F9; color: #475569; font-size: 11px; white-space: nowrap; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-task-due svg { width: 15px; height: 15px; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-task-due.is-today { background: #FEF3C7; color: #B45309; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-task-row .tf-star { display: none; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-completed-heading { display: flex; align-items: center; justify-content: space-between; margin: 10px 0 3px; color: #0F172A; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-completed-heading h2 { margin: 0; font-size: 14px; font-weight: 700; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-completed-heading > span { color: #64748B; font-size: 11px; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-completed-expand { min-height: 30px; padding: 5px 8px; border: 0; background: transparent; color: #1677FF; font-size: 11px; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-completed-list .tf-task-row { min-height: 58px; opacity: .76; }
.clean-ui #view-tasks-new .tf-dashboard-list .tf-completed-list .tf-task-title { text-decoration: line-through; color: #64748B; }

/* Screen 14 — the approved four groups stay concise; detailed controls open on demand. */
.clean-ui #view-settings-new .clean-settings-shortcuts { display: grid; gap: 8px; }
.clean-ui #view-settings-new .clean-settings-shortcut-group { overflow: hidden; padding: 0 10px; border: 1px solid #E6ECF5; border-radius: 13px; background: #fff; }
.clean-ui #view-settings-new .clean-settings-shortcut-group h2 { margin: 9px 0 3px; color: #0F172A; font-size: 13px; font-weight: 700; }
.clean-ui #view-settings-new .clean-settings-shortcut-row { display: flex; align-items: center; gap: 8px; width: 100%; min-height: 40px; padding: 5px 0; border: 0; border-top: 1px solid #E6ECF5; background: transparent; color: #0F172A; text-align: left; font-size: 12px; }
.clean-ui #view-settings-new .clean-settings-shortcut-row > .clean-icon { display: grid; flex: 0 0 30px; width: 30px; height: 30px; place-items: center; border-radius: 50%; }
.clean-ui #view-settings-new .clean-settings-shortcut-row > .clean-icon svg { width: 17px; height: 17px; }
.clean-ui #view-settings-new .clean-settings-shortcut-row > span:nth-child(2) { flex: 1 1 auto; min-width: 0; }
.clean-ui #view-settings-new .clean-settings-shortcut-row > small,
.clean-ui #view-settings-new .clean-settings-shortcut-row > strong { flex: 0 1 auto; color: #64748B; font-size: 10px; font-weight: 500; text-align: right; white-space: nowrap; }
.clean-ui #view-settings-new .clean-settings-shortcut-row .shortcut-chevron { flex: 0 0 15px; width: 15px; height: 15px; color: #334155; }
.clean-ui #view-settings-new .clean-settings-shortcut-row.is-danger > span:nth-child(2) { color: #DC2626; }
.clean-ui #view-settings-new .clean-settings-advanced { margin-top: 3px; padding: 0 10px; border: 1px solid #E6ECF5; border-radius: 12px; background: #fff; }
.clean-ui #view-settings-new .clean-settings-advanced > summary { min-height: 38px; display: flex; align-items: center; color: #64748B; font-size: 11px; font-weight: 600; cursor: pointer; list-style: none; }
.clean-ui #view-settings-new .clean-settings-advanced > summary::-webkit-details-marker { display: none; }
.clean-ui #view-settings-new .clean-settings-advanced > summary::after { content: '⌄'; margin-left: auto; }
.clean-ui #view-settings-new .clean-settings-advanced[open] > summary::after { content: '⌃'; }
.clean-ui #view-settings-new .clean-settings-advanced > .clean-settings-group { margin-bottom: 8px; }

/* 07 — filtros secundários sob demanda e ícones vetoriais por categoria. */
.clean-ui #view-list-new .flow-header { grid-template-columns: 42px minmax(0, 1fr) auto; }
.clean-ui #view-list-new .flow-header-actions { display: flex; align-items: center; gap: 2px; }
.clean-ui #view-list-new .flow-header-actions .flow-back { width: 38px; min-width: 38px; height: 38px; min-height: 38px; }
.clean-ui #view-list-new .flow-header-actions .flow-back svg { width: 20px; height: 20px; }
.clean-ui #view-list-new .list-search { display: none; }
.clean-ui #view-list-new.search-open .list-search { display: flex; }
.clean-ui #view-list-new .list-filters { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.clean-ui #view-list-new .list-filter-extra { display: flex; justify-content: flex-end; }
.clean-ui #view-list-new .list-filter-extra[hidden] { display: none; }
.clean-ui #view-list-new .list-filter-extra .list-filter { min-height: 34px; padding: 5px 12px; }
.clean-ui #view-list-new .list-category-icon { width: 38px; height: 38px; flex: 0 0 38px; border: 0; }
.clean-ui #view-list-new .list-category-icon svg { width: 21px; height: 21px; }
.clean-ui #view-list-new #list-tx-cards { gap: 10px; }
.clean-ui #view-list-new .list-day-group { display: grid; gap: 5px; }
.clean-ui #view-list-new .list-day-label { margin: 0; color: #64748B; font-size: 14px; line-height: 1.25; font-weight: 650; }
.clean-ui #view-list-new .list-day-card { padding: 0 12px; }
.clean-ui #view-list-new .list-tx-row { min-height: 54px; gap: 8px; margin: 0; padding: 5px 0; border: 0; border-bottom: 1px solid #EEF2F7; border-radius: 0; background: transparent; }
.clean-ui #view-list-new .list-tx-row:last-child { border-bottom: 0; }
.clean-ui #view-list-new .list-tx-row .row-left { flex: 1 1 auto; gap: 9px; }
.clean-ui #view-list-new .list-tx-row .row-text strong { font-size: 13.5px; line-height: 1.25; }
.clean-ui #view-list-new .list-tx-row .row-text span { font-size: 11.5px; line-height: 1.3; margin-top: 2px; }
.clean-ui #view-list-new .list-tx-right { display: flex; align-items: center; justify-content: flex-end; gap: 5px; flex: 0 0 auto; max-width: none; white-space: nowrap; }
.clean-ui #view-list-new .list-tx-right .list-tx-time { color: #94A3B8; font-size: 10.5px; font-weight: 500; }
.clean-ui #view-list-new .list-tx-right strong { color: #0F172A; font-size: 13px; font-weight: 700; white-space: nowrap; }
.clean-ui #view-list-new .list-tx-right strong[style*="green"] { color: #16A34A !important; }
.clean-ui #view-list-new .list-tx-right svg { width: 15px; height: 15px; flex: 0 0 15px; color: #94A3B8; }
.clean-ui #view-list-new .list-category-icon { border-radius: 50%; }
.clean-ui #view-list-new .list-category-icon svg { fill: none; stroke: currentColor; }
.clean-ui #view-list-new #list-synthesis { margin-top: 2px; }
@media (max-width: 360px) {
  .clean-ui #view-list-new .list-tx-right { gap: 3px; }
  .clean-ui #view-list-new .list-tx-right .list-tx-time { display: none; }
  .clean-ui #view-list-new .list-tx-row .row-text strong { font-size: 12.5px; }
}

/* 06 — editor compacto: ações principais primeiro, controles avançados recolhidos. */
.clean-ui #view-tx > .flow-header { margin-bottom: 0; }
.clean-ui #view-tx .tx-header-status { min-width: 42px; display: flex; justify-content: flex-end; }
.clean-ui #view-tx .tx-help-button { width: 26px; height: 26px; padding: 0; border: 2px solid #334155; border-radius: 50%; background: transparent; color: #334155; font-size: 16px; line-height: 1; font-weight: 650; }
.clean-ui #view-tx .content-area { gap: 10px; padding-top: 2px; }
.clean-ui #view-tx .seg-control { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; padding: 0; background: transparent; }
.clean-ui #view-tx .seg-item { min-height: 52px; display: flex; align-items: center; justify-content: center; gap: 8px; border: 1px solid #E6ECF5; border-radius: 14px; background: #fff; color: #64748B; font-size: 14px; font-weight: 650; }
.clean-ui #view-tx .seg-item.active { border: 1.5px solid #1677FF; background: #E8F3FF; color: #0F172A; box-shadow: none; }
.clean-ui #view-tx .tx-kind-icon { width: 32px; height: 32px; display: inline-grid; place-items: center; border-radius: 50%; }
.clean-ui #view-tx .tx-kind-icon svg { width: 18px; height: 18px; }
.clean-ui #view-tx .tx-value-card { margin: 0; padding: 3px 1px 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.clean-ui #view-tx .tx-val-top { min-height: 22px; display: flex; align-items: center; justify-content: space-between; }
.clean-ui #view-tx .tx-val-label { color: #64748B; font-size: 14px; font-weight: 600; }
.clean-ui #view-tx .tx-val-hint { color: #94A3B8; font-size: 11px; }
.clean-ui #view-tx .tx-val-input-wrap { min-height: 48px; margin: 0 0 5px; padding: 0; border: 0; background: transparent; }
.clean-ui #view-tx .tx-val-input-wrap { display: flex; align-items: baseline; gap: 6px; }
.clean-ui #view-tx .tx-val-input-wrap .tx-currency { display: inline; color: #0F172A; font-size: 24px; font-weight: 700; }
.clean-ui #view-tx #tx-view-amount { width: 100%; min-height: 48px; padding: 0; border: 0; background: transparent; color: #0F172A; font-size: 34px; font-weight: 750; letter-spacing: -.04em; }
.clean-ui #view-tx .tx-val-desc { display: grid; gap: 5px; margin: 0; }
.clean-ui #view-tx .tx-val-desc > span { color: #64748B; font-size: 13px; font-weight: 600; }
.clean-ui #view-tx .tx-val-desc input { min-height: 46px; padding: 0 14px; border: 1px solid #DDE6F2; border-radius: 12px; background: #fff; color: #0F172A; font-size: 15px; }
.clean-ui #view-tx .tx-category-picker { margin: 0; padding: 0; }
.clean-ui #view-tx .tx-picker-label { display: block; margin: 0 0 6px; color: #64748B; font-size: 13px; font-weight: 650; }
.clean-ui #view-tx .cat-grid { gap: 7px; }
.clean-ui #view-tx .cat-opt { min-height: 72px; padding: 6px 3px; gap: 4px; border: 1px solid #E6ECF5; border-radius: 13px; background: #fff; font-size: 11px; }
.clean-ui #view-tx .cat-opt.is-on { position: relative; border: 1.5px solid #1677FF; background: #F5FAFF; color: #0F172A; box-shadow: none; }
.clean-ui #view-tx .cat-opt.is-on::after { content: '✓'; position: absolute; top: 5px; right: 5px; width: 17px; height: 17px; display: grid; place-items: center; border-radius: 50%; background: #1677FF; color: #fff; font-size: 11px; font-weight: 700; }
.clean-ui #view-tx .cat-opt .cat-ico { width: 36px; height: 36px; }
.clean-ui #view-tx .tx-meta-card { display: grid; gap: 0; margin: 0; padding: 0 12px; border-radius: 13px; }
.clean-ui #view-tx .tx-meta-row { min-height: 40px; display: flex; align-items: center; gap: 7px; border: 0; border-bottom: 1px solid #EEF2F7; background: transparent; color: #0F172A; font: inherit; text-align: left; }
.clean-ui #view-tx .tx-meta-row:last-of-type { border-bottom: 0; }
.clean-ui #view-tx .tx-meta-label { display: inline-flex; align-items: center; gap: 7px; min-width: 106px; color: #334155; font-size: 12.5px; font-weight: 600; }
.clean-ui #view-tx .tx-meta-label svg { width: 17px; height: 17px; color: #334155; }
.clean-ui #view-tx .tx-meta-row input[type="date"] { width: auto; min-width: 0; margin-left: auto; padding: 0; border: 0; background: transparent; color: #334155; font-size: 11.5px; text-align: right; }
.clean-ui #view-tx .tx-meta-value { min-width: 0; margin-left: auto; overflow: hidden; color: #334155; font-size: 11.5px; font-weight: 550; text-overflow: ellipsis; white-space: nowrap; }
.clean-ui #view-tx .tx-meta-button { width: 100%; padding: 0; cursor: pointer; }
.clean-ui #view-tx .tx-meta-chevron,
.clean-ui #view-tx .tx-meta-edit svg { width: 15px; height: 15px; flex: 0 0 15px; color: #64748B; }
.clean-ui #view-tx .tx-paid-by { max-width: none; padding: 0; border: 0; background: transparent; text-align: right; font-size: 10.5px; cursor: pointer; }
.clean-ui #view-tx .tx-meta-edit { width: 28px; height: 32px; display: grid; place-items: center; padding: 0; border: 0; background: transparent; cursor: pointer; }
.clean-ui #view-tx .tx-share-summary { display: none; }
.clean-ui #view-tx .tx-view-details { margin: 0; padding: 0 12px; border: 1px solid #E6ECF5; border-radius: 13px; background: #fff; }
.clean-ui #view-tx .tx-view-details:not([open]) { display: none; }
.clean-ui #view-tx .tx-view-details > summary,
.clean-ui #view-tx .tx-split-details > summary,
.clean-ui #view-tx .tx-event-details > summary { min-height: 39px; display: flex; align-items: center; color: #334155; font-size: 12.5px; font-weight: 650; cursor: pointer; list-style: none; }
.clean-ui #view-tx .tx-view-details > summary { display: none; }
.clean-ui #view-tx .tx-view-details > summary::-webkit-details-marker,
.clean-ui #view-tx .tx-split-details > summary::-webkit-details-marker,
.clean-ui #view-tx .tx-event-details > summary::-webkit-details-marker { display: none; }
.clean-ui #view-tx .tx-view-details > summary::after,
.clean-ui #view-tx .tx-split-details > summary::after,
.clean-ui #view-tx .tx-event-details > summary::after { content: '⌄'; margin-left: auto; color: #64748B; }
.clean-ui #view-tx .tx-view-details[open] > summary::after,
.clean-ui #view-tx .tx-split-details[open] > summary::after,
.clean-ui #view-tx .tx-event-details[open] > summary::after { content: '⌃'; }
.clean-ui #view-tx .tx-view-details .tx-picker { padding: 0 0 8px; }
.clean-ui #view-tx .tx-view-details .tx-picker-pm { display: flex; flex-wrap: wrap; gap: 6px; }
.clean-ui #view-tx .tx-view-details .tx-picker-pm .chip { min-height: 38px; }
.clean-ui #view-tx .tx-event-details { border-top: 1px solid #EEF2F7; }
.clean-ui #view-tx .tx-event-details .row-item { min-height: 42px; padding: 4px 0; }
.clean-ui #view-tx .tx-split-details { border-top: 1px solid #EEF2F7; }
.clean-ui #view-tx .tx-split-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; padding: 0 0 8px; }
.clean-ui #view-tx .tx-split-opt { min-height: 38px; }
.clean-ui #view-tx .tx-split-explain { padding: 0 0 8px; font-size: 11px; }
.clean-ui #view-tx #tx-view-save { min-height: 50px; margin-top: 12px; border-radius: 13px; font-size: 15px; }
.clean-ui #view-tx .form-error { margin: 0; }

/* Fechamento de fidelidade: viewport seguro e proporções das telas 01, 02 e 14. */
.clean-ui #login.app-shell,
.clean-ui #intro.app-shell {
  padding-top: var(--safe-t, 0px);
}
.clean-ui #login .welcome-pane {
  min-height: calc(100dvh - var(--safe-t, 0px));
}
.clean-ui #login .welcome-actions {
  margin-top: auto;
}
.clean-ui #login .welcome-actions :is(.btn-full, .btn) {
  min-height: 46px;
}
.clean-ui #intro.app-shell {
  height: 100dvh;
  overflow: hidden;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
}
.clean-ui #intro > .content-area.intro-flow {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  padding-bottom: max(48px, var(--safe-b, 0px));
}
.clean-ui #intro .intro-step-panel[data-intro-step="1"] {
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
  min-height: 100%;
}
.clean-ui #intro .intro-step-panel[data-intro-step="1"] > .card {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.clean-ui #intro .intro-step-panel[data-intro-step="1"] > .card:first-child .card-title-row,
.clean-ui #intro .intro-step-panel[data-intro-step="1"] > .card:nth-child(2) .card-title-row {
  display: none;
}
.clean-ui #intro .intro-step-panel[data-intro-step="1"] > .card:nth-child(2) .field {
  display: grid;
  gap: 6px;
  color: #0F172A;
  font-size: 14px;
  font-weight: 600;
}
.clean-ui #intro .intro-step-panel[data-intro-step="1"] > .card:nth-child(2) input {
  min-height: 44px;
  font-size: 15px;
}
.clean-ui #intro .intro-step-panel[data-intro-step="1"] > .card:nth-child(3) .card-title-row {
  display: flex;
  margin: 2px 0 6px;
}
.clean-ui #intro .intro-step-panel[data-intro-step="1"] > .card:nth-child(3) .card-title-row > .badge {
  display: none;
}
.clean-ui #intro .intro-step-panel[data-intro-step="1"] > .card:nth-child(3) .card-title {
  font-size: 14px;
}
.clean-ui #intro .intro-step-panel[data-intro-step="1"] .intro-choice-card {
  position: relative;
  min-height: 142px;
  padding: 12px 8px;
}
.clean-ui #intro .intro-step-panel[data-intro-step="1"] .intro-choice-card.is-on::after {
  content: '✓';
  position: absolute;
  top: 7px;
  right: 7px;
  display: grid;
  width: 20px;
  height: 20px;
  place-items: center;
  border-radius: 50%;
  background: #1677FF;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
}
.clean-ui #intro .intro-step-panel[data-intro-step="1"] .intro-tiles {
  gap: 7px;
}
.clean-ui #intro .intro-step-panel[data-intro-step="1"] .intro-tile {
  min-height: 50px;
  padding: 7px 8px;
  border-color: #E6ECF5;
  background: #fff;
  font-size: 12px;
}
.clean-ui #intro .intro-step-panel[data-intro-step="1"] .intro-tile.is-on {
  border-color: #1677FF;
  background: #fff;
}
.clean-ui #intro .intro-step-panel[data-intro-step="1"] .intro-tile > span {
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  border-radius: 50%;
}
.clean-ui #intro .intro-step-panel[data-intro-step="1"] .intro-tile:nth-child(1) > span { background: #DCFCE7; color: #16A34A; }
.clean-ui #intro .intro-step-panel[data-intro-step="1"] .intro-tile:nth-child(2) > span { background: #DBEAFE; color: #1D4ED8; }
.clean-ui #intro .intro-step-panel[data-intro-step="1"] .intro-tile:nth-child(3) > span { background: #FFE4E6; color: #DC2626; }
.clean-ui #intro .intro-step-panel[data-intro-step="1"] .intro-tile:nth-child(4) > span { background: #FEF3C7; color: #D97706; }
.clean-ui #intro .intro-step-panel[data-intro-step="1"] > .btn-full {
  margin-top: auto;
  min-height: 46px;
}
@media (min-width: 380px) and (min-height: 780px) {
  .clean-ui #login .welcome-pane h1 { margin-top: 23px; }
  .clean-ui #login .welcome-art { height: 260px; min-height: 260px; margin: 40px auto 4px; }
}
@media (max-height: 779px) {
  .clean-ui #login .welcome-art { height: clamp(132px, 25vh, 180px); min-height: clamp(132px, 25vh, 180px); margin: 4px auto; }
}
.clean-ui #view-settings-new #clean-profile-card {
  padding: 2px 12px;
}
.clean-ui #view-settings-new #clean-profile-card .row-item {
  min-height: 38px;
  padding: 0;
  border: 0;
}
.clean-ui #view-settings-new #clean-profile-card .clean-avatar {
  width: 36px;
  height: 36px;
  min-width: 36px;
  font-size: 16px;
}
.clean-ui #view-settings-new #clean-profile-card .row-text strong { font-size: 15px; }
.clean-ui #view-settings-new #clean-profile-card .row-text span { font-size: 12px; }

/* Evita que o CTA fixo cubra o resumo expansível de contas no viewport móvel. */
@media (max-width: 600px) {
  .clean-ui #view-bills-new .content-area { gap: 6px; }
  .clean-ui #view-bills-new .calm-banner { padding: 10px 12px; }
  .clean-ui #view-bills-new .calm-banner h2 { font-size: 21px; }
  .clean-ui #view-bills-new .bills-new-row { min-height: 48px; padding: 7px 0; }
  .clean-ui #view-bills-new .bills-new-pay { min-height: 44px; margin: 0 0 3px 44px; }
  .clean-ui #view-bills-new .bills-new-radar-summary { min-height: 36px; }
  .clean-ui #view-bills-new .bills-new-radar:not([open]) { padding: 2px 10px; }
  .clean-ui #view-bills-new .cta-sticky { padding-top: 4px; padding-bottom: 4px; margin-top: 4px; }
  .clean-ui #view-goals-new .goals-new-empty-event { margin: 0; padding: 2px 8px; color: var(--muted); font-size: 11px; line-height: 1.3; text-align: center; }
}

/* Compacta a tela 14 no viewport de celular sem ocultar opções da conta. */
@media (max-width: 600px) {
  .clean-ui #view-settings-new .clean-settings-shortcuts { gap: 5px; }
  .clean-ui #view-settings-new .clean-settings-shortcut-group { padding: 0 8px; border-radius: 11px; }
  .clean-ui #view-settings-new .clean-settings-shortcut-group h2 { margin: 5px 0 1px; font-size: 12px; line-height: 1.2; }
  .clean-ui #view-settings-new .clean-settings-shortcut-row { gap: 6px; min-height: 34px; padding: 2px 0; font-size: 11px; }
  .clean-ui #view-settings-new .clean-settings-shortcut-row > .clean-icon { flex-basis: 25px; width: 25px; height: 25px; }
  .clean-ui #view-settings-new .clean-settings-shortcut-row > .clean-icon svg { width: 15px; height: 15px; }
  .clean-ui #view-settings-new .clean-settings-shortcut-row > small,
  .clean-ui #view-settings-new .clean-settings-shortcut-row > strong { font-size: 9px; }
  .clean-ui #view-settings-new .clean-settings-shortcut-row .shortcut-chevron { flex-basis: 13px; width: 13px; height: 13px; }
}
