:root{--green:#0b9466;--green2:#2bc987;--dark:#052f25;--ink:#17231f;--muted:#6d7f77;--paper:#f4f8f6;--line:#dfe9e4;--white:#fff;--shadow:0 16px 40px rgba(5,45,36,.08)}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,sans-serif;background:var(--paper);color:var(--ink)}button,input,select{font:inherit}.auth-screen{position:fixed;inset:0;background:#052f25;z-index:9999;display:grid;place-items:center;color:#fff;transition:.3s}.auth-screen.hidden{opacity:0;visibility:hidden}.auth-loader{display:flex;flex-direction:column;align-items:center;gap:14px}.auth-loader span{width:42px;height:42px;border:3px solid rgba(255,255,255,.18);border-top-color:#bff76a;border-radius:50%;animation:spin 1s linear infinite}.auth-loader.error i{font-size:30px;color:#ffd56a}.auth-loader.error span{width:auto;height:auto;border:0;animation:none;color:#bad0c7}.auth-loader.error a{color:#c8f975;font-size:12px}.dash-sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:linear-gradient(180deg,#052f25,#073d30);padding:24px 18px;color:#fff;display:flex;flex-direction:column;z-index:30}.brand{display:flex;align-items:center;gap:10px;font-weight:800;padding:4px 6px 26px}.brand>span:last-child{display:flex;flex-direction:column}.brand small{font-size:8px;letter-spacing:.15em;text-transform:uppercase;opacity:.6}.brand-icon{width:40px;height:40px;border-radius:13px;background:linear-gradient(135deg,#c2f86f,#65df9f);color:var(--dark);display:grid;place-items:center}.dash-sidebar nav{display:grid;gap:7px}.dash-sidebar nav a{display:flex;align-items:center;gap:11px;color:#bdd0c8;padding:12px 13px;border-radius:11px;font-size:13px;font-weight:600}.dash-sidebar nav a:hover,.dash-sidebar nav a.active{background:rgba(255,255,255,.1);color:#fff}.dash-sidebar nav a.active{box-shadow:inset 3px 0 #bff76a}.side-user{margin-top:auto;border-top:1px solid rgba(255,255,255,.1);padding-top:18px;display:grid;grid-template-columns:38px 1fr 32px;gap:9px;align-items:center}.user-avatar{width:38px;height:38px;border-radius:12px;background:#d9fa83;color:var(--dark);display:grid;place-items:center;font-weight:800}.side-user div:nth-child(2){min-width:0;display:flex;flex-direction:column}.side-user strong,.side-user span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-user strong{font-size:11px}.side-user span{font-size:9px;color:#9fbab0;margin-top:3px}.side-user button{border:0;background:rgba(255,255,255,.08);color:#d5e3de;width:31px;height:31px;border-radius:9px;cursor:pointer}.dash-main{margin-left:248px;padding:30px 34px 60px;max-width:1700px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.14em;font-weight:800;color:var(--green)}.topbar h1{font-size:30px;letter-spacing:-.04em;margin:5px 0 0}.top-actions{display:flex;gap:9px}.btn,.icon-btn{border:0;cursor:pointer}.btn{display:inline-flex;align-items:center;gap:8px;border-radius:11px;padding:11px 14px;font-weight:700;font-size:12px}.btn.primary{background:var(--dark);color:#fff}.btn.ghost{background:#fff;border:1px solid var(--line);color:#4d6058}.btn.loading i{animation:spin 1s linear infinite}.mobile{display:none}.welcome{background:linear-gradient(135deg,#073e31,#0a7655);color:#fff;border-radius:20px;padding:26px 28px;display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;box-shadow:0 18px 42px rgba(5,45,36,.13)}.welcome span{font-size:12px;color:#bde4d4}.welcome h2{font-size:25px;margin:6px 0;letter-spacing:-.03em}.welcome p{font-size:12px;color:#b9d3c9;margin:0}.cloud-status{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:13px 15px}.cloud-status>i{font-size:21px;color:#bff76a}.cloud-status div{display:flex;flex-direction:column}.cloud-status strong{font-size:11px}.cloud-status span{font-size:9px;margin-top:3px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.metrics article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;gap:13px;align-items:center;box-shadow:0 8px 25px rgba(5,45,36,.04)}.metric-icon{width:43px;height:43px;border-radius:13px;background:#e5f7ef;color:var(--green);display:grid;place-items:center}.metrics article div{min-width:0}.metrics small,.metrics span{display:block;color:var(--muted);font-size:9px}.metrics strong{display:block;font-size:20px;margin:5px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.charts{display:grid;grid-template-columns:1.35fr .65fr;gap:14px}.chart-card,.history-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:19px;box-shadow:0 8px 25px rgba(5,45,36,.04)}.chart-card.wide{grid-row:span 2}.card-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px}.card-head h3{font-size:15px;margin:4px 0 0}.chip{font-size:9px;border-radius:99px;background:#eaf7f1;color:var(--green);padding:6px 8px;font-weight:800}.chart-wrap{height:255px}.chart-card.wide .chart-wrap{height:540px}.history-card{margin-top:14px}.history-actions{display:flex;gap:8px}.history-actions input,.history-actions select{border:1px solid var(--line);background:#f9fbfa;border-radius:9px;padding:9px 11px;font-size:11px;outline:0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:11px}th{text-align:left;color:#8a9b94;font-size:9px;text-transform:uppercase;letter-spacing:.08em;padding:11px;border-bottom:1px solid var(--line)}td{padding:12px 11px;border-bottom:1px solid #edf2ef;color:#53665e}td strong{color:var(--ink)}td small{display:block;color:#92a19b;margin-top:4px}.category-tag{display:inline-flex;background:#ebf7f2;color:#147351;border-radius:99px;padding:5px 8px;font-size:9px;font-weight:700}.row-actions{display:flex;justify-content:flex-end;gap:5px}.row-actions button{border:0;background:#f0f5f2;color:#597068;width:28px;height:28px;border-radius:8px;cursor:pointer}.empty{text-align:center!important;padding:35px!important}.empty i,.empty span{display:block;margin:5px auto}.toast{position:fixed;right:24px;bottom:24px;background:#052f25;color:#fff;padding:12px 15px;border-radius:11px;font-size:11px;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}.dash-backdrop{display:none}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1100px){.metrics{grid-template-columns:1fr 1fr}.charts{grid-template-columns:1fr}.chart-card.wide{grid-row:auto}.chart-card.wide .chart-wrap{height:330px}}@media(max-width:820px){.dash-sidebar{transform:translateX(-100%);transition:.25s}.dash-sidebar.open{transform:none}.dash-main{margin-left:0;padding:22px 18px 45px}.mobile{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#fff;border:1px solid var(--line)}.topbar>div:nth-child(2){flex:1}.topbar h1{font-size:23px}.dash-backdrop{display:block;position:fixed;inset:0;background:rgba(4,24,19,.5);z-index:20;opacity:0;pointer-events:none;transition:.2s}.dash-backdrop.show{opacity:1;pointer-events:auto}.welcome{align-items:flex-start;flex-direction:column;gap:18px}.cloud-status{width:100%}}@media(max-width:560px){.metrics{grid-template-columns:1fr}.top-actions .btn span{display:none}.welcome h2{font-size:22px}.chart-wrap,.chart-card.wide .chart-wrap{height:280px}.history-card .card-head{align-items:flex-start;flex-direction:column}.history-actions{width:100%;flex-direction:column}.history-actions input,.history-actions select{width:100%}}
/* Logo original */
.brand-logo-wrap{width:64px;height:64px;display:grid;place-items:center;position:relative;flex:0 0 64px}.brand-logo{display:block;max-width:64px;max-height:64px;width:auto;height:auto;object-fit:contain}.brand-logo-fallback{position:absolute;inset:2px;display:none}.brand-logo-wrap.asset-missing .brand-logo{display:none}.brand-logo-wrap.asset-missing .brand-logo-fallback{display:grid}

/* Menu de barras disponível em todas as resoluções */
.mobile.menu-always{display:none}.dash-main{transition:margin-left .25s ease}.dash-sidebar{transition:transform .25s ease}.sidebar-collapsed .dash-sidebar{transform:translateX(-100%)}.sidebar-collapsed .dash-main{margin-left:0}.dash-sidebar nav a[hidden]{display:none!important}@media(max-width:820px){.sidebar-collapsed .dash-sidebar{transform:translateX(-100%)}}

/* Links e marca integrados ao layout */
a, a:link, a:visited, a:hover, a:active{color:inherit;text-decoration:none}
.dash-sidebar .brand, .dash-sidebar .brand:link, .dash-sidebar .brand:visited, .dash-sidebar .brand:hover, .dash-sidebar .brand:active{color:#fff!important;text-decoration:none!important}
.dash-sidebar .brand small{color:#9fbab0!important;text-decoration:none!important}
/* Desktop mantém sidebar fixa; hambúrguer apenas no responsivo */
@media (min-width:821px){.mobile,.mobile.menu-always{display:none!important}.dash-sidebar{transform:none!important}.dash-main{margin-left:248px!important}.sidebar-collapsed .dash-sidebar{transform:none!important}.sidebar-collapsed .dash-main{margin-left:248px!important}}
@media (max-width:820px){.mobile.menu-always{display:grid!important;place-items:center;width:38px;height:38px;border-radius:10px;background:#fff;border:1px solid var(--line);color:#4d6058}}
