:root{--bg: #eef1f7;--surface: #ffffff;--surface-2: #f5f8fc;--surface-3: #eaeff7;--line: #dde4ee;--ink: #0f1726;--muted: #586273;--faint: #8b94a6;--pos: #059669;--neg: #e11d48;--warn: #b45309;--accent: #0e7490;--accent-2: #7c3aed;--r: 16px;--shadow: 0 1px 2px rgba(16, 24, 40, .04), 0 14px 36px -20px rgba(16, 24, 40, .22);--font-display: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-body: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, "SF Mono", "Roboto Mono", Menlo, monospace}:root[data-theme=dark]{--bg: #0b1018;--surface: #121925;--surface-2: #172131;--surface-3: #202c40;--line: #28344a;--ink: #e9eef6;--muted: #9aa6b8;--faint: #6a7488;--shadow: 0 1px 2px rgba(0, 0, 0, .35), 0 14px 36px -20px rgba(0, 0, 0, .65);color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%}body{margin:0;background:radial-gradient(1200px 600px at 80% -10%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 60%),var(--bg);background-attachment:fixed;color:var(--ink);font-family:var(--font-body);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}.app{min-height:100%;padding:calc(env(safe-area-inset-top) + 14px) 16px calc(env(safe-area-inset-bottom) + 20px);max-width:640px;margin:0 auto}.brand{display:flex;align-items:center;gap:10px}.brand img{width:34px;height:34px;border-radius:9px;background:#fff;padding:3px;box-shadow:inset 0 0 0 1px var(--line);object-fit:contain}.brand b{font-family:var(--font-display);font-weight:700;letter-spacing:-.01em;font-size:18px}.eyebrow{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);font-weight:600}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.iconbtn{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:42px;height:42px;border-radius:12px;border:0;cursor:pointer;background:color-mix(in srgb,var(--surface-3) 70%,transparent);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}.iconbtn.spin svg{animation:spin .8s linear infinite}.iconbtn.con-aviso{position:relative}.badge-dot{position:absolute;top:7px;right:7px;width:9px;height:9px;border-radius:50%;background:var(--neg);box-shadow:0 0 0 2px var(--bg)}@keyframes spin{to{transform:rotate(360deg)}}.card{background:var(--surface);border-radius:var(--r);box-shadow:var(--shadow);border:1px solid var(--line);padding:16px}.kpis{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:14px}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:16px 18px}.kpi.hero{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 10%,var(--surface)),var(--surface));border-color:color-mix(in srgb,var(--accent) 28%,var(--line))}.kpi .label{font-size:12px;color:var(--muted);font-weight:600}.kpi .sub{font-size:11px;color:var(--faint);margin-top:2px}.money{font-family:var(--font-mono);font-weight:600;letter-spacing:-.02em;margin-top:8px;line-height:1.1}.money .int{font-size:30px}.kpi.hero .money .int{font-size:38px}.money .dec{font-size:.62em;color:var(--faint)}.money .cur{font-size:.5em;color:var(--faint);margin-left:4px}.delta{font-size:12px;font-weight:600;margin-top:6px}.delta.pos{color:var(--pos)}.delta.neg{color:var(--neg)}.delta.flat{color:var(--faint)}.delta .vs-amt{font-family:var(--font-mono)}.delta .vs-pct{color:var(--faint);font-weight:600}.vtip{background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:8px 10px;min-width:168px;font-size:12px}.vtip-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.vtip-x{color:var(--muted);font-weight:700}.vtip-pct{font-weight:700}.vtip-pct.pos{color:var(--pos)}.vtip-pct.neg{color:var(--neg)}.vtip-sec{margin-top:6px;padding-top:6px;border-top:1px dashed var(--line)}.vtip-cap{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--faint);margin-bottom:2px}.vtip-row{display:flex;justify-content:space-between;gap:14px;line-height:1.55}.vtip-row .k{color:var(--faint)}.vtip-row .v{font-family:var(--font-mono);font-weight:600}.vtip-row .v.cur{color:var(--accent)}.vtip-row .v.cmp{color:var(--accent-2)}.mini{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.mini .kpi{padding:12px 14px}.mini .money .int{font-size:20px}.mini .v{font-family:var(--font-mono);font-weight:600;font-size:20px;margin-top:6px}.filters{margin-bottom:14px}.seg{display:flex;flex-wrap:wrap;gap:6px}.seg button{border:0;cursor:pointer;padding:8px 12px;border-radius:999px;font-weight:600;font-size:12.5px;background:color-mix(in srgb,var(--surface-3) 70%,transparent);color:var(--muted);box-shadow:inset 0 0 0 1px var(--line)}.seg button.on{background:var(--accent);color:#fff;box-shadow:none}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px}select,input{font:inherit;color:var(--ink);background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:9px 11px;outline:none}select:focus,input:focus{border-color:var(--accent)}label.field,.field{display:flex;flex-direction:column;gap:4px;flex:1 1 140px}label.field span,.field>span{font-size:11px;color:var(--faint);font-weight:600}.ms-btn{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;font:inherit;color:var(--ink);background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:9px 11px;cursor:pointer;text-align:left}.ms-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ms-caret{color:var(--faint)}.ms-panel{position:absolute;top:100%;left:0;right:0;z-index:30;margin-top:4px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:8px;display:flex;flex-direction:column;gap:6px}.ms-search{width:100%}.ms-row{display:flex;justify-content:space-between;padding:0 2px}.ms-list{max-height:260px;overflow-y:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column}.ms-item{display:flex;align-items:center;gap:8px;padding:8px 4px;font-size:14px;color:var(--ink);border-bottom:1px solid var(--line-soft, var(--line));cursor:pointer}.ms-item:last-child{border-bottom:0}.ms-item input{width:18px;height:18px;flex:0 0 auto}.chart-card{padding:12px 6px 6px;margin-bottom:14px}.chart-title{display:flex;justify-content:space-between;align-items:baseline;padding:0 10px 4px}.chart-title .eyebrow{font-size:10.5px}.list{margin-top:4px}.list.scroll{max-height:340px;overflow-y:auto;-webkit-overflow-scrolling:touch}.list .rank{color:var(--faint);font-variant-numeric:tabular-nums;margin-right:2px}.list .item{display:flex;justify-content:space-between;align-items:center;padding:10px 2px;border-bottom:1px solid var(--line);font-size:13.5px}.list .item:last-child{border-bottom:0}.list .item .n{color:var(--muted)}.list .item .v{font-family:var(--font-mono);font-weight:600}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;background:var(--accent);color:#fff;border:0;border-radius:12px;padding:14px 16px;font-weight:700;font-family:var(--font-display);font-size:15px;cursor:pointer;box-shadow:0 8px 22px -10px color-mix(in srgb,var(--accent) 80%,transparent)}.btn:disabled{opacity:.45}.btn.ghost{background:color-mix(in srgb,var(--surface-3) 70%,transparent);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}.gate{min-height:100dvh;display:flex;flex-direction:column;justify-content:center;gap:14px;max-width:420px;margin:0 auto;padding:24px}.gate .logo{width:76px;height:76px;border-radius:20px;align-self:center;background:#fff;padding:8px;box-shadow:0 8px 24px -12px #10182866,inset 0 0 0 1px var(--line);object-fit:contain}.gate h1{font-family:var(--font-display);font-size:22px;text-align:center;margin:4px 0 0}.gate p.muted{text-align:center;color:var(--muted);margin:0 0 6px;font-size:13.5px}.gate .pasos{margin:0 0 4px;padding-left:22px;font-size:14px;line-height:1.5;color:var(--ink)}.gate .pasos li+li{margin-top:8px}.gate input{width:100%;padding:14px;font-size:16px;text-align:center}.err{color:var(--neg);font-size:13px;text-align:center}.muted{color:var(--muted)}.link{background:none;border:0;color:var(--accent);font-weight:600;cursor:pointer;font-size:13.5px}.updated{text-align:center;color:var(--faint);font-size:11.5px;margin-top:6px}.spacer{flex:1}.menu-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:color-mix(in srgb,#0b1018 45%,transparent);display:flex;justify-content:flex-start;animation:menu-fade .16s ease-out}@keyframes menu-fade{0%{opacity:0}to{opacity:1}}.menu-panel{width:min(86vw,340px);height:100%;background:var(--surface);border-right:1px solid var(--line);box-shadow:0 0 60px -12px #10182880;display:flex;flex-direction:column;padding:calc(env(safe-area-inset-top) + 16px) 14px calc(env(safe-area-inset-bottom) + 16px);animation:menu-slide .2s cubic-bezier(.2,.7,.2,1)}@keyframes menu-slide{0%{transform:translate(-100%)}to{transform:translate(0)}}.menu-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.menu-nav{display:flex;flex-direction:column;gap:6px}.menu-item{display:flex;align-items:center;gap:12px;width:100%;text-align:left;cursor:pointer;border:0;border-radius:12px;padding:12px;background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px transparent}.menu-item:hover{background:color-mix(in srgb,var(--surface-3) 60%,transparent)}.menu-item.on{background:color-mix(in srgb,var(--accent) 12%,var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 30%,var(--line))}.menu-ic{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;flex:0 0 auto;border-radius:10px;background:color-mix(in srgb,var(--surface-3) 70%,transparent);color:var(--accent)}.menu-item.on .menu-ic{background:var(--accent);color:#fff}.menu-tx{display:flex;flex-direction:column;gap:1px;min-width:0}.menu-lbl{font-family:var(--font-display);font-weight:700;font-size:15px;letter-spacing:-.01em;display:inline-flex;align-items:center;gap:6px}.menu-sub{font-size:11.5px;color:var(--faint)}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--neg);color:#fff;font-family:var(--font-mono);font-size:10.5px;font-weight:700;line-height:1}.menu-foot{margin-top:auto;padding-top:16px;border-top:1px solid var(--line);text-align:center}.menu-ver{font-family:var(--font-mono);font-size:12px;color:var(--muted);font-weight:600}.menu-legal{font-size:10.5px;color:var(--faint);margin-top:4px;line-height:1.45}.filters .row .eyebrow{margin-right:4px}.gate .btn{width:100%;padding:14px;font-size:16px}
