
/* Control Vixanu Finanzas · Tema Login Violeta Global 4.5.4
   Capa visual únicamente. No altera lógica ni datos. */
:root{
  --accent:#654cff !important;
  --accent-hover:#523be8 !important;
  --brand:#654cff !important;
  --brand2:#372681 !important;
  --brand-dark:#0a102d !important;
  --purple:#8463ff !important;
  --soft:#f2efff !important;
  --background:#f7f7ff !important;
  --background-secondary:#eff1fe !important;
  --surface:#fff !important;
  --surface-soft:#f8f6ff !important;
  --border:#dfe1f2 !important;
  --line:#dfe1f2 !important;
  --ink:#0b1030 !important;
  --text-primary:#17213d !important;
  --text-secondary:#6a7591 !important;
  --muted:#6a7591 !important;
  --shadow:0 22px 52px rgba(39,30,105,.13) !important;
  --shadow-sm:0 12px 30px rgba(45,36,110,.08) !important;
}
html,body{background:#f5f5ff !important;color:var(--text-primary)!important}
body{min-height:100vh;background:
  radial-gradient(circle at 32% 0%,rgba(112,91,255,.16),transparent 26rem),
  radial-gradient(circle at 88% 14%,rgba(161,105,255,.16),transparent 28rem),
  radial-gradient(circle at 76% 88%,rgba(104,83,250,.14),transparent 30rem),
  linear-gradient(155deg,#fafaff 0%,#f4f3ff 48%,#f7f7ff 100%) !important;background-attachment:fixed!important}
.app-shell,.main-area{background:transparent!important}
.main-area{position:relative!important;isolation:isolate!important}
.main-area::before{content:""!important;position:fixed!important;z-index:-1!important;inset:0 0 0 var(--sidebar-w)!important;pointer-events:none!important;background:
  linear-gradient(135deg,rgba(255,255,255,.45),transparent 38%),
  radial-gradient(circle at 16% 18%,rgba(100,75,255,.10),transparent 21rem),
  radial-gradient(circle at 86% 20%,rgba(150,98,255,.12),transparent 24rem),
  radial-gradient(circle at 72% 82%,rgba(93,72,242,.10),transparent 25rem)!important}

/* Sidebar: replica el lenguaje del login */
.sidebar{background:
  radial-gradient(circle at 18% 18%,rgba(104,88,255,.28),transparent 20rem),
  radial-gradient(circle at 80% 82%,rgba(113,69,230,.20),transparent 24rem),
  linear-gradient(150deg,#090f2b 0%,#121844 58%,#21175a 100%)!important;
  box-shadow:14px 0 38px rgba(10,12,39,.20)!important}
.sidebar::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(142deg,transparent 0 39%,rgba(178,165,255,.10) 39.2%,transparent 39.45%),radial-gradient(circle at 118% 88%,transparent 0 27%,rgba(168,144,255,.12) 27.3% 27.55%,transparent 27.8%)!important}
.sidebar-brand,.sidebar-nav,.sidebar-footer{position:relative;z-index:1}
.brand-mark{color:#d8d0ff!important;background:linear-gradient(145deg,rgba(71,57,164,.94),rgba(18,23,64,.98))!important;border-color:rgba(204,190,255,.25)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 9px 22px rgba(0,0,0,.12)!important}
.sidebar-brand-text small{color:#b0b8d6!important}.sidebar-brand-text strong{color:#fff!important}
.sidebar-link{color:#d1d7ec!important;border:1px solid transparent!important;border-radius:14px!important}
.sidebar-link:hover{color:#fff!important;background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.06)!important}
.sidebar-link.active{color:#fff!important;background:linear-gradient(135deg,rgba(91,72,241,.30),rgba(137,80,255,.22))!important;border-color:rgba(152,127,255,.38)!important;box-shadow:0 0 0 1px rgba(158,136,255,.10),0 12px 30px rgba(59,45,158,.24),inset 0 0 18px rgba(167,139,255,.10)!important}
.sidebar-user{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.10)!important;color:#eef0ff!important}
.sidebar-logout{background:rgba(255,255,255,.025)!important;border-color:rgba(255,255,255,.12)!important;color:#f3f4ff!important}
.sidebar-logout:hover{background:rgba(255,255,255,.08)!important}

/* Cabeceras / cards / superficies */
.page-title-bar{background:rgba(255,255,255,.34)!important;border-color:rgba(220,222,241,.78)!important;backdrop-filter:blur(16px)!important}
.page-title-inner h1,.home-premium-title h1{color:#0d1232!important}
.back-home{color:#5946e8!important}
.container{position:relative!important}
.card,.premium-card,.fin-form,.hh-section,.vu-section,.vu-admin,.sav-summary,.sav-source-summary,.acc-add,.acc-balance-intro,.sec-note,.sec-danger,.scheme-board,.scheme-editor,.distribution-section,.page-directory-add,.history-note,.team-overview-card,.distribution-card,.page-card,.page-group,.scheme-branch,.scheme-inline-group,.vu-move-card,.vu-fixed-item,.fixed-card,.member-card,.person-card,.owner-card,.moves-card,.finance-card,.house-card,.settings-card{
  background:linear-gradient(145deg,rgba(255,255,255,.93),rgba(251,249,255,.88))!important;
  border-color:rgba(219,220,239,.96)!important;
  box-shadow:0 15px 38px rgba(47,37,110,.08)!important;
  backdrop-filter:blur(12px)!important}
.premium-card:hover,.card:hover{border-color:rgba(191,183,238,.85)!important}

/* Formularios */
input,select,textarea{background:rgba(255,255,255,.92)!important;border-color:#d7daec!important;color:#17213d!important}
input:focus,select:focus,textarea:focus{border-color:#654cff!important;box-shadow:0 0 0 4px rgba(101,76,255,.12)!important;outline:none!important}
.btn,.login-submit,.page-btn.primary,.distribution-btn.whatsapp,.scheme-save,.distribution-save,.moves-submit,.move-submit,button[type="submit"]:not(.sidebar-logout):not(.mobile-menu-toggle){background:linear-gradient(135deg,#5542f3,#803df7)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 11px 25px rgba(91,68,224,.22)!important}
.btn:hover,.login-submit:hover,.page-btn.primary:hover,.distribution-btn.whatsapp:hover,.moves-submit:hover,.move-submit:hover,button[type="submit"]:not(.sidebar-logout):not(.mobile-menu-toggle):hover{background:linear-gradient(135deg,#4936e5,#7133ed)!important;transform:translateY(-1px)!important}
.btn.secondary,.mini-btn,.tiny-btn,.domain-mini-btn,.extra-mini-btn,.page-btn.secondary,.distribution-btn.secondary,.scheme-edit-toggle{background:#f3f1ff!important;color:#362f72!important;border-color:#dedaf6!important;box-shadow:none!important}

/* Tabs, pills, month controls */
.fin-tabs,.hh-tabs,.vu-tabs,.stats-tabs,.acc-tabs,.team-tabs{background:#f1efff!important;border-color:#dfdaf8!important}
.fin-tab:hover,.hh-tab:hover,.vu-tab:hover,.stats-tab:hover,.acc-tab:hover,.team-tab:hover{background:#eae6ff!important;color:#2c285c!important}
.fin-tab.active,.hh-tab.active,.vu-tab.active,.stats-tab.active,.acc-tab.active,.team-tab.active{background:#fff!important;color:#5c49ed!important;box-shadow:0 4px 12px rgba(63,49,168,.10)!important}
.fin-month,.hh-month,.vu-month,.stats-month,.month-controls,.home-month-nav,.home-month-compact{background:#f3f1ff!important;border-color:#e0dcf7!important}
.fin-month a,.hh-month a,.vu-month a,.stats-month a,.month-controls a,.home-month-nav a,.home-month-nav button,.home-month-compact a,.home-month-compact button{background:#fff!important;color:#3d376c!important}
.premium-chip,.today-badge,.monthly-badge,.acc-badge,.transfer-badge,.vu-badge,.vmini-status,.source-tag,.src-badge,.page-count-pill{background:#f1efff!important;color:#5546d2!important;border-color:#ded9f8!important}

/* Tablas */
.tablewrap,.income-table-wrap,.vu-table,.income-table,.summary-table,.team-table,.obligation-table,.sav-injection-table{border-color:#dfe1f2!important;background:rgba(255,255,255,.87)!important}
table th,.income-table th,.summary-table th,.vu-table th,.team-table th,.obligation-table th,.sav-injection-table th{background:#f2f0ff!important;color:#424d76!important;border-bottom-color:#daddee!important}
table td,.income-table td,.summary-table td,.vu-table td,.team-table td,.obligation-table td,.sav-injection-table td{border-bottom-color:#e7e8f3!important}

/* KPIs y acentos */
.fin-kpi,.vmini-kpi,.vu-kpi,.vu-summary-kpi,.stat-kpi,.summary-kpi,.acc-kpi,.acc-balance-total,.sec-card,.kpi-box,.operational-card,.home-summary-card,.quick-card{background:linear-gradient(150deg,#fff,#faf8ff)!important;border-color:#e0e1f0!important}
.vmini-result,.vu-hero,.vu-flow-card,.sav-total-chip,.acc-current-balance,.summary-total-banner{background:linear-gradient(135deg,#11173f,#36277f)!important;color:#fff!important}
.sav-progress span,.goal-track span,.progress span,.vu-fixed-progress span,.hh-fixed-progress span,.bar-fill{background:linear-gradient(90deg,#5c49f2,#8a5cff)!important}
.quick-icon:not(.green):not(.orange):not(.blue){background:linear-gradient(135deg,#eee9ff,#e5ddff)!important;color:#6e4ef2!important}

/* Inicio: sustituye el verde de identidad por violeta, conservando estados semánticos */
.home-premium .domain-total{color:#5c49ed!important}
.home-premium .premium-card-head h2{color:#151a3a!important}
.home-premium .domain-dot{background:#eeeaff!important;color:#654cff!important}
.home-premium .money-chart-tooltip{background:#171739!important}
.home-premium svg polyline[stroke="#0b9d91"],.home-premium svg polyline[stroke="#11998f"]{stroke:#6650f2!important}
.home-premium svg circle[fill="#0b9d91"],.home-premium svg circle[fill="#11998f"]{fill:#6650f2!important}
.home-premium svg stop[stop-color="#19b8a6"],.home-premium svg stop[stop-color="#19b886"]{stop-color:#755cf5!important}

/* Finanzas: consolidar branding violeta */
.fin-toolbar,.finance-toolbar,.finance-premium-head,.pf-toolbar{background:rgba(255,255,255,.70)!important;border-color:#dedff0!important;backdrop-filter:blur(12px)!important}
.fin-kpi.k-purple,.summary-kpi.purple,.acc-kpi.purple,.sec-purple{border-top-color:#7657ff!important}

/* Barra móvil */
.mobile-topbar{background:linear-gradient(135deg,#0b1132,#171c51 62%,#302277)!important;color:#fff!important}
.bottomnav{background:rgba(255,255,255,.95)!important;border-top-color:#dfe1f1!important;box-shadow:0 -8px 28px rgba(31,25,82,.09)!important}
.bottomnav a.active,.bottomnav button.active{color:#654cff!important}
.mobile-drawer-nav a.active{background:#f1efff!important;color:#5c49ed!important}
@media(max-width:860px){.main-area::before{inset:0!important}}

/* Páginas independientes: login, setup, update y logout */
.login-visual{background:radial-gradient(circle at 18% 24%,rgba(104,88,255,.30),transparent 27rem),radial-gradient(circle at 75% 74%,rgba(95,58,220,.25),transparent 25rem),linear-gradient(145deg,#0a112b,#151b47 60%,#2a1e6f)!important}
.login-quote{border-left-color:#9a8aff!important}
.login-access{background:radial-gradient(circle at 30% 20%,rgba(107,86,255,.10),transparent 22rem),linear-gradient(155deg,#fafaff,#f4f4ff)!important}
.update-header{background:linear-gradient(135deg,#0f153d,#312278)!important}
.update-box,.setup-box{border-color:#dfe0ef!important;box-shadow:0 16px 38px rgba(41,32,104,.10)!important}
.version{background:#efedff!important;color:#5745df!important}
.upload{border-color:#d3cef5!important;background:#f7f5ff!important}
