/* Readability pass: preserve the reference palette while reflowing dense mobile cards. */
:root{--muted:#b1c6d0}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{line-height:1.55}
.app-layout,.app-layout h1,.app-layout h2,.app-layout h3,.app-layout h4{font-family:'Manrope','DM Sans',system-ui,sans-serif}
.app-layout{--muted:#b1c6d0;--edge:#23404a;font-size:16px;background:radial-gradient(ellipse at 90% 0%,#08202466,transparent 45%),#02080a}
.app-layout .card{border-radius:18px;background:linear-gradient(125deg,#09181e,#040e12);box-shadow:0 12px 30px #0002,inset 0 1px #ffffff04}
.app-layout .page-heading h1{font-size:clamp(30px,3.5vw,40px);font-weight:800;letter-spacing:-.035em;line-height:1.2}
.app-layout .page-heading p{font-size:16px;max-width:60ch;line-height:1.65}
.app-layout .stack{gap:20px}
.app-layout .stack>h2{font-size:24px;letter-spacing:-.025em;margin-top:12px}
.app-layout .button,.modal .button{min-height:48px;font-size:15px;padding:12px 18px;border-radius:12px;line-height:1.4}
.app-layout .button:not(.outline):not(.ghost){background:linear-gradient(120deg,#ffe875,#e9c62e);color:#10120c;box-shadow:0 4px 16px #e9c62e14}
.app-layout .icon-button{width:46px;height:46px;min-width:46px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #5af8e6;outline-offset:4px}
.app-layout input,.app-layout select,.modal input,.modal select,.auth-card input{font-size:16px;min-height:50px;border-radius:11px}
.field>span,.app-layout .field>span{font-size:14px;line-height:1.5}
.app-layout .section-title h2{font-size:23px}
.app-layout .section-title a{font-size:14px;min-height:44px;display:inline-flex;align-items:center}
.app-layout .inner-section{padding:26px}
.app-layout .notification-row h3{font-size:17px;line-height:1.45}
.app-layout .notification-row p,.app-layout .menu-row p{font-size:15px;line-height:1.65}
.app-layout .notification-row time{font-size:13px;color:var(--muted)}
.app-layout .campaign-row .content h3{font-size:18px}
.app-layout .campaign-row .content p{font-size:15px}
.app-layout .campaign-row .content small{font-size:13px;line-height:1.6}
.app-layout .chip{font-size:13px;line-height:1.5;padding:5px 10px;white-space:normal}
.app-layout .investment-body h3{font-size:20px;line-height:1.35}
.app-layout .investment-body .principal{font-size:16px;line-height:1.55}
.app-layout .investment-body>.muted{font-size:14px;margin:12px 0 5px}
.app-layout .investment-body .amount-small{font-size:22px;font-weight:700}
.app-layout .investment-dates,.app-layout .investment-dates>span{font-size:13px;line-height:1.6}
.app-layout .investment-dates>strong{font-size:15px}
.app-layout .pdf-indicator{font-size:13px}
.app-layout .progress-row>span,.app-layout .progress-row>b{font-size:13px}
.app-layout .progress-track{height:9px}
.app-layout .ring small{font-size:12px;line-height:1.25}
.app-layout .ring strong{font-size:28px;line-height:1.15}
.app-layout .folder .content h2{font-size:20px;line-height:1.4}
.app-layout .folder .content h3{font-size:17px;line-height:1.45}
.app-layout .folder .content p,.app-layout .folder-status{font-size:14px;line-height:1.6}
.app-layout .latest-receipt h3{font-size:18px;line-height:1.45}
.app-layout .latest-receipt p,.app-layout .code-badge{font-size:14px}
.app-layout .quote-main h3{font-size:18px;line-height:1.4}
.app-layout .quote-main>p{font-size:14px}
.app-layout .quote-update{font-size:13px;line-height:1.5}
.app-layout .growth-symbol p{font-size:14px;line-height:1.6}
.app-layout .next-action p{font-size:16px;line-height:1.65}
.app-layout .detail-summary>div>span,.app-layout .detail-summary>p{font-size:14px;line-height:1.6}
.app-layout .detail-summary>div>strong{font-size:18px;line-height:1.4}
.app-layout .document-cta>span{font-size:14px}
.app-layout .timeline-item>div h3{font-size:17px;line-height:1.5}
.app-layout .timeline-item time{font-size:14px}
.app-layout .database-time span,.app-layout .database-time small{font-size:13px}
.app-layout .database-time strong{font-size:16px}
.app-layout .side-links a{font-size:15px}
.app-layout .sidebar-foot{font-size:13px;color:var(--muted)}
.app-layout .account-name{font-size:14px}.app-layout .account-name small{font-size:12px;color:var(--muted)}
.app-layout .demo-banner{font-size:13px;line-height:1.5;padding:12px 16px}
.app-layout .totals-grid .metric .label{font-size:14px;line-height:1.5}
.app-layout .totals-grid .metric .value{font-size:20px;line-height:1.4;font-variant-numeric:tabular-nums}
.app-layout .data{font-size:15px}.app-layout .data td>small{font-size:13px}
.app-layout .admin-nav a{min-height:46px;font-size:15px;display:inline-flex;align-items:center}
@media(max-width:760px){
 .app-layout .main-app{padding:24px 20px calc(110px + env(safe-area-inset-bottom))}
 .app-layout .app-topbar{margin-bottom:30px}
 .app-layout .app-topbar .brand>img{width:43px;height:43px}
 .app-layout .app-topbar .brand-text strong{font-size:14px}
 .app-layout .app-topbar .brand-text span{font-size:10px}
 .app-layout .app-topbar .brand-text small{font-size:12px}
 .app-layout .inner-section{padding:22px 18px}
 .app-layout .active-total{grid-template-columns:1fr;padding:26px 22px;gap:20px}
 .app-layout .active-total h3{font-size:19px}
 .app-layout .active-total .amount{font-size:clamp(30px,8.3vw,43px);white-space:normal;overflow-wrap:anywhere}
 .app-layout .active-total .tokens{font-size:20px;margin-top:10px}
 .app-layout .growth-symbol{border-left:0;border-top:1px solid var(--edge);padding:18px 0 0;gap:20px}
 .app-layout .growth-bars{height:38px}.app-layout .growth-bars span{max-height:38px}
 .app-layout .next-action{padding:24px 20px;display:grid;grid-template-columns:1fr;gap:20px}
 .app-layout .next-action h2{font-size:25px}.app-layout .next-action .button{justify-self:stretch}
 .app-layout .quote-card{display:grid;grid-template-columns:58px minmax(0,1fr);padding:22px 20px;gap:12px 18px}
 .app-layout .quote-update{grid-column:2;border:0;padding:0;max-width:none}
 .app-layout .quote-main>strong{font-size:27px}
 .app-layout .notification-row{display:grid;grid-template-columns:40px minmax(0,1fr) 16px;gap:10px 12px;align-items:start;padding:20px 0}
 .app-layout .notification-row time{grid-column:2;grid-row:2}
 .app-layout .notification-row>.icon:last-child{grid-column:3;grid-row:1}
 .app-layout .campaign-row{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px}
 .app-layout .campaign-row>.button{grid-column:1/-1;margin:8px 0 0;justify-self:stretch;font-size:15px}
 .app-layout .investment-card{padding:32px 18px 20px}
 .app-layout .investment-content{grid-template-columns:84px minmax(0,1fr);gap:18px 14px;padding-top:8px}
 .app-layout .investment-content .ring{width:84px;height:84px;padding:6px}
 .app-layout .investment-body h3{font-size:18px;margin:0 0 9px}
 .app-layout .investment-body .principal{font-size:15px}
 .app-layout .investment-body .chip{font-size:12px;padding:6px 8px}
 .app-layout .investment-dates{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:5px 14px;border-left:0;border-top:1px solid var(--edge);padding:15px 0 0}
 .app-layout .investment-dates>span{margin:0}.app-layout .investment-dates>span:nth-of-type(1){grid-column:1;grid-row:1}.app-layout .investment-dates>strong:nth-of-type(1){grid-column:1;grid-row:2}.app-layout .investment-dates>span:nth-of-type(2){grid-column:2;grid-row:1}.app-layout .investment-dates>strong:nth-of-type(2){grid-column:2;grid-row:2}
 .app-layout .pdf-indicator{position:static;justify-content:flex-start;margin:0 0 10px}
 .app-layout .folder{grid-template-columns:44px minmax(0,1fr) 16px;gap:14px;padding:24px 18px}
 .app-layout .folder .circle-icon{width:44px;height:48px}
 .app-layout .folder>.icon{grid-column:3;grid-row:1}
 .app-layout .folder-status{grid-column:2;display:grid;border:0;border-top:1px solid var(--edge);padding:12px 0 0;gap:8px}
 .app-layout .folder-status>span+span{margin:0}
 .app-layout .latest-receipt{padding:22px 18px;gap:14px}
 .app-layout .info-card{padding:22px 18px;gap:14px}.app-layout .info-card p{font-size:15px;line-height:1.65}.app-layout .info-card h3{font-size:19px}
 .app-layout .detail-main{gap:16px!important}.app-layout .detail-main h2{font-size:24px}
 .app-layout .detail-main .ring{width:96px;height:96px;flex:none}
 .app-layout .detail-main>div>p{font-size:15px}
 .app-layout .detail-dates strong{font-size:16px}
 .app-layout .detail-summary{grid-template-columns:1fr;gap:18px}
 .app-layout .detail-summary>div{border:0;padding:0}
 .app-layout .document-cta{flex-wrap:wrap;gap:12px}.app-layout .document-cta>strong{font-size:18px}.app-layout .document-cta>span{flex-basis:100%;padding-left:40px}
 .app-layout .timeline-item{grid-template-columns:20px minmax(0,1fr);gap:6px 16px}.app-layout .timeline-item time{grid-column:2}.app-layout .timeline-item>div{grid-column:2}.app-layout .timeline-dot{grid-column:1;grid-row:1/3}
 .app-layout .bottom-nav{padding:9px 4px calc(9px + env(safe-area-inset-bottom));background:#041015f5;box-shadow:0 -8px 30px #0005;backdrop-filter:blur(16px)}
 .app-layout .bottom-nav a{font-size:12px;min-height:54px;gap:6px;letter-spacing:-.025em;padding:5px 1px}.app-layout .bottom-nav .icon{width:26px;height:26px}
 .app-layout #sort-apps{font-size:14px;min-height:46px;max-width:170px}
}
@media(max-width:480px){
 .app-layout .totals-grid{grid-template-columns:1fr;padding:6px 20px}
 .app-layout .totals-grid .metric{display:flex;justify-content:space-between;align-items:center;text-align:left;gap:14px;padding:16px 0;border:0}
 .app-layout .totals-grid .metric+.metric{border-top:1px solid var(--edge)}
 .app-layout .totals-grid .metric .value{font-size:19px;margin:0;white-space:nowrap}
 .app-layout .totals-grid .metric .label{max-width:125px}
 .app-layout .section-title{gap:12px;flex-wrap:wrap}
 .app-layout .database-time{grid-template-columns:1fr}
 .app-layout .detail-top h1{font-size:26px}
}
@media(max-width:360px){.app-layout .main-app{padding-left:14px;padding-right:14px}.app-layout .investment-content{grid-template-columns:74px minmax(0,1fr);gap:12px}.app-layout .investment-content .ring{width:74px;height:74px}.app-layout .bottom-nav a{font-size:11px}}
.app-layout .small-text{font-size:14px;line-height:1.65}
@media(max-width:760px){.app-layout .growth-symbol p br{display:none}.app-layout .growth-symbol p{max-width:24ch}.app-layout .growth-bars{height:48px}.app-layout .growth-bars span{max-height:48px}}
/* Account layout: consistent inset, aligned text and separated session controls. */
.app-layout .account-page{max-width:960px;width:100%}
.app-layout .account-page .profile-row{display:flex;justify-content:flex-start;align-items:center;gap:20px;padding:24px;margin-bottom:24px;min-height:112px}
.app-layout .account-page .profile-row>div:last-child{min-width:0;flex:1}
.app-layout .account-page .profile-row h2{font-size:22px;line-height:1.4;overflow-wrap:anywhere}
.app-layout .account-page .profile-row p{color:var(--muted);font-size:15px;line-height:1.6;margin-top:4px}
.app-layout .account-page .menu-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:20px;align-items:center;padding:24px;min-height:108px}
.app-layout .account-page .menu-row>div{min-width:0}
.app-layout .account-page .menu-row>div h3{font-size:18px;line-height:1.45;margin:0 0 6px}
.app-layout .account-page .menu-row>div p{margin:0;max-width:56ch}
.app-layout .account-page .menu-row>.icon{color:#a9c8d1;width:26px;height:26px;flex:none}
.app-layout .account-page .menu-row>.icon:last-child{width:20px;height:20px}
.app-layout .account-page .menu-row>.button{margin:0;justify-self:end;min-width:145px}
.app-layout .account-page .stack{gap:16px}
.app-layout .account-page .stack>[data-action=logout]{justify-self:start;margin-top:8px;min-width:190px}
@media(min-width:761px){
 .app-layout .sidebar{display:flex;flex-direction:column;overflow-y:auto;gap:0}
 .app-layout .sidebar .side-links{flex:none}
 .app-layout .sidebar .sidebar-foot{position:static;inset:auto;margin-top:auto;padding-top:22px;display:grid;gap:12px;flex:none}
 .app-layout .sidebar .sidebar-foot .session-label{display:flex;align-items:center;gap:9px;line-height:1.5}
 .app-layout .sidebar .sidebar-foot .session-label .icon{width:22px;height:22px;flex:none}
 .app-layout .sidebar .sidebar-foot small{display:block;font-size:12px;line-height:1.6}
 .app-layout .sidebar .sidebar-foot .button{width:100%;margin:0;justify-content:center}
 .app-layout .sidebar .side-links{margin-bottom:32px}
}
@media(max-width:600px){
 .app-layout .account-page .profile-row{padding:20px;gap:14px;margin-bottom:20px}
 .app-layout .account-page .profile-row .circle-icon{width:48px;height:48px;flex:none}
 .app-layout .account-page .profile-row h2{font-size:20px}
 .app-layout .account-page .menu-row{padding:20px;gap:12px;grid-template-columns:26px minmax(0,1fr) 18px}
 .app-layout .account-page .menu-row:has(>.button){grid-template-columns:26px minmax(0,1fr)}
 .app-layout .account-page .menu-row>.button{grid-column:2;justify-self:stretch;min-width:0;margin-top:8px}
 .app-layout .account-page .stack>[data-action=logout]{justify-self:stretch}
}

/* Avisos: mensagem legível, prioridade discreta e ação acessível. */
.notification-row .content p,.notice-body{white-space:pre-line;overflow-wrap:anywhere}
.notice-meta{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:12px}
.notice-meta a{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--cyan)}
.notice-meta .icon{width:16px;height:16px}
.notice-priority{display:inline-block;color:var(--gold);font-size:13px;line-height:1.5;margin-bottom:6px}
.notice-important{border-left:2px solid var(--gold);padding-left:16px}
.notice-body{line-height:1.7;margin-bottom:16px}

.import-preview{margin-top:24px;padding:24px;border:1px solid var(--edge);border-radius:16px;display:grid;gap:16px}.import-preview p,.import-preview li{line-height:1.7}.import-preview .button{justify-self:start}

.stage-editor{display:grid;gap:16px}.stage-editor[hidden]{display:none}.stage-list{display:grid;gap:12px}.stage-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:12px;align-items:end;padding:16px;border:1px solid var(--edge);border-radius:12px}.stage-row .button{margin:0}.stage-row input{min-width:0;width:100%}@media(max-width:600px){.stage-row{grid-template-columns:1fr 1fr}.stage-row .button{align-self:end;min-height:48px}}

.modal .modal-head{position:sticky;top:0;z-index:2;background:#09171c;padding-block:10px;border-bottom:1px solid var(--edge)}

.payment-editor{display:grid;gap:16px}.payment-editor[hidden],.payment-row label[hidden]{display:none}.payment-list{display:grid;gap:12px}.payment-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.payment-row select{min-width:0;width:100%}.payment-row>.button{grid-column:1/-1;justify-self:start}

.modal .field[hidden]{display:none!important}.modal{padding:24px!important}.modal .modal-head{top:-24px;margin:-24px -24px 20px;padding:20px 24px}.payment-row label{min-width:0}

.admin-client-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-block:18px}.admin-client-summary .metric{padding:18px;display:grid;gap:8px;min-width:0}.admin-client-summary strong{font-size:clamp(18px,2vw,23px);overflow-wrap:anywhere}.admin-client-summary span{font-size:14px;line-height:1.45}.admin-client-summary small{color:var(--muted)}@media(max-width:600px){.admin-client-summary{grid-template-columns:1fr}.admin-client-summary .metric{text-align:left}}

.admin-client-actions{display:flex;flex-wrap:wrap;gap:12px;margin-block:20px}.admin-client-actions .button{margin:0;min-height:48px}@media(max-width:600px){.admin-client-actions{display:grid;grid-template-columns:minmax(0,1fr)}.admin-client-actions .button{width:100%}}

.audit-entry{overflow-wrap:anywhere}.audit-entry dl{display:grid;gap:8px;margin-block:20px}.audit-entry dt{color:var(--muted);font-size:14px}.audit-entry dd{margin:0 0 10px;line-height:1.6}
.import-preview,.import-preview details,.import-preview .table-wrap,#import-result{min-width:0;max-width:100%}.import-preview .table-wrap{overflow-x:auto}.import-preview table{min-width:760px}.import-preview summary{overflow-wrap:anywhere;cursor:pointer;padding-block:12px}

.import-hash{overflow-wrap:anywhere;font-size:13px;line-height:1.6}

/* Seleção de destinatários com leitura confortável e lista limitada. */
.notice-recipients { display:grid; gap:16px; min-width:0; }
.notice-recipients [data-selection] { display:grid; gap:12px; }
.notice-recipients [hidden] { display:none; }
.recipient-list { max-height:300px; overflow:auto; border:1px solid var(--border,#25434b); border-radius:14px; padding:8px; }
.recipient-list .recipient-option { display:flex; align-items:center; gap:12px; padding:12px; min-height:48px; border-radius:8px; }
.recipient-option:focus-within { outline:2px solid #00dfca; outline-offset:-2px; }
.recipient-option span { overflow-wrap:anywhere; min-width:0; }
.recipient-list input[type=checkbox] { width:20px; height:20px; flex:0 0 20px; margin:0; }
.recipient-pagination { display:flex; align-items:center; justify-content:space-between; gap:8px; flex-wrap:wrap; }
.recipient-pagination button { padding:10px 14px; min-height:44px; }
.notice-recipients [data-count] { color:#00dfca; font-weight:600; margin:0; }

.help-topics{display:grid;gap:16px;margin:24px 0}.help-topic{padding:20px 24px}.help-topic summary{font-size:18px;font-weight:600;cursor:pointer;line-height:1.5}.help-topic p{font-size:16px;line-height:1.7;margin:16px 0 0;color:#b8d3df}
