:root{
  --a-ink:#1D1D1F; --a-ink-2:#3A3A3F; --a-ink-3:#6E6E73; --a-ink-4:#8E8E93; --a-ink-5:#C7C7CC;
  --a-bg:#F5F5F7; --a-surface:#FFFFFF; --a-fill:#F2F2F5; --a-fill-2:#FAFAFB;
  --a-line:rgba(0,0,0,.08); --a-line-soft:rgba(0,0,0,.055);
  --a-acc:#F47B20; --a-acc-d:#E06A13; --a-acc-text:#C25A0C; --a-acc-soft:#FFF4EA; --a-acc-tint:#FFF9F4;
  --a-pos:#1E8E4E; --a-pos-soft:#E9F6EE; --a-neg:#D2362F; --a-neg-soft:#FDEEED;
  --a-r:20px; --a-r-m:14px; --a-r-s:10px;
  --a-sh-1:0 1px 2px rgba(0,0,0,.04);
  --a-sh-2:0 1px 2px rgba(0,0,0,.035), 0 10px 30px -16px rgba(0,0,0,.12);
  --a-sh-3:0 2px 6px rgba(0,0,0,.05), 0 20px 44px -20px rgba(0,0,0,.20);
  --a-ease:cubic-bezier(.32,.72,0,1);
  --t-font:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif;
}
html body{ background:var(--a-bg) !important; color:var(--a-ink); letter-spacing:-.003em;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; text-rendering:optimizeLegibility;
  font-feature-settings:"cv11" 1, "ss03" 1; }
html, body, button, input, select, textarea, table, .fa-table, .cf-table, .gl-table{ font-family:var(--t-font) !important; }
.sb-name, .brand h1{ font-family:'Century Gothic','CenturyGothic','Questrial',var(--t-font) !important; }
::selection{ background:rgba(244,123,32,.18); }
*{ scrollbar-width:thin; scrollbar-color:rgba(0,0,0,.18) transparent; }
*::-webkit-scrollbar{ width:10px; height:10px; }
*::-webkit-scrollbar-track{ background:transparent; }
*::-webkit-scrollbar-thumb{ background:rgba(0,0,0,.16); border-radius:10px; border:3px solid transparent; background-clip:content-box; }
*::-webkit-scrollbar-thumb:hover{ background-color:rgba(0,0,0,.28); }
html body .app > header.top{ background:rgba(245,245,247,.82) !important; -webkit-backdrop-filter:saturate(180%) blur(20px); backdrop-filter:saturate(180%) blur(20px); }
html body .tb-title{ font-size:22px; font-weight:700; letter-spacing:-.022em; color:var(--a-ink); }
html body .chip{ background:var(--a-surface); border:1px solid var(--a-line-soft); box-shadow:var(--a-sh-1);
  color:var(--a-ink-3); font-size:12px; font-weight:500; border-radius:999px; }
html body .chip strong{ color:var(--a-ink); font-weight:600; }
html body .card{ background:var(--a-surface) !important; border:1px solid var(--a-line-soft) !important;
  border-radius:var(--a-r) !important; box-shadow:var(--a-sh-2) !important; overflow:hidden; }
html body .card:hover{ box-shadow:var(--a-sh-2) !important; }
html body .card-head{ background:transparent !important; border-bottom:0 !important; padding:22px 24px 12px !important; }
html body .card > *:not(.card-head){ margin-left:24px; margin-right:24px; }
html body .card > .fa-wrap, html body .card > .cf-wrap, html body .card > .gl-scroll,
html body .card > #pc-stmt, html body .card > #bd-stmt{ margin-left:0; margin-right:0; }
html body .card-title{ font-size:17px !important; font-weight:650 !important; letter-spacing:-.018em !important;
  text-transform:none !important; color:var(--a-ink) !important; }
