html{zoom:1.275}
@media(max-width:1100px){html{zoom:1}}

/* ── THEMES ─────────────────────────────────────────────────────────────── */
:root,[data-theme=cyber]{
  --bg:#050a12;--text:#e0f0ff;--muted:#4a7a99;
  --accent:#00d4ff;--ar:0,212,255;
  --card-bg:rgba(5,20,35,0.8);--overlay-bg:rgba(5,20,35,0.98);
  --income:#00ff9f;--expense:#ff4d6d;--portfolio:#bf7fff;
}
[data-theme=light]{
  --bg:#edf1f7;--text:#0d1f2d;--muted:#5577aa;
  --accent:#0077aa;--ar:0,119,170;
  --card-bg:rgba(255,255,255,0.93);--overlay-bg:rgba(248,252,255,0.99);
  --income:#0a7a40;--expense:#cc2244;--portfolio:#7744bb;
  --income-bg:rgba(10,122,64,0.12);--income-border:rgba(10,122,64,0.35);
}
[data-theme=pink]{
  --bg:#0e0812;--text:#ffe8f8;--muted:#994477;
  --accent:#ff5db1;--ar:255,93,177;
  --card-bg:rgba(28,6,38,0.88);--overlay-bg:rgba(18,3,26,0.98);
  --income:#ff9ef0;--expense:#ff5577;--portfolio:#dd88ff;
}
[data-theme=green]{
  --bg:#020d04;--text:#d0ffd8;--muted:#2a7035;
  --accent:#00e844;--ar:0,232,68;
  --card-bg:rgba(3,22,7,0.88);--overlay-bg:rgba(1,12,4,0.98);
  --income:#00ff9f;--expense:#ff4d6d;--portfolio:#aaff55;
}
[data-theme=negative]{
  --bg:#000000;--text:#f0f0f0;--muted:#777777;
  --accent:#eeeeee;--ar:238,238,238;
  --card-bg:rgba(18,18,18,0.92);--overlay-bg:rgba(10,10,10,0.98);
  --income:#cccccc;--expense:#999999;--portfolio:#bbbbbb;
}
[data-theme=pro]{
  --bg:#080f1a;--text:#e0e0e8;--muted:#8888a0;
  --accent:#c9a84c;--ar:201,168,76;
  --card-bg:rgba(8,15,26,0.92);--overlay-bg:rgba(5,10,18,0.98);
  --income:#5ab87a;--expense:#d45d5d;--portfolio:#7a8ec9;
}
[data-theme=lpink]{
  --bg:#fce8f4;--text:#3d1030;--muted:#b06090;
  --accent:#d4307a;--ar:212,48,122;
  --card-bg:rgba(255,240,250,0.95);--overlay-bg:rgba(255,245,252,0.99);
  --income:#0e8045;--expense:#c02040;--portfolio:#7744bb;
  --income-bg:rgba(14,128,69,0.12);--income-border:rgba(14,128,69,0.35);
}

/* ── BASE ───────────────────────────────────────────────────────────────── */
*{box-sizing:border-box;font-family:'Space Grotesk',sans-serif;margin:0;padding:0}
body{background:var(--bg);color:var(--text);min-height:100vh;padding:1.5rem 1.25rem;position:relative;overflow-x:hidden;transition:background 0.3s,color 0.3s}
.grid-bg{position:fixed;inset:0;pointer-events:none;z-index:0;background-image:linear-gradient(rgba(var(--ar),0.04) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--ar),0.04) 1px,transparent 1px);background-size:40px 40px}
[data-theme=light] .grid-bg,[data-theme=lpink] .grid-bg{background-image:linear-gradient(rgba(var(--ar),0.14) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--ar),0.14) 1px,transparent 1px)}
.scan-line{position:absolute;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,rgba(var(--ar),0.27),transparent);pointer-events:none;z-index:0;animation:scan 18s linear infinite}
[data-theme=light] .scan-line,[data-theme=lpink] .scan-line{display:none}
@keyframes scan{0%{top:var(--scan-start,160px);opacity:1}85%{opacity:1}100%{top:100%;opacity:0}}
.content{position:relative;z-index:2;max-width:820px;margin:0 auto}
.header{display:flex;align-items:center;gap:8px;margin-bottom:1.5rem;flex-wrap:wrap}
.header h1{flex:1;min-width:0}
h1{font-size:26px;font-weight:700;letter-spacing:0.12em;color:var(--accent);text-shadow:0 0 20px rgba(var(--ar),0.5)}
.version{font-size:10px;color:var(--muted);letter-spacing:0.15em}
.save-status{margin-left:auto;font-size:10px;letter-spacing:0.1em}

