/* Finexis · refinamento de contraste e navegação compacta.
   Apenas apresentação: nenhuma alteração nas APIs, conciliação ou permissões. */
:root{
  --bg:#f2f4f7;
  --paper:#ffffff;
  --soft:#f7f9fc;
  --border:#dfe5ee;
  --ink:#19283f;
  --orange:#1452eb;
  --orange-light:#edf2ff;
}
html,body,.app-shell,.workspace{background:#f2f4f7}
body{color:var(--ink)}
::selection{background:#dbe7ff}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:2px solid #1452eb;
  outline-offset:3px;
}
.page{background:transparent}
.welcome{
  background:#e9eff9;
  border:1px solid #dbe3f1;
}
.stat-card:not(.dark):not(.orange-wash){
  background:#fff;
  border:1px solid #dfe5ee;
}
.stat-card.orange-wash{
  background:#e8effd;
  border:1px solid #d5e1f7;
}
.stat-card.dark{border:1px solid #1c365f}
.panel,.table-panel,.report-card,.summary-box,.account-card,.instructions,.settings-box{
  background:#fff;
  border:1px solid #dfe5ee;
}
.analytics{
  background:#fff;
  border:1px solid #dfe5ee;
}
.mini-metric{
  background:#fff;
  border:1px solid #dfe5ee;
}
.upload-zone{
  background:#fff;
  border-color:#c6d1df;
}
.searchbar{
  background:#fff;
  border:1px solid #dfe5ee;
}
.searchbar:focus-within{border-color:#1452eb;box-shadow:none}
.data-table th{background:#f6f8fb;color:#6d7c91}
.data-table td{border-top-color:#eaf0f5}
.data-table tbody tr:hover td{background:#f5f8fd}
.table-footer{border-top-color:#e9eef5}
.filter-input,.mini-select{
  background:#fff;
  border-color:#dde4ed;
}
.review-highlight{background:#fdf4e9;border:1px solid #f1e0c8}
.auth-layer{background:#f2f4f7}

/* Desktop: compacto por padrão, expande automaticamente ao passar o mouse
   sem manter a expansão depois de clicar em um item. */
@media (min-width:761px){
  .rail{
    width:74px;
    padding:18px 10px 14px;
    transition:width .44s cubic-bezier(.2,.8,.2,1);
    will-change:width;
  }
  .rail:hover{width:226px}
  .workspace{
    margin-left:106px;
    width:calc(100% - 106px);
    padding:23px clamp(18px,2.3vw,36px) 55px 8px;
  }
  /* A área de trabalho se move em sincronia com a expansão da lateral. */
  .rail .brandmark{
    position:relative;
    height:49px;
    min-height:49px;
    padding:5px;
    overflow:hidden;
  }
  .brand-icon{
    display:grid;
    place-items:center;
    flex:0 0 36px;
    width:36px;
    height:36px;
    border-radius:11px;
    background:#fff;
    color:#183963;
    font-weight:850;
    font-size:20px;
    transition:opacity .24s,transform .38s cubic-bezier(.2,.8,.2,1);
  }
  .rail .brand-emblem{
    position:absolute;
    top:50%;
    left:5px;
    width:126px!important;
    height:40px;
    padding:4px!important;
    border-radius:10px!important;
    background:#fff!important;
    transform:translate(-8px,-50%);
    opacity:0;
    transition:opacity .21s ease,transform .38s cubic-bezier(.2,.8,.2,1);
    pointer-events:none;
  }
  .rail .brand-emblem img{width:115px!important;max-width:100%;max-height:30px}
  .rail .brand-label{
    position:absolute;
    top:17px;
    left:141px;
    opacity:0;
    white-space:nowrap;
    transform:translateX(-7px);
    transition:opacity .2s ease,transform .37s cubic-bezier(.2,.8,.2,1);
    pointer-events:none;
  }
  .rail .brand-label small{font-size:10px;color:#cad5e9}
  .rail:hover .brand-icon{
    opacity:0;
    transform:translateX(-8px);
  }
  .rail:hover .brand-emblem,
  .rail:hover .brand-label{
    opacity:1;
    transform:translate(0,-50%);
  }
  .rail:hover .brand-label .brand-label{
    transform:translateX(0);
  }
  .rail .rail-group-label{
    white-space:nowrap;
    opacity:0;
    overflow:hidden;
    transition:opacity .2s ease;
    pointer-events:none;
  }
  .rail:hover .rail-group-label{opacity:1}
  .rail .nav-list{overflow-x:hidden}
  .rail .nav-btn{
    padding-left:16px;
    padding-right:10px;
    gap:12px;
    overflow:hidden;
  }
  .rail .nav-btn .ph{
    flex:0 0 19px;
    width:19px;
    text-align:center;
  }
  .rail .nav-btn .nav-label{
    display:block;
    max-width:0;
    opacity:0;
    overflow:hidden;
    white-space:nowrap;
    transform:translateX(-7px);
    transition:max-width .42s cubic-bezier(.2,.8,.2,1),opacity .2s ease,transform .32s ease;
  }
  .rail:hover .nav-btn .nav-label{
    max-width:160px;
    opacity:1;
    transform:translateX(0);
    transition-delay:0s,.12s,.04s;
  }
  .rail .nav-indicator{
    width:100%!important;
    box-shadow:none;
  }
  .rail .rail-bottom{
    padding:12px 0 4px;
    width:100%;
    border-top:1px solid #2a3854;
  }
  .rail .profile-btn{
    padding:7px 9px;
    min-height:48px;
    gap:12px;
    overflow:hidden;
  }
  .rail .profile-btn .avatar{
    flex:0 0 35px;
    width:35px;
    height:35px;
    border:none;
    box-shadow:none;
  }
  .rail .profile-btn > span:nth-child(2){
    flex:0 0 auto;
    max-width:0;
    opacity:0;
    overflow:hidden;
    transform:translateX(-6px);
    transition:max-width .4s cubic-bezier(.2,.8,.2,1),opacity .2s ease,transform .32s ease;
  }
  .rail .profile-btn > .ph{
    opacity:0;
    flex:none;
    transition:opacity .2s ease;
  }
  .rail:hover .profile-btn > span:nth-child(2){
    max-width:125px;
    opacity:1;
    transform:none;
    transition-delay:0s,.12s,.04s;
  }
  .rail:hover .profile-btn > .ph{opacity:1}
}
/* Em telas touch, a navegação inferior permanece horizontal e legível. */
@media (max-width:760px){
  .app-shell,.workspace{background:#f2f4f7}
  .rail{width:100%}
  .nav-btn .nav-label{opacity:1;max-width:none}
}
@media (prefers-reduced-motion:reduce){
  .rail,.rail *, .rail *::before,.rail *::after{
    animation-duration:.01ms!important;
    transition-duration:.01ms!important;
  }
}


/* UI V3: abrir apenas enquanto o mouse está no menu.
   Foco retido após clique NÃO deve manter a lateral aberta. */
@media (min-width:761px){
  .workspace{
    margin-left:106px;
    width:calc(100% - 106px);
    transition:margin-left .44s cubic-bezier(.2,.8,.2,1),
               width .44s cubic-bezier(.2,.8,.2,1);
    min-width:0;
  }
  .app-shell:has(> .rail:hover) > .workspace{
    margin-left:258px;
    width:calc(100% - 258px);
  }
  .rail .brand-emblem{
    background:transparent!important;
    padding:0!important;
  }
  .rail .brand-emblem img{
    /* Logomarca sem placa branca sobre o azul da lateral. */
    filter:brightness(0) invert(1);
  }
  .rail .brand-label{display:none!important}
  .rail .brandmark:hover{background:transparent}
  .rail .nav-btn:hover:not(.active),.rail .profile-btn:hover{
    background:transparent;
    color:#fff;
  }
  .rail .nav-btn:hover:not(.active) .nav-label{font-weight:750}
  .rail .nav-btn:focus:not(:focus-visible){outline:none}
  .rail .nav-btn .nav-label{transition:opacity .22s ease,max-width .44s cubic-bezier(.2,.8,.2,1),transform .32s ease}
}

/* Phosphor: sol, lua crescente e monitor; preferência por usuário/navegador. */
.theme-switcher{
  display:inline-flex;
  align-items:center;
  gap:3px;
  padding:4px;
  border:1px solid #dbe3ef;
  border-radius:13px;
  background:#fff;
}
.theme-option{
  display:grid;
  place-items:center;
  border:0;
  background:transparent;
  color:#64758c;
  height:32px;
  width:34px;
  padding:0;
  border-radius:9px;
  transition:background .2s ease,color .2s ease;
}
.theme-option .ph{font-size:17px;line-height:1}
.theme-option:hover{background:#eef3fb;color:#183d7b}
.theme-option[aria-pressed="true"]{background:#e4edff;color:#1452eb}
.theme-option:focus-visible{outline:2px solid #1452eb;outline-offset:2px}

/* Tema escuro: preservar azul Finexis e separar níveis de superfícies. */
html[data-theme="dark"]{
  color-scheme:dark;
  --bg:#0e1626;
  --paper:#182337;
  --soft:#1b2a41;
  --border:#34445c;
  --ink:#e9eef7;
  --muted:#a6b3ca;
  --orange-light:#203657;
  --green-soft:#193e35;
  --red-soft:#432a38;
  --blue-soft:#253655;
}
html[data-theme="dark"] body,
html[data-theme="dark"] .app-shell,
html[data-theme="dark"] .workspace{background:#0e1626;color:#e9eef7}
html[data-theme="dark"] .page{background:transparent}
html[data-theme="dark"] .welcome{
  background:#1c304f;
  border-color:#304b6d;
}
html[data-theme="dark"] .stat-card:not(.dark):not(.orange-wash),
html[data-theme="dark"] .panel,
html[data-theme="dark"] .table-panel,
html[data-theme="dark"] .report-card,
html[data-theme="dark"] .summary-box,
html[data-theme="dark"] .account-card,
html[data-theme="dark"] .instructions,
html[data-theme="dark"] .settings-box,
html[data-theme="dark"] .analytics,
html[data-theme="dark"] .mini-metric,
html[data-theme="dark"] .searchbar,
html[data-theme="dark"] .upload-zone,
html[data-theme="dark"] .auth-card{
  background:#182337;
  border-color:#34445c;
  color:#e9eef7;
}
html[data-theme="dark"] .stat-card.orange-wash{
  background:#1f3555;
  border-color:#355273;
}
html[data-theme="dark"] .stat-card.dark{background:#233d64;border-color:#3b5b85}
html[data-theme="dark"] .stat-card .stat-label,
html[data-theme="dark"] .stat-card .stat-desc,
html[data-theme="dark"] .eyebrow,
html[data-theme="dark"] .section-head p,
html[data-theme="dark"] .page-heading p,
html[data-theme="dark"] .data-table th,
html[data-theme="dark"] .data-table td,
html[data-theme="dark"] .mini-metric .metric-info span,
html[data-theme="dark"] .stat-card small,
html[data-theme="dark"] .account-pair,
html[data-theme="dark"] .client-sub,
html[data-theme="dark"] .table-footer,
html[data-theme="dark"] .report-card p,
html[data-theme="dark"] .switch-row p,
html[data-theme="dark"] .instructions p,
html[data-theme="dark"] .auth-card p,
html[data-theme="dark"] .welcome p{
  color:#b1bfd4;
}
html[data-theme="dark"] .data-table th{background:#202f46;border-color:#33475f}
html[data-theme="dark"] .data-table td{border-top-color:#2e405b}
html[data-theme="dark"] .data-table tbody tr:hover td{background:#253954}
html[data-theme="dark"] .data-table .client-name,
html[data-theme="dark"] .data-table .money,
html[data-theme="dark"] .money,
html[data-theme="dark"] .summary-box strong,
html[data-theme="dark"] .metric-info strong,
html[data-theme="dark"] .section-head h2,
html[data-theme="dark"] .table-title h3,
html[data-theme="dark"] .report-card h3,
html[data-theme="dark"] .switch-row h3,
html[data-theme="dark"] .page-heading h1,
html[data-theme="dark"] .welcome h1,
html[data-theme="dark"] .auth-card h1,
html[data-theme="dark"] .stat-num{
  color:#f3f6fc;
}
html[data-theme="dark"] .mini-select,
html[data-theme="dark"] .filter-input,
html[data-theme="dark"] .searchbar input,
html[data-theme="dark"] .auth-card input,
html[data-theme="dark"] .dialog-body input,
html[data-theme="dark"] .dialog-body textarea,
html[data-theme="dark"] .dialog-body select,
html[data-theme="dark"] .field-block input,
html[data-theme="dark"] .field-block select{
  background:#202d42;
  border-color:#3b4c65;
  color:#eef3fb;
}
html[data-theme="dark"] .searchbar input::placeholder,
html[data-theme="dark"] .filter-input::placeholder{color:#91a0b6}
html[data-theme="dark"] .mini-select option{background:#202d42;color:#eef3fb}
html[data-theme="dark"] .tabs{background:#202d42}
html[data-theme="dark"] .tab{color:#b2c1d4}
html[data-theme="dark"] .tab.active{background:#344964;color:#f7f9ff;box-shadow:none}
html[data-theme="dark"] .tab:hover:not(.active){color:#e9eef7}
html[data-theme="dark"] .btn.secondary{background:#2e405b;color:#ecf3fc}
html[data-theme="dark"] .btn.secondary:hover{background:#3d5577}
html[data-theme="dark"] .text-button{color:#b7c5d9}
html[data-theme="dark"] .text-button:hover{color:#fff}
html[data-theme="dark"] .stat-icon,
html[data-theme="dark"] .metric-icon,
html[data-theme="dark"] .metric-icon.gray,
html[data-theme="dark"] .metric-icon.purple{background:#263953;color:#b7d0ff}
html[data-theme="dark"] .tiny-tag{background:#284a41;color:#b6edda}
html[data-theme="dark"] .account-pair,
html[data-theme="dark"] .switch-row{border-color:#34445c}
html[data-theme="dark"] .account-pair b{color:#eef3fb}
html[data-theme="dark"] .review-highlight{background:#3a3025;border-color:#63503a}
html[data-theme="dark"] .review-highlight p{color:#d1b797}
html[data-theme="dark"] .status.pending{background:#303d51;color:#c1cada}
html[data-theme="dark"] .status.matched{background:#1b4439;color:#9adbb7}
html[data-theme="dark"] .status.review{background:#48391f;color:#f1c67c}
html[data-theme="dark"] .table-footer,html[data-theme="dark"] .theme-switcher{border-color:#34445c}
html[data-theme="dark"] .theme-switcher{background:#202e45}
html[data-theme="dark"] .theme-option{color:#b2c5e3}
html[data-theme="dark"] .theme-option:hover{background:#334761;color:#fff}
html[data-theme="dark"] .theme-option[aria-pressed="true"]{background:#38557e;color:#fff}
html[data-theme="dark"] .notification-popover,
html[data-theme="dark"] .finexis-dialog,
html[data-theme="dark"] .toast{background:#1b2b43;color:#edf3fb;border-color:#39506b}
html[data-theme="dark"] .notification-popover p,
html[data-theme="dark"] .dialog-header p{color:#b0bfd3}
html[data-theme="dark"] .dialog-body .field-block{color:#d6e0f0}
html[data-theme="dark"] .dialog-actions{border-color:#34445c}
html[data-theme="dark"] .dialog-close{background:#30445f;color:#e9eef7}
html[data-theme="dark"] .finexis-dialog::backdrop{background:rgba(0,0,0,.67)}
html[data-theme="dark"] .chart-svg path[stroke="#edf0f4"]{stroke:#37465c}
html[data-theme="dark"] .empty-state{color:#b0bfd3}
html[data-theme="dark"] .foot-controls button,
html[data-theme="dark"] .action-inline{background:#273c56;color:#dfe9f8;border-color:#405572}
html[data-theme="dark"] .foot-controls button:hover,
html[data-theme="dark"] .action-inline:hover{background:#345070}
html[data-theme="dark"] .auth-layer{background:#0e1626}
html[data-theme="dark"] .auth-card .auth-brand{color:#e9eef7}
@media(max-width:760px){
  .theme-switcher{gap:0;padding:3px}
  .theme-option{width:30px;height:30px}
  html[data-theme="dark"] .rail{background:#15233b}
}
@media(prefers-reduced-motion:reduce){
  .workspace,.theme-option{transition-duration:.01ms!important}
}


/* V4: dark neutro. Azul permanece apenas em ações e detalhes da marca. */
html[data-theme="dark"]{
  color-scheme:dark;
  --bg:#111214;
  --paper:#1d1e21;
  --soft:#252629;
  --border:#35363b;
  --ink:#eeeeef;
  --muted:#a8a9b0;
  --orange-light:#292a2f;
  --blue-soft:#26282e;
}
html[data-theme="dark"] body,
html[data-theme="dark"] .app-shell,
html[data-theme="dark"] .workspace,
html[data-theme="dark"] .auth-layer{background:#111214;color:#ededf0}
html[data-theme="dark"] .rail{background:#151618}
html[data-theme="dark"] .rail .nav-btn:hover:not(.active){color:#f4f4f5}
html[data-theme="dark"] .rail .profile-btn:hover{background:#292a2e}
html[data-theme="dark"] .welcome{
  background:#202124;
  border-color:#34353a;
}
html[data-theme="dark"] .stat-card:not(.dark):not(.orange-wash),
html[data-theme="dark"] .stat-card.orange-wash,
html[data-theme="dark"] .stat-card.dark,
html[data-theme="dark"] .panel,
html[data-theme="dark"] .table-panel,
html[data-theme="dark"] .report-card,
html[data-theme="dark"] .summary-box,
html[data-theme="dark"] .account-card,
html[data-theme="dark"] .instructions,
html[data-theme="dark"] .settings-box,
html[data-theme="dark"] .analytics,
html[data-theme="dark"] .mini-metric,
html[data-theme="dark"] .searchbar,
html[data-theme="dark"] .upload-zone,
html[data-theme="dark"] .auth-card{
  background:#1d1e21;
  border-color:#35363b;
  color:#ececed;
}
html[data-theme="dark"] .stat-card.dark{background:#292a2e;border-color:#44454b}
html[data-theme="dark"] .stat-card.orange-wash{background:#25262a;border-color:#393a40}
html[data-theme="dark"] .data-table th,
html[data-theme="dark"] .tabs,
html[data-theme="dark"] .tab.active,
html[data-theme="dark"] .mini-select,
html[data-theme="dark"] .filter-input,
html[data-theme="dark"] .searchbar input,
html[data-theme="dark"] .auth-card input,
html[data-theme="dark"] .dialog-body input,
html[data-theme="dark"] .dialog-body textarea,
html[data-theme="dark"] .dialog-body select,
html[data-theme="dark"] .field-block input,
html[data-theme="dark"] .field-block select{
  background:#25262a;
  border-color:#424348;
  color:#eeeef0;
}
html[data-theme="dark"] .data-table th{color:#b7b7bc}
html[data-theme="dark"] .data-table td{border-top-color:#35363b;color:#d1d1d5}
html[data-theme="dark"] .data-table tbody tr:hover td{background:#27282c}
html[data-theme="dark"] .mini-select option{background:#25262a;color:#eeeeef}
html[data-theme="dark"] .tab.active{color:#f5f5f6}
html[data-theme="dark"] .tab:hover:not(.active){color:#fff}
html[data-theme="dark"] .stat-icon,
html[data-theme="dark"] .metric-icon,
html[data-theme="dark"] .metric-icon.gray,
html[data-theme="dark"] .metric-icon.purple{background:#303136;color:#d4d4da}
html[data-theme="dark"] .theme-switcher{
  background:#27282b;
  border-color:#44454b;
}
html[data-theme="dark"] .theme-option{color:#bfc0c5}
html[data-theme="dark"] .theme-option:hover{background:#38393e;color:#fff}
html[data-theme="dark"] .theme-option[aria-pressed="true"]{background:#45464c;color:#fff}
html[data-theme="dark"] .btn.secondary{background:#333439;color:#ebebed}
html[data-theme="dark"] .btn.secondary:hover{background:#424348}
html[data-theme="dark"] .text-button{color:#bfc0c5}
html[data-theme="dark"] .text-button:hover{color:#fff}
html[data-theme="dark"] .tiny-tag{background:#313d38;color:#aedbc4}
html[data-theme="dark"] .status.pending{background:#34353a;color:#dadade}
html[data-theme="dark"] .status.matched{background:#24372f;color:#a5d2b8}
html[data-theme="dark"] .status.review{background:#403526;color:#ead1a5}
html[data-theme="dark"] .account-pair,
html[data-theme="dark"] .switch-row,
html[data-theme="dark"] .table-footer{border-color:#38393e}
html[data-theme="dark"] .review-highlight{background:#2b2721;border-color:#514637}
html[data-theme="dark"] .review-highlight p{color:#d7bb98}
html[data-theme="dark"] .notification-popover,
html[data-theme="dark"] .finexis-dialog,
html[data-theme="dark"] .toast{
  background:#222326;
  border-color:#404146;
  color:#eeeef0;
}
html[data-theme="dark"] .dialog-close{background:#393a40;color:#eeeeef}
html[data-theme="dark"] .foot-controls button,
html[data-theme="dark"] .action-inline{
  background:#303136;
  border-color:#48494f;
  color:#ececef;
}
html[data-theme="dark"] .foot-controls button:hover,
html[data-theme="dark"] .action-inline:hover{background:#3b3c42}
html[data-theme="dark"] .chart-svg path[stroke="#edf0f4"]{stroke:#414247}
html[data-theme="dark"] .welcome h1,
html[data-theme="dark"] .page-heading h1,
html[data-theme="dark"] .section-head h2,
html[data-theme="dark"] .table-title h3,
html[data-theme="dark"] .metric-info strong,
html[data-theme="dark"] .stat-num,
html[data-theme="dark"] .money,
html[data-theme="dark"] .account-pair b,
html[data-theme="dark"] .summary-box strong{color:#f4f4f6}
html[data-theme="dark"] .mini-metric .metric-info span,
html[data-theme="dark"] .stat-card .stat-desc,
html[data-theme="dark"] .welcome p,
html[data-theme="dark"] .page-heading p,
html[data-theme="dark"] .table-footer,
html[data-theme="dark"] .eyebrow{color:#b4b4ba}
@media(max-width:760px){
  html[data-theme="dark"] .rail{background:#151618}
}

/* Tipografia mais discreta: pesos realistas, sem letras comprimidas. */
html,body,button,input,select,textarea{
  font-family:"Segoe UI Variable","Segoe UI",Inter,Arial,sans-serif;
}
body{font-weight:400;letter-spacing:0}
h1,h2,h3,h4,
.welcome h1,
.page-heading h1,
.section-head h2,
.analytics h2,
.table-title h3,
.report-card h3,
.stat-num,
.metric-info strong,
.summary-box strong,
.account-pair b,
.account-number,
.client-name,
.data-table .client-name,
.btn,
.nav-btn .nav-label,
.profile-btn strong{
  letter-spacing:-.018em;
}
.welcome h1,.page-heading h1,.auth-card h1{font-weight:650;letter-spacing:-.026em}
.section-head h2,.analytics h2,.table-title h3,.report-card h3,.side-column h3{font-weight:650}
.stat-num,.summary-box strong,.metric-info strong,.account-number{font-weight:650}
.data-table .client-name,.client-name,.account-pair b,.user-chip strong{font-weight:600}
.btn,.nav-btn .nav-label,.table-title .text-button{font-weight:600}
.eyebrow{font-weight:600;letter-spacing:.075em}
.stat-label,.stat-card .stat-label{font-weight:600}
.stat-num{font-size:clamp(19px,1.65vw,25px)}
.mini-metric .metric-info strong{font-size:16px;line-height:1.2}
.small-stack .mini-metric{box-shadow:none}
body{font-size:13px}

/* Visão geral: coluna de apoio compacta, área principal maior. */
.layout-grid{
  grid-template-columns:minmax(0,1fr) minmax(266px,310px);
  gap:18px;
  align-items:start;
}
.side-column{gap:13px}
.side-column>.small-stack{gap:8px}
.side-column .mini-metric{
  min-height:58px;
  padding:10px 12px;
  gap:10px;
  border-radius:13px;
}
.side-column .mini-metric:hover{transform:none;border-color:#bbc4d0}
html[data-theme="dark"] .side-column .mini-metric:hover{border-color:#55565c}
.side-column .mini-metric .metric-icon{
  width:34px;height:34px;border-radius:10px;
}
.side-column .metric-info span{font-size:10px;margin-bottom:3px}
.side-column .metric-info strong{font-size:16px}
.side-column>.panel{padding:16px!important;border-radius:15px}
.side-column>.panel .section-head{margin-bottom:6px}
.side-column>.panel .section-head h2{font-size:13px}
.side-column>.panel .account-pair{padding:10px 0;font-size:10px}
.side-column>.panel .account-pair b{font-size:11px}
.side-column>.panel .small-stack{gap:0}
.side-column>.panel p{font-size:11px;line-height:1.5}
.side-column>.panel .btn{padding:10px 13px;font-size:11px}
.side-column>.panel h3{font-size:13px!important}
@media(max-width:1200px){
  .layout-grid{grid-template-columns:minmax(0,1fr)}
  .side-column{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    align-items:start;
  }
  .side-column>.small-stack{grid-column:1;grid-row:1 / span 2}
  .side-column>.panel{grid-column:2}
}
@media(max-width:760px){
  .side-column{display:flex;flex-direction:column}
  .side-column>.small-stack,.side-column>.panel{grid-column:auto;grid-row:auto;width:100%}
}
@media(max-width:390px){
  .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Direção da navegação: aba acima sobe; aba abaixo desce.
   Só trocar página dispara transição, nunca filtro ou importação. */
@keyframes finexis-page-up{
  from{opacity:.45;transform:translate3d(0,22px,0)}
  to{opacity:1;transform:translate3d(0,0,0)}
}
@keyframes finexis-page-down{
  from{opacity:.45;transform:translate3d(0,-22px,0)}
  to{opacity:1;transform:translate3d(0,0,0)}
}
.page.page-slide-up{
  animation:finexis-page-up .42s cubic-bezier(.22,1,.36,1) both;
}
.page.page-slide-down{
  animation:finexis-page-down .42s cubic-bezier(.22,1,.36,1) both;
}
@media(prefers-reduced-motion:reduce){
  .page.page-slide-up,.page.page-slide-down{animation:none!important}
}
