/* MSNBOT 4.2 — painel profissional, viewport seguro e contraste claro/escuro. */
:root{--d42-card:var(--surface-solid,#fff);--d42-line:var(--hair,#d9e1ee);--d42-ink:var(--text,#182238);--d42-sub:var(--sub,#657189);--dock-safe-bottom:0px}
body:not(.dock-autohide).dock-pos-bottom{height:100dvh;overflow:hidden}body:not(.dock-autohide).dock-pos-bottom .page:not(.auth-page){height:calc(100dvh - var(--app-topbar-height,42px) - var(--dock-safe-bottom));min-height:0!important;overflow:auto;overscroll-behavior:contain;margin-top:0!important;margin-bottom:0!important;padding:18px 0!important;scrollbar-gutter:stable;position:relative;z-index:1}.dock{z-index:90}.dock-item:hover{z-index:4}
html[data-theme=dark]{--d42-card:#171d27;--d42-line:#344052;--d42-ink:#f4f7fb;--d42-sub:#aeb9cb}.d42-period,.d42-speed,.d42-origin,.d42-interests,.d42-kpis>a,.d42-comparison,.d42-finance,.d42-health{background:var(--d42-card);border:1px solid var(--d42-line);color:var(--d42-ink);box-shadow:0 14px 38px rgba(19,34,65,.08)}
.d42-period{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:22px;padding:14px 18px;border-radius:22px;margin-bottom:16px}.d42-period-title strong,.d42-period-title span{display:block}.d42-period-title span{font-size:12px;color:var(--d42-sub)}.d42-period-form label{display:flex;align-items:center;gap:10px}.d42-period-form input{width:100%;accent-color:var(--accent)}.d42-period-form output{min-width:64px;color:var(--d42-sub);font-size:12px}.d42-period nav{display:flex;gap:4px;background:color-mix(in srgb,var(--d42-line),transparent 55%);padding:4px;border-radius:14px}.d42-period nav :is(a,button){border:0;background:transparent;color:var(--d42-ink);text-decoration:none;padding:8px 11px;border-radius:10px;white-space:nowrap;font-weight:700;font-size:12px}.d42-period nav .active{background:var(--accent);color:#fff}
.d42-calendar,.d42-tag-dialog{border:0;background:transparent}.d42-calendar::backdrop,.d42-tag-dialog::backdrop{background:#0a122066;backdrop-filter:blur(6px)}.d42-calendar form,.d42-tag-dialog form{width:min(440px,calc(100vw - 24px));background:var(--d42-card);color:var(--d42-ink);border:1px solid var(--d42-line);border-radius:20px;padding:18px;box-shadow:0 28px 80px #0005}.d42-calendar header,.d42-calendar footer,.d42-tag-dialog header,.d42-tag-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.d42-calendar label{display:grid;gap:6px;margin:14px 0}.d42-calendar input,.d42-tag-dialog input{background:color-mix(in srgb,var(--d42-card),var(--d42-line) 12%);color:var(--d42-ink);border:1px solid var(--d42-line)}
.d42-overview{display:grid;grid-template-columns:1.3fr .75fr 1fr;gap:14px}.d42-overview article{border-radius:24px;padding:20px;min-height:310px}.d42-overview h2{margin:0;font-size:20px}.d42-overview header small{color:var(--d42-sub)}.lux-gauge{width:min(340px,90%);aspect-ratio:2/1;margin:25px auto 0;border-radius:260px 260px 0 0;position:relative;overflow:hidden;background:repeating-conic-gradient(from 270deg at 50% 100%,var(--d42-ink) 0 1deg,transparent 1deg 8deg);border:1px solid var(--d42-line)}.lux-gauge:before{content:"";position:absolute;inset:16px 16px 0;border-radius:240px 240px 0 0;background:var(--d42-card)}.lux-gauge .needle{position:absolute;width:42%;height:2px;background:linear-gradient(90deg,#b78c49,#f6d89d);left:50%;bottom:0;transform-origin:left;transform:rotate(calc(-90deg + var(--needle)));transition:transform .8s;box-shadow:0 0 10px #d7ad67}.lux-gauge>i{position:absolute;width:14px;height:14px;border-radius:50%;background:#d7ad67;left:calc(50% - 7px);bottom:-7px}.gauge-value{position:absolute;inset:auto 0 18px;text-align:center}.gauge-value strong{font:800 42px/1 Georgia,serif;display:block}.up{color:#14805a}.down{color:#d04452}.d42-speed footer{display:flex;justify-content:center;gap:18px;text-align:center}.d42-speed footer span{color:var(--d42-sub);font-size:11px}.d42-speed footer b{display:block;color:var(--d42-ink);font-size:16px}.origin-list{display:grid;gap:9px;margin-top:25px}.origin-list div{display:flex;justify-content:space-between;padding:10px;border-bottom:1px solid var(--d42-line)}.interest-columns{height:220px;display:flex;gap:8px;align-items:end;margin-top:24px}.interest-columns>div{height:100%;flex:1;min-width:0;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:4px}.interest-columns i{width:min(34px,75%);background:linear-gradient(var(--bar),color-mix(in srgb,var(--bar),#000 12%));border-radius:9px 9px 3px 3px;min-height:8px}.interest-columns span{font-size:9px;max-width:62px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.d42-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:14px 0}.d42-kpis>a{border-radius:20px;padding:17px;text-decoration:none;position:relative}.d42-kpis small,.d42-kpis strong,.d42-kpis em{display:block}.d42-kpis small{color:var(--d42-sub)}.d42-kpis strong{font-size:32px;margin:5px 0}.d42-kpis em{font-style:normal;color:var(--d42-sub);font-size:11px}.d42-kpis button{position:absolute;right:9px;top:9px;border:0;background:transparent;color:var(--d42-sub)}.d42-kpis .task-warning{border-color:#d49a23}.d42-kpis .task-danger{border-color:#d04452;background:color-mix(in srgb,#e74455 11%,var(--d42-card))}
.d42-comparison,.d42-finance{border-radius:26px;padding:22px;margin:14px 0}.d42-comparison header,.d42-finance>header{display:flex;justify-content:space-between;align-items:center}.d42-comparison header p,.d42-finance header p{margin:0;color:var(--accent);font-size:11px;font-weight:900;letter-spacing:.12em}.d42-comparison h2,.d42-finance h2{margin:4px 0}.d42-comparison header form{display:flex;gap:7px}.d42-comparison select{background:var(--d42-card);color:var(--d42-ink);border-color:var(--d42-line)}.comparison-stage{min-height:260px;display:grid;grid-template-columns:.75fr 1.5fr .75fr;align-items:center;gap:30px;padding:20px}.comparison-number strong,.comparison-previous strong{display:block;font-size:56px}.comparison-bars{height:210px;display:flex;align-items:end;justify-content:center;gap:24px;border-bottom:1px solid var(--d42-line);background:repeating-linear-gradient(0deg,transparent 0 41px,var(--d42-line) 42px)}.comparison-bars i{width:84px;height:var(--v);background:linear-gradient(var(--accent),color-mix(in srgb,var(--accent),#000 14%));border-radius:14px 14px 0 0;position:relative;transition:height .7s}.comparison-bars i.previous{background:linear-gradient(#9aa9bd,#65738a)}.comparison-bars span{position:absolute;bottom:-23px;width:100%;text-align:center;font-style:normal;font-size:11px}
.finance-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:15px 0}.finance-stats>div{padding:15px;border:1px solid var(--d42-line);border-radius:16px}.finance-stats strong,.finance-stats b{display:block}.finance-stats strong{font-size:28px}.finance-stats b{font-size:12px;color:var(--d42-sub)}.finance-stats .overdue{border-color:#d04452}.finance-stats .paid{border-color:#14805a}.finance-body{display:grid;grid-template-columns:1.4fr 1fr;gap:18px}.receipt-bars{height:190px;display:flex;align-items:end;gap:7px;padding-top:20px;border-bottom:1px solid var(--d42-line)}.receipt-bars i{flex:1;min-width:8px;max-width:44px;background:linear-gradient(var(--accent),#45bcae);border-radius:7px 7px 0 0;position:relative}.receipt-bars span{position:absolute;bottom:-20px;font-size:8px}.finance-body aside>a{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--d42-line);text-decoration:none;color:var(--d42-ink)}.finance-body aside small{display:block;color:var(--d42-sub)}.finance-body aside .all{color:var(--accent);font-weight:800}
.d42-health{display:grid;grid-template-columns:minmax(230px,.35fr) 1fr;gap:12px;border-radius:22px;padding:12px;margin-top:14px}.d42-connect{display:grid;place-items:center;min-height:74px;color:var(--d42-ink);text-decoration:none;border-radius:16px;background:color-mix(in srgb,#0aa568 10%,var(--d42-card));border:1px solid #35a978}.d42-fallback{display:flex;align-items:center;justify-content:flex-end}.d42-fallback>button{width:46px;height:46px;border:1px solid var(--d42-line);background:var(--d42-card);border-radius:13px;display:grid;align-content:center;gap:4px;padding:10px}.d42-fallback>button i{height:2px;background:var(--d42-ink)}.d42-fallback>[data-fallback-panel]{width:100%;grid-template-columns:repeat(4,1fr)}.d42-fallback>[data-fallback-panel]:not([hidden]){display:grid}.d42-fallback [data-fallback-panel]>div{padding:12px;border-left:1px solid var(--d42-line)}.d42-fallback small,.d42-fallback strong{display:block}
.msnbot-onboarding::backdrop{background:transparent!important;backdrop-filter:none!important}.onboarding-spotlight{position:fixed;border-radius:14px;box-shadow:0 0 0 9999px rgba(7,12,24,.68);z-index:10000;pointer-events:none;transition:.35s}.onboarding-spotlight:after{content:"";position:absolute;inset:-5px;border:2px solid #65a6ff;border-radius:18px;box-shadow:0 0 24px #438cff99}.msnbot-onboarding{z-index:10001}.onboarding-target{outline:0!important;filter:none!important}
@media(max-width:900px){.d42-period{grid-template-columns:1fr}.d42-period nav{overflow:auto}.d42-overview{grid-template-columns:1fr 1fr}.d42-speed{grid-column:1/-1}.d42-kpis{grid-template-columns:repeat(3,1fr)}.comparison-stage{grid-template-columns:1fr 1fr}.comparison-bars{grid-column:1/-1;grid-row:2}.finance-body{grid-template-columns:1fr}}
@media(max-width:600px){body:not(.dock-autohide).dock-pos-bottom .page:not(.auth-page){padding:8px!important}.d42-period{padding:11px;gap:10px}.d42-period nav :is(a,button){padding:7px 9px;font-size:10px}.d42-overview{display:block}.d42-overview article{min-height:0;margin-bottom:9px;padding:14px}.d42-origin{display:none}.lux-gauge{max-width:260px}.gauge-value strong{font-size:34px}.d42-speed footer{gap:7px}.d42-kpis{grid-template-columns:repeat(2,1fr);gap:7px}.d42-kpis>a{padding:12px;min-height:103px}.d42-kpis strong{font-size:26px}.d42-kpis>a:first-child{grid-column:1/-1}.d42-comparison,.d42-finance{padding:13px}.d42-comparison header{align-items:flex-start}.d42-comparison header form{display:grid}.comparison-stage{padding:8px;gap:10px;min-height:235px}.comparison-number strong,.comparison-previous strong{font-size:35px}.comparison-bars{height:140px}.comparison-bars i{width:58px}.finance-stats{gap:5px}.finance-stats>div{padding:9px}.finance-stats strong{font-size:22px}.d42-health{grid-template-columns:1fr;padding:8px}.d42-fallback>[data-fallback-panel]{grid-template-columns:1fr 1fr}.interest-columns{height:160px}}