/* ── METRICS ────────────────────────────────────────────────────────────── */
.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:1.5rem}
.metric{background:rgba(var(--ar),0.05);border:1px solid rgba(var(--ar),0.15);border-radius:12px;padding:1rem 1.25rem;position:relative;overflow:hidden}
[data-theme=light] .metric,[data-theme=lpink] .metric{background:var(--card-bg);box-shadow:0 2px 10px rgba(0,0,0,0.07)}
.metric::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--ac),transparent)}
.metric-label{font-size:10px;letter-spacing:0.15em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.metric-val{font-size:22px;font-weight:600}

/* ── TABS ───────────────────────────────────────────────────────────────── */
.tab-bar{display:flex;gap:2px;background:rgba(var(--ar),0.05);border:1px solid rgba(var(--ar),0.1);border-radius:10px;padding:4px;margin-bottom:1.5rem}
.tab{flex:1;border:none;background:transparent;color:var(--muted);font-size:13px;font-weight:500;padding:9px;border-radius:7px;cursor:pointer;letter-spacing:0.05em;transition:all 0.2s}
.tab.active{background:rgba(var(--ar),0.1);color:var(--accent);border:1px solid rgba(var(--ar),0.25);box-shadow:0 0 12px rgba(var(--ar),0.15)}

/* ── CARDS ──────────────────────────────────────────────────────────────── */
.card{background:var(--card-bg);border:1px solid rgba(var(--ar),0.12);border-radius:14px;padding:1.25rem;margin-bottom:14px;position:relative;overflow:hidden}
[data-theme=light] .card,[data-theme=lpink] .card{box-shadow:0 2px 12px rgba(0,0,0,0.08)}
.card-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.card-title{font-size:13px;font-weight:500;letter-spacing:0.08em}
.card-total{margin-left:auto;font-size:13px;font-weight:600}

/* ── ROWS / INPUTS ──────────────────────────────────────────────────────── */
.row-item{display:flex;gap:8px;align-items:center;margin-bottom:0;flex-wrap:wrap;padding:8px 0;border-bottom:1px solid rgba(var(--ar),0.07)}.row-item:last-of-type{border-bottom:none}
.row-item .fut-input.nombre{flex:2;min-width:140px}
@media(max-width:1060px){.row-item .fut-input.nombre{flex:1 1 100%}.two-col{grid-template-columns:1fr}}
.fut-input{background:rgba(var(--ar),0.05);border:1px solid rgba(var(--ar),0.12);border-radius:8px;padding:7px 11px;font-size:13px;color:var(--text);outline:none;transition:border-color 0.2s}
[data-theme=light] .fut-input{background:rgba(var(--ar),0.04);border-color:rgba(var(--ar),0.2)}
.fut-input:focus{border-color:rgba(var(--ar),0.4);box-shadow:0 0 8px rgba(var(--ar),0.1)}
.add-btn{width:100%;margin-top:10px;background:rgba(var(--ar),0.05);border:1px dashed rgba(var(--ar),0.2);border-radius:8px;color:var(--muted);font-size:12px;padding:8px;cursor:pointer;letter-spacing:0.08em;transition:all 0.2s}
.add-btn:hover{border-color:rgba(var(--ar),0.4);color:var(--accent)}
.del-btn{background:none;border:none;color:var(--muted);cursor:pointer;font-size:18px;padding:0 4px;line-height:1;flex-shrink:0;transition:color 0.15s}
.del-btn:hover{color:#ff4d6d}
.cartera-search-btn{background:none;border:none;cursor:pointer;padding:0 4px;line-height:1;flex-shrink:0;opacity:0.6;transition:opacity 0.15s;display:flex;align-items:center}
.cartera-search-btn:hover{opacity:1}
/* Cartera desktop: summary oculto, detail como flex inline */
.cartera-summary{display:none}
.cartera-detail{display:flex;flex:1;gap:8px;align-items:center;min-width:0}
/* Botón expand (solo visible en móvil via .cartera-summary) */
.car-expand-btn{background:none;border:none;color:var(--muted);font-size:20px;cursor:pointer;padding:0;line-height:1;flex-shrink:0;transition:transform 0.2s;font-family:inherit}
.car-expand-btn.rotated{transform:rotate(90deg)}
/* Columnas del resumen móvil */
.sum-col{display:flex;flex-direction:column;gap:3px}
.sum-lbl{font-size:9px;letter-spacing:0.09em;color:var(--muted);text-transform:uppercase;line-height:1}
.sum-col-tk{flex:1;min-width:0}
.sum-col-pr{flex:1;min-width:0}
.sum-col-pl{flex:1;min-width:0}
.sum-col-pe{flex:1;min-width:0;align-items:flex-end}
.sum-ticker{font-size:14px;font-weight:700;color:var(--accent);letter-spacing:0.07em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sum-precio{display:flex;flex-direction:column;gap:1px}
.sum-pl{font-size:13px;font-weight:600;white-space:nowrap}
.sum-pe{font-size:13px;color:#a0c0d0;white-space:nowrap}
.cinfo-row{border:1px solid rgba(191,127,255,0.12);border-radius:9px;padding:10px 12px;cursor:pointer;transition:background 0.15s;user-select:none}
.cinfo-row:hover{background:rgba(191,127,255,0.06)}
.cinfo-head{display:flex;justify-content:space-between;align-items:center}
.cinfo-chev{font-size:15px;color:#4a7a99;transition:transform 0.2s;line-height:1}
.dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;box-shadow:0 0 6px currentColor}
.lang-btn{background:rgba(var(--ar),0.05);border:1px solid rgba(var(--ar),0.15);border-radius:7px;color:var(--muted);font-size:11px;font-weight:600;padding:5px 10px;cursor:pointer;font-family:'Space Grotesk',sans-serif;letter-spacing:0.04em;transition:all 0.15s}
.lang-btn:hover{border-color:rgba(var(--ar),0.4);color:var(--accent)}
.lang-btn.lang-active{background:rgba(var(--ar),0.12);border-color:rgba(var(--ar),0.5);color:var(--accent);box-shadow:0 0 8px rgba(var(--ar),0.2)}

/* ── PILLS ──────────────────────────────────────────────────────────────── */
.pill-bar{display:flex;gap:4px;background:rgba(var(--ar),0.05);border:1px solid rgba(var(--ar),0.1);border-radius:8px;padding:3px}
.pill{border:none;background:transparent;color:var(--muted);font-size:12px;padding:5px 14px;border-radius:6px;cursor:pointer;letter-spacing:0.05em;transition:all 0.2s}
.pill.active{background:rgba(var(--ar),0.12);color:var(--accent);box-shadow:0 0 8px rgba(var(--ar),0.1)}

/* ── LAYOUT ─────────────────────────────────────────────────────────────── */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.corner{position:absolute;width:12px;height:12px;border-color:rgba(var(--ar),0.4);border-style:solid}
.corner-tl{top:8px;left:8px;border-width:1px 0 0 1px}
.corner-tr{top:8px;right:8px;border-width:1px 1px 0 0}
.corner-bl{bottom:8px;left:8px;border-width:0 0 1px 1px}
.corner-br{bottom:8px;right:8px;border-width:0 1px 1px 0}

/* ── PROYECCIÓN CONTROLS ─────────────────────────────────────────────────── */
.controls{display:flex;gap:8px;align-items:center;margin-bottom:20px;flex-wrap:wrap}
.ctrl-box{display:flex;align-items:center;gap:8px;border-radius:8px;padding:5px 12px}
.ctrl-label{font-size:10px;letter-spacing:0.12em}
.ctrl-val{border:none;background:transparent;font-weight:600;font-size:13px;outline:none;color:var(--accent)}
.proj-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:20px}
.proj-card{background:var(--card-bg);border:1px solid rgba(var(--ar),0.12);border-radius:14px;padding:1.25rem}
[data-theme=light] .proj-card,[data-theme=lpink] .proj-card{box-shadow:0 2px 12px rgba(0,0,0,0.08)}
.legend{display:flex;gap:16px;margin-bottom:12px;align-items:center;flex-wrap:wrap}
.legend-item{display:flex;align-items:center;gap:6px;font-size:11px}
.legend-line{width:20px;height:2px;border-radius:1px}
.suffix{font-size:11px;color:var(--muted);min-width:14px;flex-shrink:0}
.pat-total-bar{display:flex;justify-content:space-between;align-items:center;background:rgba(var(--ar),0.05);border:1px solid rgba(var(--ar),0.15);border-radius:12px;padding:1rem 1.25rem}
input[type=number]::-webkit-inner-spin-button{display:none}
input[type=number]::-webkit-outer-spin-button{display:none}
input[type=number].keep-arrows::-webkit-inner-spin-button{display:block;opacity:0.4}
input[type=number].keep-arrows::-webkit-outer-spin-button{display:block;opacity:0.4}

/* ── BUTTONS ────────────────────────────────────────────────────────────── */
.btn-guardar{background:rgba(var(--ar),0.08);border:1px solid rgba(var(--ar),0.3);border-radius:8px;color:var(--accent);font-size:12px;font-weight:600;padding:7px 18px;cursor:pointer;letter-spacing:0.1em;font-family:'Space Grotesk',sans-serif;margin-left:0;transition:all 0.2s}
.btn-guardar:hover{background:rgba(0,255,159,0.15);border-color:rgba(0,255,159,0.5);color:#00ff9f;transform:scale(1.05)}
[data-theme=light] .btn-guardar:hover{background:rgba(0,150,100,0.15);border-color:rgba(0,150,100,0.5);color:#007744}
[data-theme=light] #subscribeBtn[style*="00ff9f"],[data-theme=lpink] #subscribeBtn[style*="00ff9f"]{background:var(--income) !important;border-color:var(--income) !important;color:#e0fff0 !important}
.btn-salir{background:none;border:1px solid rgba(255,77,109,0.25);border-radius:8px;color:var(--muted);font-size:12px;font-weight:600;padding:7px 18px;cursor:pointer;letter-spacing:0.1em;font-family:'Space Grotesk',sans-serif;margin-left:4px;transition:all 0.2s}
.btn-salir:hover{background:rgba(255,77,109,0.12);border-color:rgba(255,77,109,0.5);color:#ff4d6d;transform:scale(1.05)}
.btn-suscribir{background:rgba(191,127,255,0.08);border:1px solid rgba(191,127,255,0.3);border-radius:8px;color:#bf7fff;font-size:12px;font-weight:600;padding:7px 18px;cursor:pointer;letter-spacing:0.1em;font-family:'Space Grotesk',sans-serif;margin-left:0;transition:all 0.2s}
.btn-suscribir:hover{background:rgba(191,127,255,0.18);border-color:rgba(191,127,255,0.6);color:#d4aaff;transform:scale(1.05)}
.btn-expandir{background:none;border:1px solid rgba(var(--ar),0.15);border-radius:6px;color:var(--muted);font-size:10px;padding:4px 10px;cursor:pointer;letter-spacing:0.08em;font-family:'Space Grotesk',sans-serif;margin-left:auto;transition:all 0.2s}
.btn-expandir:hover{border-color:rgba(var(--ar),0.4);color:var(--accent)}

/* ── THEME SWITCHER ─────────────────────────────────────────────────────── */
.theme-switcher{position:relative}
.theme-toggle-btn{background:rgba(var(--ar),0.06);border:1px solid rgba(var(--ar),0.18);border-radius:8px;color:var(--muted);font-size:11px;font-weight:600;padding:6px 10px;cursor:pointer;letter-spacing:0.08em;font-family:'Space Grotesk',sans-serif;transition:all 0.2s;white-space:nowrap}
.theme-toggle-btn:hover{border-color:rgba(var(--ar),0.4);color:var(--accent)}
.theme-menu{position:absolute;top:calc(100% + 6px);right:0;background:var(--overlay-bg);border:1px solid rgba(var(--ar),0.2);border-radius:10px;padding:4px;display:none;z-index:300;min-width:108px;box-shadow:0 8px 24px rgba(0,0,0,0.4)}
[data-theme=light] .theme-menu{box-shadow:0 8px 24px rgba(0,0,0,0.15)}
.theme-menu.open{display:block}
.theme-menu button{display:block;width:100%;background:none;border:none;color:var(--muted);font-size:11px;font-weight:600;padding:7px 12px;cursor:pointer;letter-spacing:0.1em;text-align:left;border-radius:6px;font-family:'Space Grotesk',sans-serif;transition:all 0.15s}
.theme-menu button:hover,.theme-menu button.active-theme{background:rgba(var(--ar),0.1);color:var(--accent)}
.theme-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px;vertical-align:middle}

/* ── OVERLAY / MODAL overrides (defeat inline styles) ──────────────────── */
#authOverlay{background:var(--bg) !important}
.is-authoverlay{background:var(--bg) !important}
#authOverlay > div,#subscribeModal > div,#donutExpandOverlay > div{background:var(--overlay-bg) !important;border-color:rgba(var(--ar),0.2) !important}
#authSubmitBtn{background:rgba(var(--ar),0.1) !important;border-color:rgba(var(--ar),0.3) !important;color:var(--accent) !important}
#authEmail,#authPassword,#authPasswordConfirm{color:var(--text) !important;background:rgba(var(--ar),0.05) !important;border-color:rgba(var(--ar),0.15) !important}
#authOverlay .is-h2{color:var(--accent);text-shadow:0 0 20px rgba(var(--ar),0.5)}
#authOverlay .is-p-2{color:var(--accent)}
#authOverlay .is-p-3{color:var(--text);opacity:0.7}
#authOverlay .is-authverifyemail{color:var(--text)}
#authOverlay .is-button-5{color:var(--accent);border-color:rgba(var(--ar),0.3)}
#authOverlay .is-button-3{background:rgba(var(--ar),0.05);border-color:rgba(var(--ar),0.15)}
#authOverlay .is-div-7{background:rgba(var(--ar),0.15)}

/* Light mode: fix inline semantic colors for contrast */
[data-theme=light] [style*="color:#e0f0ff"],[data-theme=lpink] [style*="color:#e0f0ff"]{color:var(--text) !important}
[data-theme=light] [style*="color:#4a7a99"],[data-theme=lpink] [style*="color:#4a7a99"]{color:var(--muted) !important}
[data-theme=light] [style*="color:#00d4ff"],[data-theme=lpink] [style*="color:#00d4ff"]{color:var(--accent) !important}
[data-theme=light] [style*="color:#00ff9f"],[data-theme=lpink] [style*="color:#00ff9f"]{color:var(--income) !important}
[data-theme=light] [style*="color:#bf7fff"],[data-theme=lpink] [style*="color:#bf7fff"]{color:var(--portfolio) !important}
[data-theme=light] [style*="text-shadow"],[data-theme=lpink] [style*="text-shadow"]{text-shadow:none !important}
[data-theme=light] #patrimonioTotal,[data-theme=lpink] #patrimonioTotal{color:var(--accent) !important;text-shadow:none !important}
/* Green backgrounds and borders */
[data-theme=light] [style*="background:#00ff9f"],[data-theme=lpink] [style*="background:#00ff9f"]{background:var(--income) !important}
[data-theme=light] [style*="background:rgba(0,255,159"],[data-theme=lpink] [style*="background:rgba(0,255,159"]{background:var(--income-bg) !important}
[data-theme=light] [style*="border:1px solid rgba(0,255,159"],[data-theme=lpink] [style*="border:1px solid rgba(0,255,159"]{border-color:var(--income-border) !important}
[data-theme=light] [style*="border-color:#00ff9f"],[data-theme=lpink] [style*="border-color:#00ff9f"]{border-color:var(--income) !important}
[data-theme=light] [style*="color:#00ff9f"] .dot,[data-theme=lpink] [style*="color:#00ff9f"] .dot{background:var(--income) !important;box-shadow:0 0 6px rgba(0,82,46,0.4) !important}
[data-theme=light] .is-card-title,[data-theme=lpink] .is-card-title{color:var(--income) !important}
[data-theme=light] .is-dot,[data-theme=lpink] .is-dot{background:var(--income) !important;color:var(--income) !important;box-shadow:none}
[data-theme=light] .is-authresetok,[data-theme=lpink] .is-authresetok{color:var(--income) !important}
[data-theme=lpink] .fut-input{background:rgba(var(--ar),0.04);border-color:rgba(var(--ar),0.2)}
[data-theme=lpink] .theme-menu{box-shadow:0 8px 24px rgba(212,48,122,0.15)}
[data-theme=pro] .scan-line{display:none}
[data-theme=pro] .grid-bg{background-image:none}
[data-theme=pro] .metric{background:var(--card-bg);box-shadow:0 2px 10px rgba(0,0,0,0.25)}
[data-theme=pro] .card{box-shadow:0 2px 12px rgba(0,0,0,0.2)}
[data-theme=pro] .proj-card{box-shadow:0 2px 12px rgba(0,0,0,0.2)}
[data-theme=pro] .theme-menu{box-shadow:0 8px 24px rgba(0,0,0,0.35)}
[data-theme=pro] h1{text-shadow:none}
[data-theme=pro] [style*="text-shadow"]{text-shadow:none !important}
[data-theme=pro] #patrimonioTotal{color:var(--accent) !important;text-shadow:none !important}

/* Pink mode: fix inline colors */
[data-theme=pink] [style*="color:#00ff9f"]{color:var(--income) !important}
[data-theme=pink] [style*="color:#bf7fff"]{color:var(--portfolio) !important}
[data-theme=pink] [style*="color:#00d4ff"]{color:var(--accent) !important}
[data-theme=pink] #patrimonioTotal{color:var(--accent) !important}

/* Green mode: inline overrides */
[data-theme=green] [style*="color:#00d4ff"]{color:var(--accent) !important}
[data-theme=green] [style*="color:#bf7fff"]{color:var(--portfolio) !important}
[data-theme=green] #patrimonioTotal{color:var(--accent) !important}

/* Negative mode: replace all color glows/accents */
[data-theme=negative] [style*="color:#00d4ff"]{color:var(--accent) !important}
[data-theme=negative] [style*="color:#00ff9f"]{color:var(--income) !important}
[data-theme=negative] [style*="color:#bf7fff"]{color:var(--portfolio) !important}
[data-theme=negative] [style*="color:#e0f0ff"]{color:var(--text) !important}
[data-theme=negative] [style*="color:#4a7a99"]{color:var(--muted) !important}
[data-theme=negative] [style*="text-shadow"]{text-shadow:none !important}
[data-theme=negative] #patrimonioTotal{color:var(--accent) !important;text-shadow:none !important}
[data-theme=negative] .metric::before{display:none}

/* ── ONBOARDING ─────────────────────────────────────────────────────────── */
#onboardingOverlay{display:none}
#onboardingOverlay.active{display:flex}
.ob-step{width:28px;height:4px;border-radius:2px;background:rgba(0,212,255,0.15);transition:all 0.3s}
.ob-step.active{background:#00d4ff;box-shadow:0 0 8px rgba(0,212,255,0.5);width:40px}
.ob-investor-card{border:1px solid rgba(0,212,255,0.12);border-radius:10px;padding:12px 14px;cursor:pointer;transition:all 0.2s}
.ob-investor-card:hover{border-color:rgba(0,212,255,0.3);background:rgba(0,212,255,0.04)}
.ob-investor-card.selected{border-color:var(--sel-color,#00d4ff);background:rgba(0,212,255,0.07);box-shadow:0 0 12px rgba(0,212,255,0.1)}
#ob-inv-conservador.selected{border-color:#00d4ff;background:rgba(0,212,255,0.07);box-shadow:0 0 12px rgba(0,212,255,0.12)}
#ob-inv-moderado.selected{border-color:#00ff9f;background:rgba(0,255,159,0.07);box-shadow:0 0 12px rgba(0,255,159,0.12)}
#ob-inv-ambicioso.selected{border-color:#bf7fff;background:rgba(191,127,255,0.07);box-shadow:0 0 12px rgba(191,127,255,0.12)}
.ob-theme-card{border:1px solid rgba(0,212,255,0.1);border-radius:10px;padding:10px;cursor:pointer;transition:all 0.2s;text-align:center}
.ob-theme-card:hover{border-color:rgba(var(--th,0,212,255),0.4)}
.ob-theme-card.selected{border-color:var(--th,#00d4ff);box-shadow:0 0 10px rgba(0,212,255,0.2)}

/* ── FLUJO MOBILE PILLS (ocultas en escritorio) ──────────────────────────── */
.flujo-mobile-pills{display:none}
/* Etiquetas de campos cartera — wrapper transparente en desktop */
.car-lbl{display:none}
/* display:contents hace el wrapper invisible en desktop: el input queda como item flex directo */
.car-labeled{display:contents}

/* ── MOBILE ─────────────────────────────────────────────────────────────── */
@media(max-width:1100px){
  body{padding:0.75rem 0.625rem}

  /* 1. HEADER ───────────────── */
  .header{
    display:grid;
    grid-template-columns:1fr auto auto auto auto;
    grid-template-rows:auto auto;
    row-gap:6px;
    column-gap:6px;
    align-items:center;
    margin-bottom:1rem;
  }
  .header h1{grid-column:1;grid-row:1;font-size:18px;white-space:nowrap;flex:unset}
  .version{display:none}
  #saveBtn{grid-column:2;grid-row:1;padding:6px 10px;font-size:11px;white-space:nowrap}
  .theme-switcher{grid-column:3;grid-row:1}
  .theme-toggle-btn{padding:5px 8px;font-size:10px}
  #contactBtn{grid-column:4;grid-row:1;flex-shrink:0}
  #logoutBtn{grid-column:5;grid-row:1;flex-shrink:0}
  #subscribeBtn{grid-column:3/6;grid-row:2;font-size:10px;padding:6px 8px;white-space:nowrap}
  #userEmailBtn{grid-column:1/3;grid-row:2;font-size:9px;padding:6px 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
  #guestLangBtn{grid-column:3/6;grid-row:2;font-size:9px;padding:6px 8px}
  #saveStatus{display:none}
  .cartera-freq-label{display:none}

  /* 2. METRICS ──────────────── */
  .metrics{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:6px;
    margin-bottom:1rem;
    overflow:visible;
  }
  .metric{
    padding:0.6rem 0.5rem;
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
  }
  .metric-label{font-size:8px;letter-spacing:0.08em;margin-bottom:4px;text-align:center;line-height:1.3}
  .metric-val{font-size:clamp(13px,4vw,20px);font-weight:700;text-align:center;width:100%}

  /* 3. INPUTS nombre — no se desborden */
  .row-item .fut-input.nombre{flex:1 1 0;min-width:0;width:0}
  .fut-input{min-width:0}

  /* Tabs */
  .tab-bar{gap:1px;padding:3px;margin-bottom:1rem}
  .tab{font-size:11px;padding:7px 2px;letter-spacing:0}

  /* Cards */
  .card{padding:0.875rem 0.75rem}

  /* 4. FLUJO mobile: pills selector, oculta el two-col */
  .flujo-mobile-pills{display:block;margin-bottom:10px}
  .two-col{grid-template-columns:1fr;gap:0}
  /* Ambas cards ocultas por defecto en móvil */
  #flujoCardIngresos,#flujoCardGastos{display:none}
  /* Solo la activa se muestra */
  #flujoCardIngresos.mob-active,#flujoCardGastos.mob-active{display:block}

  /* Proyección controles */
  .proj-metrics{grid-template-columns:repeat(3,minmax(110px,1fr));overflow-x:auto}
  .controls{gap:6px;flex-wrap:wrap}

  /* Cartera: card layout on mobile */
  .cartera-header{display:none!important}
  #listCartera{overflow-x:visible}

  /* Fila: bloque simple con borde */
  .cartera-row{
    display:block!important;
    border-radius:10px;
    background:rgba(var(--ar),0.04);
    border:1px solid rgba(var(--ar),0.1);
    margin-bottom:8px;
    overflow:hidden;
  }

  /* Resumen: siempre visible, una sola línea */
  .cartera-summary{
    display:flex!important;
    align-items:flex-end;
    gap:8px;
    padding:10px 12px;
    cursor:pointer;
    user-select:none;
  }

  /* Detalle: oculto por defecto, se muestra al expandir */
  .cartera-detail{
    display:none!important;
    padding:10px 12px 12px;
    border-top:1px solid rgba(var(--ar),0.1);
    row-gap:8px;column-gap:8px;
  }
  .cartera-row.expanded .cartera-detail{display:grid!important}
  .cartera-detail>*{width:auto!important;min-width:0!important;flex-shrink:unset!important}

  /* ── READ-ONLY layout ── */
  .cartera-detail:not(:has(.car-labeled)){
    grid-template-areas:
      "s  n  t  ."
      "s  v  p  ."
      ".  pl pe ."
      ".  u  c  .";
    grid-template-columns:28px 1fr 1fr auto;
  }

  /* ── ADMIN layout ── */
  .cartera-detail:has(.car-labeled){
    grid-template-areas:
      "s  n  n  n  n"
      "s  t  p  p  d"
      ".  u  c  c  ."
      ".  v  pl pe .";
    grid-template-columns:28px 1fr 1fr 1fr 32px;
  }

  /* Etiquetas */
  .car-lbl{
    display:block;
    font-size:9px;letter-spacing:0.1em;
    color:#4a7a99;font-weight:600;
    font-family:'Space Grotesk',sans-serif;
    margin-bottom:3px;
  }
  .car-labeled{display:flex!important;flex-direction:column}
  .car-labeled .fut-input{width:100%!important;min-height:38px;font-size:14px!important;padding:6px 8px!important}

  /* Pseudo-etiqueta PRECIO */
  .cartera-detail:has(.car-labeled) .car-p::before{
    content:'PRECIO';
    display:block;
    font-size:9px;letter-spacing:0.1em;color:#4a7a99;font-weight:600;
    font-family:'Space Grotesk',sans-serif;
    margin-bottom:3px;
  }

  /* Áreas de grid */
  .car-n{grid-area:n;align-self:start}
  .car-t{grid-area:t}
  .car-p{grid-area:p;align-self:start;display:flex;flex-direction:column;gap:2px}
  .car-u{grid-area:u}
  .car-c{grid-area:c}
  .car-v{grid-area:v}
  .car-pl{grid-area:pl;align-self:center;font-size:15px!important;font-weight:600!important}
  .car-pe{grid-area:pe;align-self:center;text-align:right!important;justify-self:end;font-size:12px!important;color:#a0c0d0!important}
  .car-del{grid-area:d;align-self:center;justify-self:end;color:#ff4d6d!important}
  .car-s{grid-area:s;align-self:start;justify-self:center;padding-top:2px}

  /* Separador visual en nombre */
  .car-n{padding-bottom:8px;border-bottom:1px solid rgba(var(--ar),0.1)}

  /* Read-only spans */
  .cartera-detail:not(:has(.car-labeled)) .car-n{
    font-size:13px!important;font-weight:600!important;color:#e0f0ff!important;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  }
  .cartera-detail:not(:has(.car-labeled)) .car-t{
    font-size:10px!important;font-weight:700!important;
    letter-spacing:0.07em!important;color:#4a7a99!important;
    align-self:center;text-align:center;
  }
  .cartera-detail:not(:has(.car-labeled)) .car-v{
    font-size:20px!important;font-weight:700!important;color:#bf7fff!important;align-self:center;
  }

  /* Admin nombre */
  .cartera-detail:has(.car-labeled) .car-n{flex-direction:column!important;align-items:stretch!important}
  .cartera-detail:has(.car-labeled) .car-n input{width:100%!important;min-height:38px;font-size:14px!important;padding:6px 8px!important}

  /* Pat total bar */
  .pat-total-bar{padding:0.75rem 1rem}

  /* Theme menu */
  .theme-menu{right:0;min-width:100px}

  /* Donut expand overlay */
  #donutExpandBox{padding:1rem}
}

/* ── EVENTOS EXTRAORDINARIOS ──────────────────────────────────────────────── */
.ext-item-row{display:flex;align-items:flex-start;gap:8px;padding:8px 0;border-bottom:1px solid rgba(74,122,153,0.1)}
.ext-item-row:last-child{border-bottom:none}
.ext-item-row input{box-sizing:border-box}
@media(max-width:1060px){.ext-two-col{grid-template-columns:1fr !important}}

/* Date picker styling — dark calendar popup + purple icon */
#extModal input[type="date"]{color-scheme:dark}
#extModal input[type="date"]::-webkit-calendar-picker-indicator{
  background:transparent;
  cursor:pointer;
  border-radius:3px;
  padding:2px;
  opacity:0.75;
  /* recolor to app purple #bf7fff */
  filter:invert(67%) sepia(40%) saturate(900%) hue-rotate(220deg) brightness(115%);
  transition:opacity 0.2s;
}
#extModal input[type="date"]::-webkit-calendar-picker-indicator:hover{opacity:1}
#extModal input[type="date"]::-webkit-datetime-edit-month-field:focus,
#extModal input[type="date"]::-webkit-datetime-edit-day-field:focus,
#extModal input[type="date"]::-webkit-datetime-edit-year-field:focus{
  background:rgba(191,127,255,0.2);
  border-radius:3px;
  color:#bf7fff;
  outline:none;
}

/* ═══════════════════════════════════════════════════════════════════════
   EXTRACTED INLINE STYLES
   ═══════════════════════════════════════════════════════════════════════ */

.is-strong /* 17× */ {
  color: #e0f0ff;
}

.is-span-9 /* 10× */ {
  color: #00d4ff;
}

.is-button-6 /* 6× */ {
  position: absolute;
  top: 14px;
  right: 16px;
  background: none;
  border: none;
  color: #4a7a99;
  font-size: 20px;
  cursor: pointer;
  line-height: 1;
}

.is-cinfo-body /* 6× */ {
  font-size: 12px;
  color: var(--text);
  line-height: 1.7;
  margin-top: 8px;
}

.is-div-11 /* 6× */ {
  text-align: center;
  margin-bottom: 1.5rem;
}

.is-div-21 /* 6× */ {
  gap: 8px;
}

.is-precioanualmes /* 6× */ {
  color: #bf7fff;
}

.is-div-25 /* 5× */ {
  font-size: 11px;
  color: #4a7a99;
  margin-top: 5px;
  letter-spacing: 0.08em;
}

.is-div-71 /* 5× */ {
  font-size: 9px;
  letter-spacing: 0.15em;
  color: #4a7a99;
  margin-bottom: 7px;
}

.is-donutingresos /* 5× */ {
  max-height: 260px;
}

.is-label-2 /* 5× */ {
  font-size: 10px;
  letter-spacing: 0.1em;
  color: #4a7a99;
  margin-bottom: 4px;
}

.is-lang-btn /* 5× */ {
  flex: 1;
}

.is-legendingresos /* 5× */ {
  margin-top: 12px;
}

.is-button-8 /* 4× */ {
  flex: 0 0 auto;
  background: none;
  border: 1px solid rgba(0,212,255,0.15);
  border-radius: 8px;
  color: #4a7a99;
  font-size: 12px;
  font-weight: 600;
  padding: 10px 14px;
  cursor: pointer;
  font-family: 'Space Grotesk',sans-serif;
}

.is-div-14 /* 4× */ {
  font-size: 10px;
  color: #4a7a99;
  margin-top: 4px;
}

.is-div-24 /* 4× */ {
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.12em;
  color: #00d4ff;
}

.is-span-18 /* 4× */ {
  color: #00ff9f;
  font-weight: 600;
}

.is-span-19 /* 4× */ {
  color: #00d4ff;
  font-weight: 600;
}

.is-span-2 /* 4× */ {
  color: #00ff9f;
  font-weight: 700;
  text-shadow: 0 0 10px rgba(0,255,159,0.3);
}

.is-authemail /* 3× */ {
  width: 100%;
  margin-bottom: 8px;
}

.is-button-17 /* 3× */ {
  position: absolute;
  top: 12px;
  right: 14px;
  background: none;
  border: none;
  color: #4a7a99;
  font-size: 20px;
  cursor: pointer;
  line-height: 1;
}

.is-button-9 /* 3× */ {
  flex: 1;
  background: rgba(0,212,255,0.1);
  border: 1px solid rgba(0,212,255,0.3);
  border-radius: 8px;
  color: #00d4ff;
  font-size: 13px;
  font-weight: 600;
  padding: 10px;
  cursor: pointer;
  letter-spacing: 0.1em;
  font-family: 'Space Grotesk',sans-serif;
}

.is-card /* 3× */ {
  margin-top: 14px;
}

.is-div-27 /* 3× */ {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 4px;
}

.is-div-28 /* 3× */ {
  font-size: 11px;
  color: #4a7a99;
  line-height: 1.5;
}

.is-div-30 /* 3× */ {
  font-size: 22px;
  flex-shrink: 0;
}

.is-div-31 /* 3× */ {
  text-align: left;
}

.is-div-33 /* 3× */ {
  font-size: 9px;
  color: #4a7a99;
  margin-top: 2px;
}

.is-div-64 /* 3× */ {
  margin-left: auto;
}

.is-div-73 /* 3× */ {
  margin-bottom: 0.9rem;
}

.is-legend-item /* 3× */ {
  color: #ff9f3f;
}

.is-span-23 /* 3× */ {
  font-size: 11px;
  color: #4a7a99;
}

.is-tickersearchmodal /* 3× */ {
  position: fixed;
  inset: 0;
  background: rgba(5,10,18,0.88);
  z-index: 400;
  flex-direction: column;
  align-items: center;
  overflow-y: auto;
  padding: 1.25rem;
}

.is-authsubmitbtn /* 2× */ {
  width: 100%;
  background: rgba(0,212,255,0.1);
  border: 1px solid rgba(0,212,255,0.3);
  border-radius: 8px;
  color: #00d4ff;
  font-size: 13px;
  font-weight: 600;
  padding: 10px;
  cursor: pointer;
  letter-spacing: 0.1em;
  font-family: 'Space Grotesk',sans-serif;
}

.is-button-31 /* 2× */ {
  background: none;
  border: none;
  color: #00d4ff;
  font-size: 11px;
  cursor: pointer;
  padding: 0;
  text-decoration: underline;
}

.is-button-34 /* 2× */ {
  position: absolute;
  top: 14px;
  right: 16px;
  background: none;
  border: none;
  color: #4a7a99;
  font-size: 22px;
  cursor: pointer;
}

.is-button-37 /* 2× */ {
  background: none;
  border: none;
  color: #4a7a99;
  font-size: 10px;
  cursor: pointer;
  letter-spacing: 0.08em;
  transition: color 0.2s;
}

.is-button-4 /* 2× */ {
  background: none;
  border: none;
  color: #4a7a99;
  font-size: 11px;
  cursor: pointer;
  text-decoration: underline;
  letter-spacing: 0.05em;
}

.is-card-2 /* 2× */ {
  margin-bottom: 14px;
}

.is-carterainfosynctext /* 2× */ {
  font-size: 12px;
  color: var(--text);
  line-height: 1.7;
}

.is-chev-datos /* 2× */ {
  color: #4a7a99;
  font-size: 14px;
  line-height: 1;
  transition: transform 0.2s;
}

.is-ctrl-box-3 /* 2× */ {
  background: rgba(0,255,159,0.04);
  border: 1px solid rgba(0,255,159,0.15);
}

.is-ctrl-label-2 /* 2× */ {
  color: #2a7a55;
}

.is-div-13 /* 2× */ {
  font-size: 10px;
  letter-spacing: 0.15em;
  color: #4a7a99;
  margin-bottom: 8px;
}

.is-div-131 /* 2× */ {
  font-size: 10px;
  color: #4a7a99;
  margin-bottom: 20px;
}

.is-div-15 /* 2× */ {
  font-size: 10px;
  color: #4a7a99;
  margin-top: 8px;
  letter-spacing: 0.05em;
}

.is-div-26 /* 2× */ {
  flex-direction: column;
  gap: 10px;
  margin-bottom: 20px;
}

.is-div-34 /* 2× */ {
  margin-left: auto;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.06em;
  color: #c0c0cc;
  background: rgba(180,180,200,0.1);
  border: 1px solid rgba(180,180,200,0.3);
  border-radius: 5px;
  padding: 3px 7px;
  white-space: nowrap;
}

.is-div-38 /* 2× */ {
  font-size: 32px;
  margin-bottom: 8px;
}

.is-div-39 /* 2× */ {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.is-div-63 /* 2× */ {
  justify-content: center;
  margin-bottom: 16px;
}

.is-div-68 /* 2× */ {
  margin-bottom: 0.9rem;
  border: 1px solid rgba(0,212,255,0.08);
  border-radius: 10px;
  overflow: hidden;
}

.is-div-69 /* 2× */ {
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  padding: 8px 12px;
  background: rgba(0,212,255,0.04);
}

.is-div-7 /* 2× */ {
  flex: 1;
  height: 1px;
  background: rgba(0,212,255,0.1);
}

.is-div-72 /* 2× */ {
  flex-direction: column;
  gap: 5px;
}

.is-div-87 /* 2× */ {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  color: #00ff9f;
  margin-bottom: 1.25rem;
}

.is-extlistgastos /* 2× */ {
  flex-direction: column;
  gap: 10px;
  min-height: 36px;
}

.is-label /* 2× */ {
  font-size: 10px;
  letter-spacing: 0.12em;
  color: #4a7a99;
  margin-bottom: 5px;
}

.is-ob-err-1 /* 2× */ {
  font-size: 11px;
  color: #ff4d6d;
  min-height: 16px;
  margin-bottom: 10px;
  text-align: center;
}

.is-patdonutlegend /* 2× */ {
  margin-top: 10px;
}

.is-pill-bar /* 2× */ {
  width: 100%;
}

.is-planmensual /* 2× */ {
  border: 1px solid rgba(191,127,255,0.2);
  border-radius: 12px;
  padding: 1.25rem;
  cursor: pointer;
  transition: all 0.2s;
  position: relative;
}

.is-preciomensual /* 2× */ {
  font-size: 26px;
  font-weight: 600;
  color: #bf7fff;
}

.is-privacymodal /* 2× */ {
  position: fixed;
  inset: 0;
  background: rgba(5,10,18,0.92);
  z-index: 8000;
  overflow-y: auto;
  padding: 1.25rem;
  align-items: flex-start;
  justify-content: center;
}

.is-prof-datos-body /* 2× */ {
  padding: 10px 12px 12px;
}

.is-prof-edad /* 2× */ {
  width: 100%;
  margin-bottom: 10px;
}

.is-prof-pass-err /* 2× */ {
  font-size: 11px;
  color: #ff4d6d;
  min-height: 14px;
  margin-bottom: 8px;
  text-align: center;
}

.is-span-11 /* 2× */ {
  color: #4a7a99;
}

.is-span-15 /* 2× */ {
  font-size: 10px;
  color: #2a7a55;
}

.is-span-16 /* 2× */ {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #bf7fff;
}

.is-span-17 /* 2× */ {
  font-size: 9px;
  letter-spacing: 0.15em;
  color: #4a7a99;
}

.is-span-24 /* 2× */ {
  color: #bf7fff;
  font-weight: 600;
  font-size: 12px;
}

.is-span-26 /* 2× */ {
  color: #00ff9f;
  font-weight: 600;
  font-size: 12px;
}

.is-tab-bar /* 2× */ {
  margin-bottom: 1.25rem;
}

.is-tscatcripto /* 2× */ {
  background: rgba(0,212,255,0.05);
  border: 1px solid rgba(0,212,255,0.2);
  border-radius: 20px;
  color: #4a7a99;
  font-size: 10px;
  font-weight: 600;
  padding: 4px 12px;
  cursor: pointer;
  font-family: 'Space Grotesk',sans-serif;
  letter-spacing: 0.08em;
  transition: all 0.15s;
}

.is-a {
  background: rgba(var(--ar),0.1);
  border: 1px solid rgba(var(--ar),0.3);
  border-radius: 10px;
  padding: 12px 16px;
  color: var(--accent);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-decoration: none;
  transition: all 0.2s;
}

.is-a-2 {
  color: #4a7a99;
  text-decoration: none;
  letter-spacing: 0.08em;
  transition: color 0.2s;
}

.is-accountdeletedmodal {
  position: fixed;
  inset: 0;
  z-index: 10003;
  background: rgba(0,0,0,0.82);
  align-items: center;
  justify-content: center;
}

.is-autherror {
  margin-top: 4px;
  font-size: 11px;
  color: #ff4d6d;
  text-align: center;
  letter-spacing: 0.05em;
  min-height: 16px;
}

.is-authoverlay {
  position: fixed;
  inset: 0;
  background: #050a12;
  z-index: 100;
  align-items: center;
  justify-content: center;
  padding: 1.25rem;
}

.is-authpasshint {
  font-size: 10px;
  color: #4a7a99;
  letter-spacing: 0.04em;
  margin-bottom: 10px;
  line-height: 1.6;
}

.is-authpasswordconfirm {
  width: 100%;
  margin-bottom: 4px;
}

.is-authresendbox {
  margin-top: 6px;
  text-align: center;
}

.is-authresetok {
  margin-top: 4px;
  font-size: 11px;
  color: #00ff9f;
  text-align: center;
  letter-spacing: 0.05em;
}

.is-authverifyarea {
  text-align: center;
  padding: 10px 0;
}

.is-authverifyemail {
  font-size: 12px;
  color: #e0e8f0;
  font-weight: 600;
  margin-bottom: 12px;
}

.is-btnveractivos {
  margin-left: auto;
  align-items: center;
  gap: 5px;
  background: rgba(var(--ar),0.08);
  border: 1px solid rgba(var(--ar),0.2);
  border-radius: 7px;
  color: var(--accent);
  font-size: 9px;
  font-weight: 600;
  padding: 5px 10px;
  cursor: pointer;
  letter-spacing: 0.06em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}
.btn-ia-patrimonio {
  margin-left: 6px;
  background: rgba(191,127,255,0.08);
  border: 1px solid rgba(191,127,255,0.25);
  color: #bf7fff;
}
.btn-ia-patrimonio:hover {
  background: rgba(191,127,255,0.18);
  box-shadow: 0 0 10px rgba(191,127,255,0.3);
}

.is-button {
  width: 100%;
  background: rgba(0,255,159,0.1);
  border: 1px solid rgba(0,255,159,0.35);
  border-radius: 10px;
  color: var(--income);
  font-size: 13px;
  font-weight: 700;
  padding: 12px;
  cursor: pointer;
  letter-spacing: 0.1em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
  margin-bottom: 10px;
}

.is-button-10 {
  flex: 1;
  background: rgba(0,255,159,0.12);
  border: 1px solid rgba(0,255,159,0.4);
  border-radius: 8px;
  color: #00ff9f;
  font-size: 13px;
  font-weight: 600;
  padding: 10px;
  cursor: pointer;
  letter-spacing: 0.1em;
  font-family: 'Space Grotesk',sans-serif;
}

.is-button-11 {
  width: 100%;
  margin: 14px 0 0;
  background: rgba(191,127,255,0.05);
  border: 1px dashed rgba(191,127,255,0.22);
  border-radius: 10px;
  color: #bf7fff;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.14em;
  padding: 11px 16px;
  cursor: pointer;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
  align-items: center;
  justify-content: center;
  gap: 9px;
}

.is-button-12 {
  background: rgba(0,255,159,0.07);
  border: 1px solid rgba(0,255,159,0.35);
  border-radius: 50%;
  width: 30px;
  height: 30px;
  color: #00ff9f;
  font-size: 14px;
  font-weight: 400;
  font-style: italic;
  cursor: pointer;
  padding: 0;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-family: Georgia,serif;
  transition: all 0.2s;
  letter-spacing: 0;
  line-height: 1;
}

.is-button-13 {
  background: rgba(191,127,255,0.07);
  border: 1px solid rgba(191,127,255,0.35);
  border-radius: 50%;
  width: 16px;
  height: 16px;
  color: #bf7fff;
  font-size: 10px;
  font-weight: 400;
  font-style: italic;
  cursor: pointer;
  padding: 0;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-family: Georgia,serif;
  line-height: 1;
  transition: all 0.2s;
  margin-left: 6px;
}

.is-button-14 {
  margin-left: auto;
  background: rgba(191,127,255,0.08);
  border: 1px solid rgba(191,127,255,0.3);
  border-radius: 8px;
  padding: 5px 10px;
  cursor: pointer;
  align-items: center;
  gap: 6px;
  transition: all 0.2s;
  flex-shrink: 0;
}

.is-button-15 {
  margin-left: 6px;
  background: rgba(191,127,255,0.08);
  border: 1px solid rgba(191,127,255,0.3);
  border-radius: 8px;
  padding: 5px 10px;
  cursor: pointer;
  align-items: center;
  gap: 6px;
  transition: all 0.2s;
  flex-shrink: 0;
}

.is-button-16 {
  position: absolute;
  top: 12px;
  right: 14px;
  background: none;
  border: none;
  color: #4a7a99;
  font-size: 20px;
  cursor: pointer;
  line-height: 1;
  font-family: 'Space Grotesk',sans-serif;
}

.is-button-18 {
  width: 100%;
  background: rgba(0,212,255,0.1);
  border: 1px solid rgba(0,212,255,0.3);
  border-radius: 8px;
  color: #00d4ff;
  font-size: 12px;
  font-weight: 600;
  padding: 9px;
  cursor: pointer;
  letter-spacing: 0.1em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-button-19 {
  background: rgba(0,255,159,0.07);
  border: 1px solid rgba(0,255,159,0.35);
  border-radius: 50%;
  width: 16px;
  height: 16px;
  color: #00ff9f;
  font-size: 10px;
  font-weight: 400;
  font-style: italic;
  cursor: pointer;
  padding: 0;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-family: Georgia,serif;
  line-height: 1;
}

.is-button-2 {
  width: 100%;
  background: none;
  border: 1px solid rgba(var(--ar),0.2);
  border-radius: 10px;
  color: var(--accent);
  font-size: 12px;
  font-weight: 600;
  padding: 10px;
  cursor: pointer;
  letter-spacing: 0.08em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-button-20 {
  flex: 1;
  background: rgba(0,255,159,0.06);
  border: 1px solid rgba(0,255,159,0.2);
  border-radius: 8px;
  color: #00ff9f;
  font-size: 11px;
  font-weight: 600;
  padding: 8px 6px;
  cursor: pointer;
  letter-spacing: 0.08em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.btn-html-report {
  width: 100%;
  margin-top: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: rgba(191,127,255,0.06);
  border: 1px solid rgba(191,127,255,0.2);
  border-radius: 8px;
  color: #bf7fff;
  font-size: 11px;
  font-weight: 600;
  padding: 10px 6px;
  cursor: pointer;
  letter-spacing: 0.08em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}
.btn-html-report:hover {
  background: rgba(191,127,255,0.15);
  border-color: rgba(191,127,255,0.4);
  box-shadow: 0 0 12px rgba(191,127,255,0.2);
}

.is-button-21 {
  width: 100%;
  background: rgba(0,212,255,0.1);
  border: 1px solid rgba(0,212,255,0.3);
  border-radius: 8px;
  color: #00d4ff;
  font-size: 13px;
  font-weight: 600;
  padding: 10px;
  cursor: pointer;
  letter-spacing: 0.1em;
  font-family: 'Space Grotesk',sans-serif;
  margin-bottom: 0;
  transition: all 0.2s;
}

.is-button-22 {
  background: none;
  border: 1px solid rgba(255,77,109,0.15);
  border-radius: 8px;
  color: #4a7a99;
  font-size: 10px;
  font-weight: 600;
  padding: 8px 14px;
  cursor: pointer;
  letter-spacing: 0.1em;
  font-family: 'Space Grotesk',sans-serif;
  text-align: left;
  transition: all 0.2s;
  width: 100%;
}

.is-button-23 {
  width: 100%;
  background: rgba(255,77,109,0.1);
  border: 1px solid rgba(255,77,109,0.35);
  border-radius: 8px;
  color: #ff4d6d;
  font-size: 12px;
  font-weight: 600;
  padding: 9px;
  cursor: pointer;
  letter-spacing: 0.1em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-button-24 {
  background: rgba(0,255,159,0.1);
  border: 1px solid rgba(0,255,159,0.3);
  border-radius: 8px;
  color: #00ff9f;
  font-size: 12px;
  font-weight: 600;
  padding: 0 14px;
  cursor: pointer;
  font-family: 'Space Grotesk',sans-serif;
  white-space: nowrap;
  transition: all 0.2s;
}

.is-button-25 {
  flex: 1;
  background: rgba(0,212,255,0.08);
  border: 1px solid rgba(0,212,255,0.25);
  border-radius: 8px;
  color: #00d4ff;
  font-size: 12px;
  font-weight: 600;
  padding: 10px;
  cursor: pointer;
  letter-spacing: 0.08em;
  font-family: 'Space Grotesk',sans-serif;
}

.is-button-26 {
  flex: 1;
  background: rgba(255,77,109,0.1);
  border: 1px solid rgba(255,77,109,0.3);
  border-radius: 8px;
  color: #ff4d6d;
  font-size: 12px;
  font-weight: 600;
  padding: 10px;
  cursor: pointer;
  letter-spacing: 0.08em;
  font-family: 'Space Grotesk',sans-serif;
}

.is-button-27 {
  width: 100%;
  background: rgba(255,77,109,0.1);
  border: 1px solid rgba(255,77,109,0.3);
  border-radius: 8px;
  color: #ff4d6d;
  font-size: 12px;
  font-weight: 600;
  padding: 10px;
  cursor: pointer;
  letter-spacing: 0.08em;
  font-family: 'Space Grotesk',sans-serif;
}

.is-button-28 {
  width: 100%;
  background: rgba(191,127,255,0.08);
  border: 1px solid rgba(191,127,255,0.3);
  border-radius: 10px;
  cursor: pointer;
  align-items: center;
  justify-content: space-between;
  padding: 11px 14px;
  transition: all 0.2s;
  font-family: 'Space Grotesk',sans-serif;
}

.is-button-29 {
  margin-top: 12px;
  width: 100%;
  background: rgba(255,77,109,0.06);
  border: 1px dashed rgba(255,77,109,0.3);
  border-radius: 8px;
  color: #ff4d6d;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.1em;
  padding: 8px;
  cursor: pointer;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-button-3 {
  width: 100%;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 8px;
  color: #e0e8f0;
  font-size: 13px;
  font-weight: 600;
  padding: 10px;
  cursor: pointer;
  letter-spacing: 0.05em;
  font-family: 'Space Grotesk',sans-serif;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.is-button-30 {
  margin-top: 12px;
  width: 100%;
  background: rgba(0,255,159,0.06);
  border: 1px dashed rgba(0,255,159,0.3);
  border-radius: 8px;
  color: #00ff9f;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.1em;
  padding: 8px;
  cursor: pointer;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-button-32 {
  background: #00d4ff;
  border: none;
  border-radius: 8px;
  color: #050a12;
  font-size: 11px;
  font-weight: 700;
  padding: 8px 18px;
  cursor: pointer;
  letter-spacing: 0.1em;
  white-space: nowrap;
}

.is-button-33 {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 8px;
  color: #4a7a99;
  font-size: 11px;
  padding: 8px 14px;
  cursor: pointer;
  white-space: nowrap;
}

.is-button-35 {
  margin-top: 10px;
  background: rgba(0,212,255,0.1);
  border: 1px solid rgba(0,212,255,0.3);
  border-radius: 8px;
  color: #00d4ff;
  font-size: 11px;
  font-weight: 700;
  padding: 10px 24px;
  cursor: pointer;
  letter-spacing: 0.1em;
}

.is-button-36 {
  margin-top: 10px;
  background: rgba(191,127,255,0.1);
  border: 1px solid rgba(191,127,255,0.3);
  border-radius: 8px;
  color: #bf7fff;
  font-size: 11px;
  font-weight: 700;
  padding: 10px 24px;
  cursor: pointer;
  letter-spacing: 0.1em;
}

.is-button-5 {
  background: none;
  border: 1px solid rgba(0,212,255,0.3);
  border-radius: 8px;
  color: #00d4ff;
  font-size: 12px;
  font-weight: 600;
  padding: 8px 16px;
  cursor: pointer;
  letter-spacing: 0.08em;
}

.is-button-7 {
  background: rgba(191,127,255,0.1);
  border: 1px solid rgba(191,127,255,0.3);
  border-radius: 8px;
  color: #bf7fff;
  font-size: 10px;
  font-weight: 700;
  padding: 9px 16px;
  cursor: pointer;
  letter-spacing: 0.1em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
  white-space: nowrap;
}

.is-cancelsubbtn {
  background: none;
  border: none;
  color: #4a7a99;
  font-size: 10px;
  cursor: pointer;
  letter-spacing: 0.08em;
  font-family: 'Space Grotesk',sans-serif;
  padding: 4px 0;
  text-align: left;
  transition: color 0.2s;
  opacity: 0.6;
}

.is-card-3 {
  align-items: center;
}

.is-card-head {
  flex-wrap: wrap;
  row-gap: 6px;
}

.is-card-title {
  color: #00ff9f;
  letter-spacing: 0.12em;
}

.is-card-title-2 {
  color: #ff4d6d;
  letter-spacing: 0.12em;
}

.is-card-title-3 {
  color: var(--muted);
  letter-spacing: 0.1em;
}

.is-card-title-4 {
  color: #bf7fff;
  letter-spacing: 0.12em;
}

.is-cartera-freq-label {
  font-size: 11px;
  color: #6a8a9a;
  letter-spacing: 0.04em;
  margin-left: 8px;
  flex-shrink: 0;
}

.is-carterapricestatus {
  font-size: 10px;
  color: #4a7a99;
  letter-spacing: 0.06em;
  margin-left: 10px;
}

.is-carteraresumenbody {
  flex-direction: column;
  gap: 14px;
}

.is-carteraresumendonut {
  max-height: 300px;
}

.is-carteraresumendonutchev {
  font-size: 16px;
  color: #bf7fff;
  transition: transform 0.2s;
  line-height: 1;
}

.is-carteraresumenoverlay {
  position: fixed;
  inset: 0;
  background: rgba(5,10,18,0.9);
  z-index: 300;
  flex-direction: column;
  align-items: center;
  overflow-y: auto;
  padding: 1.5rem;
}

.is-carteraresumenrate {
  font-size: 10px;
  color: #4a7a99;
  letter-spacing: 0.06em;
  margin-top: 14px;
}

.is-carteraresumenstatus {
  font-size: 10px;
  color: #4a7a99;
  letter-spacing: 0.06em;
  margin-top: 6px;
}

.is-consentbanner {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9000;
  background: rgba(5,10,18,0.97);
  border-top: 1px solid rgba(0,212,255,0.2);
  padding: 14px 20px;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.is-contactbtn {
  background: none;
  border: 1px solid rgba(var(--ar),0.2);
  border-radius: 50%;
  width: 32px;
  height: 32px;
  color: #4a7a99;
  cursor: pointer;
  padding: 0;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  transition: all 0.2s;
}

.is-contactmodal {
  position: fixed;
  inset: 0;
  background: rgba(5,10,18,0.88);
  z-index: 10004;
  align-items: center;
  justify-content: center;
  padding: 1.25rem;
}

.is-ctrl-box {
  background: rgba(0,212,255,0.05);
  border: 1px solid rgba(0,212,255,0.12);
}

.is-ctrl-box-2 {
  background: rgba(255,159,63,0.05);
  border: 1px solid rgba(255,159,63,0.2);
}

.is-ctrl-label {
  color: #a06030;
}

.is-cuponinput {
  flex: 1;
  background: rgba(191,127,255,0.05);
  border: 1px solid rgba(191,127,255,0.2);
  border-radius: 8px;
  color: var(--text);
  font-size: 12px;
  padding: 9px 12px;
  font-family: 'Space Grotesk',sans-serif;
  outline: none;
  letter-spacing: 0.06em;
  transition: border-color 0.2s;
}

.is-cuponmsg {
  font-size: 10px;
  margin-top: 7px;
  min-height: 14px;
  text-align: center;
  letter-spacing: 0.04em;
}

.is-div {
  background: var(--overlay-bg);
  border: 1px solid rgba(0,212,255,0.25);
  border-radius: 16px;
  padding: 2rem;
  width: 100%;
  max-width: 380px;
  text-align: center;
  position: relative;
  margin: auto;
}

.is-div-10 {
  background: rgba(5,20,35,0.98);
  border: 1px solid rgba(191,127,255,0.3);
  border-radius: 16px;
  padding: 2rem;
  width: 100%;
  max-width: 480px;
  position: relative;
  margin: auto;
}

.is-div-100 {
  background: #0d1929;
  border: 1px solid rgba(255,77,109,0.3);
  border-radius: 14px;
  padding: 32px 26px 26px;
  max-width: 330px;
  width: 90%;
  text-align: center;
  box-shadow: 0 8px 40px rgba(0,0,0,0.9);
}

.is-div-101 {
  font-size: 36px;
  margin-bottom: 14px;
}

.is-div-102 {
  font-size: 13px;
  font-weight: 700;
  color: #e0f0ff;
  letter-spacing: 0.08em;
  margin-bottom: 10px;
}

.is-div-103 {
  font-size: 12px;
  color: #a0c0d0;
  line-height: 1.7;
  margin-bottom: 6px;
}

.is-div-104 {
  font-size: 11px;
  color: #4a7a99;
  margin-bottom: 24px;
}

.is-div-105 {
  background: var(--overlay-bg);
  border: 1px solid rgba(var(--ar),0.25);
  border-radius: 16px;
  padding: 2rem 1.75rem 1.75rem;
  max-width: 360px;
  width: 100%;
  text-align: center;
  position: relative;
  box-shadow: 0 8px 48px rgba(0,0,0,0.7);
}

.is-div-106 {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: rgba(var(--ar),0.1);
  border: 1px solid rgba(var(--ar),0.25);
  align-items: center;
  justify-content: center;
  margin: 0 auto 1.25rem;
}

.is-div-107 {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  color: var(--accent);
  margin-bottom: 0.9rem;
}

.is-div-108 {
  background: var(--overlay-bg);
  border: 1px solid rgba(191,127,255,0.25);
  border-radius: 16px;
  padding: 1.75rem;
  width: 100%;
  max-width: 460px;
  position: relative;
  margin: auto;
}

.is-div-109 {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  color: #bf7fff;
  margin-bottom: 1.25rem;
}

.is-div-110 {
  flex-direction: column;
  gap: 8px;
}

.is-div-111 {
  background: rgba(0,255,159,0.07);
  border: 1px solid rgba(0,255,159,0.25);
  border-radius: 10px;
  padding: 10px 14px;
}

.is-div-112 {
  font-size: 10px;
  letter-spacing: 0.12em;
  color: #00ff9f;
  margin-bottom: 6px;
  font-weight: 700;
}

.is-div-113 {
  font-size: 12px;
  color: #00ff9f;
  line-height: 1.7;
}

.is-div-114 {
  background: rgba(255,179,71,0.07);
  border: 1px solid rgba(255,179,71,0.2);
  border-radius: 10px;
  padding: 10px 14px;
}

.is-div-115 {
  font-size: 10px;
  letter-spacing: 0.12em;
  color: #ffb347;
  margin-bottom: 6px;
  font-weight: 700;
}

.is-div-116 {
  background: rgba(191,127,255,0.07);
  border: 1px solid rgba(191,127,255,0.2);
  border-radius: 10px;
  padding: 10px 14px;
}

.is-div-117 {
  font-size: 10px;
  letter-spacing: 0.12em;
  color: #bf7fff;
  margin-bottom: 6px;
  font-weight: 700;
}

.is-div-118 {
  background: rgba(5,20,35,0.98);
  border: 1px solid rgba(191,127,255,0.25);
  border-radius: 16px;
  padding: 1.75rem;
  width: 100%;
  max-width: 420px;
  position: relative;
  margin: auto;
}

.is-div-119 {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  color: #bf7fff;
  margin-bottom: 1.25rem;
  align-items: center;
  gap: 8px;
}

.is-div-12 {
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 10px;
}

.is-div-120 {
  margin-top: 18px;
}

.is-div-121 {
  align-items: center;
  gap: 8px;
}

.is-div-122 {
  background: var(--overlay-bg);
  border: 1px solid rgba(191,127,255,0.2);
  border-radius: 16px;
  padding: 1.75rem;
  width: 100%;
  max-width: 720px;
  position: relative;
  margin: auto;
}

.is-div-123 {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  color: #bf7fff;
  margin-bottom: 4px;
}

.is-div-124 {
  font-size: 11px;
  color: #4a7a99;
  margin-bottom: 1.4rem;
  line-height: 1.65;
}

.is-div-125 {
  background: rgba(255,77,109,0.04);
  border: 1px solid rgba(255,77,109,0.18);
  border-radius: 12px;
  padding: 14px;
}

.is-div-126 {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: #ff4d6d;
  margin-bottom: 12px;
}

.is-div-127 {
  background: rgba(0,255,159,0.04);
  border: 1px solid rgba(0,255,159,0.18);
  border-radius: 12px;
  padding: 14px;
}

.is-div-128 {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: #00ff9f;
  margin-bottom: 12px;
}

.is-div-129 {
  background: #0d1929;
  border: 1px solid rgba(0,212,255,0.2);
  border-radius: 16px;
  padding: 2rem;
  width: 100%;
  max-width: 680px;
  margin: auto;
  position: relative;
  color: #a0c0d0;
  font-size: 13px;
  line-height: 1.7;
}

.is-div-130 {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  color: #00d4ff;
  margin-bottom: 6px;
}

.is-div-132 {
  background: #0d1929;
  border: 1px solid rgba(191,127,255,0.2);
  border-radius: 16px;
  padding: 2rem;
  width: 100%;
  max-width: 680px;
  margin: auto;
  position: relative;
  color: #a0c0d0;
  font-size: 13px;
  line-height: 1.7;
}

.is-div-133 {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  color: #bf7fff;
  margin-bottom: 6px;
}

.is-div-16 {
  position: absolute;
  top: -10px;
  left: 50%;
  transform: translateX(-50%);
  background: #bf7fff;
  color: #050a12;
  font-size: 9px;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: 20px;
  letter-spacing: 0.1em;
  white-space: nowrap;
}

.is-div-17 {
  position: absolute;
  top: -10px;
  left: 50%;
  transform: translateX(-50%);
  background: #c9a84c;
  color: #050a12;
  font-size: 9px;
  font-weight: 700;
  padding: 3px 12px;
  border-radius: 20px;
  letter-spacing: 0.1em;
  white-space: nowrap;
}

.is-div-18 {
  font-size: 10px;
  letter-spacing: 0.15em;
  color: #a08030;
  margin-bottom: 4px;
}

.is-div-19 {
  font-size: 10px;
  color: #7a6020;
  letter-spacing: 0.03em;
}

.is-div-2 {
  font-size: 32px;
  margin-bottom: 12px;
}

.is-div-20 {
  text-align: right;
  flex-shrink: 0;
}

.is-div-22 {
  background: rgba(5,20,35,0.98);
  border: 1px solid rgba(0,212,255,0.2);
  border-radius: 16px;
  padding: 2rem;
  width: 100%;
  max-width: 440px;
  position: relative;
  max-height: 92vh;
  overflow-y: auto;
  margin: auto;
}

.is-div-23 {
  gap: 6px;
  justify-content: center;
  margin-bottom: 1.75rem;
}

.is-div-29 {
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.12em;
  color: #bf7fff;
}

.is-div-3 {
  background: rgba(5,20,35,0.98);
  border: 1px solid rgba(0,212,255,0.2);
  border-radius: 16px;
  padding: 2rem;
  width: 100%;
  max-width: 360px;
  position: relative;
}

.is-div-32 {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: #bf7fff;
}

.is-div-35 {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: #00ff9f;
}

.is-div-36 {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: #ff9f3f;
}

.is-div-37 {
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 24px;
}

.is-div-4 {
  justify-content: center;
  gap: 6px;
  margin-bottom: 1.25rem;
}

.is-auth-theme-toggle {
  position: absolute;
  bottom: 16px;
  right: 16px;
  display: flex;
  gap: 4px;
  background: rgba(0,212,255,0.04);
  border: 1px solid rgba(0,212,255,0.1);
  border-radius: 20px;
  padding: 3px;
}

.is-auth-theme-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 16px;
  border: none;
  background: transparent;
  color: #3a6a88;
  cursor: pointer;
  transition: background 0.18s, color 0.18s;
}

.is-auth-theme-btn:hover {
  color: var(--accent);
  background: rgba(0,212,255,0.08);
}

.is-auth-theme-btn.is-auth-theme-active {
  background: rgba(0,212,255,0.14);
  color: var(--accent);
  box-shadow: 0 0 8px rgba(0,212,255,0.2);
}

.is-div-40 {
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-bottom: 20px;
}

.is-div-41 {
  height: 36px;
  background: #050a12;
  border-radius: 6px;
  margin-bottom: 8px;
  border: 1px solid rgba(0,212,255,0.3);
  position: relative;
  overflow: hidden;
}

.is-div-42 {
  position: absolute;
  bottom: 4px;
  left: 4px;
  right: 4px;
  height: 2px;
  background: linear-gradient(90deg,#00d4ff,#bf7fff);
  border-radius: 1px;
}

.is-div-43 {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: #00d4ff;
}

.is-div-44 {
  height: 36px;
  background: #edf1f7;
  border-radius: 6px;
  margin-bottom: 8px;
  border: 1px solid rgba(0,119,170,0.3);
  position: relative;
  overflow: hidden;
}

.is-div-45 {
  position: absolute;
  bottom: 4px;
  left: 4px;
  right: 4px;
  height: 2px;
  background: #0077aa;
  border-radius: 1px;
}

.is-div-46 {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: #0077aa;
}

.is-div-47 {
  height: 36px;
  background: #0e0812;
  border-radius: 6px;
  margin-bottom: 8px;
  border: 1px solid rgba(255,93,177,0.3);
  position: relative;
  overflow: hidden;
}

.is-div-48 {
  position: absolute;
  bottom: 4px;
  left: 4px;
  right: 4px;
  height: 2px;
  background: linear-gradient(90deg,#ff5db1,#dd88ff);
  border-radius: 1px;
}

.is-div-49 {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: #ff5db1;
}

.is-div-5 {
  text-align: center;
  margin-bottom: 1.75rem;
}

.is-div-50 {
  height: 36px;
  background: #020d04;
  border-radius: 6px;
  margin-bottom: 8px;
  border: 1px solid rgba(0,232,68,0.3);
  position: relative;
  overflow: hidden;
}

.is-div-51 {
  position: absolute;
  bottom: 4px;
  left: 4px;
  right: 4px;
  height: 2px;
  background: #00e844;
  border-radius: 1px;
}

.is-div-52 {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: #00e844;
}

.is-div-53 {
  height: 36px;
  background: #000;
  border-radius: 6px;
  margin-bottom: 8px;
  border: 1px solid rgba(238,238,238,0.3);
  position: relative;
  overflow: hidden;
}

.is-div-54 {
  position: absolute;
  bottom: 4px;
  left: 4px;
  right: 4px;
  height: 2px;
  background: #eee;
  border-radius: 1px;
}

.is-div-55 {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: #eee;
}

.is-div-56 {
  height: 36px;
  background: #1a1a2e;
  border-radius: 6px;
  margin-bottom: 8px;
  border: 1px solid rgba(201,168,76,0.3);
  position: relative;
  overflow: hidden;
}

.is-div-57 {
  position: absolute;
  bottom: 4px;
  left: 4px;
  right: 4px;
  height: 2px;
  background: linear-gradient(90deg,#c9a84c,#7a8ec9);
  border-radius: 1px;
}

.is-div-58 {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: #c9a84c;
}

.is-div-58b {
  height: 36px;
  background: #fce8f4;
  border-radius: 6px;
  margin-bottom: 8px;
  border: 1px solid rgba(212,48,122,0.35);
  position: relative;
  overflow: hidden;
}

.is-div-58c {
  position: absolute;
  bottom: 4px;
  left: 4px;
  right: 4px;
  height: 2px;
  background: linear-gradient(90deg,#d4307a,#bf7fff);
  border-radius: 1px;
}

.is-div-58d {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: #d4307a;
}

.is-div-59 {
  font-size: 48px;
  margin-bottom: 16px;
}

.is-div-6 {
  align-items: center;
  gap: 8px;
  margin: 14px 0 10px;
}

.is-div-60 {
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.12em;
  color: #00d4ff;
  margin-bottom: 6px;
}

.is-div-61 {
  font-size: 13px;
  font-weight: 600;
  color: #ff8c00;
  letter-spacing: 0.08em;
  margin-bottom: 10px;
}

.is-div-62 {
  font-size: 12px;
  color: #4a7a99;
  line-height: 1.6;
  margin-bottom: 24px;
}

.is-div-65 {
  background: var(--overlay-bg);
  border: 1px solid rgba(0,212,255,0.2);
  border-radius: 16px;
  padding: 1.25rem 1.25rem 1rem;
  width: 100%;
  max-width: 420px;
  position: relative;
  margin: auto;
}

.is-div-66 {
  align-items: baseline;
  gap: 10px;
  margin-bottom: 1.1rem;
}

.is-div-67 {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  color: #00d4ff;
}

.is-div-70 {
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-bottom: 0.9rem;
}

.is-div-74 {
  gap: 5px;
  flex-wrap: wrap;
}

.is-div-75 {
  gap: 6px;
  flex-wrap: wrap;
}

.is-div-76 {
  gap: 6px;
}

.is-div-77 {
  align-items: center;
  gap: 7px;
}

.is-div-78 {
  border-top: 1px solid rgba(0,212,255,0.08);
  margin: 8px 0;
}

.is-div-79 {
  border-top: 1px solid rgba(0,212,255,0.08);
  margin-top: 12px;
  padding-top: 12px;
  flex-direction: column;
  gap: 7px;
}

.is-div-8 {
  text-align: right;
  margin-top: 6px;
  margin-bottom: 28px;
}

.is-div-80 {
  font-size: 11px;
  color: #ff4d6d;
  margin-bottom: 10px;
  line-height: 1.6;
}

.is-div-81 {
  background: var(--overlay-bg);
  border: 1px solid rgba(0,255,159,0.2);
  border-radius: 16px;
  padding: 1.75rem;
  width: 100%;
  max-width: 480px;
  position: relative;
  margin: auto;
}

.is-div-82 {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  color: #00ff9f;
  margin-bottom: 4px;
}

.is-div-83 {
  font-size: 10px;
  color: #4a7a99;
  letter-spacing: 0.06em;
  margin-bottom: 1rem;
}

.is-div-84 {
  gap: 6px;
  margin-bottom: 1rem;
}

.is-div-85 {
  gap: 8px;
  margin-bottom: 12px;
}

.is-div-86 {
  background: var(--overlay-bg);
  border: 1px solid rgba(0,255,159,0.25);
  border-radius: 16px;
  padding: 1.75rem;
  width: 100%;
  max-width: 400px;
  position: relative;
  margin: auto;
}

.is-div-88 {
  font-size: 12px;
  color: var(--text);
  line-height: 1.8;
  flex-direction: column;
  gap: 12px;
}

.is-div-89 {
  background: rgba(0,255,159,0.05);
  border: 1px solid rgba(0,255,159,0.15);
  border-radius: 10px;
  padding: 10px 14px;
}

.is-div-9 {
  font-size: 36px;
  margin-bottom: 16px;
}

.is-div-90 {
  font-size: 11px;
  color: #4a7a99;
  line-height: 1.6;
}

.is-div-91 {
  background: var(--overlay-bg);
  border: 1px solid rgba(0,255,159,0.25);
  border-radius: 16px;
  padding: 1.75rem;
  width: 100%;
  max-width: 480px;
  position: relative;
  margin: auto;
}

.is-div-92 {
  font-size: 12px;
  color: var(--text);
  line-height: 1.8;
  flex-direction: column;
  gap: 10px;
}

.is-div-93 {
  background: rgba(0,255,159,0.05);
  border: 1px solid rgba(0,255,159,0.15);
  border-radius: 10px;
  padding: 10px 14px;
  margin-top: 4px;
}

.is-div-94 {
  font-size: 10px;
  letter-spacing: 0.12em;
  color: #4a7a99;
  margin-bottom: 6px;
}

.is-div-95 {
  gap: 16px;
}

.is-div-96 {
  background: #0d1929;
  border: 1px solid rgba(0,212,255,0.3);
  border-radius: 14px;
  padding: 28px 26px 22px;
  max-width: 330px;
  width: 90%;
  text-align: center;
  box-shadow: 0 8px 40px rgba(0,0,0,0.8);
}

.is-div-97 {
  font-size: 13px;
  font-weight: 700;
  color: #e0f0ff;
  margin-bottom: 10px;
  letter-spacing: 0.06em;
}

.is-div-98 {
  font-size: 12px;
  color: #a0c0d0;
  line-height: 1.7;
  margin-bottom: 22px;
}

.is-div-99 {
  gap: 10px;
}

.is-donutexpandbox {
  background: rgba(5,20,35,0.98);
  border: 1px solid rgba(0,212,255,0.2);
  border-radius: 16px;
  padding: 1.5rem;
  width: 100%;
  max-width: 560px;
  position: relative;
  max-height: 92vh;
  overflow-y: auto;
}

.is-donutexpandoverlay {
  position: fixed;
  inset: 0;
  background: rgba(5,10,18,0.9);
  z-index: 200;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
}

.is-donutexpandsvg {
  max-height: 380px;
}

.is-donutexpandtitle {
  font-size: 11px;
  letter-spacing: 0.15em;
  color: #4a7a99;
  margin-bottom: 14px;
}

.is-dot {
  background: #00ff9f;
  color: #00ff9f;
}

.is-dot-2 {
  background: #ff4d6d;
  color: #ff4d6d;
}

.is-dot-3 {
  background: var(--income);
  color: var(--income);
}

.is-dot-4 {
  background: #bf7fff;
  color: #bf7fff;
}

.is-ext-two-col {
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-bottom: 20px;
}

.is-extmodal {
  position: fixed;
  inset: 0;
  background: rgba(5,10,18,0.92);
  z-index: 500;
  flex-direction: column;
  align-items: center;
  overflow-y: auto;
  padding: 1.25rem;
}

.is-footer {
  text-align: center;
  padding: 20px;
  margin-top: 10px;
  border-top: 1px solid rgba(255,255,255,0.05);
  font-size: 10px;
  color: #4a7a99;
  justify-content: center;
  gap: 20px;
  flex-wrap: wrap;
}

.is-forgotpassbtn {
  background: none;
  border: none;
  color: #4a7a99;
  font-size: 11px;
  cursor: pointer;
  letter-spacing: 0.05em;
  text-decoration: underline;
}

.is-gateprompt {
  position: fixed;
  inset: 0;
  background: rgba(5,10,18,0.88);
  z-index: 99;
  align-items: center;
  justify-content: center;
  padding: 1.25rem;
}

.is-gatetext {
  font-size: 12px;
  color: var(--muted);
  line-height: 1.7;
  margin-bottom: 20px;
}

.is-gatetitle {
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: var(--accent);
  margin-bottom: 8px;
}

.is-guestlangbtn {
  font-size: 10px;
  letter-spacing: 0.06em;
}

.is-h2 {
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.15em;
  color: #00d4ff;
  text-shadow: 0 0 20px rgba(0,212,255,0.5);
}

.is-h2-2 {
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.15em;
  color: #bf7fff;
  text-shadow: 0 0 20px rgba(191,127,255,0.4);
}

.is-horizonte {
  cursor: pointer;
}

.is-inflacion {
  color: #ff9f3f;
  width: 46px;
  font-family: 'Space Grotesk',sans-serif;
}

.is-label-3 {
  flex: 1;
  align-items: center;
  justify-content: center;
  gap: 6px;
  background: rgba(0,212,255,0.06);
  border: 1px solid rgba(0,212,255,0.2);
  border-radius: 8px;
  color: #00d4ff;
  font-size: 11px;
  font-weight: 600;
  padding: 8px 6px;
  cursor: pointer;
  letter-spacing: 0.08em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-legend-line {
  background: linear-gradient(90deg,#00d4ff,#bf7fff);
}

.is-legend-line-2 {
  background: #ff9f3f;
}

.is-legendcartera {
  width: 100%;
  margin-top: 8px;
}

.is-logoutbtn {
  background: none;
  border: 1px solid rgba(255,77,109,0.25);
  border-radius: 50%;
  width: 32px;
  height: 32px;
  color: #4a7a99;
  font-size: 17px;
  cursor: pointer;
  line-height: 1;
  padding: 0;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  transition: all 0.2s;
}

.is-logoutconfirmmodal {
  position: fixed;
  inset: 0;
  z-index: 10002;
  background: rgba(0,0,0,0.72);
  align-items: center;
  justify-content: center;
}

.is-metric {
  --ac: #00ff9f;
}

.is-metric-2 {
  --ac: #ff4d6d;
}

.is-metric-3 {
  --ac: #00d4ff;
}

.is-metricgastos {
  color: #ff4d6d;
  text-shadow: 0 0 16px #ff4d6d88;
}

.is-metricingresos {
  color: #00ff9f;
  text-shadow: 0 0 16px #00ff9f88;
}

.is-ob-ai-chatgpt {
  cursor: pointer;
  border: 2px solid rgba(0,255,159,0.2);
  border-radius: 12px;
  background: rgba(0,255,159,0.04);
  padding: 14px 16px;
  align-items: center;
  gap: 12px;
  transition: all 0.2s;
}

.is-ob-ai-claude {
  cursor: pointer;
  border: 2px solid rgba(180,180,200,0.45);
  border-radius: 12px;
  background: rgba(191,127,255,0.04);
  padding: 14px 16px;
  align-items: center;
  gap: 12px;
  transition: all 0.2s;
}

.is-ob-ai-perplexity {
  cursor: pointer;
  border: 2px solid rgba(180,180,200,0.45);
  border-radius: 12px;
  background: rgba(255,159,63,0.04);
  padding: 14px 16px;
  align-items: center;
  gap: 12px;
  transition: all 0.2s;
}

.is-ob-cur-eur {
  cursor: pointer;
  border: 2px solid rgba(0,212,255,0.4);
  border-radius: 12px;
  background: rgba(0,212,255,0.1);
  padding: 20px 12px;
  text-align: center;
  color: #00d4ff;
  transition: all 0.2s;
}

.is-ob-cur-usd {
  cursor: pointer;
  border: 2px solid rgba(255,255,255,0.1);
  border-radius: 12px;
  background: rgba(255,255,255,0.03);
  padding: 20px 12px;
  text-align: center;
  color: #4a7a99;
  transition: all 0.2s;
}

.is-ob-edad {
  width: 100%;
  margin-bottom: 20px;
}

.is-ob-err-6 {
  font-size: 11px;
  color: #ff4d6d;
  min-height: 16px;
  margin-bottom: 8px;
}

.is-ob-nombre {
  width: 100%;
  margin-bottom: 14px;
}

.is-ob-step-6 {
  text-align: center;
}

.is-ob-th-cyber {
  --th: #00d4ff;
}

.is-ob-th-green {
  --th: #00e844;
}

.is-ob-th-light {
  --th: #0077aa;
}

.is-ob-th-negative {
  --th: #eeeeee;
}

.is-ob-th-pink {
  --th: #ff5db1;
}

.is-ob-th-lpink {
  --th: #d4307a;
}

.is-ob-th-pro {
  --th: #c9a84c;
}

.is-ob-verify-btn {
  width: 100%;
  background: rgba(0,255,159,0.12);
  border: 1px solid rgba(0,255,159,0.4);
  border-radius: 8px;
  color: #00ff9f;
  font-size: 13px;
  font-weight: 600;
  padding: 11px;
  cursor: pointer;
  letter-spacing: 0.1em;
  font-family: 'Space Grotesk',sans-serif;
  margin-bottom: 10px;
}

.is-ob-verify-resend-ok {
  font-size: 11px;
  color: #00ff9f;
  margin-top: 6px;
}

.is-onboardingoverlay {
  position: fixed;
  inset: 0;
  background: #050a12;
  z-index: 101;
  align-items: center;
  justify-content: center;
  padding: 1.25rem;
  overflow-y: auto;
}

.is-p {
  font-size: 10px;
  color: #4a7a99;
  letter-spacing: 0.1em;
  margin-top: 4px;
}

.is-p-10 {
  font-size: 13px;
  color: var(--text);
  line-height: 1.75;
  margin-bottom: 1.25rem;
}

.is-p-2 {
  font-size: 13px;
  font-weight: 600;
  color: #00d4ff;
  letter-spacing: 0.1em;
  margin-bottom: 10px;
}

.is-p-3 {
  font-size: 12px;
  color: #a0c0d0;
  margin-bottom: 6px;
}

.is-p-4 {
  font-size: 11px;
  color: #4a7a99;
  margin-bottom: 12px;
}

.is-p-5 {
  font-size: 12px;
  font-weight: 700;
  color: #c9a84c;
  letter-spacing: 0.06em;
  margin-bottom: 20px;
  border: 1px solid rgba(201,168,76,0.3);
  border-radius: 8px;
  padding: 8px 12px;
  background: rgba(201,168,76,0.07);
}

.is-p-6 {
  font-size: 11px;
  letter-spacing: 0.06em;
  margin-top: 10px;
  line-height: 1.9;
  color: #4a7a99;
  background: rgba(0,255,159,0.04);
  border: 1px solid rgba(0,255,159,0.12);
  border-radius: 10px;
  padding: 12px 14px;
  text-align: left;
}

.is-p-7 {
  font-size: 10px;
  color: #4a7a99;
  text-align: center;
  margin-top: 12px;
  letter-spacing: 0.05em;
}

.is-p-8 {
  font-size: 9px;
  color: #2a4a5a;
  margin-top: 10px;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

.is-p-9 {
  font-size: 9px;
  color: #2a4a5a;
  margin-top: 12px;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

.is-patdonutsvg {
  max-height: 240px;
}

.is-patdonutwrap {
  margin-top: 12px;
  padding: 0 8px 8px;
}

.is-patrentamt {
  font-size: 13px;
  font-weight: 600;
  color: var(--income);
}

.is-patrentpct {
  font-size: 20px;
  font-weight: 700;
  color: var(--accent);
}

.is-patrimoniototal {
  font-size: 28px;
  font-weight: 700;
  color: var(--income);
  letter-spacing: -0.01em;
}

.is-paypalcontainer {
  min-height: 50px;
}

.is-pctinvertido {
  color: #00ff9f;
  width: 42px;
  font-family: 'Space Grotesk',sans-serif;
}

.is-planvida {
  border: 1px solid rgba(201,168,76,0.2);
  border-radius: 12px;
  padding: 1rem 1.25rem;
  cursor: pointer;
  transition: all 0.2s;
  position: relative;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 1.5rem;
  background: rgba(201,168,76,0.04);
}

.is-preciolifetime {
  font-size: 30px;
  font-weight: 700;
  color: #c9a84c;
  line-height: 1;
}

.is-preciolifetimeorig {
  font-size: 9px;
  color: #a08030;
  margin-top: 3px;
  letter-spacing: 0.05em;
  text-decoration: none;
}

.is-pricemodebtn {
  margin-left: 8px;
  background: rgba(0,212,255,0.07);
  border: 1px solid rgba(0,212,255,0.25);
  border-radius: 8px;
  padding: 4px 9px;
  cursor: pointer;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #00d4ff;
  transition: all 0.2s;
  flex-shrink: 0;
}

.is-prof-ai-btn {
  flex: 1;
  min-width: 60px;
  background: rgba(191,127,255,0.06);
  border: 1px solid rgba(191,127,255,0.2);
  border-radius: 7px;
  color: #4a7a99;
  font-size: 9px;
  font-weight: 600;
  padding: 7px 4px;
  cursor: pointer;
  letter-spacing: 0.04em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-prof-ai-btn-2 {
  flex: 1;
  min-width: 60px;
  background: rgba(0,255,159,0.06);
  border: 1px solid rgba(0,255,159,0.2);
  border-radius: 7px;
  color: #4a7a99;
  font-size: 9px;
  font-weight: 600;
  padding: 7px 4px;
  cursor: pointer;
  letter-spacing: 0.04em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-prof-ai-btn-3 {
  flex: 1;
  min-width: 60px;
  background: rgba(255,159,63,0.06);
  border: 1px solid rgba(255,159,63,0.2);
  border-radius: 7px;
  color: #4a7a99;
  font-size: 9px;
  font-weight: 600;
  padding: 7px 4px;
  cursor: pointer;
  letter-spacing: 0.04em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-prof-backup-msg {
  font-size: 11px;
  min-height: 14px;
  margin-top: 7px;
  text-align: center;
}

.is-prof-cur-btn {
  background: rgba(0,212,255,0.04);
  border: 1px solid rgba(0,212,255,0.2);
  border-radius: 7px;
  color: #4a7a99;
  font-size: 11px;
  font-weight: 600;
  padding: 7px 4px;
  cursor: pointer;
  letter-spacing: 0.06em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-prof-cur-btn-2 {
  background: rgba(0,255,159,0.04);
  border: 1px solid rgba(0,255,159,0.2);
  border-radius: 7px;
  color: #4a7a99;
  font-size: 11px;
  font-weight: 600;
  padding: 7px 4px;
  cursor: pointer;
  letter-spacing: 0.06em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-prof-delete-confirm {
  background: rgba(255,77,109,0.04);
  border: 1px solid rgba(255,77,109,0.15);
  border-radius: 10px;
  padding: 14px;
}

.is-prof-delete-text {
  width: 100%;
  margin-bottom: 8px;
  border-color: rgba(255,77,109,0.3);
}

.is-prof-err {
  font-size: 11px;
  color: #ff4d6d;
  min-height: 0;
  margin-bottom: 4px;
  text-align: center;
}

.is-prof-inv-ambicioso {
  background: none;
  border: 1px solid rgba(191,127,255,0.2);
  border-radius: 7px;
  color: #4a7a99;
  font-size: 9px;
  font-weight: 600;
  padding: 7px 4px;
  cursor: pointer;
  letter-spacing: 0.04em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-prof-inv-conservador {
  background: none;
  border: 1px solid rgba(0,212,255,0.2);
  border-radius: 7px;
  color: #4a7a99;
  font-size: 9px;
  font-weight: 600;
  padding: 7px 4px;
  cursor: pointer;
  letter-spacing: 0.04em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-prof-inv-moderado {
  background: none;
  border: 1px solid rgba(0,255,159,0.2);
  border-radius: 7px;
  color: #4a7a99;
  font-size: 9px;
  font-weight: 600;
  padding: 7px 4px;
  cursor: pointer;
  letter-spacing: 0.04em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-prof-ok {
  font-size: 11px;
  color: #00ff9f;
  min-height: 0;
  margin-bottom: 6px;
  text-align: center;
}

.is-prof-pass-area {
  border-top: 1px solid rgba(0,212,255,0.08);
  padding-top: 10px;
  flex-direction: column;
  gap: 6px;
}

.is-prof-pass-nueva {
  width: 100%;
  margin-bottom: 12px;
}

.is-prof-pass-ok {
  font-size: 11px;
  color: #00ff9f;
  min-height: 14px;
  margin-bottom: 8px;
  text-align: center;
}

.is-prof-pass-section {
  background: rgba(0,212,255,0.03);
  border: 1px solid rgba(0,212,255,0.1);
  border-radius: 10px;
  padding: 14px;
}

.is-prof-th-cyber {
  flex: 1;
  min-width: 52px;
  background: rgba(0,212,255,0.06);
  border: 1px solid rgba(0,212,255,0.2);
  border-radius: 7px;
  color: #00d4ff;
  font-size: 9px;
  font-weight: 600;
  padding: 6px 2px;
  cursor: pointer;
  letter-spacing: 0.04em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-prof-th-green {
  flex: 1;
  min-width: 52px;
  background: rgba(0,232,68,0.06);
  border: 1px solid rgba(0,232,68,0.2);
  border-radius: 7px;
  color: #00e844;
  font-size: 9px;
  font-weight: 600;
  padding: 6px 2px;
  cursor: pointer;
  letter-spacing: 0.04em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-prof-th-light {
  flex: 1;
  min-width: 52px;
  background: rgba(0,119,170,0.06);
  border: 1px solid rgba(0,119,170,0.2);
  border-radius: 7px;
  color: #0077aa;
  font-size: 9px;
  font-weight: 600;
  padding: 6px 2px;
  cursor: pointer;
  letter-spacing: 0.04em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-prof-th-negative {
  flex: 1;
  min-width: 52px;
  background: rgba(238,238,238,0.06);
  border: 1px solid rgba(238,238,238,0.2);
  border-radius: 7px;
  color: #ccc;
  font-size: 9px;
  font-weight: 600;
  padding: 6px 2px;
  cursor: pointer;
  letter-spacing: 0.04em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-prof-th-pink {
  flex: 1;
  min-width: 52px;
  background: rgba(255,93,177,0.06);
  border: 1px solid rgba(255,93,177,0.2);
  border-radius: 7px;
  color: #ff5db1;
  font-size: 9px;
  font-weight: 600;
  padding: 6px 2px;
  cursor: pointer;
  letter-spacing: 0.04em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-prof-th-pro {
  flex: 1;
  min-width: 52px;
  background: rgba(201,168,76,0.06);
  border: 1px solid rgba(201,168,76,0.2);
  border-radius: 7px;
  color: #c9a84c;
  font-size: 9px;
  font-weight: 600;
  padding: 6px 2px;
  cursor: pointer;
  letter-spacing: 0.04em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-prof-th-lpink {
  flex: 1;
  min-width: 52px;
  background: rgba(212,48,122,0.07);
  border: 1px solid rgba(212,48,122,0.25);
  border-radius: 7px;
  color: #d4307a;
  font-size: 9px;
  font-weight: 600;
  padding: 6px 2px;
  cursor: pointer;
  letter-spacing: 0.04em;
  font-family: 'Space Grotesk',sans-serif;
  transition: all 0.2s;
}

.is-profchangepassbtn {
  background: none;
  border: 1px solid rgba(0,212,255,0.15);
  border-radius: 8px;
  color: var(--muted);
  font-size: 10px;
  font-weight: 600;
  padding: 8px 14px;
  cursor: pointer;
  letter-spacing: 0.1em;
  font-family: 'Space Grotesk',sans-serif;
  text-align: left;
  transition: all 0.2s;
  width: 100%;
}

.is-profilemodal {
  position: fixed;
  inset: 0;
  background: rgba(5,10,18,0.88);
  z-index: 300;
  flex-direction: column;
  align-items: center;
  overflow-y: auto;
  padding: 1rem;
}

.is-profresetok {
  font-size: 11px;
  color: #00ff9f;
  letter-spacing: 0.05em;
}

.is-profresetpassbtn {
  background: none;
  border: none;
  color: #4a7a99;
  font-size: 10px;
  cursor: pointer;
  letter-spacing: 0.08em;
  font-family: 'Space Grotesk',sans-serif;
  padding: 4px 0;
  text-align: left;
  text-decoration: underline;
}

.is-profuidlabel {
  font-size: 9px;
  color: #3a5a6a;
  letter-spacing: 0.04em;
  user-select: all;
}

.is-projinfomodal {
  position: fixed;
  inset: 0;
  background: rgba(5,10,18,0.85);
  z-index: 300;
  flex-direction: column;
  align-items: center;
  overflow-y: auto;
  padding: 1.25rem;
}

.is-projnote {
  font-size: 11px;
  margin-top: 12px;
  letter-spacing: 0.06em;
}

.is-rent-patrimonio {
  align-items: center;
  gap: 10px;
  padding: 8px 12px 4px;
  border-top: 1px solid rgba(255,255,255,0.05);
  margin-top: 4px;
}

.is-rentnueva {
  color: #00ff9f;
  width: 46px;
  font-family: 'Space Grotesk',sans-serif;
}

.is-savestatus {
  font-size: 10px;
  letter-spacing: 0.1em;
}

.is-span {
  font-size: 10px;
  color: #4a7a99;
  letter-spacing: 0.1em;
}

.is-span-10 {
  color: #00ff9f;
}

.is-span-12 {
  font-size: 10px;
  letter-spacing: 0.1em;
  color: var(--muted);
  flex-shrink: 0;
}

.is-span-13 {
  font-size: 11px;
  color: var(--muted);
}

.is-span-14 {
  font-size: 10px;
  color: #a06030;
}

.is-span-20 {
  color: #4a7a99;
  font-weight: 600;
}

.is-span-21 {
  color: #ff9f3f;
  font-weight: 600;
}

.is-span-22 {
  color: #ff4d6d;
  font-weight: 600;
}

.is-span-25 {
  color: #00d4ff;
  font-weight: 600;
  font-size: 12px;
}

.is-span-27 {
  color: #4a7a99;
  border: 1px solid #4a7a9944;
  border-radius: 3px;
  padding: 0 3px;
}

.is-span-28 {
  color: #ffb347;
  border: 1px solid #ffb34744;
  border-radius: 3px;
  padding: 0 3px;
}

.is-span-29 {
  color: #a0c0d0;
  font-weight: 600;
  font-size: 12px;
}

.is-span-3 {
  font-size: 13px;
  font-weight: 600;
  color: #00d4ff;
  letter-spacing: 0.06em;
}

.is-span-30 {
  color: #a0c0d0;
}

.is-span-31 {
  font-size: 10px;
  letter-spacing: 0.15em;
  color: #bf7fff;
  font-weight: 700;
}

.is-span-32 {
  font-size: 11px;
  color: #a0c0d0;
  flex: 1;
  min-width: 200px;
}

.is-span-33 {
  letter-spacing: 0.06em;
}

.is-span-4 {
  font-size: 9px;
  background: rgba(0,212,255,0.12);
  border: 1px solid rgba(0,212,255,0.25);
  border-radius: 4px;
  padding: 2px 7px;
  color: #00d4ff;
  letter-spacing: 0.08em;
}

.is-span-5 {
  font-size: 13px;
  font-weight: 600;
  color: #00ff9f;
  letter-spacing: 0.06em;
}

.is-span-6 {
  font-size: 9px;
  background: rgba(0,255,159,0.12);
  border: 1px solid rgba(0,255,159,0.25);
  border-radius: 4px;
  padding: 2px 7px;
  color: #00ff9f;
  letter-spacing: 0.08em;
}

.is-span-7 {
  font-size: 13px;
  font-weight: 600;
  color: #bf7fff;
  letter-spacing: 0.06em;
}

.is-span-8 {
  font-size: 9px;
  background: rgba(191,127,255,0.12);
  border: 1px solid rgba(191,127,255,0.25);
  border-radius: 4px;
  padding: 2px 7px;
  color: #bf7fff;
  letter-spacing: 0.08em;
}

.is-subscribemodal {
  position: fixed;
  inset: 0;
  background: rgba(5,10,18,0.85);
  z-index: 99;
  flex-direction: column;
  align-items: center;
  overflow-y: auto;
  padding: 1.25rem;
}

.is-svg {
  vertical-align: -1px;
  margin-right: 6px;
}

.is-theme-dot {
  background: #00d4ff;
}

.is-theme-dot-2 {
  background: #0077aa;
}

.is-theme-dot-3 {
  background: #ff5db1;
}

.is-theme-dot-4 {
  background: #00e844;
}

.is-theme-dot-5 {
  background: #eeeeee;
  border: 1px solid #555;
}

.is-theme-dot-7 {
  background: #d4307a;
}

.is-theme-dot-6 {
  background: #c9a84c;
}

.is-tickersearchresults {
  flex-direction: column;
  gap: 6px;
  max-height: 300px;
  overflow-y: auto;
}

.is-tickersearchstatus {
  font-size: 11px;
  color: #4a7a99;
  min-height: 14px;
  margin-bottom: 8px;
  text-align: center;
}

.is-tscatacciones {
  background: rgba(0,255,159,0.15);
  border: 1px solid rgba(0,255,159,0.4);
  border-radius: 20px;
  color: #00ff9f;
  font-size: 10px;
  font-weight: 600;
  padding: 4px 12px;
  cursor: pointer;
  font-family: 'Space Grotesk',sans-serif;
  letter-spacing: 0.08em;
  transition: all 0.15s;
}

.is-useremailbtn {
  font-size: 10px;
  max-width: 160px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* ── WELCOME OVERLAY ─────────────────────────────────────────────────────────── */
.is-welcomeoverlay {
  position: fixed;
  inset: 0;
  background: #050a12;
  z-index: 99;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
  overflow-y: auto;
}

.is-welcome-inner {
  width: 100%;
  max-width: 520px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 2.5rem 2rem;
  background: rgba(0,212,255,0.03);
  border: 1px solid rgba(0,212,255,0.12);
  border-radius: 20px;
  backdrop-filter: blur(12px);
  margin: auto;
}

.is-welcome-logo-wrap {
  display: flex;
  align-items: baseline;
  gap: 10px;
  margin-bottom: 0.6rem;
}

.is-welcome-logo {
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  background: linear-gradient(135deg, #00d4ff 0%, #00ff9f 55%, #bf7fff 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  filter: drop-shadow(0 0 24px rgba(0,212,255,0.35));
}

.is-welcome-version {
  font-size: 10px;
  font-weight: 700;
  color: #4a7a99;
  letter-spacing: 0.15em;
  border: 1px solid rgba(0,212,255,0.2);
  border-radius: 4px;
  padding: 2px 7px;
}

.is-welcome-tagline {
  font-size: 11px;
  font-weight: 700;
  color: #e0f0ff;
  letter-spacing: 0.18em;
  margin-bottom: 0.8rem;
}

.is-welcome-desc {
  font-size: 13px;
  color: #4a7a99;
  line-height: 1.65;
  margin: 0 0 2rem;
  max-width: 380px;
}

.is-welcome-features {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  width: 100%;
  margin-bottom: 2rem;
}

.is-welcome-feat {
  background: rgba(0,212,255,0.04);
  border: 1px solid rgba(0,212,255,0.1);
  border-radius: 12px;
  padding: 16px 14px;
  text-align: left;
  transition: background 0.2s, border-color 0.2s, transform 0.2s;
  cursor: default;
}

.is-welcome-feat:hover {
  background: rgba(0,212,255,0.08);
  border-color: rgba(0,212,255,0.28);
  transform: translateY(-2px);
}

.is-welcome-feat-icon {
  font-size: 1.35rem;
  margin-bottom: 9px;
  color: #00d4ff;
  line-height: 1;
  filter: drop-shadow(0 0 8px rgba(0,212,255,0.55));
}

.is-welcome-feat-title {
  font-size: 10px;
  font-weight: 700;
  color: #00d4ff;
  letter-spacing: 0.1em;
  margin-bottom: 5px;
}

.is-welcome-feat-desc {
  font-size: 11px;
  color: #5a8aaa;
  line-height: 1.55;
}

.is-welcome-btn-primary {
  width: 100%;
  background: rgba(0,255,159,0.12);
  border: 1px solid rgba(0,255,159,0.4);
  border-radius: 10px;
  color: #00ff9f;
  font-size: 13px;
  font-weight: 700;
  padding: 14px;
  cursor: pointer;
  letter-spacing: 0.1em;
  font-family: 'Space Grotesk', sans-serif;
  transition: background 0.2s, box-shadow 0.2s;
  box-shadow: 0 0 24px rgba(0,255,159,0.08);
  margin-bottom: 10px;
}

.is-welcome-btn-primary:hover {
  background: rgba(0,255,159,0.22);
  box-shadow: 0 0 36px rgba(0,255,159,0.22);
}

.is-welcome-btn-secondary {
  width: 100%;
  background: transparent;
  border: 1px solid rgba(0,212,255,0.2);
  border-radius: 10px;
  color: #00d4ff;
  font-size: 13px;
  font-weight: 700;
  padding: 12px;
  cursor: pointer;
  letter-spacing: 0.08em;
  font-family: 'Space Grotesk', sans-serif;
  transition: background 0.2s, border-color 0.2s;
  margin-bottom: 0;
}

.is-welcome-btn-secondary:hover {
  background: rgba(0,212,255,0.08);
  border-color: rgba(0,212,255,0.4);
}

.is-welcome-btn-explore {
  width: 100%;
  background: rgba(191,127,255,0.12);
  border: 1px solid rgba(191,127,255,0.45);
  border-radius: 10px;
  color: #bf7fff;
  font-size: 13px;
  font-weight: 700;
  padding: 14px;
  cursor: pointer;
  letter-spacing: 0.1em;
  font-family: 'Space Grotesk', sans-serif;
  transition: background 0.2s, box-shadow 0.2s;
  box-shadow: 0 0 24px rgba(191,127,255,0.12);
  margin-bottom: 10px;
}

.is-welcome-btn-explore:hover {
  background: rgba(191,127,255,0.22);
  box-shadow: 0 0 36px rgba(191,127,255,0.28);
}

.is-welcome-btn-ghost {
  background: none;
  border: none;
  color: #3a6a88;
  font-size: 11px;
  cursor: pointer;
  letter-spacing: 0.06em;
  font-family: 'Space Grotesk', sans-serif;
  transition: color 0.2s;
  padding: 4px 8px;
}

.is-welcome-btn-ghost:hover {
  color: #6a9ab8;
}

.is-welcome-trust {
  width: 100%;
  margin-top: 20px;
}

.is-welcome-trust-line {
  height: 1px;
  background: linear-gradient(to right, transparent, rgba(0,212,255,0.12), transparent);
  margin-bottom: 14px;
}

.is-welcome-trust-body {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  color: #3a5a72;
  font-size: 10px;
  letter-spacing: 0.08em;
}

.is-welcome-trust-body svg:first-child {
  color: #3a5a72;
  flex-shrink: 0;
}

.is-welcome-google-g {
  flex-shrink: 0;
  opacity: 0.75;
}

.is-welcome-trust-brand {
  font-weight: 700;
  color: #4a7a99;
  letter-spacing: 0.06em;
}

@media (max-width: 500px) {
  .is-welcome-features { grid-template-columns: 1fr; }
  .is-welcome-logo { font-size: 1.9rem; }
  .is-welcome-inner { padding: 2rem 1.25rem; }
}