html body .card-title .bar{ display:none !important; }
html body .card-sub{ font-size:13px !important; color:var(--a-ink-3) !important; font-weight:400 !important; margin-top:4px !important; letter-spacing:-.005em; }
html body .card-legend .lg{ font-size:12.5px; color:var(--a-ink-3); }
html body .card-legend .sw{ border-radius:3px; }
html body .kpi-grid{ gap:14px !important; }
html body .kpi{ background:var(--a-surface) !important; border:1px solid var(--a-line-soft) !important;
  border-radius:18px !important; padding:18px 20px 16px !important; box-shadow:var(--a-sh-2) !important;
  transition:transform .35s var(--a-ease), box-shadow .35s var(--a-ease) !important; }
html body .kpi::before, html body .kpi::after{ display:none !important; }
html body .kpi.accent{ background:var(--a-surface) !important; border-color:var(--a-line-soft) !important; }
html body .kpi:hover{ transform:translateY(-2px); box-shadow:var(--a-sh-3) !important; }
html body .kpi.kpi-pulse{ animation:none !important; }
html body .kpi .label{ font-size:13px !important; font-weight:600 !important; letter-spacing:-.008em !important;
  text-transform:none !important; color:var(--a-ink-2) !important; }
html body .kpi .sublabel{ font-size:12px !important; color:var(--a-ink-4) !important; font-weight:400 !important; margin-top:2px !important; }
html body .kpi .value{ font-size:30px !important; font-weight:650 !important; letter-spacing:-.028em !important;
  margin-top:14px !important; color:var(--a-ink) !important; font-variant-numeric:tabular-nums; line-height:1.05; }
html body .kpi .value.neg{ color:var(--a-neg) !important; }
html body .kpi .value.pos{ color:var(--a-pos) !important; }
html body .kpi .value .cur{ font-size:13px !important; font-weight:500 !important; color:var(--a-ink-4) !important;
  letter-spacing:0 !important; margin-right:5px; vertical-align:.45em; }
html body .kpi .delta{ border:0 !important; border-radius:999px !important; font-size:12px !important; font-weight:600 !important;
  padding:4px 10px !important; letter-spacing:-.005em; background:var(--a-fill) !important; color:var(--a-ink-3) !important; }
html body .kpi .delta.down{ background:var(--a-neg-soft) !important; color:var(--a-neg) !important; }
html body .kpi .delta.up{ background:var(--a-pos-soft) !important; color:var(--a-pos) !important; }
html body .kpi .delta .arr{ display:none; }
html body .cf-hint-item, html body .gp-stat{ border:1px solid var(--a-line-soft) !important; border-radius:16px !important;
  box-shadow:var(--a-sh-1) !important; background:var(--a-surface) !important; }
html body .cf-hint-item .lbl, html body .gp-stat-l{ text-transform:none !important; letter-spacing:-.005em !important;
  font-size:12.5px !important; font-weight:600 !important; color:var(--a-ink-3) !important; }
html body .cf-hint-item .val{ font-size:22px !important; font-weight:650 !important; letter-spacing:-.022em !important; }
html body .ctrl-lbl, html body .chips-row .chips-lbl, html body .ctrl-row label{
  text-transform:none !important; letter-spacing:-.005em !important; font-size:12.5px !important; font-weight:500 !important; color:var(--a-ink-3) !important; }
html body select.dd, html body .ctrl-row input, html body .gl-cat, html body .gl-sign, html body .gp-in,
html body #gl-search, html body #gp-buscar, html body .fb-field input{
  height:36px; border:1px solid var(--a-line) !important; border-radius:var(--a-r-s) !important; background-color:var(--a-surface) !important;
  box-shadow:var(--a-sh-1) !important; color:var(--a-ink) !important; font-size:13px !important; font-weight:500 !important;
  transition:border-color .2s var(--a-ease), box-shadow .2s var(--a-ease) !important; }
