html,body,#root{height:100%}:root{--bg:#0f1115;--panel:#161a21;--border:#262c36;--text:#e6e9ef;--muted:#8791a3;--good:#3ecf8e;--warn:#e0b93d;--bad:#e35d5d;--accent:#4c8dff;--panel-2:#1b2029;--border-strong:#3a4250;--warn-soft:#e0b93d24;--good-soft:#3ecf8e24}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:-apple-system,Segoe UI,Roboto,sans-serif}.app{max-width:1400px;margin:0 auto;padding:16px 12px 48px}@media (width>=640px){.app{padding:24px 16px 64px}}.app__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.app__header h1{margin:0;font-size:18px}@media (width>=640px){.app__header h1{font-size:20px}}.app__header-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.app__as-of{color:var(--muted);font-size:13px}.date-picker{background:var(--panel);color:var(--text);border:1px solid var(--border);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:6px;padding:7px 10px;font-size:13px}button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:13px}button:disabled{opacity:.6;cursor:default}.app__main{grid-template-columns:1fr;align-items:start;gap:16px;display:grid}@media (width>=900px){.app__main{grid-template-columns:minmax(0,1fr) 420px;gap:20px}}@media (width>=1400px){.app{max-width:1560px}.app__main{grid-template-columns:minmax(0,1fr) 600px}}.app__table,.app__detail{background:var(--panel);border:1px solid var(--border);border-radius:10px;overflow:hidden}.app__table-scroll{overflow-x:auto}.table-filters{border-bottom:1px solid var(--border);color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 14px;padding:10px 12px;font-size:12px;display:flex}.table-filters__field{align-items:center;gap:6px;display:inline-flex}.table-filters__field select{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;max-width:200px;padding:5px 8px;font-size:12px}.table-filters__search{align-items:center;gap:6px;margin-left:auto;display:inline-flex}.table-filters__search input{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;width:130px;padding:5px 8px;font-size:12px}.table-filters__search button{background:var(--bg);color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:6px;padding:5px 10px;font-size:12px}.table-filters__search button:disabled{opacity:.6;cursor:default}.table-filters__search-error{color:var(--bad);order:1;width:100%}.table-filters__count{white-space:nowrap}.app__detail{padding:16px}@media (width>=900px){.app__detail{padding:20px;position:sticky;top:20px}}.empty,.error{color:var(--muted);padding:20px}.error{color:var(--bad)}.opportunities-table{border-collapse:collapse;width:100%;min-width:640px;font-size:13px}.opportunities-table th{text-align:left;color:var(--muted);text-transform:uppercase;border-bottom:1px solid var(--border);padding:12px 14px;font-size:12px;font-weight:500}.opportunities-table td{border-bottom:1px solid var(--border);padding:10px 8px}.opportunities-table th{padding-left:8px;padding-right:8px}.opportunities-table td.num{white-space:nowrap;text-align:right}.opportunities-table th.num{text-align:right}.opportunities-table tbody tr{cursor:pointer}.opportunities-table tbody tr:hover{background:#1c212b}.opportunities-table tr.is-selected{background:#1a2636}.mono{font-family:SF Mono,Consolas,monospace;font-weight:600}.positive{color:var(--good)}.negative{color:var(--bad)}.score-cell{white-space:nowrap;font-weight:700}.score-cell.is-provisional{color:var(--muted);font-weight:600}.score-cell.is-provisional span{color:var(--warn)}.badge{color:var(--good);font-size:13px}.badge--search{color:var(--muted)}.search-result-note{color:var(--muted);background:var(--panel-2);border:1px solid var(--border);border-radius:8px;margin-bottom:16px;padding:8px 12px;font-size:12px}.remove-search-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:13px;line-height:1}.remove-search-btn:hover{color:var(--bad)}.detail__chart{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.price-chart__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.price-chart__tabs{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:2px;display:flex}.price-chart__tab{color:var(--muted);background:0 0;border-radius:4px;padding:5px 10px;font-size:12px}.price-chart__tab.is-active{background:var(--accent);color:#fff}.price-chart__readout{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:8px;font-size:12px;display:flex}.price-chart__readout strong{color:var(--text);font-size:15px}.price-chart__frame{position:relative}.price-chart__canvas{height:260px}@media (width>=900px){.price-chart__canvas{height:240px}}.price-chart__overlay{color:var(--muted);pointer-events:none;justify-content:center;align-items:center;margin:0;font-size:13px;display:flex;position:absolute;inset:0}.price-chart__hint{color:var(--muted);margin:6px 0 0;font-size:11px}.compare{flex-direction:column;gap:8px;display:flex}.compare__controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.compare__pick{align-items:center;display:inline-flex}.compare__pick select{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:5px 8px;font-size:12px}.compare__vs{color:var(--muted);font-size:12px}.compare__view{margin-left:auto}.compare__swatch{border-radius:2px;flex:none;width:10px;height:10px;margin-right:6px;display:inline-block}.compare__readout{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:6px 16px;font-size:12px;display:flex}.compare__readout-item{align-items:baseline;gap:6px;display:inline-flex}.compare__readout-item strong{color:var(--text);font-size:14px}.compare__message{color:var(--muted);text-align:center;margin:0;padding:48px 0;font-size:13px}.detail__fundamentals{border-top:1px solid var(--border);flex-direction:column;gap:10px;margin-top:20px;padding-top:16px;display:flex}.detail__fundamentals>h3{text-transform:uppercase;color:var(--muted);margin:0;font-size:12px}.detail__fundamentals>button{align-self:flex-start}.detail__fundamentals h4{margin:8px 0 0;font-size:13px}.fundamentals__status{color:var(--warn);margin:0;font-size:12px}.fundamentals__status--error{color:var(--bad)}.fundamentals__description{color:var(--muted);margin:8px 0 0;font-size:12px;line-height:1.5}.fundamentals__profile a{color:var(--accent);font-weight:600;text-decoration:none}.profile-facts{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.profile-facts li{justify-content:space-between;gap:12px;font-size:13px;display:flex}.profile-facts li>:last-child{text-align:right;overflow-wrap:anywhere;font-weight:600}.link-button{color:var(--accent);font-size:inherit;background:0 0;padding:0}.eval-card{background:var(--panel-2);border:1px solid var(--border);border-radius:10px;overflow:hidden;container-type:inline-size}.eval-card__strip{color:var(--muted);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding:8px 16px;font-size:12px;display:flex}.eval-card__header{justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 16px 0;display:flex}.eval-card__header h2{margin:0;font-size:22px}.eval-card__name{color:var(--muted);font-size:14px;font-weight:400}.eval-card__sector{color:var(--muted);margin:4px 0 10px;font-size:12px}.eval-badge{border-radius:6px;padding:5px 10px;font-size:12px;font-weight:600;display:inline-block}.eval-badge.is-pending{color:var(--warn);background:var(--warn-soft)}.eval-badge.is-complete{color:var(--good);background:var(--good-soft)}.eval-card__total{text-align:right;flex-direction:column;flex-shrink:0;align-items:flex-end;display:flex}.eval-card__total strong{font-size:28px;line-height:1.1}.eval-card__total small{color:var(--muted);font-size:12px}.eval-card__total .eval-card__provisional{margin-top:2px;font-size:11px}.eval-card__facts{border-bottom:1px solid var(--border);color:var(--muted);flex-wrap:wrap;gap:4px 18px;margin:14px 16px 0;padding-bottom:14px;font-size:12px;display:flex}.eval-card__facts b{color:var(--text)}.eval-card__body{grid-template-columns:minmax(0,1fr);gap:20px;padding:14px 16px 16px;display:grid}@container (width>=540px){.eval-card__body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}}.eval-card__body h3{margin:0 0 12px;font-size:13px}.eval-card__criteria{flex-direction:column;gap:14px;display:flex}.eval-card__criteria h3{margin-bottom:0}.eval-checklist{flex-direction:column;gap:12px;margin:0 0 14px;padding:0;list-style:none;display:flex}.eval-checklist li{align-items:flex-start;gap:10px;display:flex}.eval-checklist__icon{text-align:center;flex-shrink:0;width:16px;line-height:1.3}.eval-checklist li.is-pending .eval-checklist__icon{color:var(--warn)}.eval-checklist li.is-ok .eval-checklist__icon{color:var(--good)}.eval-checklist strong{font-size:13px}.eval-checklist p{color:var(--muted);margin:2px 0 0;font-size:12px;line-height:1.4}.eval-checklist li.is-ok strong{color:var(--muted);font-weight:600}.eval-classification{border:1px solid var(--border);background:var(--bg);color:var(--muted);text-align:center;border-radius:8px;padding:10px 12px;font-size:13px}.eval-classification.is-candidate{color:var(--good);border-color:var(--good);font-weight:600}.eval-classification.is-rejected{color:var(--bad)}.eval-details{border-top:1px solid var(--border);margin-top:12px;padding-top:12px;font-size:12px}.eval-details summary{cursor:pointer;font-size:13px;font-weight:600}.eval-facts{flex-direction:column;gap:6px;margin:10px 0 0;padding:0;list-style:none;display:flex}.eval-facts li{color:var(--muted);justify-content:space-between;display:flex}.eval-facts li span:last-child{color:var(--text);font-weight:600}.eval-facts li span.negative{color:var(--bad)}.eval-details__hint{color:var(--muted);margin:8px 0 0}.eval-details__warn{color:var(--warn);margin:6px 0 0;line-height:1.4}.eval-rule{color:var(--muted);line-height:1.5}.eval-rule p{margin:8px 0 0}.eval-rule ol{margin:6px 0 0;padding-left:18px}.eval-rule__engine{color:var(--text)}.eval-steps{border-top:1px solid var(--border);color:var(--muted);flex-wrap:wrap;gap:4px 8px;margin:0;padding:10px 16px;font-size:12px;list-style:none;display:flex}.eval-steps li+li:before{content:"→";color:var(--border-strong);margin-right:8px}.eval-steps li.is-current{color:var(--text);font-weight:700}.eval-steps li.is-done{color:var(--good)}.detail__price{margin-top:16px}.buy-validation{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.buy-validation__toggle{color:var(--accent);border:1px solid var(--accent);background:0 0}.buy-validation__form{margin-top:14px}.buy-validation__fields{grid-template-columns:repeat(2,minmax(0,1fr)) auto;align-items:end;gap:10px;display:grid}.buy-validation__fields label{color:var(--muted);gap:5px;font-size:12px;display:grid}.buy-validation__fields input{border:1px solid var(--border);background:var(--bg);width:100%;min-width:0;color:var(--text);font:inherit;border-radius:6px;padding:8px 10px}.buy-validation__fields input:focus{border-color:var(--accent);outline:2px solid color-mix(in srgb, var(--accent) 25%, transparent)}.buy-validation__result{border:1px solid var(--border);background:var(--bg);border-radius:8px;margin-top:12px;padding:12px;font-size:13px}.buy-validation__result.is-good{border-color:var(--good)}.buy-validation__result.is-good>strong{color:var(--good)}.buy-validation__result.is-warning{border-color:var(--warn)}.buy-validation__result.is-warning>strong{color:var(--warn)}.buy-validation__result.is-high{border-color:var(--bad)}.buy-validation__result.is-high>strong,.buy-validation__result.is-high dd:last-child{color:var(--bad)}.buy-validation__result dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0 0;display:grid}.buy-validation__result dl div{min-width:0}.buy-validation__result dt{color:var(--muted);font-size:11px}.buy-validation__result dd{color:var(--text);margin:3px 0 0;font-weight:600}.buy-validation__result p,.buy-validation__error{margin:10px 0 0;line-height:1.4}.buy-validation__error{color:var(--bad);font-size:13px}@media (width<=560px){.buy-validation__fields{grid-template-columns:repeat(2,minmax(0,1fr))}.buy-validation__fields button{grid-column:1/-1}.buy-validation__result dl{grid-template-columns:1fr}}.detail__price-meta{color:var(--muted);font-size:12px}.range52{margin-top:12px}.range52__track{background:var(--border);border-radius:2px;height:4px;position:relative}.range52__marker{background:var(--accent);border-radius:50%;width:10px;height:10px;position:absolute;top:-3px;transform:translate(-50%)}.range52__labels{color:var(--muted);justify-content:space-between;margin-top:6px;font-size:11px;display:flex}.score-bar__label{justify-content:space-between;gap:8px;margin-bottom:6px;font-size:13px;display:flex}.score-bar__value{font-weight:700}.score-bar__value.is-pending{color:var(--warn)}.score-bar__track{background:var(--border);border-radius:3px;height:6px;overflow:hidden}.score-bar__fill{background:var(--accent);border-radius:3px;height:100%}.score-bar__note{color:var(--muted);margin-top:4px;font-size:11px;line-height:1.35}.score-bar__note.is-warn{color:var(--warn)}.detail__metrics{border-top:1px solid var(--border);margin-top:20px;padding-top:16px}.detail__metrics summary{cursor:pointer;font-size:13px;font-weight:600}.detail__metrics[open] summary{margin-bottom:8px}.detail__metrics-hint{color:var(--muted);margin:0 0 12px;font-size:12px}.metric-group__meta{text-transform:none;color:var(--muted);margin-top:2px;font-size:11px;font-weight:400;display:block}.metric-group ul.metric-rows{gap:12px}.metric-group li.metric-row{display:block}.metric-row__head{justify-content:space-between;align-items:baseline;gap:8px;font-size:13px;display:flex}.metric-row__note{flex-shrink:0;font-weight:700}.metric-row__note small{color:var(--muted);font-size:11px;font-weight:400}.metric-row.is-missing .metric-row__note{color:var(--warn);font-size:12px;font-weight:600}.metric-row__track{background:var(--border);border-radius:2px;height:4px;margin-top:5px;overflow:hidden}.metric-row__fill{background:var(--accent);height:100%}.metric-row__meta{color:var(--muted);margin:4px 0 0;font-size:11px;line-height:1.45}.metric-row__meta b{color:var(--text);font-weight:600}.detail__metrics .metric-group+.metric-group{margin-top:16px}.metric-group h3{text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-size:12px}.metric-group ul{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.metric-group li{justify-content:space-between;font-size:13px;display:flex}.tooltip-trigger{border-bottom:1px dotted var(--muted);cursor:help}.tooltip-bubble{border:1px solid var(--border);color:var(--text);z-index:1000;background:#1c212b;border-radius:6px;width:240px;max-width:calc(100vw - 24px);padding:8px 10px;font-size:12px;line-height:1.4;position:fixed;box-shadow:0 8px 20px #0006}.metric-group li span:last-child{font-weight:600}.detail__thesis{border-top:1px solid var(--border);color:var(--muted);margin-top:16px;padding-top:16px;font-size:13px}.ai-card{background:var(--panel-2);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:12px;margin-top:16px;padding:14px 16px;display:flex;container-type:inline-size}.ai-card h3{margin:0;font-size:15px}.ai-card.is-empty p{color:var(--muted);margin:0;font-size:13px}.ai-card__header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.ai-card--opinion{display:block}.ai-card--opinion>summary{cursor:pointer;list-style:none}.ai-card--opinion>summary::-webkit-details-marker{display:none}.ai-card__toggle{color:var(--accent);margin-top:6px;font-size:12px;display:inline-block}.ai-card__toggle:before{content:"▸ Leer la opinión"}.ai-card--opinion[open] .ai-card__toggle:before{content:"▾ Ocultar"}.ai-card__body{flex-direction:column;gap:12px;margin-top:12px;display:flex}.ai-card__meta{color:var(--muted);margin:3px 0 0;font-size:12px}.ai-card__verdict{flex-direction:column;flex:none;align-items:flex-end;gap:4px;display:flex}.ai-card__confidence{color:var(--muted);font-size:11px}.ai-chip{white-space:nowrap;border-radius:6px;padding:5px 10px;font-size:12px;font-weight:600;display:inline-block}.ai-chip--small{padding:2px 7px;font-size:11px}.ai-chip.is-comprar{color:var(--good);background:var(--good-soft)}.ai-chip.is-comprar_con_cautela{color:var(--accent);background:#4c8dff24}.ai-chip.is-esperar{color:var(--warn);background:var(--warn-soft)}.ai-chip.is-evitar{color:var(--bad);background:#e35d5d24}.ai-card__summary{margin:0;font-size:13px;line-height:1.55}.ai-card__lists{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}@container (width>=540px){.ai-card__lists{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-card__list:nth-child(3){grid-column:1/-1}}.ai-card__list h4{color:var(--muted);margin:0 0 6px;font-size:12px;font-weight:600}.ai-card__list ul{flex-direction:column;gap:5px;margin:0;padding-left:18px;font-size:12.5px;line-height:1.45;display:flex}.ai-card__foot{border-top:1px solid var(--border);color:var(--muted);margin:0;padding-top:10px;font-size:11px;line-height:1.45}.opportunities-table .muted{color:var(--muted)}.ai-card__button{align-self:flex-start}.ai-card__error{color:var(--bad)!important}.ai-card__running{align-items:flex-start;gap:10px;display:flex}.ai-card__spinner{border:2px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;flex:none;width:14px;height:14px;margin-top:2px;animation:.9s linear infinite ai-spin}@keyframes ai-spin{to{transform:rotate(360deg)}}.cap-size{white-space:nowrap;background:var(--panel-2);border:1px solid var(--border);border-radius:6px;padding:2px 7px;font-size:11px;font-weight:600;display:inline-block}.cap-size.is-large{color:var(--accent)}.cap-size.is-mid{color:var(--good)}.cap-size.is-small{color:var(--warn)}
