nav{max-height:calc(100vh - 225px);overflow-y:auto;scrollbar-width:thin}nav button[hidden]{display:none}header{flex-wrap:wrap}.account{display:flex;gap:12px;align-items:center;font-size:11px;color:#607681}.account button{padding:6px 12px}.filterbar{display:flex;gap:12px;align-items:end;margin-bottom:20px;flex-wrap:wrap}.filterbar label{flex:1;min-width:130px;margin:0}.filterbar input,.filterbar select{margin-top:8px}.grid{margin-top:20px}.card+.card{margin-top:18px}.grid>.card+.card,.stats>.card+.card{margin-top:0}.prewrap{white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;overflow:auto}.wrap{flex-wrap:wrap}.task{padding:12px 0;border-bottom:1px solid #e7edef;display:flex;justify-content:space-between;gap:12px}.task small{display:block;margin-top:5px;color:#6f8390}textarea{width:100%;resize:vertical;border:1px solid #d9e2e7;border-radius:8px;padding:12px;font:inherit}h3{font-size:13px;margin-top:24px}.button{display:inline-block;padding:12px;border-radius:8px;text-decoration:none}form#policy,form#simulation{max-width:480px}form#policy input{margin-bottom:8px}#policy button,#simulation button{margin-top:18px}.auth-only>aside,.auth-only>main,.portal-only>aside{display:none}.portal-only>main{margin:0 auto;max-width:1000px}.auth-wrapper{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at top left,#e3e8ff,#f5f7fa 55%),radial-gradient(ellipse at bottom right,#dff7fb,#f5f7fa 60%)}.auth-wrapper form{width:min(460px,100%);padding:35px}.auth-wrapper h1{font-size:27px}.auth-wrapper p{color:#758790}.auth-wrapper button{width:100%;margin-top:18px}.auth-wrapper #auth-error{color:#b9503c}.auth-wrapper input{margin-top:3px}.auth-only{background:#f5f7fa}[hidden]{display:none!important}#portal-result{margin-top:18px}@media(max-width:650px){nav{max-height:none}.account{width:100%;justify-content:space-between}.filterbar{display:grid;grid-template-columns:1fr 1fr}.filterbar label{min-width:0}.filterbar label:first-child{grid-column:1/-1}.grid>.card{min-width:0}.grid .actions{flex-wrap:wrap}.stats{grid-template-columns:1fr 1fr}.value{font-size:19px}}

/* v0.3 — títulos bancários, conciliação, lembretes, aceite e saúde */
fieldset.payer{border:1px solid #e6ebef;border-radius:10px;padding:4px 14px 14px;margin-top:18px}
fieldset.payer legend{font-size:11px;color:#59707d;padding:0 6px}
#fin-view{width:min(520px,95vw)}
#fin-view textarea,#fin-view input{margin:6px 0 8px;font-size:12px}
.qr{display:block;width:220px;height:220px;margin:8px auto 12px;image-rendering:pixelated;border:1px solid #e6ebef;border-radius:10px}
.consents{margin-top:6px;display:flex;gap:4px;flex-wrap:wrap}
.accepted{margin-top:14px;padding:10px 12px;border-radius:9px;background:#e5f6ec;color:#226b47;font-size:12px}
.accepted small{color:#3f7a5b}
button.link{background:none;border:0;padding:0;color:#6d28d9;text-decoration:underline;font-size:inherit;cursor:pointer}
.small{font-size:11px;max-height:140px}
td small{display:block}
.checks{list-style:none;padding:0;margin-top:14px}
.checks li{padding:8px 0;border-bottom:1px solid #eef2f4;font-size:12px}
.checks li.ok{color:#226b47}.checks li.warn{color:#b25c35}
#messaging-form label,#automation-form label{display:flex;gap:8px;align-items:center}
#messaging-form input[type=checkbox],#automation-form input[type=checkbox],.accept-form input[type=checkbox]{width:auto}
#messaging-form,#public-form{max-width:480px}
#messaging-form button,#public-form button{margin-top:16px}
.accept-form{margin-top:16px;padding-top:14px;border-top:1px solid #e7edef}
.accept-form label.check{display:flex;gap:8px;align-items:center}
.accept-form .error{color:#b9503c;font-size:12px}
code{font-size:11px;background:#f0f3f5;padding:2px 6px;border-radius:5px;overflow-wrap:anywhere}

.product-switch{display:block;margin-top:22px;border:1px solid #22d3ee44;border-radius:8px;padding:10px 12px;color:#67e8f9;text-decoration:none;font-size:12px}.product-switch:hover{background:#18224d}

/* Keep navigation clear of its footer at all desktop heights. */
@media(min-width:651px){body>aside{display:flex;flex-direction:column;height:100dvh;overflow:hidden}body>aside>.brand,body>aside>.product-switch,body>aside>.nav-label{flex-shrink:0}body>aside>nav{flex:1;min-height:0;max-height:none;overflow-y:auto;padding-bottom:12px}body>aside>.aside-bottom{position:static;flex-shrink:0;padding-top:16px;margin-top:10px;background:#0b1024}}