html body select.dd:hover{ border-color:rgba(0,0,0,.16) !important; }
html body select.dd:focus, html body .ctrl-row input:focus, html body .gp-in:focus, html body .gl-cat:focus,
html body #gl-search:focus, html body #gp-buscar:focus, html body .fb-field input:focus{
  outline:none !important; border-color:var(--a-acc) !important; box-shadow:0 0 0 4px rgba(244,123,32,.14) !important; }
html body .sel-wrap::after{ content:"" !important; width:10px; height:10px; right:13px !important;
  background:no-repeat center/10px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpath d='M2 3.8 5 6.6 8 3.8' fill='none' stroke='%238E8E93' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
html body #gl-search, html body #gp-buscar{ padding-left:36px !important;
  background:no-repeat 12px 50%/15px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238E8E93' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") !important; }
html body .xls-btn, html body .xp-all, html body .gl-btn:not(.primary), html body .au-reset, html body .fb-signout, html body .au-btn:not(.primary){
  display:inline-flex; align-items:center; gap:7px; height:34px; padding:0 14px !important;
  border:1px solid var(--a-line) !important; border-radius:var(--a-r-s) !important; background:var(--a-surface) !important;
  color:var(--a-ink) !important; font-size:13px !important; font-weight:550 !important; letter-spacing:-.005em !important;
  box-shadow:var(--a-sh-1) !important; transform:none !important;
  transition:background .2s var(--a-ease), border-color .2s var(--a-ease), transform .15s var(--a-ease) !important; }
html body .xls-btn:hover, html body .xp-all:hover, html body .gl-btn:not(.primary):hover, html body .au-reset:hover, html body .fb-signout:hover{
  background:var(--a-fill-2) !important; border-color:rgba(0,0,0,.14) !important; }
html body .xls-btn:active, html body .xp-all:active, html body .gl-btn:active, html body .au-refresh:active, html body .au-reset:active, html body .fb-signout:active{
  transform:scale(.97) !important; }
html body .xls-btn svg{ color:var(--a-acc) !important; width:15px; height:15px; }
html body .gl-btn.primary, html body .au-refresh, html body #au-save, html body .fb-rb-btn, html body .au-btn.primary{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  background:var(--a-acc) !important; background-image:none !important; color:#fff !important; border:0 !important;
  border-radius:12px !important; font-weight:600 !important; font-size:13.5px !important; letter-spacing:-.008em !important;
  box-shadow:0 1px 2px rgba(224,106,19,.25), inset 0 1px 0 rgba(255,255,255,.14) !important; transform:none !important;
  transition:background .2s var(--a-ease), transform .15s var(--a-ease), box-shadow .2s var(--a-ease) !important; }
html body .gl-btn.primary:hover, html body .au-refresh:hover, html body #au-save:hover, html body .fb-rb-btn:hover{
  background:var(--a-acc-d) !important; box-shadow:0 4px 14px -4px rgba(224,106,19,.45) !important; }
html body #au-save, html body .au-refresh{ height:44px; padding:0 22px !important; }
.ic{ width:16px; height:16px; flex:none; display:inline-block; vertical-align:-3px; }
html body .fs-expand{ width:34px !important; height:34px !important; border-radius:10px !important;
  border:1px solid var(--a-line-soft) !important; background:var(--a-surface) !important; box-shadow:var(--a-sh-1) !important; color:var(--a-ink-3) !important; }
html body .fs-expand:hover{ color:var(--a-ink) !important; background:var(--a-fill-2) !important; }
html body .pchip{ border:1px solid var(--a-line) !important; background:var(--a-surface) !important; border-radius:999px !important;
  color:var(--a-ink-2) !important; font-weight:550 !important; font-size:12.5px !important; box-shadow:var(--a-sh-1) !important; transform:none !important; }
