:root{
  --bg:#080808;--sidebar:#151515;--panel:#171717;--panel2:#1c1c1c;--line:#303030;
  --text:#f8f8f8;--muted:#7f8790;--purple:#ffcc00;--purple2:#ffd429;--cyan:#ffcc00;
  --green:#22c55e;--red:#ff8a00;--orange:#ff9d00;
}
html,body{background:#080808!important;color:var(--text)!important;font-family:Inter,Segoe UI,Arial,sans-serif!important}
body{min-height:100vh!important}
.sidebar{
  position:fixed!important;inset:0 auto 0 0!important;width:260px!important;height:100vh!important;
  display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;
  padding:0!important;background:#151515!important;border-right:1px solid #2b2b2b!important;z-index:20!important;
}
.brand{height:73px!important;display:flex!important;align-items:flex-start!important;gap:12px!important;padding:14px 20px!important;border-bottom:1px solid #2b2b2b!important}
.brand-mark{width:32px!important;height:32px!important;min-width:32px!important;margin:0!important;border-radius:8px!important;background:#ffcc00!important;color:#0b0b0b!important;display:grid!important;place-items:center!important;font-size:15px!important;font-weight:900!important;box-shadow:none!important}
.brand-mark:before,.brand-mark:after{content:none!important}
.brand-copy{display:grid!important;gap:2px!important;line-height:1!important}
.brand-copy strong{color:#fff!important;font-size:22px!important;font-weight:900!important;letter-spacing:-.6px!important}
.brand-copy small{color:#777!important;font-size:9px!important;font-weight:700!important;letter-spacing:2px!important}
.sidebar nav{display:grid!important;grid-template-columns:1fr!important;gap:0!important;margin:38px 0 0!important;width:100%!important}
.sidebar nav a{
  width:100%!important;height:42px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;
  padding:0 20px!important;border-radius:0!important;color:#d7d7d7!important;text-decoration:none!important;
  font-size:14px!important;font-weight:500!important;box-shadow:none!important;background:transparent!important;
}
.sidebar nav a:before{content:"";width:7px;height:7px;border:1px solid #777;border-radius:2px;margin-right:12px}
.sidebar nav a:after{content:none!important}
.sidebar nav a:hover,.sidebar nav a.active{background:#302a11!important;color:#ffcc00!important;box-shadow:inset 3px 0 #ffcc00!important}
.sidebar nav a.active:before{border-color:#ffcc00;background:#ffcc00}
.api-dot{
  margin:24px 20px 0!important;width:auto!important;height:36px!important;border-radius:8px!important;background:#102818!important;
  box-shadow:inset 0 0 0 1px #245c35!important;position:relative!important;
}
.api-dot:before{content:none!important}.api-dot:after{content:"BomControle conectado"!important;position:absolute!important;left:14px!important;top:11px!important;color:#23c563!important;font-size:11px!important;font-weight:800!important}
main{margin-left:260px!important;padding:18px 38px 42px!important;max-width:none!important;width:calc(100% - 260px)!important}
.topbar{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:20px!important;padding:0 0 22px!important;margin:0 0 24px!important;border-bottom:1px solid #202020!important}
.eyebrow{color:#858585!important;font-size:9px!important;letter-spacing:1.4px!important;font-weight:800!important;margin:0 0 6px!important}
h1{margin:0!important;color:#fff!important;font-family:Inter,Segoe UI,Arial,sans-serif!important;font-size:31px!important;font-weight:900!important;letter-spacing:-.7px!important}
h2{color:#fff!important;font-family:Inter,Segoe UI,Arial,sans-serif!important;font-size:14px!important;font-weight:800!important}
.subtitle{color:#9a9a9a!important;font-size:12px!important;margin:7px 0 0!important}
.filters{display:flex!important;align-items:flex-end!important;justify-content:flex-end!important;gap:8px!important;flex-wrap:nowrap!important;max-width:none!important;white-space:nowrap!important}
.filters label{display:grid!important;gap:5px!important;color:#7f8790!important;font-size:9px!important;text-transform:uppercase!important;letter-spacing:1px!important;font-weight:800!important}
.filters input,.filters select,.movements input,.contracts-page input{
  height:36px!important;background:#121212!important;border:1px solid #333!important;border-radius:8px!important;color:#fff!important;
  padding:0 10px!important;font:12px Inter,Segoe UI,Arial,sans-serif!important;outline:none!important;
}
.filters select{min-width:0!important;width:320px!important}.filters input[type="date"]{width:126px!important}.quick-filters{height:36px!important;display:flex!important;align-items:center!important;gap:4px!important;padding:3px!important;background:#121212!important;border:1px solid #333!important;border-radius:8px!important;flex:0 0 auto!important}
button,.quick-filters .period-btn{height:30px!important;border:0!important;border-radius:6px!important;text-decoration:none!important;font:800 11px Inter,Segoe UI,Arial,sans-serif!important;cursor:pointer!important}
button{height:36px!important;padding:0 14px!important;background:#ffcc00!important;color:#0b0b0b!important;box-shadow:none!important}
.quick-filters .period-btn{padding:0 9px!important;background:transparent!important;color:#bcbcbc!important;box-shadow:none!important}
.quick-filters .period-btn.active{background:#ffcc00!important;color:#0b0b0b!important}
.statusbar{display:flex!important;flex-wrap:wrap!important;gap:12px!important;justify-content:space-between!important;border-top:1px solid #202020!important;color:#858585!important;font-size:10px!important;padding:8px 0!important}
.kpis{display:grid!important;grid-template-columns:repeat(4,minmax(180px,1fr))!important;gap:10px!important;margin:8px 0 10px!important}
.kpi,.panel{background:#171717!important;border:1px solid #303030!important;border-radius:10px!important;box-shadow:0 14px 28px #0005!important}
.kpi{min-height:100px!important;padding:17px!important;border-left:4px solid #ffcc00!important;display:block!important}
.kpi:after{background:#ffcc00!important;opacity:.1!important}.kpi small{display:block!important;color:#8b8b8b!important;font-size:9px!important;letter-spacing:.8px!important}.kpi strong{display:block!important;color:#fff!important;font-size:22px!important;margin:10px 0 6px!important}.kpi p{color:#f1f1f1!important;font-size:12px!important;margin:0!important}
.kpi.negative strong,.kpi.warning strong,.amount.debit,.negative{color:#ff9d00!important}
.strategy-grid{display:grid!important;grid-template-columns:.65fr 1.15fr 1.8fr!important;gap:10px!important;margin-bottom:10px!important}
.dashboard-grid{display:grid!important;grid-template-columns:1.55fr .8fr .8fr!important;grid-template-areas:"cash cash pressure" "categories customers insights"!important;gap:10px!important;margin-bottom:10px!important}
.panel{padding:16px!important}.panel-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-bottom:14px!important}
.bar-chart{height:265px!important;display:block!important;background:linear-gradient(180deg,#171717,#141414)!important;border:1px solid #242424!important;border-radius:10px!important;padding:8px!important;overflow:hidden!important}
.line-chart{width:100%;height:100%;display:block}.line-chart .grid line{stroke:#2b2b2b;stroke-width:1}.line-chart .line{fill:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 8px #000)}.line-chart .revenue-line{stroke:#ffcc00}.line-chart .expense-line{stroke:#ff8a00}.line-chart circle{stroke:#171717;stroke-width:3}.line-chart .revenue-point{fill:#ffcc00}.line-chart .expense-point{fill:#ff8a00}.line-chart text{fill:#8790a0;font-size:12px;font-weight:800}
.legend .revenue:before,.track i,.ranking.cyan .track i{background:#ffcc00!important}.legend .expense:before{background:#ff8a00!important}
.pressure-row,.pressure-row.out,.goal-card,.action-card,.insight{background:#141414!important;border-color:#303030!important}.balance{background:#111!important}.goal-card strong,.amount,.action-card em{color:#ffcc00!important}.score-value{background:radial-gradient(circle,#171717 56%,transparent 58%),conic-gradient(#ffcc00 var(--score),#303030 0)!important;box-shadow:none!important}.action-card>b{background:#ffcc00!important;color:#0b0b0b!important}
table{font-family:Inter,Segoe UI,Arial,sans-serif!important}table th{background:#171717!important;color:#888!important}td{border-top-color:#2a2a2a!important;color:#d7d7d7!important}.pill.agendado{background:#2d2614!important;color:#ffcc00!important}.pill.vencido{background:#321b12!important;color:#ff8a00!important}
.ghost-button{background:#151515!important;color:#ffcc00!important;border:1px solid #3d3516!important}
.login-screen{min-height:calc(100vh - 130px);display:grid;place-items:center}
.login-card{width:min(430px,100%);background:#171717;border:1px solid #303030;border-left:4px solid #ffcc00;border-radius:14px;padding:28px;box-shadow:0 18px 42px #0008;display:grid;gap:14px}
.auth-only{background:radial-gradient(circle at 50% 0,#1d1a0f 0,#080808 42%)!important;overflow:hidden}.auth-only .sidebar,.auth-only .topbar,.auth-only .statusbar,.auth-only #content{display:none!important}.auth-only main{margin:0!important;width:100%!important;max-width:none!important;min-height:100vh!important;padding:0!important;display:grid!important;place-items:center!important}.auth-only .login-screen{min-height:100vh!important;width:100%!important;padding:24px!important;display:grid!important;place-items:center!important}.auth-only .login-card{margin:0 auto!important}
.login-card h2{font-size:24px!important}.login-card label,.settings-card label{display:grid;gap:7px;color:#8b8b8b;font-size:10px;text-transform:uppercase;letter-spacing:1px;font-weight:800}
.login-card input,.settings-card input,.settings-card select{height:40px;background:#101010;border:1px solid #333;border-radius:8px;color:#fff;padding:0 12px;outline:none}
.login-card input:focus,.settings-card input:focus,.settings-card select:focus,.contracts-page input:focus{border-color:#ffcc00}
.contracts-page{margin-bottom:10px}.contract-kpis{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:10px;margin-bottom:12px}.contract-filter-card{width:100%;text-align:left;cursor:pointer}.contract-filter-card:hover,.contract-filter-card.active{border-color:#ffcc00!important;box-shadow:0 0 0 1px #ffcc00,0 10px 26px #ffcc0020!important}.contracts-page input{width:min(360px,100%);font-size:10px}.contracts-table-wrap{max-height:520px}.contracts-page details{max-width:420px}.contracts-page summary{cursor:pointer;color:#ffcc00;font-weight:800}.contracts-page pre{white-space:pre-wrap;max-height:260px;overflow:auto;background:#080808;border:1px solid #2a2a2a;border-radius:8px;padding:10px;color:#d8d8d8;font-size:10px;line-height:1.45}.mini-button{margin:8px 0;background:#211d0d!important;color:#ffcc00!important;border:1px solid #3d3516!important;padding:6px 9px!important;font-size:10px!important;box-shadow:none!important}
.form-error{margin:0;color:#ff9d00;font-size:12px;font-weight:800}
.settings-page{margin-top:10px}.settings-grid{display:grid;grid-template-columns:minmax(260px,.75fr) 1.25fr;gap:14px}.settings-card{background:#141414;border:1px solid #303030;border-radius:10px;padding:16px;display:grid;gap:12px}.settings-card h2{margin-bottom:4px!important}.session-pill{border:1px solid #3d3516;background:#211d0d;color:#ffcc00;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:800}
@media(max-width:1500px){.topbar{gap:12px!important}.filters{gap:6px!important}.filters select{width:275px!important}.filters input[type="date"]{width:112px!important}.quick-filters .period-btn{padding:0 7px!important;font-size:10px!important}button{padding:0 11px!important}}
@media(max-width:1100px){.kpis{grid-template-columns:repeat(2,1fr)!important}.dashboard-grid,.strategy-grid{display:block!important}.panel{margin-bottom:10px!important}.filters{flex-wrap:wrap!important;max-width:100%!important}}
@media(max-width:720px){.sidebar{inset:auto 0 0 0!important;width:auto!important;height:58px!important;flex-direction:row!important;padding:0 10px!important}.brand{height:58px!important;border:0!important;padding:10px 0!important}.brand-copy,.api-dot{display:none!important}.sidebar nav{display:flex!important;margin:0 auto!important;width:auto!important}.sidebar nav a{width:38px!important;height:58px!important;padding:0!important;justify-content:center!important;font-size:0!important}.sidebar nav a:before{margin:0!important}main{margin-left:0!important;width:100%!important;padding:14px 12px 72px!important}.topbar{align-items:stretch!important;flex-direction:column!important}.filters{display:grid!important;grid-template-columns:1fr 1fr!important;max-width:none!important}.company-filter,.company-filter select,.quick-filters{grid-column:1/-1!important;width:100%!important}.filters button#refresh{grid-column:1/-1!important}.kpis{display:flex!important;overflow-x:auto!important}.kpi{min-width:185px!important}.settings-grid{grid-template-columns:1fr}.login-card{padding:20px}}
