:root{--ink:#10231f;--muted:#6d7c78;--line:#dce5e2;--paper:#f3f6f5;--white:#fff;--forest:#0c2d27;--forest-2:#153d35;--mint:#48d8a5;--mint-soft:#dff8ef;--amber:#f4b84a;--blue:#6f8fd5;--shadow:0 12px 30px #09272012}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}button{cursor:pointer}.brand{align-items:center;gap:11px;display:flex}.brand img{border-radius:13px;box-shadow:0 8px 18px #041c172e}.brand div{line-height:1.04;display:grid}.brand strong{letter-spacing:-.04em;font-size:19px}.brand span{color:#7f958f;letter-spacing:.08em;text-transform:uppercase;font-size:10px}.login-shell{background:var(--white);grid-template-columns:1.05fr .95fr;min-height:100vh;display:grid}.login-story{color:#fff;background:radial-gradient(circle at 75% 28%,#48d8a52e,#0000 28%),linear-gradient(145deg,#08241f 0%,#113a32 100%);flex-direction:column;justify-content:space-between;min-height:100vh;padding:52px 64px;display:flex;position:relative;overflow:hidden}.login-story:after{content:"";border:1px solid #ffffff14;border-radius:50%;width:520px;height:520px;position:absolute;bottom:-170px;right:-180px;box-shadow:0 0 0 80px #ffffff06,0 0 0 160px #ffffff04}.login-story .brand{z-index:1;position:relative}.login-story .brand span{color:#9db7b0}.story-copy{z-index:1;max-width:620px;position:relative}.eyebrow{color:#54d8aa;letter-spacing:.13em;font-size:11px;font-weight:800}.story-copy h1{letter-spacing:-.065em;margin:16px 0 22px;font-size:clamp(48px,6vw,82px);line-height:.98}.story-copy p{color:#b7cac5;max-width:510px;margin:0;font-size:19px;line-height:1.55}.story-foot{color:#819b94;letter-spacing:.06em;z-index:1;font-size:12px;position:relative}.login-panel{place-items:center;padding:48px;display:grid}.login-card{width:min(420px,100%)}.mobile-brand{display:none}.status-pill{color:#17684f;background:var(--mint-soft);letter-spacing:.07em;text-transform:uppercase;border-radius:999px;align-items:center;gap:8px;padding:7px 11px;font-size:11px;font-weight:800;display:inline-flex}.status-pill i,.mode-banner i{background:var(--mint);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #48d8a526}.login-card h2{letter-spacing:-.045em;margin:24px 0 8px;font-size:34px}.login-card>p{color:var(--muted);margin:0 0 30px}.login-card label{gap:8px;margin-bottom:17px;font-size:12px;font-weight:700;display:grid}.login-card input{width:100%;color:var(--ink);border:1px solid #cedbd7;border-radius:12px;outline:none;padding:14px 15px;transition:all .2s}.login-card input:focus{border-color:#35bb8b;box-shadow:0 0 0 4px #48d8a524}.primary-button{background:var(--forest);color:#fff;border:0;border-radius:12px;width:100%;margin-top:7px;padding:15px;font-weight:800;box-shadow:0 12px 24px #0c2d272e}.primary-button:hover{background:var(--forest-2)}.primary-button:disabled{opacity:.65;cursor:wait}.login-card small{color:#98a5a2;text-align:center;margin-top:18px;display:block}.install-app{text-align:center;margin-top:14px}.install-button{color:#17684f;text-underline-offset:3px;background:0 0;border:0;padding:6px 10px;font-size:12px;font-weight:750;text-decoration:underline}.install-hint{color:#6d7c78;font-size:11px;line-height:1.45}.form-error,.toast{color:#9a352d;background:#fff0ee;border:1px solid #f2cbc6;border-radius:10px;margin:8px 0;padding:11px 13px;font-size:13px}.toast{box-shadow:var(--shadow);position:fixed;bottom:20px;right:20px}.app-shell{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);background:#fff;flex-direction:column;height:100vh;padding:30px 24px 22px;display:flex;position:sticky;top:0}.sidebar nav{gap:6px;margin-top:47px;display:grid}.sidebar nav a{color:#6f807b;border-radius:10px;align-items:center;gap:12px;padding:12px 13px;font-size:13px;font-weight:650;text-decoration:none;display:flex}.sidebar nav a:hover,.sidebar nav a.active{color:var(--forest);background:#eaf7f2}.sidebar svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.safety-card{color:#c8eee1;background:var(--forest);border-radius:14px;gap:11px;margin-top:auto;padding:15px;display:flex}.safety-card svg{color:var(--mint);flex:none}.safety-card div{gap:4px;display:grid}.safety-card strong{color:#fff;font-size:12px}.safety-card span{font-size:10px;line-height:1.35}.logout{color:#879691;background:0 0;border:0;padding:15px 0 0;font-size:11px}.dashboard{width:100%;min-width:0;max-width:1500px;margin:0 auto;padding:34px 40px 22px}.topbar{justify-content:space-between;align-items:center;gap:24px;margin-bottom:25px;display:flex}.breadcrumb{color:#8a9995;letter-spacing:.14em;font-size:9px;font-weight:800}.topbar h1{letter-spacing:-.045em;margin:8px 0 3px;font-size:29px}.topbar p{color:var(--muted);margin:0;font-size:13px}.user-chip{align-items:center;gap:10px;display:flex}.user-chip>span{background:var(--forest);width:38px;height:38px;color:var(--mint);border-radius:50%;place-items:center;font-size:12px;font-weight:800;display:grid}.user-chip div{display:grid}.user-chip strong{font-size:11px}.user-chip small{color:var(--muted);font-size:9px}.mode-banner{background:linear-gradient(90deg,#e8fbf4,#f8fffc);border:1px solid #a9e9d1;border-radius:13px;justify-content:space-between;align-items:center;gap:20px;min-height:64px;margin-bottom:18px;padding:12px 16px;display:flex}.mode-banner>div{align-items:center;gap:12px;display:flex}.mode-banner>div>div{gap:2px;display:grid}.mode-banner strong{color:#136346;letter-spacing:.06em;font-size:11px}.mode-banner span{color:#4b7869;font-size:10px}.safe-badge{letter-spacing:.05em;white-space:nowrap;background:#fff;border:1px solid #bce8d8;border-radius:7px;padding:7px 9px;font-weight:800}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px;display:grid}.kpi-card,.panel{background:var(--white);border:1px solid var(--line);border-radius:15px;box-shadow:0 2px 1px #0f302904}.kpi-card{min-height:128px;padding:17px 18px}.kpi-card.featured{border-top:3px solid var(--mint);padding-top:15px}.card-label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;align-items:center;font-size:10px;font-weight:750;display:flex}.card-label svg{color:#5ac8a0;fill:none;stroke:currentColor;stroke-width:1.8px;width:17px}.kpi-card>strong{letter-spacing:-.04em;margin:13px 0 8px;font-size:27px;display:block}.kpi-note{color:#889591;font-size:9px}.kpi-note.positive{color:#2c8466}.tiny-status{color:#268261;background:#e5f8f0;border-radius:4px;padding:4px 5px;font-size:8px}.tiny-status.neutral{color:#687a75;background:#eff3f2}.content-grid{grid-template-columns:1.5fr .9fr;gap:14px;margin-bottom:14px;display:grid}.panel{padding:20px}.panel-head{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.panel-head h2{letter-spacing:-.025em;margin:5px 0 0;font-size:17px}.panel-head>strong{letter-spacing:-.03em;font-size:20px}.budget-list{gap:18px;display:grid}.budget-meta{justify-content:space-between;font-size:11px;display:flex}.budget-meta>span{color:#53625e;align-items:center;gap:8px;display:flex}.dot{border-radius:50%;width:7px;height:7px;display:inline-block}.progress{background:#edf2f0;border-radius:999px;height:6px;margin:8px 0 5px;overflow:hidden}.progress span{border-radius:inherit;height:100%;display:block}.tone-0{background:#40c998}.tone-1{background:#75a594}.tone-2{background:var(--amber)}.tone-3{background:var(--blue)}.budget-row small{color:#93a09d;font-size:8px}.step-badge{color:#246d55;background:var(--mint-soft);border-radius:50%;place-items:center;width:38px;height:38px;font-size:12px;font-weight:800;display:grid}.milestone-panel>p{color:var(--muted);margin:-5px 0 17px;font-size:11px;line-height:1.55}.check-list{gap:11px;margin:0;padding:0;list-style:none;display:grid}.check-list li{border-top:1px solid #edf1f0;align-items:center;gap:11px;padding:9px 0;display:flex}.check-list li>span{color:#8e9a97;background:#f0f3f2;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-size:9px;font-weight:800;display:grid}.check-list li.done>span{background:var(--mint-soft);color:#23815f}.check-list li div{gap:3px;display:grid}.check-list strong{font-size:10px}.check-list small{color:#8a9794;font-size:8px}.infrastructure-panel,.commerce-panel{margin-bottom:14px}.simulation-badge{background:var(--mint-soft);color:#1c7658;letter-spacing:.06em;white-space:nowrap;border:1px solid #a9e9d1;border-radius:7px;padding:7px 9px;font-size:8px;font-weight:800}.commerce-grid{grid-template-columns:1.5fr repeat(3,minmax(0,1fr));gap:9px;display:grid}.commerce-store,.commerce-stat{border:1px solid #e2e9e7;border-radius:11px;min-width:0;padding:14px}.commerce-store{color:#fff;background:linear-gradient(140deg,#0d3028,#17483d)}.commerce-store span,.commerce-stat span{color:#78908a;letter-spacing:.06em;text-transform:uppercase;font-size:8px;font-weight:800;display:block}.commerce-store span{color:#83cdb3}.commerce-store strong,.commerce-stat strong{margin:10px 0 5px;font-size:15px;display:block}.commerce-store p,.commerce-stat small{color:#a5bbb5;margin:0;font-size:8px}.commerce-stat strong{letter-spacing:-.03em;font-size:21px}.commerce-stat.secure{background:#f1fbf7;border-color:#cdeee1}.commerce-stat.secure strong{color:#1d795a;font-size:13px}.pipeline{color:#71817c;background:#f5f8f7;border-radius:9px;justify-content:center;align-items:center;gap:11px;margin-top:13px;padding:11px;font-size:8px;display:flex}.pipeline span{align-items:center;gap:6px;display:flex}.pipeline strong{color:var(--ink);font-size:10px}.pipeline i{background:#cbd6d2;width:18px;height:1px}.connector-note{color:#7d8c88;margin:11px 2px 0;font-size:8px;line-height:1.5}.validation-panel{margin-bottom:14px}.blocker-badge{color:#9a4439;letter-spacing:.06em;white-space:nowrap;background:#fff3f0;border:1px solid #f1c9c2;border-radius:7px;padding:7px 9px;font-size:8px;font-weight:800}.validation-summary{grid-template-columns:150px 160px 1fr;align-items:center;gap:9px;margin-bottom:12px;display:grid}.validation-summary>div{background:#f5f8f7;border-radius:10px;padding:11px 13px}.validation-summary span{color:#788783;text-transform:uppercase;font-size:8px;display:block}.validation-summary strong{margin-top:5px;font-size:19px;display:block}.validation-summary p{color:#7b8985;margin:0;font-size:9px;line-height:1.5}.validation-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.validation-list>div{border:1px solid #e1e9e6;border-radius:10px;gap:9px;min-height:125px;padding:13px;display:flex;position:relative}.validation-list>div>div{min-width:0}.validation-list strong{padding-right:37px;font-size:10px;display:block}.validation-list p{color:#788783;margin:8px 0;font-size:8px;line-height:1.5}.validation-list small{color:#99a5a2;font-size:7px}.validation-list em{color:#7c8a86;letter-spacing:.05em;font-size:6px;font-style:normal;font-weight:900;position:absolute;top:11px;right:10px}.validation-state{border-radius:50%;flex:none;width:7px;height:7px;margin-top:2px}.validation-state.bloqueador{background:#db6d5e}.validation-state.revisao_juridica{background:var(--amber)}.validation-state.viavel_tecnicamente{background:var(--mint)}.validation-state.confirmado_publicamente{background:#65a5df}.supplier-panel{margin-bottom:14px}.supplier-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.supplier-grid>div{border:1px solid #e1e9e6;border-radius:10px;padding:13px}.supplier-grid span{color:#788783;letter-spacing:.05em;text-transform:uppercase;font-size:8px;font-weight:800;display:block}.supplier-grid strong{margin:9px 0 5px;font-size:12px;display:block}.supplier-grid small{color:#98a49f;font-size:8px;line-height:1.4}.risk-box{border-left:3px solid var(--amber);background:#fff9ed;border-radius:8px;margin-top:11px;padding:12px 14px}.payables-box{background:#fffaf0;border:1px solid #ecd9a7;border-radius:10px;margin-top:16px;padding:12px 14px}.payables-box>div,.payables-box p{justify-content:space-between;align-items:baseline;gap:14px;display:flex}.payables-box>div span{color:#765c26;letter-spacing:.06em;font-size:8px;font-weight:800}.payables-box>div strong{color:#765c26;font-size:11px}.payables-box p{color:#796c4e;margin:8px 0 0;font-size:8px}.payables-box p strong{white-space:nowrap}.risk-box>strong{color:#765c26;font-size:9px}.risk-box ul{color:#796c4e;grid-template-columns:repeat(2,1fr);gap:5px 22px;margin:8px 0 0;padding-left:16px;font-size:8px;line-height:1.45;display:grid}.audit-badge{color:#60716c;letter-spacing:.06em;white-space:nowrap;background:#f7faf9;border:1px solid #d5e2de;border-radius:7px;padding:7px 9px;font-size:8px;font-weight:800}.readiness-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.readiness-card{border:1px solid #e2e9e7;border-radius:11px;min-width:0;padding:14px}.readiness-card>div{align-items:center;gap:7px;display:flex}.readiness-card small{color:#71807c;text-transform:uppercase;letter-spacing:.04em;font-size:9px;font-weight:700}.readiness-card>strong{margin:10px 0 6px;font-size:12px;display:block}.readiness-card p{color:#8a9793;margin:0;font-size:8px;line-height:1.45}.readiness-dot{border-radius:50%;flex:none;width:7px;height:7px}.readiness-dot.atencao{background:var(--amber)}.readiness-dot.pendente{background:#aab7b3}.readiness-dot.protegido{background:var(--mint)}.integrations .panel-head{margin-bottom:13px}.subtle{color:#879590;font-size:9px}.integration-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.integration-grid>div{border:1px solid #e4ebe9;border-radius:10px;align-items:center;gap:8px;min-width:0;padding:10px;display:flex;position:relative}.service-mark{color:#36665a;background:#e9f4f0;border-radius:7px;flex:none;place-items:center;width:27px;height:27px;font-size:8px;font-weight:900;display:grid}.integration-grid>div>span:nth-child(2){min-width:0;display:grid}.integration-grid strong{white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.integration-grid small{color:#93a09d;font-size:7px}.integration-grid i{background:#b8c4c0;border-radius:50%;width:5px;height:5px;position:absolute;top:8px;right:8px}footer{color:#96a29f;justify-content:space-between;padding:15px 3px 0;font-size:8px;display:flex}.loading-screen{min-height:100vh;color:var(--muted);place-content:center;justify-items:center;gap:22px;font-size:12px;display:grid}.error-screen{text-align:center;place-content:center;justify-items:center;gap:14px;min-height:100vh;padding:24px;display:grid}.error-screen h1{margin:0;font-size:28px}.error-screen p{color:var(--muted);margin:0}.error-screen button{background:var(--forest);color:#fff;border:0;border-radius:12px;padding:12px 18px;font-weight:800}@media (max-width:1080px){.app-shell{grid-template-columns:76px minmax(0,1fr)}.sidebar{align-items:center;padding:26px 15px}.sidebar .brand div,.sidebar nav a{font-size:0}.sidebar nav a{justify-content:center;padding:12px}.safety-card div,.logout{display:none}.safety-card{padding:13px}.integration-grid{grid-template-columns:repeat(3,1fr)}.readiness-grid,.commerce-grid,.validation-list,.supplier-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.login-shell{display:block}.login-story{display:none}.login-panel{background:linear-gradient(#edf9f5,#fff 45%);min-height:100vh;padding:28px 22px}.mobile-brand{margin-bottom:48px;display:block}.app-shell{display:block}.sidebar{z-index:10;border:0;border-top:1px solid var(--line);width:100%;height:68px;padding:8px 14px;display:block;position:fixed;top:auto;bottom:0}.sidebar>.brand,.safety-card,.logout{display:none}.sidebar nav{grid-template-columns:repeat(4,1fr);gap:4px;margin:0;display:grid}.sidebar nav a{justify-content:center;padding:14px;font-size:0}.dashboard{padding:22px 16px 92px}.user-chip div{display:none}.topbar h1{font-size:24px}.mode-banner{align-items:flex-start}.safe-badge{display:none}.kpi-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}.integration-grid{grid-template-columns:repeat(2,1fr)}.readiness-grid,.commerce-grid{grid-template-columns:1fr}.validation-summary{grid-template-columns:repeat(2,1fr)}.validation-summary p{grid-column:1/-1}.validation-list,.supplier-grid,.risk-box ul{grid-template-columns:1fr}.pipeline{flex-direction:column;align-items:stretch}.pipeline i{width:1px;height:8px;margin-left:3px}.audit-badge,.simulation-badge,.blocker-badge{display:none}}@media (max-width:430px){.kpi-grid{gap:9px}.kpi-card{min-height:116px;padding:14px}.kpi-card>strong{font-size:21px}.panel{padding:17px}footer{gap:4px;display:grid}}