html body .pchip[aria-selected="true"]{ background:var(--a-acc) !important; border-color:var(--a-acc) !important; color:#fff !important; box-shadow:0 1px 2px rgba(224,106,19,.25) !important; }
html body .pchip[aria-selected="true"] .dot{ background:rgba(255,255,255,.95) !important; }
html body .xp-btn{ width:20px; height:20px; border:0 !important; border-radius:999px !important;
  background:var(--a-fill) !important; color:var(--a-ink-3) !important; margin:0 10px 0 -4px; }
html body .xp-btn:hover{ background:var(--a-acc-soft) !important; color:var(--a-acc-d) !important; }
html body .xp-btn[aria-expanded="true"]{ background:var(--a-acc) !important; color:#fff !important; }
html body .xp-ic::before{ width:9px; height:1.6px; } html body .xp-ic::after{ width:1.6px; height:9px; }
html body .fa-wrap, html body .cf-wrap, html body .gl-scroll{ border-top:1px solid var(--a-line-soft); }
html body .fa-table, html body .cf-table, html body .gl-table{ font-size:13px !important; border-collapse:separate !important; border-spacing:0 !important; }
html body .fa-table thead th, html body .cf-table thead th, html body .gl-table th,
html body #panel-budget .fa-table thead th, html body .cf-table thead tr.cf-tier-y th, html body .cf-table thead tr.cf-tier-m th{
  background:var(--a-fill-2) !important; background-image:none !important; color:var(--a-ink-3) !important;
  font-size:11.5px !important; font-weight:600 !important; letter-spacing:.01em !important; text-transform:none !important;
  border:0 !important; border-bottom:1px solid var(--a-line) !important; box-shadow:none !important; text-shadow:none !important; }
html body .fa-table thead th:first-child, html body .cf-table thead th:first-child, html body .gl-table th:first-child,
html body .cf-table thead tr.cf-tier-y th:first-child, html body .cf-table thead tr.cf-tier-m th:first-child,
html body #panel-budget .fa-wrap thead tr:nth-child(2) th:first-child, html body #panel-budget #bd-proj thead tr:nth-child(2) th:first-child{
  background:var(--a-fill-2) !important; color:var(--a-ink-3) !important; }
html body .cf-table thead tr.cf-tier-y th, html body #panel-budget .fa-wrap thead tr:first-child th:not([rowspan]){
  color:var(--a-ink) !important; font-weight:650 !important; border-bottom:1px solid var(--a-line-soft) !important; }
html body .fa-table th.col-tot, html body .cf-table th.col-tot, html body .cf-table thead tr.cf-tier-y th.col-tot,
html body #panel-budget .fa-table thead th.band-tot{ background:#F3F3F6 !important; color:var(--a-ink) !important; }
html body #panel-budget .fa-table thead th.band-real, html body #panel-budget .fa-table thead th.real-col{ background:#F4F4F7 !important; color:var(--a-ink-2) !important; }
html body #panel-budget .fa-table thead th.band-fcst, html body #panel-budget .fa-table thead th.fcst{ background:var(--a-acc-soft) !important; color:var(--a-acc-text) !important; }
html body #panel-budget .fa-table thead th.sub{ font-size:10.5px !important; }
html body #panel-budget .fa-table .grp-l{ border-left:1px solid var(--a-line-soft) !important; }
html body #panel-budget #bd-proj td.sep-real, html body #panel-budget #bd-proj th.sep-real{ border-left:1px solid var(--a-acc-line, #FBD9BC) !important; }
html body .fa-table td, html body .cf-table td, html body .gl-table td{
  border:0 !important; border-bottom:1px solid var(--a-line-soft) !important; color:var(--a-ink-2);
  padding-top:8px !important; padding-bottom:8px !important; font-variant-numeric:tabular-nums; }
html body .fa-table td:first-child, html body .cf-table td:first-child{ color:var(--a-ink) !important; font-weight:500; }
html body .fa-table tbody td:first-child, html body .cf-table tbody td:first-child, html body .fa-table thead th:first-child, html body .cf-table thead th:first-child{
  box-shadow:inset -1px 0 0 var(--a-line-soft) !important; }
html body .fa-table .neg, html body .cf-table .neg{ color:var(--a-neg) !important; font-weight:500; }
html body .fa-table .zero, html body .cf-table .zero{ color:var(--a-ink-5) !important; }
html body .fa-table tbody td, html body .cf-table tbody td{ background:var(--a-surface); }
html body .fa-table tr.fa-section td, html body .cf-table tr.section td, html body .fa-table tr.fa-section td:first-child, html body .cf-table tr.section td:first-child{
  background:var(--a-surface) !important; color:var(--a-acc-text) !important; font-size:11.5px !important; font-weight:650 !important;
  letter-spacing:.02em !important; padding-top:20px !important; padding-bottom:8px !important; border-bottom:1px solid var(--a-line-soft) !important; }
html body .cf-table tr.section.info td, html body .cf-table tr.section.info td:first-child{ background:var(--a-acc-tint) !important; }
html body .fa-table tr.fa-concept td, html body .fa-table tr.fa-concept td:first-child{ background:var(--a-surface) !important; }
html body .fa-table tr.fa-concept td:first-child{ color:var(--a-ink) !important; font-weight:600 !important; }
html body .fa-table tr.fa-subitem td, html body .fa-table tr.fa-subitem td:first-child{ background:var(--a-fill-2) !important; color:var(--a-ink-3) !important; }
html body .fa-table tr.fa-total td, html body .cf-table tr.subtotal td, html body .fa-table tr.fa-total td:first-child, html body .cf-table tr.subtotal td:first-child,
html body #panel-budget .fa-table tbody tr.fa-total td{
  background:var(--a-fill-2) !important; color:var(--a-ink) !important; font-weight:650 !important;
  border-top:1px solid var(--a-line) !important; border-bottom:1px solid var(--a-line) !important; }
html body .fa-table tr.fa-total .neg, html body .cf-table tr.subtotal .neg{ color:var(--a-neg) !important; }
html body .fa-table tr.fa-grand td, html body .cf-table tr.total td, html body .fa-table tbody tr.fa-grand td:first-child, html body .cf-table tbody tr.total td:first-child,
html body #panel-budget .fa-table tbody tr.fa-grand td, html body #panel-budget .fa-table tbody tr.fa-grand td.fcst, html body #panel-budget .fa-table tbody tr.fa-grand td.col-tot{
  background:#F3F3F6 !important; color:var(--a-ink) !important; font-weight:700 !important; border-top:1px solid rgba(0,0,0,.12) !important; }
html body .fa-table tbody tr.fa-grand .neg, html body .cf-table tbody tr.total .neg{ color:var(--a-neg) !important; }
html body .fa-table tbody tr.fa-grand .pos, html body .cf-table tbody tr.total .pos{ color:var(--a-pos) !important; }
html body .fa-table td.col-tot, html body .cf-table td.col-tot, html body #panel-budget .fa-table tbody td.col-tot{ background:#FAFAFB !important; color:var(--a-ink) !important; font-weight:600; }
html body #panel-budget .fa-table tbody td.real-col{ background:var(--a-surface) !important; }
html body #panel-budget .fa-table tbody td.fcst{ background:var(--a-acc-tint) !important; }
html body #panel-budget .fa-table tbody tr.bd-cat td, html body #panel-budget .fa-table tbody tr.bd-cat td.real-col{ background:var(--a-fill-2) !important; font-weight:650; }
html body #panel-budget .fa-table tbody tr.bd-cat td:first-child{ background:var(--a-fill-2) !important; color:var(--a-ink) !important; }
html body #panel-budget .fa-table tbody tr.bd-cat td.fcst, html body #panel-budget .fa-table tbody tr.bd-cat td.col-tot{ background:#FFF3E9 !important; }
html body .fa-table tbody tr:hover td, html body .cf-table tbody tr:hover td, html body .gl-table tbody tr:hover td,
html body .fa-table td.xhov, html body .cf-table td.xhov, html body #panel-budget .fa-table tbody td.xhov{ background:#F6F6F8 !important; }
html body .gl-table tbody tr:hover{ background:#F6F6F8 !important; }
html body .fa-table tbody tr.abierto td, html body .cf-table tbody tr.abierto td{ background:var(--a-acc-tint) !important; }
html body .table tr.xp-child td{ color:var(--a-ink-3); }
html body .gl-table td{ color:var(--a-ink-2) !important; }
html body .au-zone, html body .dz-zone{ border:1.5px dashed rgba(0,0,0,.14) !important; border-radius:18px !important; background:var(--a-fill-2) !important; }
html body .au-zone:hover, html body .dz-zone:hover{ border-color:var(--a-acc) !important; background:var(--a-acc-tint) !important; }
html body .gl-pending-head .ic{ color:#C98A00; }
html body .pc-card, html body .proj-card{ border-radius:16px !important; border:1px solid var(--a-line-soft) !important; box-shadow:var(--a-sh-1) !important; }
html body .cf-table thead tr.cf-tier-y th:first-child, html body .fa-table thead tr th:first-child, html body .cf-table thead tr th:first-child{
  box-shadow:inset -1px 0 0 var(--a-line-soft) !important; }
html body .cf-table thead tr.cf-tier-m th:first-child{ box-shadow:none !important; }
html body .fa-table thead th.col-tot, html body .cf-table thead th.col-tot, html body .fa-table thead th.col-pct, html body .cf-table thead th.col-pct{ box-shadow:none !important; }
html body #panel-budget #bd-stmt thead tr:first-child th:not([rowspan]), html body #panel-budget #bd-proj thead tr:first-child th:not([rowspan]){
  background:var(--a-fill-2) !important; color:var(--a-ink) !important; font-weight:650 !important; box-shadow:none !important;
  border-bottom:1px solid var(--a-line-soft) !important; }
html body #panel-budget #bd-stmt thead th, html body #panel-budget #bd-proj thead th{ border-bottom:1px solid var(--a-line) !important; }
html body #panel-budget .fa-table thead th.sub:not(.fcst){ color:var(--a-ink-3) !important; }
html body #panel-budget .fa-table thead th.sub.fcst{ color:var(--a-acc-text) !important; }
html body #panel-budget .fa-table thead th.band-fcst, html body #panel-budget #bd-stmt thead th.band-fcst, html body #panel-budget #bd-proj thead th.band-fcst{
  background:var(--a-acc-soft) !important; color:var(--a-acc-text) !important; }
html body .card > .au-zone, html body .card > .dz-zone{ width:auto !important; box-sizing:border-box; }
html body .card > #gl-search{ margin:4px 24px 6px !important; width:calc(100% - 48px); max-width:380px; }
html body .card > #gl-stats{ margin:4px 24px 12px !important; font-size:12.5px; color:var(--a-ink-4); }
html body .gl-actions{ padding:16px 24px 20px !important; margin:0 !important; gap:10px; display:flex; align-items:center; flex-wrap:wrap; }
html body .gl-hint{ color:var(--a-ink-4); font-size:12.5px; }
@media (max-width:760px){
  html body .card-head{ padding:18px 16px 10px !important; }
  html body .card-head .card-title{ padding-right:44px; }
  html body .card > *:not(.card-head){ margin-left:16px; margin-right:16px; }
  html body .card > #gl-search{ margin:4px 16px 6px !important; width:calc(100% - 32px); }
  html body .card > #gl-stats{ margin:4px 16px 12px !important; }
  html body .card-title{ font-size:16px !important; }
  html body .kpi .value{ font-size:28px !important; }
}
@media (prefers-reduced-motion:reduce){ html body .kpi, html body .kpi:hover{ transform:none !important; transition:none !important; } }
