:root {
  --bg: #071019;
  --panel: rgba(16, 29, 41, 0.82);
  --panel-solid: #101d29;
  --panel-soft: #142534;
  --border: rgba(162, 190, 207, 0.14);
  --text: #f5f8fa;
  --muted: #8da2b2;
  --cyan: #44d3c5;
  --cyan-soft: rgba(68, 211, 197, 0.13);
  --blue: #55a7ff;
  --green: #7dde9c;
  --yellow: #f0c76b;
  --red: #ff7d7d;
  --shadow: 0 24px 70px rgba(0, 0, 0, 0.3);
}

* { box-sizing: border-box; }
html { max-width: 100%; overflow-x: hidden; background: var(--bg); }
body { width: 100%; max-width: 100%; margin: 0; min-height: 100vh; overflow-x: hidden; color: var(--text); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; background: radial-gradient(circle at 70% -20%, #173d4b 0, transparent 34%), linear-gradient(160deg, #071019 0%, #091520 48%, #071019 100%); }
button, input, select { font: inherit; }
button, select { cursor: pointer; }
.hidden { display: none !important; }
.muted { color: var(--muted); }
.eyebrow { margin: 0 0 8px; color: var(--cyan); font-size: 11px; font-weight: 800; letter-spacing: .16em; }
.ambient { position: fixed; border-radius: 999px; filter: blur(90px); opacity: .16; pointer-events: none; }
.ambient-one { width: 360px; height: 360px; background: #2bcab7; right: -100px; top: 18%; }
.ambient-two { width: 280px; height: 280px; background: #2e7fcc; left: 20%; bottom: -120px; }

.auth-screen { min-height: 100vh; display: grid; place-items: center; padding: 24px; }
.auth-card { width: min(430px, 100%); padding: 38px; border: 1px solid var(--border); border-radius: 24px; background: rgba(11, 23, 33, .88); box-shadow: var(--shadow); backdrop-filter: blur(20px); }
.brand-mark { width: 48px; height: 48px; display: grid; place-items: center; margin-bottom: 24px; border-radius: 15px; background: linear-gradient(145deg, var(--cyan), #6ff0b5); color: #07201f; font-size: 22px; font-weight: 950; box-shadow: 0 12px 28px rgba(68,211,197,.25); }
.brand-mark.small { width: 35px; height: 35px; margin: 0; border-radius: 11px; font-size: 16px; }
.auth-card h1 { margin: 0; font-size: 30px; letter-spacing: -.04em; }
.auth-card label { display: block; margin: 28px 0 8px; color: #c7d3da; font-size: 13px; }
.auth-card input { width: 100%; padding: 13px 15px; border: 1px solid var(--border); border-radius: 11px; outline: none; background: #0a1620; color: var(--text); }
.auth-card input:focus { border-color: var(--cyan); box-shadow: 0 0 0 3px var(--cyan-soft); }
.primary-button { width: 100%; margin-top: 14px; padding: 13px 18px; border: 0; border-radius: 11px; background: var(--cyan); color: #06201e; font-weight: 850; }
.error-message { min-height: 20px; color: var(--red); font-size: 13px; }

.app-shell { width: 100%; max-width: 100vw; min-height: 100vh; display: grid; grid-template-columns: 220px minmax(0, 1fr); overflow-x: clip; }
.sidebar { position: sticky; top: 0; height: 100vh; padding: 28px 20px; border-right: 1px solid var(--border); background: rgba(6, 15, 23, .72); backdrop-filter: blur(20px); }
.sidebar-brand { display: flex; align-items: center; gap: 12px; font-size: 15px; font-weight: 900; letter-spacing: .14em; }
.sidebar nav { display: grid; gap: 7px; margin-top: 48px; }
.nav-item { display: flex; align-items: center; gap: 11px; padding: 11px 13px; border-radius: 10px; color: var(--muted); text-decoration: none; font-size: 14px; }
.nav-item.active { background: var(--cyan-soft); color: var(--text); }
.nav-group { display: grid; gap: 4px; }
.nav-group-toggle { width: 100%; border: 0; background: transparent; text-align: left; }
.nav-group-toggle b { margin-left: auto; color: #66808d; font-size: 12px; transition: transform .16s ease; }
.nav-group.open .nav-group-toggle b { transform: rotate(180deg); }
.nav-group.active .nav-group-toggle { color: var(--text); }
.nav-submenu { display: none; gap: 3px; padding: 1px 0 3px 24px; }
.nav-group.open .nav-submenu { display: grid; }
.nav-subitem { display: flex; align-items: center; gap: 8px; padding: 8px 10px; border-left: 1px solid rgba(162,190,207,.14); border-radius: 0 8px 8px 0; color: #78909d; font-size: 12px; text-decoration: none; }
.nav-subitem span { width: 20px; height: 20px; display: grid; place-items: center; border-radius: 6px; background: rgba(255,255,255,.035); color: #66828f; font-size: 8px; font-weight: 900; }
.nav-subitem:hover, .nav-subitem.active { border-left-color: var(--cyan); background: rgba(68,211,197,.075); color: #dce8eb; }
.nav-subitem.active span { background: rgba(68,211,197,.14); color: var(--cyan); }
.sidebar-status { position: absolute; left: 25px; bottom: 28px; display: flex; align-items: center; gap: 9px; color: var(--muted); font-size: 12px; }
.sidebar-status i { width: 8px; height: 8px; border-radius: 50%; background: var(--green); box-shadow: 0 0 14px var(--green); }

.main-content { width: 100%; min-width: 0; max-width: 1600px; margin: 0 auto; padding: 28px 34px 70px; overflow-x: clip; }
.topbar { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 26px; }
.topbar h1 { margin: 0; font-size: clamp(26px, 3vw, 38px); letter-spacing: -.045em; }
.topbar-actions { min-width: 0; display: flex; align-items: flex-end; gap: 9px; }
.campaign-picker { display: grid; gap: 5px; color: var(--muted); font-size: 11px; }
select, .icon-button, .ghost-button { border: 1px solid var(--border); background: var(--panel-solid); color: var(--text); border-radius: 10px; }
select { min-width: 190px; padding: 10px 34px 10px 12px; }
.icon-button, .ghost-button { height: 40px; padding: 0 13px; }
.icon-button { width: 42px; font-size: 21px; }
.ghost-button { color: var(--muted); }

.dashboard { display: grid; gap: 22px; }
.session-user { display: grid; min-width: 110px; text-align: right; }
.session-user strong { color: var(--text); font-size: 12px; }
.session-user span { color: var(--muted); font-size: 10px; }
.panel { border: 1px solid var(--border); border-radius: 18px; background: var(--panel); box-shadow: var(--shadow); backdrop-filter: blur(16px); }
.overview-grid { display: grid; grid-template-columns: .86fr 1.4fr; gap: 18px; }
.overview-grid .panel { padding: 22px; }
.panel-heading, .section-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.panel-heading { color: var(--muted); font-size: 12px; font-weight: 750; text-transform: uppercase; letter-spacing: .1em; }
.live-dot, .status-pill, .reference-chip, .count-chip { padding: 5px 9px; border-radius: 999px; font-size: 10px; font-weight: 850; letter-spacing: .08em; }
.live-dot, .reference-chip { color: var(--cyan); background: var(--cyan-soft); }
.status-pill.active { color: var(--green); background: rgba(125,222,156,.12); }
.status-pill.finished { color: #c5d1d8; background: rgba(197,209,216,.1); }
.influencer-identity { display: flex; align-items: center; gap: 15px; margin: 24px 0; }
.influencer-identity h2, .campaign-title-row h2, .section-heading h2, .history-panel h2 { margin: 0; letter-spacing: -.03em; }
.avatar { width: 58px; height: 58px; display: grid; place-items: center; border-radius: 17px; background: linear-gradient(145deg, #1c5260, #12303f); color: #8ff4df; font-size: 22px; font-weight: 900; }
.metric-grid { display: grid; gap: 14px; }
.metric-grid div { min-width: 0; }
.metric-grid span { display: block; margin-bottom: 5px; color: var(--muted); font-size: 11px; }
.metric-grid strong { font-size: 15px; }
.influencer-metrics { grid-template-columns: 1fr 1fr; }
.campaign-title-row { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin: 19px 0 21px; }
.campaign-title-row p { margin: 0 0 5px; font-size: 11px; }
.campaign-title-row h2 { font-size: 22px; }
.hero-value { color: var(--green); font-size: clamp(23px, 3vw, 34px); letter-spacing: -.05em; white-space: nowrap; }
.campaign-metrics { grid-template-columns: repeat(3, 1fr); }
.progress-track { height: 6px; margin-top: 21px; overflow: hidden; border-radius: 99px; background: #08131c; }
.progress-track span { display: block; width: 0; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--cyan), var(--green)); transition: width .5s ease; }
.progress-caption { display: flex; justify-content: space-between; gap: 20px; margin-top: 8px; color: var(--muted); font-size: 10px; }

.predictions-section { padding: 3px 1px; }
.section-heading { margin-bottom: 14px; }
.section-heading h2 { font-size: 22px; }
.model-scope-tabs { display: grid; grid-template-columns: repeat(3, minmax(150px, 1fr)); gap: 9px; margin-bottom: 8px; }
.model-scope-tab { position: relative; display: flex; align-items: center; gap: 11px; min-height: 66px; padding: 12px 15px; overflow: hidden; border: 1px solid var(--border); border-radius: 14px; background: linear-gradient(135deg, rgba(13,29,40,.82), rgba(8,19,28,.72)); color: var(--muted); text-align: left; transition: .18s ease; }
.model-scope-tab::after { content: ""; position: absolute; inset: auto 0 0; height: 2px; background: transparent; transition: .18s ease; }
.model-scope-tab > span:last-child { display: grid; gap: 4px; }
.model-scope-tab strong { color: #b5c5ce; font-size: 13px; }
.model-scope-tab small { color: #607786; font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .09em; }
.scope-tab-icon { width: 34px; height: 34px; display: grid; flex: 0 0 auto; place-items: center; border: 1px solid rgba(162,190,207,.12); border-radius: 10px; background: rgba(255,255,255,.025); color: #75909f; font-size: 16px; }
.model-scope-tab:hover { transform: translateY(-1px); border-color: rgba(68,211,197,.2); color: var(--text); }
.model-scope-tab.active { border-color: rgba(68,211,197,.4); background: linear-gradient(135deg, rgba(68,211,197,.13), rgba(10,29,37,.86)); box-shadow: 0 10px 26px rgba(0,0,0,.12); }
.model-scope-tab.active::after { background: linear-gradient(90deg, transparent, var(--cyan), transparent); }
.model-scope-tab.active strong, .model-scope-tab.active .scope-tab-icon { color: var(--cyan); }
.model-scope-tab.active .scope-tab-icon { border-color: rgba(68,211,197,.24); background: rgba(68,211,197,.08); }
.model-scope-description { display: flex; align-items: center; gap: 7px; min-height: 27px; margin: 0 2px 9px; color: var(--muted); font-size: 9px; }
.model-scope-description span { color: var(--cyan); font-size: 7px; font-weight: 900; letter-spacing: .1em; }
.model-scope-description strong { color: #c8d6dd; font-weight: 800; }
.general-population-tabs { display: grid; grid-template-columns: repeat(3, minmax(130px, 1fr)); gap: 8px; margin: 10px 0 14px; padding: 7px; border: 1px solid var(--border); border-radius: 13px; background: rgba(5,14,21,.58); }
.general-population-tab { display: grid; gap: 3px; padding: 10px 13px; border: 1px solid transparent; border-radius: 9px; background: transparent; color: var(--muted); text-align: left; }
.general-population-tab strong { color: var(--text); font-size: 12px; }
.general-population-tab small { font-size: 9px; text-transform: uppercase; letter-spacing: .06em; }
.general-population-tab.active { border-color: rgba(68,211,197,.28); background: var(--cyan-soft); color: var(--cyan); }
.influencer-prediction-picker select { min-width: 220px; }
.model-type-tabs { display: flex; gap: 7px; padding: 5px; overflow-x: auto; border: 1px solid var(--border); border-radius: 14px; background: rgba(7,16,25,.62); }
.model-type-tab { min-width: 145px; display: grid; gap: 3px; padding: 11px 15px; border: 1px solid transparent; border-radius: 10px; background: transparent; color: var(--muted); text-align: left; transition: .18s ease; }
.model-type-tab span { font-size: 12px; font-weight: 820; }
.model-type-tab .tab-title { display: flex; align-items: center; gap: 7px; }
.tab-title svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; opacity: .8; transition: transform .18s ease; }
.model-type-tab small { color: #617785; font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }
.model-type-tab:hover { color: var(--text); background: rgba(255,255,255,.025); transform: translateY(-1px); }
.model-type-tab:hover .tab-title svg { transform: scale(1.08); }
.model-type-tab.active { border-color: rgba(68,211,197,.22); background: var(--cyan-soft); color: var(--text); }
.model-type-tab.active small { color: var(--cyan); }
.target-metric-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.target-metric-tab { min-width: 180px; display: grid; gap: 3px; padding: 10px 13px; border: 1px solid var(--border); border-radius: 11px; background: rgba(10,23,33,.62); color: var(--muted); text-align: left; transition: .18s ease; }
.target-metric-tab strong { font-size: 11px; }
.target-metric-tab small { color: #617785; font-size: 9px; text-transform: uppercase; letter-spacing: .07em; }
.target-metric-tab:hover { color: var(--text); border-color: rgba(68,211,197,.2); transform: translateY(-1px); }
.target-metric-tab.active { border-color: rgba(68,211,197,.32); background: var(--cyan-soft); color: var(--cyan); }
.target-metric-tab.active small { color: #8ba1ad; }
.engine-toolbar { display: grid; grid-template-columns: minmax(210px, .7fr) minmax(260px, 1.3fr) auto; align-items: end; gap: 14px; margin-top: 12px; padding: 14px; border: 1px solid var(--border); border-radius: 14px; background: linear-gradient(100deg, rgba(15,31,43,.9), rgba(10,23,33,.7)); }
.engine-toolbar label { display: grid; gap: 6px; color: var(--muted); font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .09em; }
.engine-toolbar select { width: 100%; min-width: 0; padding-block: 9px; }
.engine-identity { display: flex; align-items: center; gap: 11px; }
.engine-identity > div:last-child { display: grid; gap: 3px; }
.engine-identity strong { font-size: 13px; }
.engine-identity span { color: var(--muted); font-size: 9px; }
.engine-monogram { min-width: 39px; height: 39px; display: grid; place-items: center; padding: 0 7px; border: 1px solid rgba(68,211,197,.2); border-radius: 11px; background: var(--cyan-soft); color: var(--cyan); font-size: 10px; font-weight: 950; letter-spacing: -.02em; }
.engine-monogram svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.55; stroke-linecap: round; stroke-linejoin: round; transition: transform .22s ease; }
.engine-toolbar:hover .engine-monogram svg { transform: scale(1.08) rotate(-2deg); }
.engine-availability { align-self: center; padding: 6px 9px; border-radius: 99px; color: var(--muted); background: rgba(255,255,255,.045); font-size: 8px; font-weight: 850; text-transform: uppercase; letter-spacing: .08em; white-space: nowrap; }
.engine-availability.available { color: var(--green); background: rgba(125,222,156,.1); }
.arena-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin: 15px 2px 11px; }
.arena-heading p { margin: 0 0 7px; color: #c8d5dc; font-size: 12px; }
.arena-legend { display: flex; flex-wrap: wrap; gap: 14px; color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .07em; }
.arena-legend span { display: inline-flex; align-items: center; gap: 6px; }
.arena-legend i { width: 7px; height: 7px; border-radius: 50%; }
.current-dot { background: var(--cyan); box-shadow: 0 0 9px rgba(68,211,197,.55); }
.challenger-dot { background: var(--yellow); box-shadow: 0 0 9px rgba(240,199,107,.45); }
.arena-status { padding: 6px 9px; border: 1px solid var(--border); border-radius: 8px; color: var(--muted); background: rgba(255,255,255,.025); font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .07em; white-space: nowrap; }
.model-arena { display: grid; gap: 24px; }
.prediction-lane { min-width: 0; }
.prediction-lane + .prediction-lane { padding-top: 21px; border-top: 1px solid rgba(162,190,207,.11); }
.lane-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 2px 10px; }
.lane-heading > div { display: flex; align-items: center; gap: 9px; }
.lane-heading > div > div { display: grid; gap: 2px; }
.lane-heading strong { color: #d8e3e8; font-size: 12px; }
.lane-heading small { color: var(--muted); font-size: 9px; }
.lane-icon { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 8px; font-size: 13px; font-weight: 900; }
.pending-icon { color: var(--blue); background: rgba(85,167,255,.1); }
.evaluated-icon { color: var(--green); background: rgba(125,222,156,.1); }
.pre-sale-icon { width: 30px; color: var(--yellow); background: rgba(240,199,107,.1); font-size: 8px; }
.lane-status { padding: 5px 8px; border-radius: 7px; font-size: 8px; font-weight: 850; text-transform: uppercase; letter-spacing: .07em; white-space: nowrap; }
.lane-status.pending { color: var(--blue); background: rgba(85,167,255,.09); }
.lane-status.pre-sale { color: var(--yellow); background: rgba(240,199,107,.09); }
.lane-status.evaluated { color: var(--green); background: rgba(125,222,156,.09); }
.prediction-cards { display: grid; grid-template-columns: repeat(4, minmax(220px, 1fr)); gap: 10px; padding-bottom: 4px; }
.prediction-cards.single-horizon { grid-template-columns: minmax(280px, 430px); }
.prediction-card { position: relative; min-width: 210px; min-height: 320px; overflow: hidden; border: 1px solid var(--border); border-radius: 15px; outline: none; background: linear-gradient(145deg, rgba(20,38,52,.96), rgba(12,26,37,.96)); cursor: pointer; animation: card-enter .32s ease backwards; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.prediction-card:nth-child(2) { animation-delay: .035s; }
.prediction-card:nth-child(3) { animation-delay: .07s; }
.prediction-card:nth-child(4) { animation-delay: .105s; }
.prediction-card:nth-child(5) { animation-delay: .14s; }
.prediction-card:hover { transform: translateY(-3px); border-color: rgba(68,211,197,.28); box-shadow: 0 16px 34px rgba(0,0,0,.2); }
.prediction-card:focus-visible, .prediction-card.selected { border-color: rgba(68,211,197,.48); box-shadow: 0 0 0 2px rgba(68,211,197,.09), 0 18px 38px rgba(0,0,0,.22); }
.prediction-card.selected::before { content: ""; position: absolute; z-index: 3; inset: 0 auto 0 0; width: 2px; background: linear-gradient(180deg, var(--cyan), transparent 80%); }
.prediction-card::after { content: ""; position: absolute; inset: auto -35px -45px auto; width: 110px; height: 110px; border-radius: 50%; background: var(--card-glow, var(--cyan)); opacity: .07; }
.prediction-card .horizon { display: flex; align-items: center; justify-content: space-between; padding: 12px 14px; border-bottom: 1px solid rgba(162,190,207,.09); color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: .09em; }
.prediction-card .horizon > div { display: grid; gap: 3px; }
.horizon-label { display: inline-flex; align-items: center; gap: 6px; }
.card-reference { color: #69808f; font-size: 7px; font-weight: 750; letter-spacing: .03em; text-transform: none; }
.horizon-icon { width: 13px; height: 13px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; opacity: .65; }
.prediction-card .horizon strong { color: #d6e1e7; font-size: 12px; }
.contender { position: relative; z-index: 1; min-height: 125px; padding: 13px 14px 12px; transition: background-color .18s ease; }
.contender.current { background: linear-gradient(90deg, rgba(68,211,197,.045), transparent); }
.contender.challenger { background: linear-gradient(90deg, rgba(240,199,107,.035), transparent); }
.contender.current:hover { background-color: rgba(68,211,197,.035); }
.contender.challenger:hover { background-color: rgba(240,199,107,.03); }
.contender-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.model-role { font-size: 8px; font-weight: 900; text-transform: uppercase; letter-spacing: .1em; }
.model-role.current { color: var(--cyan); }
.model-role.challenger { color: var(--yellow); }
.model-version { color: #617785; font-size: 9px; font-weight: 750; }
.model-algorithm { display: block; margin-top: 7px; overflow: hidden; color: #cbd8df; font-size: 11px; font-weight: 760; text-overflow: ellipsis; white-space: nowrap; }
.prediction-card .predicted { display: block; margin: 9px 0 5px; font-size: clamp(18px, 1.6vw, 24px); letter-spacing: -.04em; }
.prediction-card .actual-line { min-height: 15px; margin: 0; color: var(--muted); font-size: 9px; }
.prediction-card .card-status { display: inline-flex; margin-top: 12px; padding: 4px 7px; border-radius: 6px; font-size: 9px; font-weight: 850; text-transform: uppercase; letter-spacing: .08em; }
.duel-divider { position: relative; height: 1px; margin: 0 14px; background: rgba(162,190,207,.11); }
.duel-divider span { position: absolute; left: 50%; top: 50%; padding: 2px 7px; transform: translate(-50%,-50%); border: 1px solid var(--border); border-radius: 99px; background: #0d1c28; color: #667e8d; font-size: 7px; font-weight: 900; letter-spacing: .1em; }
.contender.empty { display: grid; align-content: center; opacity: .6; }
.contender.empty strong { margin: 8px 0 4px; color: #9aabb5; font-size: 12px; }
.contender.empty .model-algorithm { margin: 7px 0 0; color: #bdcbd3; }
.contender.empty .empty-prediction { margin: 9px 0 4px; font-size: 12px; }
.contender.empty p { margin: 0; color: var(--muted); font-size: 9px; line-height: 1.45; }
.card-status.pending { color: var(--blue); background: rgba(85,167,255,.12); }
.card-status.good { color: var(--green); background: rgba(125,222,156,.12); }
.card-status.warning { color: var(--yellow); background: rgba(240,199,107,.12); }
.card-status.bad { color: var(--red); background: rgba(255,125,125,.12); }
.card-status.excluded, .table-status.excluded { color: #8398a5; background: rgba(131,152,165,.1); }
.prediction-card.empty { opacity: .72; }
.evaluated-lane .prediction-card { --card-glow: var(--green); }
.evaluated-lane .prediction-card:hover { border-color: rgba(125,222,156,.28); }
.evaluated-lane .prediction-card:focus-visible, .evaluated-lane .prediction-card.selected { border-color: rgba(125,222,156,.44); box-shadow: 0 0 0 2px rgba(125,222,156,.08), 0 18px 38px rgba(0,0,0,.22); }
.evaluated-lane .prediction-card.selected::before { background: linear-gradient(180deg, var(--green), transparent 80%); }
.model-type-empty { grid-column: 1 / -1; min-height: 220px; display: grid; place-items: center; padding: 32px; border: 1px dashed rgba(162,190,207,.18); border-radius: 15px; background: rgba(12,26,37,.5); text-align: center; }
.model-type-empty .empty-icon { width: 44px; height: 44px; display: grid; place-items: center; margin: 0 auto 13px; border-radius: 13px; background: rgba(255,255,255,.045); color: var(--muted); font-size: 20px; }
.model-type-empty h3 { margin: 0 0 7px; font-size: 16px; }
.model-type-empty p { max-width: 440px; margin: 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
.model-type-empty .empty-ready { display: inline-block; margin-top: 14px; padding: 6px 9px; border-radius: 99px; color: var(--cyan); background: var(--cyan-soft); font-size: 7px; font-weight: 900; text-transform: uppercase; letter-spacing: .09em; }

.timeline-panel { padding: 23px; }
.timeline-heading { align-items: flex-end; }
.legend { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 14px; color: var(--muted); font-size: 10px; }
.legend span { display: flex; align-items: center; gap: 6px; }
.legend i { display: inline-block; }
.legend-line { width: 18px; height: 2px; background: var(--cyan); }
.legend-post, .legend-organic { width: 8px; height: 8px; border-radius: 50%; background: var(--cyan); }
.legend-organic { background: #607e91; }
.timeline-wrap { position: relative; width: 100%; min-height: 410px; overflow-x: auto; }
#timeline { display: block; width: 100%; min-width: 840px; height: 410px; overflow: visible; }
.timeline-tooltip { position: absolute; z-index: 5; min-width: 165px; padding: 10px 12px; pointer-events: none; border: 1px solid var(--border); border-radius: 10px; background: #07121b; box-shadow: var(--shadow); font-size: 11px; }
.timeline-tooltip strong { display: block; margin-bottom: 5px; color: var(--text); }
.selected-hour { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; padding-top: 15px; border-top: 1px solid var(--border); }
.selected-hour div { padding: 11px 13px; border-radius: 10px; background: rgba(7,18,27,.62); }
.selected-hour span { display: block; margin-bottom: 5px; color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }
.selected-hour strong { font-size: 13px; }

.history-panel { overflow: hidden; }
.history-panel summary { display: flex; align-items: center; justify-content: space-between; padding: 20px 22px; cursor: pointer; list-style: none; }
.history-panel summary::-webkit-details-marker { display: none; }
.history-panel[open] summary { border-bottom: 1px solid var(--border); }
.count-chip { color: #c7d5de; background: rgba(255,255,255,.06); }
.history-controls { display: flex; align-items: end; gap: 22px; padding: 15px 22px; }
.history-controls label { display: grid; gap: 5px; color: var(--muted); font-size: 10px; }
.history-controls select { min-width: 125px; padding: 8px 10px; }
.check-label { display: flex !important; flex-direction: row; align-items: center; padding-bottom: 8px; }
.table-wrap { overflow: auto; }
table { width: 100%; border-collapse: collapse; font-size: 11px; }
th, td { padding: 12px 16px; text-align: left; white-space: nowrap; border-bottom: 1px solid rgba(162,190,207,.08); }
th { color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }
td { color: #cbd6dc; }
.table-status { padding: 4px 7px; border-radius: 6px; font-size: 9px; font-weight: 800; }
.history-model-role { display: inline-flex; margin-right: 7px; padding: 3px 5px; border-radius: 5px; font-size: 7px; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; }
.history-model-role.current { color: var(--cyan); background: var(--cyan-soft); }
.history-model-role.challenger { color: var(--yellow); background: rgba(240,199,107,.1); }
.history-metric { display: inline-flex; padding: 4px 6px; border-radius: 6px; font-size: 8px; font-weight: 850; letter-spacing: .06em; white-space: nowrap; }
.history-metric.revenue { color: var(--cyan); background: rgba(68,211,197,.09); }
.history-metric.quotas_sold { color: var(--blue); background: rgba(85,167,255,.1); }

.pipeline-page { display: grid; gap: 20px; }
.pipeline-hero { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(420px, .7fr); align-items: center; gap: 34px; padding: 28px; overflow: hidden; background: radial-gradient(circle at 88% 10%, rgba(68,211,197,.11), transparent 30%), var(--panel); }
.pipeline-hero h2 { max-width: 680px; margin: 0; font-size: clamp(25px, 3vw, 38px); letter-spacing: -.045em; }
.pipeline-hero > div > p:last-child { max-width: 690px; margin: 13px 0 0; color: var(--muted); font-size: 13px; line-height: 1.65; }
.pipeline-summary { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.pipeline-summary div { min-height: 82px; display: grid; align-content: center; padding: 13px 15px; border: 1px solid rgba(162,190,207,.1); border-radius: 12px; background: rgba(7,18,27,.54); }
.pipeline-summary strong { color: var(--cyan); font-size: 25px; line-height: 1; }
.pipeline-summary span { margin-top: 6px; color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .07em; }
.pipeline-legend { display: flex; flex-wrap: wrap; gap: 18px; padding: 0 4px; color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .07em; }
.pipeline-legend span { display: inline-flex; align-items: center; gap: 7px; }
.pipeline-dot { width: 8px; height: 8px; border-radius: 50%; }
.pipeline-dot.shared { background: var(--cyan); }
.pipeline-dot.historical { background: var(--blue); }
.pipeline-dot.live { background: var(--green); }
.pipeline-dot.governance { background: var(--yellow); }
.pipeline-orchestrator { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 16px; padding: 17px 20px; border-color: rgba(68,211,197,.21); background: linear-gradient(100deg, rgba(68,211,197,.075), rgba(13,27,38,.78)); }
.orchestrator-icon { width: 43px; height: 43px; display: grid; place-items: center; border: 1px solid rgba(68,211,197,.23); border-radius: 12px; color: var(--cyan); background: var(--cyan-soft); font-size: 21px; }
.pipeline-orchestrator > div:nth-child(2) { display: grid; gap: 3px; }
.pipeline-orchestrator > div:nth-child(2) span { color: var(--cyan); font-size: 8px; font-weight: 900; letter-spacing: .13em; }
.pipeline-orchestrator strong { font-size: 13px; }
.pipeline-orchestrator p { margin: 0; color: var(--muted); font-size: 10px; }
.orchestrator-tags { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.orchestrator-tags span { padding: 5px 7px; border-radius: 6px; color: #9db3c0; background: rgba(255,255,255,.045); font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.pipeline-cycle-heading { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin: 4px 2px 10px; }
.pipeline-cycle-heading > div { display: flex; align-items: center; gap: 10px; }
.pipeline-cycle-heading > div > span { min-width: 31px; height: 31px; display: grid; place-items: center; border-radius: 8px; color: var(--cyan); background: var(--cyan-soft); font-size: 8px; font-weight: 900; }
.pipeline-cycle-heading > div > div { display: grid; gap: 2px; }
.pipeline-cycle-heading strong { font-size: 12px; }
.pipeline-cycle-heading small { color: var(--muted); font-size: 9px; }
.pipeline-cycle-heading em { padding: 4px 7px; border-radius: 6px; color: var(--muted); background: rgba(255,255,255,.035); font-size: 8px; font-style: normal; text-transform: uppercase; letter-spacing: .06em; }
.pipeline-flow { display: grid; gap: 18px; }
.foundation-flow { grid-template-columns: repeat(3, 1fr); }
.branch-flow { grid-template-columns: repeat(3, 1fr); }
.pipeline-step { position: relative; min-height: 142px; display: grid; align-content: start; gap: 7px; padding: 18px; overflow: visible; border: 1px solid var(--border); border-radius: 15px; outline: none; background: linear-gradient(145deg, rgba(18,35,48,.96), rgba(10,23,33,.96)); color: var(--text); text-align: left; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.pipeline-step:not(:last-child)::after { content: "→"; position: absolute; z-index: 2; right: -15px; top: calc(50% - 12px); width: 12px; color: #607e91; font-size: 18px; }
.pipeline-step:hover { transform: translateY(-3px); border-color: rgba(68,211,197,.3); box-shadow: 0 15px 32px rgba(0,0,0,.18); }
.pipeline-step:focus-visible, .pipeline-step.selected { border-color: rgba(68,211,197,.55); box-shadow: 0 0 0 2px rgba(68,211,197,.08), 0 15px 32px rgba(0,0,0,.2); }
.pipeline-step .step-number { position: absolute; top: 12px; right: 13px; color: #5e7685; font-size: 8px; font-weight: 900; }
.pipeline-step i { width: 34px; height: 34px; display: grid; place-items: center; margin-bottom: 3px; border-radius: 10px; color: var(--cyan); background: var(--cyan-soft); font-size: 10px; font-style: normal; font-weight: 900; }
.pipeline-step.historical i { color: var(--blue); background: rgba(85,167,255,.1); }
.pipeline-step.live i { color: var(--green); background: rgba(125,222,156,.1); }
.pipeline-step.governance i { color: var(--yellow); background: rgba(240,199,107,.1); }
.pipeline-step strong { font-size: 13px; }
.pipeline-step small { color: var(--muted); font-size: 9px; line-height: 1.45; }
.pipeline-branches { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.pipeline-branch { min-width: 0; padding: 18px; border: 1px solid var(--border); border-radius: 17px; background: rgba(10,23,33,.45); }
.historical-branch { box-shadow: inset 0 1px rgba(85,167,255,.08); }
.live-branch { box-shadow: inset 0 1px rgba(125,222,156,.08); }
.pipeline-detail { padding: 22px; border-color: rgba(68,211,197,.22); background: radial-gradient(circle at 100% 0, rgba(68,211,197,.065), transparent 28%), var(--panel); }
.pipeline-detail-heading { display: flex; align-items: center; gap: 10px; }
.pipeline-detail-heading span { padding: 5px 7px; border-radius: 6px; color: var(--cyan); background: var(--cyan-soft); font-size: 8px; font-weight: 900; letter-spacing: .08em; }
.pipeline-detail-heading strong { font-size: 17px; }
.pipeline-detail > p { margin: 10px 0 18px; color: var(--muted); font-size: 11px; }
.pipeline-detail-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 9px; }
.pipeline-detail-grid div { min-height: 83px; padding: 12px; border: 1px solid rgba(162,190,207,.09); border-radius: 10px; background: rgba(7,18,27,.5); }
.pipeline-detail-grid span { display: block; margin-bottom: 7px; color: #657e8d; font-size: 7px; font-weight: 900; letter-spacing: .09em; }
.pipeline-detail-grid strong { color: #ccd8de; font-size: 10px; line-height: 1.45; }
.pipeline-targets { display: grid; grid-template-columns: 1.25fr .7fr .7fr; align-items: center; gap: 12px; padding: 20px; }
.pipeline-targets h3 { margin: 0; font-size: 16px; }
.target-path { display: grid; gap: 4px; padding: 14px; border: 1px solid var(--border); border-radius: 12px; background: rgba(7,18,27,.55); }
.target-path span { color: var(--muted); font-size: 7px; font-weight: 900; letter-spacing: .1em; }
.target-path strong { font-size: 12px; }
.target-path small { font-size: 9px; }
.target-path.revenue small { color: var(--cyan); }
.target-path.quotas small { color: var(--blue); }

.diagram-header { padding: 5px 4px 2px; text-align: center; }
.diagram-header h2 { max-width: 820px; margin: 0 auto; font-size: clamp(25px, 3vw, 38px); letter-spacing: -.045em; }
.diagram-header > p:last-child { margin: 10px 0 0; color: var(--muted); font-size: 12px; }
.ml-diagram { position: relative; display: grid; justify-items: center; gap: 0; padding: 28px 58px 34px; overflow: hidden; background: radial-gradient(circle at 50% 18%, rgba(68,211,197,.07), transparent 25%), radial-gradient(circle at 90% 75%, rgba(85,167,255,.06), transparent 24%), rgba(13,27,38,.82); }
.ml-diagram::before { content: ""; position: absolute; inset: 0; pointer-events: none; background-image: radial-gradient(rgba(162,190,207,.075) 1px, transparent 1px); background-size: 24px 24px; mask-image: linear-gradient(to bottom, rgba(0,0,0,.7), transparent 94%); }
.diagram-orchestrator { position: relative; z-index: 1; display: flex; align-items: center; gap: 8px; margin-bottom: 22px; padding: 8px 13px; border: 1px dashed rgba(68,211,197,.28); border-radius: 999px; color: var(--cyan); background: rgba(68,211,197,.07); }
.diagram-orchestrator > span { font-size: 17px; }
.diagram-orchestrator strong { font-size: 11px; }
.diagram-orchestrator small { color: var(--muted); font-size: 9px; }
.diagram-sources { position: relative; z-index: 1; width: min(780px, 100%); display: grid; grid-template-columns: 1fr 1fr; gap: 100px; }
.diagram-bubble { position: relative; z-index: 1; display: grid; justify-items: center; padding: 17px 20px; border: 1px solid var(--border); border-radius: 22px; background: linear-gradient(145deg, rgba(21,42,56,.98), rgba(10,23,33,.98)); box-shadow: 0 16px 35px rgba(0,0,0,.19); text-align: center; }
.diagram-bubble::after { content: ""; position: absolute; inset: auto 18% -1px; height: 1px; background: linear-gradient(90deg, transparent, var(--bubble-color, var(--cyan)), transparent); opacity: .65; }
.diagram-bubble small { color: var(--bubble-color, var(--cyan)); font-size: 7px; font-weight: 900; letter-spacing: .12em; }
.diagram-bubble strong { margin-top: 4px; font-size: 14px; }
.diagram-bubble p { margin: 6px 0 0; color: var(--muted); font-size: 9px; line-height: 1.4; }
.bubble-icon { width: 35px; height: 35px; display: grid; place-items: center; margin-bottom: 8px; border-radius: 50%; color: var(--bubble-color, var(--cyan)); background: color-mix(in srgb, var(--bubble-color, var(--cyan)) 12%, transparent); font-size: 10px; font-weight: 900; }
.social-source { --bubble-color: var(--blue); }
.sales-source { --bubble-color: var(--green); }
.diagram-converge { position: relative; z-index: 1; width: min(600px, 72%); height: 64px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: end; }
.diagram-converge span { height: 35px; border-bottom: 1px solid rgba(162,190,207,.34); }
.diagram-converge span:first-child { border-right: 1px solid rgba(162,190,207,.34); border-radius: 0 0 12px 0; }
.diagram-converge span:last-child { border-left: 1px solid rgba(162,190,207,.34); border-radius: 0 0 0 12px; }
.diagram-converge i { width: 34px; color: var(--cyan); font-size: 19px; font-style: normal; text-align: center; transform: translateY(8px); }
.hub { width: min(470px, 86%); }
.feature-hub { --bubble-color: var(--cyan); border-color: rgba(68,211,197,.3); background: linear-gradient(145deg, rgba(24,59,65,.92), rgba(11,29,38,.98)); }
.diagram-arrow { position: relative; z-index: 1; min-height: 70px; display: grid; place-items: center; align-content: center; }
.diagram-arrow::before { content: ""; position: absolute; top: 8px; bottom: 9px; width: 1px; background: linear-gradient(var(--cyan), rgba(68,211,197,.18)); }
.diagram-arrow span { z-index: 1; padding: 4px 7px; color: #68818f; background: #0c1b26; font-size: 7px; font-weight: 850; text-transform: uppercase; letter-spacing: .08em; }
.diagram-arrow i { z-index: 1; margin-top: 5px; color: var(--cyan); background: #0c1b26; font-size: 17px; font-style: normal; line-height: 1; }
.diagram-model-zone { position: relative; z-index: 1; width: min(1040px, 100%); display: grid; grid-template-columns: .62fr 2.38fr; align-items: stretch; gap: 13px; padding: 15px; border: 1px dashed rgba(85,167,255,.23); border-radius: 24px; background: rgba(85,167,255,.035); }
.model-zone-label { display: grid; align-content: center; justify-items: center; text-align: center; }
.model-zone-label > span { width: 42px; height: 42px; display: grid; place-items: center; margin-bottom: 8px; border-radius: 13px; color: var(--blue); background: rgba(85,167,255,.11); font-size: 10px; font-weight: 900; }
.model-zone-label strong { font-size: 12px; }
.model-zone-label small { margin-top: 4px; color: var(--muted); font-size: 8px; }
.model-landscape { display: grid; grid-template-columns: 1fr 1fr 1.18fr; gap: 11px; }
.diagram-bubble.model { min-height: 105px; align-content: center; border-radius: 17px; }
.revenue-model { --bubble-color: var(--cyan); }
.quotas-model { --bubble-color: var(--blue); }
.future-model { --bubble-color: #b28cff; border-style: dashed; background: linear-gradient(145deg, rgba(47,37,67,.72), rgba(12,24,35,.96)); }
.prediction-bubble { --bubble-color: var(--yellow); width: min(510px, 90%); border-color: rgba(240,199,107,.26); }
.diagram-time { position: relative; z-index: 1; min-height: 78px; display: grid; justify-items: center; align-content: center; color: var(--muted); }
.diagram-time span { font-size: 7px; font-weight: 900; text-transform: uppercase; letter-spacing: .1em; }
.diagram-time i { height: 9px; color: #5e7887; font-size: 20px; font-style: normal; letter-spacing: .22em; line-height: .4; }
.diagram-time em { color: #7d94a2; font-size: 8px; font-style: normal; }
.diagram-time b { margin-top: 3px; color: var(--green); font-size: 18px; }
.diagram-outcomes { position: relative; z-index: 1; width: min(720px, 90%); display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 15px; }
.diagram-bubble.outcome { --bubble-color: var(--green); min-height: 112px; align-content: center; }
.diagram-bubble.outcome:last-child { --bubble-color: var(--yellow); }
.outcome-plus { width: 31px; height: 31px; display: grid; place-items: center; border: 1px solid var(--border); border-radius: 50%; color: var(--muted); background: #0b1923; font-size: 16px; }
.competition-ring { position: relative; z-index: 1; width: min(880px, 100%); display: grid; grid-template-columns: 1fr .8fr auto .8fr 1fr; align-items: center; gap: 12px; padding: 20px; border: 1px solid rgba(240,199,107,.2); border-radius: 26px; background: radial-gradient(circle at 50% 50%, rgba(240,199,107,.07), transparent 36%), rgba(10,23,33,.76); }
.competition-title { display: grid; }
.competition-title small { color: var(--yellow); font-size: 7px; font-weight: 900; letter-spacing: .12em; }
.competition-title strong { margin-top: 4px; font-size: 13px; }
.competitor { display: grid; justify-items: center; padding: 14px 9px; border: 1px solid var(--border); border-radius: 15px; background: rgba(16,35,47,.9); text-align: center; }
.competitor span { font-size: 7px; font-weight: 900; letter-spacing: .1em; }
.competitor strong { margin: 4px 0; font-size: 13px; }
.competitor small { color: var(--muted); font-size: 8px; }
.competitor.champion span { color: var(--cyan); }
.competitor.challenger span { color: var(--yellow); }
.versus { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 50%; color: #728997; background: rgba(255,255,255,.04); font-size: 8px; font-weight: 900; }
.competition-decision { display: grid; padding-left: 10px; border-left: 1px solid var(--border); }
.competition-decision span { color: var(--muted); font-size: 7px; text-transform: uppercase; letter-spacing: .07em; }
.competition-decision strong { margin-top: 5px; color: var(--green); font-size: 11px; }
.continuous-loop { position: relative; z-index: 1; width: min(700px, 92%); display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 15px; margin-top: 27px; padding: 14px 18px; border: 1px dashed rgba(85,167,255,.3); border-radius: 18px; background: rgba(85,167,255,.045); }
.continuous-loop::before { content: ""; position: absolute; right: -92px; bottom: 24px; width: 78px; height: 570px; pointer-events: none; border-top: 1px dashed rgba(85,167,255,.32); border-right: 1px dashed rgba(85,167,255,.32); border-radius: 0 18px 0 0; }
.continuous-loop::after { content: "← RETREINO"; position: absolute; right: -79px; bottom: 584px; color: var(--blue); font-size: 7px; font-weight: 900; letter-spacing: .08em; white-space: nowrap; }
.loop-arrow { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 50%; color: var(--blue); background: rgba(85,167,255,.1); font-size: 29px; }
.continuous-loop > div:last-child { display: grid; gap: 3px; }
.continuous-loop small { color: var(--blue); font-size: 7px; font-weight: 900; letter-spacing: .12em; }
.continuous-loop strong { font-size: 12px; }
.continuous-loop p { margin: 0; color: var(--muted); font-size: 9px; }
.improvement-heading { position: relative; z-index: 1; display: flex; align-items: center; gap: 10px; margin: 28px 0 12px; text-align: left; }
.improvement-heading > span { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 50%; color: var(--cyan); background: var(--cyan-soft); font-size: 21px; }
.improvement-heading > div { display: grid; gap: 3px; }
.improvement-heading small { color: var(--cyan); font-size: 7px; font-weight: 900; letter-spacing: .12em; }
.improvement-heading strong { font-size: 12px; }
.improvement-loops { position: relative; z-index: 1; width: min(980px, 100%); display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.improvement-card { position: relative; display: grid; grid-template-columns: auto 1fr; gap: 12px; padding: 17px; border: 1px dashed var(--improvement-color); border-radius: 19px; background: color-mix(in srgb, var(--improvement-color) 5%, rgba(10,23,33,.92)); }
.data-improvement { --improvement-color: var(--cyan); }
.model-improvement { --improvement-color: var(--blue); }
.improvement-icon { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 14px; color: var(--improvement-color); background: color-mix(in srgb, var(--improvement-color) 12%, transparent); font-size: 10px; font-weight: 950; }
.improvement-card > div:nth-child(2) { display: grid; gap: 3px; }
.improvement-card small { color: var(--improvement-color); font-size: 7px; font-weight: 900; letter-spacing: .1em; }
.improvement-card strong { font-size: 12px; }
.improvement-card p { margin: 3px 0 0; color: var(--muted); font-size: 9px; line-height: 1.5; }
.improvement-tags { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 5px; }
.improvement-tags span { padding: 4px 6px; border-radius: 5px; color: #91a6b2; background: rgba(255,255,255,.04); font-size: 7px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.improvement-card::before { content: ""; position: absolute; bottom: 50%; width: 55px; height: 690px; pointer-events: none; border-top: 1px dashed color-mix(in srgb, var(--improvement-color) 42%, transparent); }
.data-improvement::before { left: -70px; border-left: 1px dashed color-mix(in srgb, var(--improvement-color) 42%, transparent); border-radius: 18px 0 0 0; }
.model-improvement::before { right: -70px; border-right: 1px dashed color-mix(in srgb, var(--improvement-color) 42%, transparent); border-radius: 0 18px 0 0; }
.improvement-card::after { position: absolute; bottom: calc(50% + 700px); color: var(--improvement-color); font-size: 7px; font-weight: 900; letter-spacing: .08em; white-space: nowrap; }
.data-improvement::after { content: "DADOS MELHORES →"; left: -61px; }
.model-improvement::after { content: "← MODELOS MELHORES"; right: -61px; }
.diagram-footer-note { display: flex; align-items: center; justify-content: center; gap: 10px; color: var(--muted); font-size: 10px; }
.diagram-footer-note > span { color: var(--cyan); font-size: 18px; }
.diagram-footer-note p { margin: 0; }
.diagram-footer-note strong { color: #cbd7dd; }

.influencers-page, .influencers-content { display: grid; gap: 20px; }
.influencer-portfolio-hero { position: relative; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(620px, .95fr); align-items: center; gap: 32px; padding: 27px; overflow: hidden; background: radial-gradient(circle at 82% 15%, rgba(85,167,255,.13), transparent 35%), radial-gradient(circle at 58% 110%, rgba(68,211,197,.09), transparent 28%), var(--panel); }
.influencer-portfolio-hero::after { content: ""; position: absolute; width: 170px; height: 170px; right: -80px; top: -85px; border: 1px solid rgba(68,211,197,.13); border-radius: 50%; box-shadow: 0 0 0 28px rgba(68,211,197,.025), 0 0 0 58px rgba(85,167,255,.018); pointer-events: none; }
.portfolio-hero-copy h2 { max-width: 660px; margin: 0; font-size: clamp(24px, 2.7vw, 34px); letter-spacing: -.05em; }
.portfolio-hero-copy > p:last-child { max-width: 650px; margin: 10px 0 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.portfolio-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.portfolio-summary > div { min-width: 0; padding: 13px 14px; border: 1px solid var(--border); border-radius: 13px; background: rgba(6,17,25,.55); }
.portfolio-summary > div.featured { border-color: rgba(68,211,197,.24); background: linear-gradient(135deg, rgba(68,211,197,.11), rgba(6,17,25,.58)); }
.portfolio-summary span, .portfolio-summary small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.portfolio-summary span { margin-bottom: 5px; color: var(--muted); font-size: 8px; font-weight: 850; text-transform: uppercase; letter-spacing: .08em; }
.portfolio-summary strong { display: block; color: #e2ebef; font-size: clamp(17px, 1.8vw, 23px); letter-spacing: -.04em; }
.portfolio-summary .featured strong { color: var(--green); }
.portfolio-summary small { margin-top: 4px; color: #627a87; font-size: 8px; }
.portfolio-toolbar { display: grid; grid-template-columns: minmax(220px, 1fr) 160px 190px 190px 42px; align-items: end; gap: 9px; padding: 13px; box-shadow: 0 12px 35px rgba(0,0,0,.16); }
.portfolio-toolbar label { min-width: 0; display: grid; gap: 5px; color: var(--muted); font-size: 8px; font-weight: 850; text-transform: uppercase; letter-spacing: .07em; }
.portfolio-toolbar input, .portfolio-toolbar select { width: 100%; min-width: 0; height: 40px; padding: 9px 11px; border: 1px solid var(--border); border-radius: 10px; outline: none; background: #0a1620; color: var(--text); font-size: 10px; text-transform: none; letter-spacing: 0; }
.portfolio-toolbar input:focus, .portfolio-toolbar select:focus { border-color: rgba(68,211,197,.48); box-shadow: 0 0 0 3px rgba(68,211,197,.07); }
.portfolio-refresh { width: 42px; height: 40px; border: 1px solid var(--border); border-radius: 10px; background: var(--cyan-soft); color: var(--cyan); font-size: 19px; }
.portfolio-refresh.refreshing { animation: spin .8s linear infinite; }
.podium-section { padding: 5px 1px 1px; }
.portfolio-section-heading, .ranking-panel-heading, .campaign-ranking-detail > header { display: flex; align-items: end; justify-content: space-between; gap: 18px; }
.portfolio-section-heading { margin-bottom: 16px; }
.portfolio-section-heading h3, .ranking-panel-heading h3, .campaign-ranking-detail h3 { margin: 0; color: #e2eaee; font-size: 18px; letter-spacing: -.035em; }
.portfolio-section-heading > span, .campaign-ranking-detail > header > span { color: var(--muted); font-size: 9px; }
.portfolio-section-heading .eyebrow, .ranking-panel-heading .eyebrow, .campaign-ranking-detail .eyebrow { margin-bottom: 4px; font-size: 8px; }
.influencer-podium { display: grid; grid-template-columns: repeat(3, 1fr); align-items: end; gap: 11px; padding-top: 12px; }
.podium-card { position: relative; min-height: 177px; display: grid; place-items: center; align-content: center; gap: 5px; padding: 20px 14px 15px; border: 1px solid var(--border); border-radius: 17px; overflow: hidden; background: linear-gradient(155deg, rgba(20,41,54,.86), rgba(8,20,29,.78)); color: var(--text); transition: .18s ease; }
.podium-card:hover { transform: translateY(-3px); border-color: rgba(68,211,197,.33); box-shadow: 0 17px 38px rgba(0,0,0,.25); }
.podium-card.place-1 { min-height: 198px; transform: translateY(-10px); border-color: rgba(240,199,107,.32); background: radial-gradient(circle at 50% 0, rgba(240,199,107,.13), transparent 38%), linear-gradient(155deg, rgba(22,42,52,.9), rgba(8,20,29,.8)); }
.podium-card.place-1:hover { transform: translateY(-13px); }
.podium-card::after { content: ""; position: absolute; inset: auto 15% 0; height: 2px; border-radius: 99px; background: linear-gradient(90deg, transparent, var(--cyan), transparent); opacity: .55; }
.podium-card.place-1::after { background: linear-gradient(90deg, transparent, var(--yellow), transparent); }
.podium-place { position: absolute; left: 11px; top: 10px; color: #708995; font-size: 9px; font-weight: 950; }
.place-1 .podium-place { color: var(--yellow); font-size: 13px; }
.portfolio-avatar { width: 39px; height: 39px; display: grid; flex: 0 0 auto; place-items: center; overflow: hidden; border: 1px solid rgba(68,211,197,.2); border-radius: 12px; background: linear-gradient(145deg, #1c5260, #12303f); color: #9af5e3; font-size: 12px; font-weight: 900; }
.portfolio-avatar img { width: 100%; height: 100%; object-fit: cover; }
.podium-avatar { width: 49px; height: 49px; border-radius: 15px; box-shadow: 0 10px 20px rgba(0,0,0,.22); }
.podium-card > strong { max-width: 100%; overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.podium-card > small { color: var(--muted); font-size: 8px; }
.podium-card > b { margin-top: 4px; color: var(--green); font-size: 18px; letter-spacing: -.04em; }
.podium-foot { color: #637a86; font-size: 7px; }
.influencer-explorer { display: grid; grid-template-columns: minmax(360px, 420px) minmax(0, 1fr); align-items: start; gap: 15px; }
.influencer-ranking-panel { position: sticky; top: 15px; max-height: calc(100vh - 30px); display: grid; grid-template-rows: auto minmax(0, 1fr); overflow: hidden; }
.ranking-panel-heading { padding: 17px 17px 12px; border-bottom: 1px solid var(--border); }
.ranking-panel-heading > span { padding: 5px 8px; border-radius: 7px; background: var(--cyan-soft); color: var(--cyan); font-size: 7px; font-weight: 900; text-transform: uppercase; letter-spacing: .06em; }
.influencer-ranking { min-height: 260px; padding: 7px; overflow-y: auto; scrollbar-color: rgba(68,211,197,.25) transparent; }
.influencer-rank-row { width: 100%; display: grid; grid-template-columns: 24px 39px minmax(0, 1fr) auto; align-items: center; gap: 9px; padding: 10px 8px; border: 1px solid transparent; border-radius: 11px; background: transparent; color: var(--text); text-align: left; transition: .16s ease; }
.influencer-rank-row + .influencer-rank-row { margin-top: 3px; }
.influencer-rank-row:hover { border-color: rgba(162,190,207,.12); background: rgba(255,255,255,.025); }
.influencer-rank-row.active { border-color: rgba(68,211,197,.3); background: linear-gradient(110deg, rgba(68,211,197,.12), rgba(68,211,197,.025)); }
.portfolio-rank-number { color: #58717e; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 8px; font-weight: 900; }
.portfolio-rank-copy { min-width: 0; display: grid; gap: 4px; }
.portfolio-rank-copy strong, .portfolio-rank-copy small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.portfolio-rank-copy strong { font-size: 10px; }
.portfolio-rank-copy small { color: var(--muted); font-size: 7px; }
.portfolio-rank-copy i { height: 3px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.045); }
.portfolio-rank-copy i span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--cyan), var(--blue)); }
.portfolio-rank-value { min-width: 76px; display: grid; gap: 3px; text-align: right; }
.portfolio-rank-value strong { color: var(--green); font-size: 9px; }
.portfolio-rank-value small { color: #657c88; font-size: 7px; }
.influencer-detail { min-width: 0; padding: 21px; }
.influencer-detail-empty { min-height: 620px; display: grid; place-content: center; justify-items: center; gap: 7px; color: var(--muted); text-align: center; }
.influencer-detail-empty > span { width: 55px; height: 55px; display: grid; place-items: center; border: 1px solid var(--border); border-radius: 17px; background: var(--cyan-soft); color: var(--cyan); font-size: 22px; }
.influencer-detail-empty strong { margin-top: 6px; color: #d2dee3; font-size: 13px; }
.influencer-detail-empty p { margin: 0; font-size: 9px; }
.portfolio-detail-header { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-bottom: 17px; border-bottom: 1px solid var(--border); }
.portfolio-detail-identity { min-width: 0; display: flex; align-items: center; gap: 13px; }
.detail-avatar { width: 58px; height: 58px; border-radius: 17px; font-size: 17px; }
.portfolio-detail-identity > div { min-width: 0; }
.portfolio-detail-identity span { color: var(--cyan); font-size: 7px; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; }
.portfolio-detail-identity h2 { margin: 4px 0 2px; overflow: hidden; font-size: 23px; letter-spacing: -.045em; text-overflow: ellipsis; white-space: nowrap; }
.portfolio-detail-identity p { margin: 0; color: var(--muted); font-size: 9px; }
.portfolio-position { flex: 0 0 auto; display: grid; justify-items: end; gap: 2px; }
.portfolio-position span { color: var(--muted); font-size: 7px; font-weight: 850; letter-spacing: .08em; }
.portfolio-position strong { color: var(--yellow); font-size: 25px; line-height: 1; }
.portfolio-position small { color: #667e8a; font-size: 7px; }
.portfolio-kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-top: 16px; }
.portfolio-kpis article { min-width: 0; padding: 12px; border: 1px solid rgba(162,190,207,.1); border-radius: 11px; background: rgba(255,255,255,.02); }
.portfolio-kpis span, .portfolio-kpis small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.portfolio-kpis span { color: var(--muted); font-size: 7px; text-transform: uppercase; letter-spacing: .06em; }
.portfolio-kpis strong { display: block; margin-top: 5px; color: #e1e9ed; font-size: 14px; letter-spacing: -.03em; }
.portfolio-kpis small { margin-top: 3px; color: #617986; font-size: 7px; }
.portfolio-history-strip { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1px; margin: 9px 0 14px; overflow: hidden; border: 1px solid var(--border); border-radius: 11px; background: var(--border); }
.portfolio-history-strip div { padding: 9px; background: rgba(8,20,29,.96); text-align: center; }
.portfolio-history-strip span { display: block; color: var(--muted); font-size: 7px; }
.portfolio-history-strip strong { display: block; margin-top: 3px; color: #cdd9de; font-size: 11px; }
.campaign-highlights { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.campaign-highlight { position: relative; min-width: 0; display: grid; gap: 4px; padding: 13px 14px; overflow: hidden; border: 1px solid var(--border); border-radius: 12px; background: rgba(8,20,29,.62); }
.campaign-highlight::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 2px; background: var(--highlight); }
.campaign-highlight.best { --highlight: var(--green); }
.campaign-highlight.worst { --highlight: var(--yellow); }
.campaign-highlight > span { color: var(--highlight); font-size: 7px; font-weight: 900; letter-spacing: .08em; }
.campaign-highlight > strong { overflow: hidden; color: #cbd7dd; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.campaign-highlight > b { color: var(--highlight); font-size: 16px; letter-spacing: -.035em; }
.campaign-highlight > small { color: #657d89; font-size: 7px; }
.campaign-ranking-detail { margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--border); }
.portfolio-table-wrap { margin-top: 11px; overflow-x: auto; border: 1px solid var(--border); border-radius: 11px; }
.portfolio-table-wrap table { min-width: 760px; }
.portfolio-table-wrap th { padding: 9px 10px; background: rgba(6,17,25,.72); font-size: 7px; }
.portfolio-table-wrap td { padding: 10px; font-size: 8px; vertical-align: middle; }
.portfolio-table-wrap td > strong, .portfolio-table-wrap td > small { display: block; }
.portfolio-table-wrap td > strong { max-width: 250px; overflow: hidden; color: #d1dde2; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.portfolio-table-wrap td > small { margin-top: 3px; color: #617986; font-size: 7px; }
.campaign-rank-badge { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 7px; background: var(--cyan-soft); color: var(--cyan); font-size: 7px; font-weight: 900; }
.portfolio-status { display: inline-flex; padding: 4px 6px; border-radius: 6px; font-size: 7px; font-weight: 850; white-space: nowrap; }
.portfolio-status.active { color: var(--green); background: rgba(125,222,156,.1); }
.portfolio-status.finished { color: #a9bac3; background: rgba(169,186,195,.08); }
.portfolio-status.unknown { color: var(--yellow); background: rgba(240,199,107,.08); }
.portfolio-table-empty { height: 90px; color: var(--muted); text-align: center; }

.influencer-lab-page, .influencer-lab-content { width: 100%; min-width: 0; max-width: 100%; display: grid; gap: 18px; }
.influencer-lab-content > *, .influencer-lab-hero, .lab-profile > *, .lab-social-panel, .lab-social-metrics, .lab-social-mix, .lab-kpi-grid, .lab-analysis-panel, .lab-trend-panel, .lab-chart-wrap, .lab-distribution-grid, .lab-coverage-panel, .lab-campaigns-panel { min-width: 0; max-width: 100%; }
.influencer-lab-hero { position: relative; display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(380px, .65fr); align-items: center; gap: 28px; padding: 27px; overflow: hidden; background: radial-gradient(circle at 82% 0, rgba(68,211,197,.14), transparent 34%), radial-gradient(circle at 60% 120%, rgba(85,167,255,.08), transparent 28%), var(--panel); }
.influencer-lab-hero::after { content: ""; position: absolute; width: 210px; height: 210px; right: -105px; bottom: -135px; border: 1px solid rgba(68,211,197,.12); border-radius: 50%; box-shadow: 0 0 0 32px rgba(68,211,197,.025), 0 0 0 67px rgba(85,167,255,.015); pointer-events: none; }
.influencer-lab-hero h2 { margin: 0; font-size: clamp(25px, 2.8vw, 36px); letter-spacing: -.055em; }
.influencer-lab-hero > div:first-child > p:last-child { max-width: 760px; margin: 10px 0 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.lab-selector-wrap { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1fr) 44px; align-items: end; gap: 8px; padding: 13px; border: 1px solid rgba(68,211,197,.15); border-radius: 14px; background: rgba(5,16,24,.66); }
.lab-selector-wrap label { display: grid; gap: 6px; color: var(--cyan); font-size: 10px; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; }
.lab-selector-wrap select, .lab-table-controls input, .lab-table-controls select { width: 100%; min-width: 0; height: 44px; padding: 10px 12px; border: 1px solid var(--border); border-radius: 10px; outline: none; background: #091721; color: var(--text); font-size: 12px; }
.lab-selector-wrap select:focus, .lab-table-controls input:focus, .lab-table-controls select:focus { border-color: rgba(68,211,197,.48); box-shadow: 0 0 0 3px rgba(68,211,197,.07); }
.lab-refresh { width: 44px; height: 42px; border: 1px solid rgba(68,211,197,.2); border-radius: 10px; background: var(--cyan-soft); color: var(--cyan); font-size: 20px; }
.lab-refresh.refreshing { animation: spin .8s linear infinite; }
.lab-profile { display: grid; grid-template-columns: minmax(280px, .8fr) minmax(430px, 1fr); gap: 20px 30px; padding: 22px; background: linear-gradient(135deg, rgba(68,211,197,.055), transparent 38%), var(--panel); }
.lab-profile-main { display: flex; align-items: center; gap: 15px; }
.lab-profile-avatar { width: 66px; height: 66px; border-radius: 19px; font-size: 18px; }
.lab-profile-main h2 { margin: 1px 0 5px; font-size: 25px; letter-spacing: -.045em; }
.lab-profile-main .eyebrow { margin-bottom: 4px; font-size: 9px; }
.lab-profile-main > div > span { color: var(--muted); font-size: 11px; }
.lab-profile-facts { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.lab-profile-facts > div { min-width: 0; padding: 11px; border: 1px solid rgba(162,190,207,.09); border-radius: 11px; background: rgba(4,15,23,.45); }
.lab-profile-facts span, .lab-profile-facts strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lab-profile-facts span { color: var(--muted); font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.lab-profile-facts strong { margin-top: 6px; color: #e2ecef; font-size: 17px; }
.lab-account-list { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 7px; padding-top: 15px; border-top: 1px solid var(--border); }
.lab-account-chip { display: grid; gap: 2px; padding: 7px 10px; border: 1px solid rgba(162,190,207,.10); border-radius: 9px; background: rgba(255,255,255,.025); }
.lab-account-chip.primary { border-color: rgba(68,211,197,.28); background: rgba(68,211,197,.08); }
.lab-account-chip.private { border-color: rgba(240,199,107,.22); }
.lab-account-chip strong { color: #cbdade; font-size: 11px; }
.lab-account-chip.primary strong { color: var(--cyan); }
.lab-account-chip small, .lab-account-empty { color: #6d8592; font-size: 9px; }
.lab-social-panel { padding: 20px; background: linear-gradient(145deg, rgba(85,167,255,.035), transparent 42%), var(--panel); }
.lab-social-metrics { display: grid; grid-template-columns: minmax(0, 1fr); gap: 15px; margin-top: 14px; }
.lab-social-column { min-width: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.lab-social-column > header { grid-column: 1 / -1; }
.lab-social-column > header, .lab-kpi-column > header { padding: 0 2px 2px; color: var(--cyan); font-size: 10px; font-weight: 900; letter-spacing: .075em; text-transform: uppercase; }
.lab-social-metrics article { min-width: 0; padding: 12px; border: 1px solid rgba(162,190,207,.09); border-radius: 11px; background: rgba(5,16,24,.44); }
.lab-social-metrics span, .lab-social-metrics strong, .lab-social-metrics small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lab-social-metrics span { color: #8299a5; font-size: 9px; font-weight: 850; text-transform: uppercase; letter-spacing: .055em; }
.lab-social-metrics strong { margin-top: 7px; color: #dce8eb; font-size: 19px; letter-spacing: -.035em; }
.lab-social-metrics small { margin-top: 5px; color: #607986; font-size: 9px; }
.lab-social-mix { display: grid; grid-template-columns: 260px minmax(0, 1fr); align-items: center; gap: 18px; margin-top: 10px; padding: 13px; border: 1px solid rgba(68,211,197,.10); border-radius: 11px; background: rgba(68,211,197,.025); }
.lab-social-mix-heading { display: grid; gap: 5px; }
.lab-social-mix-heading strong { color: #cbdadd; font-size: 12px; }
.lab-social-mix-heading small { color: #617a86; font-size: 9px; line-height: 1.45; }
.lab-social-mix-bars { display: grid; grid-template-columns: repeat(4, 1fr); gap: 9px; }
.lab-social-mix-bars article { display: grid; gap: 6px; }
.lab-social-mix-bars article > div { display: flex; justify-content: space-between; gap: 7px; color: #8ca3ae; font-size: 9px; }
.lab-social-mix-bars i { height: 6px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.05); }
.lab-social-mix-bars i span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--cyan), var(--blue)); }
.lab-kpi-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: start; gap: 12px; }
.lab-kpi-column { min-width: 0; display: grid; gap: 9px; }
.lab-kpi { position: relative; min-width: 0; padding: 14px; overflow: hidden; }
.lab-kpi::after { content: ""; position: absolute; inset: auto 0 0; height: 2px; background: linear-gradient(90deg, transparent, rgba(85,167,255,.35), transparent); }
.lab-kpi.featured::after { background: linear-gradient(90deg, transparent, var(--green), transparent); }
.lab-kpi.success::after { background: linear-gradient(90deg, transparent, var(--cyan), transparent); }
.lab-kpi.warning::after { background: linear-gradient(90deg, transparent, var(--yellow), transparent); }
.lab-kpi > span, .lab-kpi > strong, .lab-kpi > small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lab-kpi > span { color: var(--muted); font-size: 9px; font-weight: 850; text-transform: uppercase; letter-spacing: .06em; }
.lab-kpi > strong { margin-top: 7px; color: #dce7eb; font-size: clamp(15px, 1.5vw, 20px); letter-spacing: -.04em; }
.lab-kpi.featured > strong, .lab-kpi.success > strong { color: var(--green); }
.lab-kpi.warning > strong { color: var(--yellow); }
.lab-kpi > small { margin-top: 5px; color: #627b88; font-size: 9px; }
.lab-analysis-panel, .lab-trend-panel, .lab-coverage-panel, .lab-campaigns-panel { padding: 20px; }
.lab-section-heading, .lab-campaigns-heading { display: flex; align-items: end; justify-content: space-between; gap: 18px; }
.lab-section-heading h3, .lab-campaigns-heading h3 { margin: 0; color: #dce7eb; font-size: 17px; letter-spacing: -.035em; }
.lab-section-heading .eyebrow, .lab-campaigns-heading .eyebrow { margin-bottom: 4px; font-size: 9px; }
.lab-section-heading > span, .lab-campaigns-heading > div > span { color: var(--muted); font-size: 10px; }
.lab-analysis-content { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, .9fr); gap: 18px; margin-top: 16px; }
.lab-analysis-section { min-width: 0; }
.lab-analysis-section + .lab-analysis-section { padding-left: 18px; border-left: 1px solid var(--border); }
.lab-analysis-section > header { display: grid; gap: 3px; }
.lab-analysis-section > header strong { color: var(--cyan); font-size: 10px; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.lab-analysis-section > header span { color: #657e8a; font-size: 9px; }
.lab-insights { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; margin-top: 10px; }
.lab-insight { display: grid; grid-template-columns: 4px minmax(0, 1fr); gap: 10px; padding: 11px; border: 1px solid rgba(162,190,207,.08); border-radius: 11px; background: rgba(5,16,24,.45); }
.lab-insight > i { width: 4px; border-radius: 99px; background: var(--cyan); }
.lab-insight.warning > i { background: var(--yellow); }
.lab-insight.positive > i { background: var(--green); }
.lab-insight > div { min-width: 0; display: grid; gap: 3px; }
.lab-insight span { color: #8ba2ae; font-size: 9px; font-weight: 850; text-transform: uppercase; letter-spacing: .05em; }
.lab-insight strong { overflow: hidden; color: #e0eaed; font-size: 14px; text-overflow: ellipsis; white-space: nowrap; }
.lab-insight small { overflow: hidden; color: #637c88; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.lab-highlights { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 10px; }
.lab-highlight { position: relative; min-width: 0; display: grid; gap: 5px; padding: 11px 12px; border: 1px solid rgba(162,190,207,.08); border-radius: 11px; overflow: hidden; background: rgba(5,16,24,.48); }
.lab-highlight::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 2px; background: var(--cyan); }
.lab-highlight.fast::before { background: var(--blue); }
.lab-highlight.efficient::before { background: var(--green); }
.lab-highlight.low::before { background: var(--yellow); }
.lab-highlight > span { color: #718b98; font-size: 9px; font-weight: 850; text-transform: uppercase; letter-spacing: .06em; }
.lab-highlight > strong { overflow: hidden; color: #cbd8de; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.lab-highlight > b { color: var(--cyan); font-size: 15px; letter-spacing: -.035em; }
.lab-highlight.efficient > b { color: var(--green); }
.lab-highlight.low > b { color: var(--yellow); }
.lab-highlight > small { overflow: hidden; color: #5f7885; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.lab-chart-wrap { height: 310px; margin-top: 12px; overflow: hidden; border: 1px solid rgba(162,190,207,.07); border-radius: 12px; background: linear-gradient(180deg, rgba(68,211,197,.025), rgba(4,14,22,.38)); }
#lab-trend-chart { width: 100%; height: 100%; }
.lab-distribution-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.lab-distribution-card { min-width: 0; padding: 17px; }
.lab-distribution-card > header { display: grid; gap: 4px; padding-bottom: 12px; border-bottom: 1px solid var(--border); }
.lab-distribution-card > header span { color: var(--cyan); font-size: 9px; font-weight: 900; letter-spacing: .09em; }
.lab-distribution-card > header strong { color: #d7e3e7; font-size: 15px; }
.lab-distribution-card > div { display: grid; gap: 10px; margin-top: 13px; }
.lab-distribution-row { display: grid; gap: 5px; }
.lab-distribution-row > div { display: flex; justify-content: space-between; gap: 10px; }
.lab-distribution-row > div span { overflow: hidden; color: #9bb0ba; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.lab-distribution-row > div strong { color: #d9e4e7; font-size: 10px; }
.lab-distribution-row > i, .lab-coverage-grid article > i { height: 5px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.045); }
.lab-distribution-row > i span, .lab-coverage-grid article > i span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--cyan), var(--blue)); }
.lab-distribution-row > small { color: #5e7784; font-size: 9px; }
.lab-coverage-block { display: grid; gap: 10px; margin-top: 17px; }
.lab-coverage-block + .lab-coverage-block { padding-top: 17px; border-top: 1px solid var(--border); }
.lab-coverage-heading { display: grid; gap: 3px; }
.lab-coverage-heading strong { color: #d4e1e5; font-size: 13px; }
.lab-coverage-heading span { color: #718996; font-size: 10px; line-height: 1.45; }
.lab-coverage-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 9px; }
.lab-coverage-grid article { min-width: 0; display: grid; gap: 7px; padding: 11px; border: 1px solid rgba(162,190,207,.08); border-radius: 10px; background: rgba(5,16,24,.42); }
.lab-coverage-grid article > div { display: grid; gap: 4px; }
.lab-coverage-grid span { overflow: hidden; color: #8ea4af; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.lab-coverage-grid strong { color: #d5e1e5; font-size: 15px; }
.lab-coverage-grid small { color: #5e7784; font-size: 9px; }
.lab-social-coverage-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.lab-social-coverage-grid article { min-width: 0; display: grid; gap: 11px; padding: 14px; border: 1px solid rgba(162,190,207,.10); border-radius: 12px; background: rgba(5,16,24,.48); }
.lab-social-coverage-grid article > i { height: 6px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.05); }
.lab-social-coverage-grid article > i span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--cyan), var(--blue)); }
.lab-social-coverage-grid article.realtime > i span { background: linear-gradient(90deg, var(--blue), #7d8cff); }
.lab-social-coverage-grid article.medians > i span { background: linear-gradient(90deg, var(--green), var(--cyan)); }
.lab-social-coverage-copy { min-width: 0; display: grid; gap: 5px; }
.lab-social-coverage-copy > span { color: var(--cyan); font-size: 9px; font-weight: 900; letter-spacing: .08em; }
.lab-social-coverage-copy > strong { color: #dce7eb; font-size: 13px; }
.lab-social-coverage-copy > b { color: #f0f6f7; font-size: 19px; letter-spacing: -.035em; }
.lab-social-coverage-copy > small { min-height: 30px; color: #708995; font-size: 9px; line-height: 1.55; }
.lab-campaigns-heading { align-items: start; display: grid; grid-template-columns: minmax(250px, .55fr) minmax(0, 1.45fr); }
.lab-table-controls { width: 100%; display: grid; grid-template-columns: repeat(4, minmax(135px, 1fr)); gap: 8px; }
.lab-table-controls input { grid-column: span 2; }
.lab-filter-reset { min-height: 44px; padding: 9px 13px; border: 1px solid rgba(68,211,197,.20); border-radius: 10px; background: rgba(68,211,197,.08); color: var(--cyan); font-size: 11px; font-weight: 800; }
.lab-filter-reset:hover { background: rgba(68,211,197,.14); }
.lab-table-wrap { width: 100%; max-width: 100%; margin-top: 15px; overflow: auto; overscroll-behavior-inline: contain; border: 1px solid var(--border); border-radius: 11px; }
.lab-table-wrap table { min-width: 1580px; }
.lab-table-wrap th { position: sticky; top: 0; z-index: 1; padding: 0; background: #091721; color: #718a97; font-size: 9px; white-space: nowrap; }
.lab-table-wrap th:first-child { padding: 11px 12px; }
.lab-table-wrap th button { width: 100%; padding: 11px 12px; border: 0; background: transparent; color: inherit; font-size: inherit; font-weight: 850; text-align: left; text-transform: uppercase; letter-spacing: .055em; white-space: nowrap; }
.lab-table-wrap th button::after { content: "↕"; margin-left: 5px; color: #425c69; }
.lab-table-wrap th button.active { color: var(--cyan); background: rgba(68,211,197,.04); }
.lab-table-wrap th button.active[data-direction="asc"]::after { content: "↑"; color: var(--cyan); }
.lab-table-wrap th button.active[data-direction="desc"]::after { content: "↓"; color: var(--cyan); }
.lab-table-wrap td { padding: 11px 12px; color: #adbec6; font-size: 10px; vertical-align: middle; white-space: nowrap; }
.lab-table-wrap td > strong, .lab-table-wrap td > small, .lab-table-wrap td > span + small { display: block; }
.lab-table-wrap td > small { margin-top: 4px; color: #5f7885; font-size: 8px; }
.lab-campaign-open { max-width: 260px; display: block; padding: 0; border: 0; background: transparent; color: inherit; text-align: left; }
.lab-campaign-open strong, .lab-campaign-open small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lab-campaign-open strong { color: #d4e0e4; font-size: 11px; }
.lab-campaign-open small { margin-top: 3px; color: #5f7885; font-size: 8px; }
.lab-campaign-open:hover strong { color: var(--cyan); }
.lab-prize-type { display: inline-flex; padding: 5px 7px; border-radius: 6px; background: rgba(85,167,255,.08); color: #8fc4ff; font-size: 9px; font-weight: 850; }
.lab-quality { display: inline-flex; padding: 5px 7px; border-radius: 6px; font-size: 9px; font-weight: 850; }
.lab-quality.good { color: var(--green); background: rgba(125,222,156,.09); }
.lab-quality.variable { color: var(--blue); background: rgba(85,167,255,.10); }
.lab-quality.warning { color: var(--yellow); background: rgba(240,199,107,.09); }
.lab-quality.unknown { color: #8197a2; background: rgba(129,151,162,.08); }
.lab-methodology { margin-top: 12px; padding: 9px 11px; border-left: 2px solid rgba(68,211,197,.35); border-radius: 0 8px 8px 0; background: rgba(68,211,197,.04); color: #6d8591; font-size: 8px; line-height: 1.5; }
.lab-empty { grid-column: 1 / -1; min-height: 110px; display: grid; place-items: center; color: var(--muted); font-size: 9px; }

.models-page { display: grid; gap: 18px; }
.model-registry-hero { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(480px, .85fr); align-items: center; gap: 28px; padding: 25px 27px; overflow: hidden; background: radial-gradient(circle at 90% 20%, rgba(68,211,197,.10), transparent 35%), var(--panel); }
.model-registry-hero h2 { max-width: 760px; margin: 0; font-size: clamp(22px, 2.5vw, 31px); letter-spacing: -.045em; }
.model-registry-hero > div:first-child > p:last-child { max-width: 720px; margin: 9px 0 0; color: var(--muted); font-size: 12px; line-height: 1.55; }
.registry-summary { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.registry-summary div { padding: 13px 10px; border: 1px solid var(--border); border-radius: 12px; background: rgba(5,16,24,.45); text-align: center; }
.registry-summary span { display: block; margin-bottom: 5px; color: var(--muted); font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.registry-summary strong { color: var(--cyan); font-size: 20px; letter-spacing: -.04em; }
.models-loading { min-height: 330px; display: grid; place-content: center; justify-items: center; gap: 13px; color: var(--muted); font-size: 12px; }
.registry-load-error { color: var(--red); }
.model-registry-layout { display: grid; grid-template-columns: minmax(360px, 420px) minmax(0, 1fr); align-items: start; gap: 18px; }
.precision-rankings { grid-column: 1 / -1; padding: 22px; background: radial-gradient(circle at 90% 0, rgba(85,167,255,.08), transparent 34%), var(--panel); }
.precision-ranking-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 16px; }
.precision-ranking-heading h3 { margin: 0; font-size: 21px; }
.precision-ranking-heading > div .eyebrow { margin-bottom: 4px; }
.precision-ranking-heading > p { max-width: 610px; margin: 0; color: var(--muted); font-size: 10px; line-height: 1.5; text-align: right; }
.ranking-filter-bar { display: grid; grid-template-columns: minmax(260px, 1.5fr) repeat(3, minmax(145px, .72fr)); gap: 9px; padding: 14px; border: 1px solid var(--border); border-radius: 13px; background: rgba(5,16,24,.42); }
.ranking-filter-bar label, .ranking-sheet-heading label { min-width: 0; display: grid; gap: 5px; color: var(--muted); font-size: 9px; font-weight: 820; text-transform: uppercase; letter-spacing: .065em; }
.ranking-filter-bar input, .ranking-filter-bar select, .ranking-sheet-heading select { width: 100%; min-width: 0; padding: 10px 11px; border: 1px solid var(--border); border-radius: 9px; outline: none; background: #0a1620; color: var(--text); font-size: 11px; text-transform: none; letter-spacing: 0; }
.ranking-filter-bar input:focus, .ranking-filter-bar select:focus, .ranking-sheet-heading select:focus { border-color: rgba(68,211,197,.45); box-shadow: 0 0 0 3px rgba(68,211,197,.07); }
.ranking-search { align-content: center; }
.ranking-filter-reset { align-self: end; min-height: 37px; padding: 9px 13px; border: 1px solid rgba(68,211,197,.2); border-radius: 9px; color: var(--cyan); background: rgba(68,211,197,.06); font-size: 10px; font-weight: 850; }
.ranking-filter-reset:hover { border-color: rgba(68,211,197,.38); background: rgba(68,211,197,.1); }
.ranking-overview { display: grid; grid-template-columns: repeat(3, minmax(130px, 170px)) minmax(280px, 1fr); align-items: center; gap: 9px; margin: 12px 0 15px; }
.ranking-overview > div { padding: 10px 12px; border-radius: 10px; background: rgba(255,255,255,.025); }
.ranking-overview span { display: block; color: var(--muted); font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.ranking-overview strong { display: block; margin-top: 3px; color: var(--cyan); font-size: 17px; }
.ranking-overview p { margin: 0; color: #78909c; font-size: 9px; line-height: 1.5; text-align: right; }
.precision-ranking-sections { display: grid; gap: 14px; }
.ranking-sheet { min-width: 0; overflow: hidden; border: 1px solid var(--border); border-radius: 14px; background: rgba(7,18,27,.58); }
.ranking-sheet-heading { display: flex; align-items: end; justify-content: space-between; gap: 18px; padding: 15px 16px 12px; border-bottom: 1px solid var(--border); }
.ranking-sheet-heading > div { display: grid; gap: 4px; }
.ranking-sheet-heading > div span { color: var(--cyan); font-size: 9px; font-weight: 900; letter-spacing: .11em; }
.ranking-sheet-heading > div strong { color: #d9e4e8; font-size: 14px; }
.ranking-sheet-heading label { width: min(230px, 35%); }
.precision-ranking-list { min-height: 150px; }
.ranking-table-scroll { max-height: 390px; overflow: auto; scrollbar-color: rgba(68,211,197,.25) transparent; }
.ranking-table { width: 100%; min-width: 1050px; border-collapse: separate; border-spacing: 0; }
.ranking-table thead { position: sticky; z-index: 2; top: 0; background: #0b1a25; }
.ranking-table th { padding: 0; border-bottom: 1px solid var(--border); text-align: left; }
.ranking-table th:first-child { width: 52px; }
.ranking-table th:nth-child(2) { width: 27%; }
.ranking-table th:nth-child(3) { width: 18%; }
.ranking-table th:nth-child(4) { width: 17%; }
.ranking-table th:nth-child(n+5) { width: 105px; text-align: right; }
.ranking-sort-button { width: 100%; padding: 10px; color: #758d99; background: transparent; font-size: 8px; font-weight: 900; text-align: inherit; text-transform: uppercase; letter-spacing: .065em; white-space: nowrap; }
.ranking-sort-button span { margin-left: 3px; color: #4e6775; }
.ranking-sort-button:hover, .ranking-sort-button.active { color: var(--cyan); background: rgba(68,211,197,.035); }
.precision-rank-row { cursor: pointer; outline: none; transition: .15s ease; }
.precision-rank-row td { padding: 11px 10px; border-bottom: 1px solid rgba(162,190,207,.07); background: rgba(255,255,255,.012); vertical-align: middle; }
.precision-rank-row:last-child td { border-bottom: 0; }
.precision-rank-row:hover td, .precision-rank-row:focus td { background: rgba(68,211,197,.055); }
.precision-rank-row:first-child td { background: rgba(68,211,197,.035); }
.precision-rank-position { color: var(--cyan); font-size: 12px; font-weight: 950; text-align: center; }
.precision-rank-copy, .precision-rank-scope, .precision-rank-engine, .precision-rank-coverage, .precision-rank-score, .precision-rank-error { min-width: 0; }
.precision-rank-copy strong, .precision-rank-scope strong, .precision-rank-engine strong, .precision-rank-coverage strong { display: block; overflow: hidden; color: #d2dfe4; font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap; }
.precision-rank-copy span, .precision-rank-scope span, .precision-rank-engine span, .precision-rank-coverage span, .precision-rank-score span, .precision-rank-error span { display: block; margin-top: 4px; overflow: hidden; color: var(--muted); font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.ranking-role { display: inline-flex; margin-left: 4px; padding: 2px 4px; border-radius: 4px; font-size: 6.5px; font-style: normal; font-weight: 900; text-transform: uppercase; letter-spacing: .04em; }
.ranking-role.champion { color: var(--green); background: rgba(125,222,156,.1); }
.ranking-role.challenger { color: var(--yellow); background: rgba(240,199,107,.1); }
.ranking-role.historical { color: #8ba0ac; background: rgba(139,160,172,.1); }
.precision-rank-coverage, .precision-rank-score, .precision-rank-error { text-align: right; }
.precision-rank-score strong, .precision-rank-error strong { display: block; color: var(--green); font-size: 12px; }
.precision-rank-error strong { color: #d7e3e8; }
.model-catalog { position: sticky; top: 18px; max-height: calc(100vh - 36px); display: grid; grid-template-rows: auto auto minmax(0, 1fr); overflow: hidden; }
.catalog-heading { display: flex; align-items: end; justify-content: space-between; gap: 12px; padding: 18px 18px 12px; }
.catalog-heading h3 { margin: 0; font-size: 18px; }
.catalog-heading .eyebrow { margin-bottom: 4px; font-size: 9px; }
.catalog-heading > span { padding: 5px 8px; border-radius: 8px; color: var(--cyan); background: var(--cyan-soft); font-size: 9px; font-weight: 850; text-transform: uppercase; letter-spacing: .06em; }
.model-catalog-filters { display: grid; gap: 8px; padding: 0 12px 12px; border-bottom: 1px solid var(--border); }
.model-catalog-filters > div { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.model-catalog-filters label { display: grid; gap: 4px; color: var(--muted); font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .07em; }
.model-catalog-filters input, .model-catalog-filters select { width: 100%; min-width: 0; padding: 10px; border: 1px solid var(--border); border-radius: 9px; outline: none; background: #0a1620; color: var(--text); font-size: 11px; text-transform: none; letter-spacing: 0; }
.model-catalog-filters input:focus, .model-catalog-filters select:focus { border-color: rgba(68,211,197,.45); box-shadow: 0 0 0 3px rgba(68,211,197,.07); }
.model-catalog-list { min-height: 220px; padding: 7px; overflow-y: auto; scrollbar-color: rgba(68,211,197,.25) transparent; }
.model-catalog-item { width: 100%; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: start; gap: 10px; padding: 12px 10px; border: 1px solid transparent; border-radius: 11px; background: transparent; color: var(--text); text-align: left; transition: .17s ease; }
.model-catalog-item + .model-catalog-item { margin-top: 3px; }
.model-catalog-item:hover { border-color: rgba(162,190,207,.11); background: rgba(255,255,255,.025); }
.model-catalog-item.active { border-color: rgba(68,211,197,.26); background: linear-gradient(110deg, rgba(68,211,197,.11), rgba(68,211,197,.025)); }
.catalog-item-icon { width: 30px; height: 30px; display: grid; place-items: center; border: 1px solid rgba(68,211,197,.16); border-radius: 9px; color: var(--cyan); background: rgba(68,211,197,.07); font-size: 10px; font-weight: 950; }
.catalog-item-copy { min-width: 0; display: grid; gap: 4px; }
.catalog-item-top { display: grid; gap: 2px; }
.catalog-item-top strong { overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.catalog-item-top small, .catalog-item-copy > span:nth-child(2) { color: var(--muted); font-size: 9px; }
.catalog-item-copy em { overflow: hidden; color: #6d8796; font-size: 8px; font-style: normal; font-weight: 850; text-overflow: ellipsis; text-transform: uppercase; letter-spacing: .07em; white-space: nowrap; }
.catalog-active-version, .catalog-no-champion { padding: 4px 6px; border-radius: 6px; font-size: 8px; font-weight: 900; white-space: nowrap; }
.catalog-active-version { color: var(--green); background: rgba(125,222,156,.09); }
.catalog-no-champion { color: var(--muted); background: rgba(255,255,255,.04); }
.catalog-empty { min-height: 130px; display: grid; place-content: center; justify-items: center; gap: 4px; padding: 20px; color: var(--muted); text-align: center; }
.catalog-empty strong { color: #c5d3da; font-size: 11px; }
.catalog-empty span { font-size: 9px; }
.model-registry-detail { min-width: 0; padding: 22px; }
.model-detail-empty { min-height: 520px; display: grid; place-content: center; justify-items: center; gap: 6px; color: var(--muted); text-align: center; }
.model-detail-empty > span { width: 54px; height: 54px; display: grid; place-items: center; border: 1px solid var(--border); border-radius: 17px; color: var(--cyan); background: var(--cyan-soft); font-size: 23px; }
.model-detail-empty strong { margin-top: 7px; color: #d4e0e5; font-size: 14px; }
.model-detail-empty p { margin: 0; font-size: 10px; }
.model-detail-header { display: flex; align-items: start; justify-content: space-between; gap: 24px; padding-bottom: 18px; border-bottom: 1px solid var(--border); }
.model-detail-scope { margin-bottom: 6px; color: var(--cyan); font-size: 9px; font-weight: 900; letter-spacing: .12em; }
.model-detail-header h2 { margin: 0; font-size: 27px; letter-spacing: -.04em; }
.model-detail-header p { max-width: 680px; margin: 6px 0 0; overflow: hidden; color: var(--muted); font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.model-detail-badges { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.model-detail-badges span { padding: 6px 8px; border: 1px solid var(--border); border-radius: 8px; color: #9cb0bb; background: rgba(255,255,255,.025); font-size: 9px; font-weight: 800; }
.version-section, .importance-section { margin-top: 21px; }
.registry-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin-bottom: 10px; }
.registry-section-heading > div { display: grid; gap: 3px; }
.registry-section-heading span, .registry-card-title span { color: var(--cyan); font-size: 8px; font-weight: 900; letter-spacing: .11em; }
.registry-section-heading strong, .registry-card-title strong { color: #d9e4e8; font-size: 13px; }
.registry-section-heading small { color: var(--muted); font-size: 9px; }
.model-version-list { display: flex; gap: 8px; padding-bottom: 5px; overflow-x: auto; }
.model-version-button { min-width: 150px; display: grid; grid-template-columns: 1fr auto; gap: 4px 8px; padding: 11px; border: 1px solid var(--border); border-radius: 11px; background: rgba(8,20,29,.65); color: var(--text); text-align: left; transition: .17s ease; }
.model-version-button:hover { transform: translateY(-1px); border-color: rgba(68,211,197,.23); }
.model-version-button.active { border-color: rgba(68,211,197,.42); background: var(--cyan-soft); box-shadow: inset 0 -2px 0 rgba(68,211,197,.32); }
.version-number { color: #e7eef1; font-size: 13px; font-weight: 900; }
.version-role { width: fit-content; padding: 3px 5px; border-radius: 5px; font-size: 6px; font-weight: 950; text-transform: uppercase; letter-spacing: .06em; white-space: nowrap; }
.version-role.champion { color: var(--green); background: rgba(125,222,156,.11); }
.version-role.challenger { color: var(--yellow); background: rgba(240,199,107,.11); }
.version-role.historical { color: #8ba0ac; background: rgba(139,160,172,.10); }
.model-version-button small { display: grid; gap: 3px; color: #99acb6; font-size: 9px; }
.model-version-button small b { color: var(--cyan); font-size: 7px; font-weight: 850; letter-spacing: .025em; }
.model-version-button em { color: #607783; font-size: 8px; font-style: normal; text-align: right; }
.version-overview { display: grid; grid-template-columns: 1.1fr .9fr; gap: 10px; margin-top: 14px; }
.version-overview > article { padding: 14px; border: 1px solid var(--border); border-radius: 13px; background: rgba(8,20,29,.52); }
.version-summary-card { grid-column: 1 / -1; }
.version-summary-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.version-summary-title > strong { color: var(--cyan); font-size: 20px; }
.version-facts { display: grid; grid-template-columns: repeat(6, 1fr); gap: 8px; }
.version-facts div { min-width: 0; padding: 9px; border-radius: 8px; background: rgba(255,255,255,.025); }
.version-facts span { display: block; margin-bottom: 4px; color: var(--muted); font-size: 8px; text-transform: uppercase; letter-spacing: .06em; }
.version-facts strong { display: block; overflow: hidden; color: #d8e2e7; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.registry-card-title { display: grid; gap: 4px; margin-bottom: 10px; }
.compact-facts { grid-template-columns: repeat(4, 1fr); }
.performance-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; }
.performance-metrics div { padding: 8px; border: 1px solid rgba(162,190,207,.08); border-radius: 8px; background: rgba(255,255,255,.02); }
.performance-metrics span { display: block; color: var(--muted); font-size: 7px; }
.performance-metrics strong { display: block; margin-top: 3px; color: var(--green); font-size: 12px; }
.performance-metrics p { grid-column: 1 / -1; margin: 8px 0; font-size: 9px; }
.version-warning { display: grid; gap: 3px; margin-top: 9px; padding: 8px; border-left: 2px solid var(--yellow); border-radius: 0 7px 7px 0; background: rgba(240,199,107,.06); }
.version-warning strong { color: var(--yellow); font-size: 8px; }
.version-warning span { color: #a9b7bf; font-size: 8px; line-height: 1.4; }
.importance-section { padding-top: 19px; border-top: 1px solid var(--border); }
.importance-context { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 11px; }
.importance-context span { padding: 5px 7px; border-radius: 6px; color: #829aa7; background: rgba(255,255,255,.035); font-size: 7px; }
.feature-group-ranking { display: grid; grid-template-columns: repeat(auto-fit, minmax(155px, 1fr)); gap: 6px; margin: 0 0 14px; }
.feature-group-card { display: grid; gap: 5px; padding: 9px; border: 1px solid rgba(162,190,207,.08); border-radius: 9px; background: rgba(255,255,255,.02); }
.feature-group-card > div { display: flex; justify-content: space-between; gap: 9px; }
.feature-group-card strong { color: #cbd9df; font-size: 9px; }
.feature-group-card span { color: var(--cyan); font-size: 9px; font-weight: 850; }
.feature-group-card small { color: #657d89; font-size: 8px; }
.feature-group-track { height: 4px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.045); }
.feature-group-track i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--green), var(--cyan)); }
.feature-ranking { display: grid; gap: 5px; }
.feature-rank-row { display: grid; grid-template-columns: 29px minmax(0, 1fr) 65px; align-items: center; gap: 9px; padding: 7px 8px; border: 1px solid transparent; border-radius: 9px; transition: .15s ease; }
.feature-rank-row:hover { border-color: rgba(68,211,197,.14); background: rgba(68,211,197,.025); }
.feature-rank-number { color: #54707f; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 8px; font-weight: 900; }
.feature-rank-main { min-width: 0; display: grid; gap: 5px; }
.feature-rank-copy { display: flex; justify-content: space-between; gap: 15px; }
.feature-rank-copy strong { overflow: hidden; color: #cbd8de; font-size: 10px; font-weight: 720; text-overflow: ellipsis; white-space: nowrap; }
.feature-rank-copy span { color: var(--cyan); font-size: 9px; font-weight: 850; }
.feature-rank-track { height: 4px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.045); }
.feature-rank-track i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--cyan), var(--blue)); box-shadow: 0 0 10px rgba(68,211,197,.18); }
.feature-cumulative { color: #607986; font-size: 8px; text-align: right; white-space: nowrap; }

.loading-state { min-height: 420px; display: grid; place-content: center; justify-items: center; gap: 14px; color: var(--muted); }
.spinner { width: 30px; height: 30px; border: 2px solid rgba(255,255,255,.1); border-top-color: var(--cyan); border-radius: 50%; animation: spin .8s linear infinite; }
.page-error { padding: 18px; border: 1px solid rgba(255,125,125,.25); border-radius: 12px; background: rgba(255,125,125,.08); color: #ffc2c2; }
@keyframes spin { to { transform: rotate(360deg); } }
@keyframes card-enter { from { opacity: 0; transform: translateY(7px); } to { opacity: 1; transform: translateY(0); } }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

@media (max-width: 1100px) {
  .app-shell { grid-template-columns: 78px minmax(0, 1fr); }
  .sidebar { padding-inline: 15px; }
  .sidebar-brand > span:last-child, .nav-item { font-size: 0; }
  .nav-item span { font-size: 18px; }
  .nav-group-toggle b { display: none; }
  .nav-submenu { padding-left: 0; }
  .nav-subitem { justify-content: center; padding-inline: 5px; font-size: 0; border-left: 0; border-radius: 8px; }
  .nav-subitem span { width: 24px; height: 24px; font-size: 9px; }
  .sidebar-status span { display: none; }
  .prediction-cards { grid-template-columns: repeat(3, 1fr); }
  .pipeline-hero { grid-template-columns: 1fr; }
  .pipeline-branches { grid-template-columns: 1fr; }
  .pipeline-detail-grid { grid-template-columns: 1fr 1fr; }
  .pipeline-targets { grid-template-columns: 1fr 1fr; }
  .pipeline-targets > div:first-child { grid-column: 1 / -1; }
  .competition-ring { grid-template-columns: 1fr 1fr auto 1fr; }
  .competition-title, .competition-decision { grid-column: 1 / -1; text-align: center; }
  .competition-decision { padding: 10px 0 0; border-left: 0; border-top: 1px solid var(--border); }
  .continuous-loop::before, .continuous-loop::after { display: none; }
  .improvement-card::before, .improvement-card::after { display: none; }
  .influencer-portfolio-hero { grid-template-columns: 1fr; }
  .portfolio-toolbar { grid-template-columns: minmax(220px, 1fr) repeat(3, minmax(145px, .55fr)) 42px; }
  .influencer-explorer { grid-template-columns: 1fr; }
  .influencer-ranking-panel { position: static; max-height: 620px; }
  .influencer-lab-hero { grid-template-columns: 1fr; }
  .lab-social-column { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .lab-kpi-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .lab-coverage-grid { grid-template-columns: repeat(3, 1fr); }
  .model-registry-hero { grid-template-columns: 1fr; }
  .model-registry-layout { grid-template-columns: 1fr; }
  .ranking-filter-bar { grid-template-columns: minmax(220px, 1.4fr) repeat(2, minmax(140px, 1fr)); }
  .ranking-overview { grid-template-columns: repeat(3, 1fr); }
  .ranking-overview p { grid-column: 1 / -1; text-align: left; }
  .model-catalog { position: static; max-height: none; }
  .model-catalog-list { max-height: 390px; }
}
@media (max-width: 780px) {
  .app-shell { display: block; }
  .sidebar { display: none; }
  .main-content { padding: 20px 15px 50px; }
  .topbar { align-items: flex-start; flex-direction: column; }
  .topbar-actions { width: 100%; flex-wrap: wrap; }
  .campaign-picker { flex: 1; }
  .campaign-picker select { width: 100%; }
  .overview-grid { grid-template-columns: 1fr; }
  .model-scope-tabs { grid-template-columns: 1fr; }
  .general-population-tabs { grid-template-columns: 1fr; }
  .engine-toolbar { grid-template-columns: 1fr 1fr; }
  .engine-availability { grid-column: 1 / -1; justify-self: start; }
  .prediction-cards { grid-template-columns: 1fr 1fr; }
  .campaign-metrics { grid-template-columns: 1fr 1fr; }
  .timeline-heading { align-items: flex-start; flex-direction: column; }
  .arena-heading { align-items: flex-start; flex-direction: column; }
  .lane-heading { align-items: flex-start; flex-direction: column; }
  .legend { justify-content: flex-start; }
  .selected-hour { grid-template-columns: 1fr 1fr; }
  .foundation-flow, .branch-flow { grid-template-columns: 1fr; }
  .pipeline-step:not(:last-child)::after { content: "↓"; right: auto; left: calc(50% - 5px); top: auto; bottom: -19px; }
  .pipeline-orchestrator { grid-template-columns: auto 1fr; }
  .orchestrator-tags { grid-column: 1 / -1; justify-content: flex-start; }
  .pipeline-summary, .pipeline-detail-grid, .pipeline-targets { grid-template-columns: 1fr; }
  .pipeline-targets > div:first-child { grid-column: auto; }
  .ml-diagram { padding-inline: 18px; }
  .diagram-sources { gap: 22px; }
  .diagram-model-zone { grid-template-columns: 1fr; }
  .model-landscape { grid-template-columns: 1fr; }
  .diagram-outcomes { width: 100%; }
  .competition-ring { grid-template-columns: 1fr auto 1fr; }
  .competition-title, .competition-decision { grid-column: 1 / -1; }
  .influencer-portfolio-hero { padding: 20px; }
  .portfolio-toolbar { grid-template-columns: 1fr 1fr; }
  .portfolio-search { grid-column: 1 / -1; }
  .portfolio-refresh { width: 100%; }
  .portfolio-kpis { grid-template-columns: 1fr 1fr; }
  .portfolio-detail-header { align-items: flex-start; }
  .portfolio-history-strip { grid-template-columns: repeat(3, 1fr); }
  .influencer-lab-hero { padding: 20px; }
  .lab-profile { grid-template-columns: 1fr; }
  .lab-profile-facts { grid-template-columns: 1fr 1fr; }
  .lab-account-list { grid-column: auto; }
  .lab-social-column { grid-template-columns: 1fr 1fr; }
  .lab-social-mix { grid-template-columns: 1fr; }
  .lab-kpi-grid { grid-template-columns: 1fr; }
  .lab-analysis-content, .lab-distribution-grid { grid-template-columns: 1fr; }
  .lab-analysis-section + .lab-analysis-section { padding-top: 16px; padding-left: 0; border-top: 1px solid var(--border); border-left: 0; }
  .lab-social-coverage-grid { grid-template-columns: 1fr; }
  .lab-campaigns-heading { grid-template-columns: 1fr; }
  .lab-table-controls { width: 100%; grid-template-columns: 1fr 1fr; }
  .lab-table-controls input { grid-column: 1 / -1; }
  .lab-campaigns-heading { align-items: flex-start; flex-direction: column; }
  .model-registry-hero { padding: 20px; }
  .registry-summary { grid-template-columns: 1fr 1fr; }
  .precision-rankings { padding: 16px; }
  .ranking-filter-bar { grid-template-columns: 1fr 1fr; }
  .ranking-search { grid-column: 1 / -1; grid-row: auto; }
  .ranking-sheet-heading { align-items: flex-start; flex-direction: column; }
  .ranking-sheet-heading label { width: 100%; }
  .model-detail-header, .registry-section-heading { align-items: flex-start; flex-direction: column; }
  .model-detail-badges { justify-content: flex-start; }
  .version-overview { grid-template-columns: 1fr; }
  .version-summary-card { grid-column: auto; }
  .version-facts { grid-template-columns: 1fr 1fr; }
  .performance-metrics { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 470px) {
  .prediction-cards, .influencer-metrics { grid-template-columns: 1fr; }
  .campaign-title-row { align-items: flex-start; flex-direction: column; }
  .history-panel summary { align-items: flex-start; flex-direction: column; gap: 12px; }
  .model-type-tab { min-width: 125px; }
  .model-scope-tab { min-height: 58px; }
  .engine-toolbar { grid-template-columns: 1fr; }
  .engine-availability { grid-column: auto; }
  .diagram-sources, .diagram-outcomes { grid-template-columns: 1fr; }
  .diagram-converge { width: 50%; }
  .outcome-plus { margin: -6px auto; }
  .competition-ring { grid-template-columns: 1fr; }
  .versus { margin: -3px auto; }
  .continuous-loop { grid-template-columns: 1fr; justify-items: center; text-align: center; }
  .improvement-loops { grid-template-columns: 1fr; }
  .portfolio-summary, .influencer-podium, .campaign-highlights, .portfolio-kpis { grid-template-columns: 1fr; }
  .podium-card.place-1, .podium-card.place-1:hover { transform: none; }
  .portfolio-toolbar { grid-template-columns: 1fr; }
  .lab-selector-wrap, .lab-profile-facts, .lab-social-metrics, .lab-social-column, .lab-social-mix-bars, .lab-kpi-grid, .lab-insights, .lab-highlights, .lab-coverage-grid, .lab-social-coverage-grid, .lab-table-controls { grid-template-columns: 1fr; }
  .lab-selector-wrap label, .lab-table-controls input { grid-column: auto; }
  .lab-refresh { width: 100%; }
  .lab-profile-main { align-items: flex-start; }
  .lab-chart-wrap { height: 245px; }
  .portfolio-search { grid-column: auto; }
  .portfolio-detail-header { align-items: stretch; flex-direction: column; }
  .portfolio-position { justify-items: start; }
  .portfolio-history-strip { grid-template-columns: 1fr 1fr; }
  .influencer-rank-row { grid-template-columns: 22px 34px minmax(0, 1fr); }
  .influencer-rank-row .portfolio-avatar { width: 34px; height: 34px; }
  .portfolio-rank-value { grid-column: 3; min-width: 0; justify-items: start; text-align: left; }
  .model-catalog-filters > div { grid-template-columns: 1fr; }
  .model-registry-detail { padding: 15px; }
  .precision-ranking-heading { align-items: flex-start; flex-direction: column; }
  .precision-ranking-heading > p { text-align: left; }
  .ranking-filter-bar, .ranking-overview { grid-template-columns: 1fr; }
  .ranking-search, .ranking-overview p { grid-column: auto; }
  .ranking-filter-reset { width: 100%; }
  .feature-rank-row { grid-template-columns: 24px minmax(0, 1fr); }
  .feature-cumulative { display: none; }
}

/* Descoberta e analise progressiva de influencers. */
.influencer-fingerprint-page, .client-fingerprint-content { width: 100%; min-width: 0; max-width: 100%; display: grid; gap: 18px; }
.influencer-discovery-page { min-width: 0; }
.discovery-workspace { display: grid; grid-template-columns: minmax(0, 1fr) 268px; gap: 18px; align-items: start; min-width: 0; }
.discovery-main { grid-column: 1; grid-row: 1; display: grid; gap: 18px; min-width: 0; }
.discovery-library { grid-column: 2; grid-row: 1; position: sticky; top: 18px; display: grid; gap: 11px; max-height: calc(100vh - 36px); padding: 15px; overflow: auto; }
.discovery-library > header { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 2px 2px 7px; }
.discovery-library > header h3 { margin: 4px 0 0; font-size: 17px; }
.discovery-library > header button { display: grid; place-items: center; width: 32px; height: 32px; border: 1px solid var(--border); border-radius: 9px; background: rgba(68, 211, 197, .08); color: var(--cyan); font-size: 17px; cursor: pointer; }
.discovery-library-group { border-top: 1px solid var(--border); padding-top: 8px; }
.discovery-library-group > summary, .discovery-library-subgroup > summary { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 8px 4px; color: var(--text); font-size: 12px; font-weight: 800; cursor: pointer; list-style: none; }
.discovery-library-group > summary::-webkit-details-marker, .discovery-library-subgroup > summary::-webkit-details-marker { display: none; }
.discovery-library-group > summary::before, .discovery-library-subgroup > summary::before { content: "›"; color: var(--cyan); transform: rotate(0deg); transition: transform .15s ease; }
.discovery-library-group[open] > summary::before, .discovery-library-subgroup[open] > summary::before { transform: rotate(90deg); }
.discovery-library-group > summary span, .discovery-library-subgroup > summary span { flex: 1; }
.discovery-library-group > summary b, .discovery-library-subgroup > summary b { min-width: 23px; padding: 3px 6px; border-radius: 999px; background: rgba(68, 211, 197, .1); color: var(--cyan); font-size: 10px; text-align: center; }
.discovery-library-subgroup { margin: 2px 0 2px 9px; padding-left: 8px; border-left: 1px solid var(--border); }
.discovery-library-subgroup > summary { color: var(--muted); font-size: 11px; }
.discovery-profile-list { display: grid; gap: 5px; padding: 2px 0 7px; }
.discovery-list-empty { margin: 0; padding: 8px; color: var(--muted); font-size: 10px; line-height: 1.4; }
.discovery-profile-item { display: grid; grid-template-columns: 32px minmax(0, 1fr); gap: 9px; width: 100%; padding: 8px; border: 1px solid transparent; border-radius: 10px; background: transparent; color: var(--text); text-align: left; cursor: pointer; }
.discovery-profile-item:hover, .discovery-profile-item.active { border-color: rgba(68, 211, 197, .28); background: rgba(68, 211, 197, .08); }
.discovery-list-avatar { display: grid; place-items: center; width: 32px; height: 32px; overflow: hidden; border-radius: 9px; background: rgba(68, 211, 197, .13); color: var(--cyan); font-size: 10px; font-weight: 900; }
.discovery-list-avatar img { width: 100%; height: 100%; object-fit: cover; }
.discovery-profile-item span:last-child { min-width: 0; }
.discovery-profile-item strong, .discovery-profile-item small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.discovery-profile-item strong { font-size: 11px; line-height: 1.35; }
.discovery-profile-item small { margin-top: 2px; color: var(--muted); font-size: 9px; }
.discovery-hero { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(360px, .65fr); gap: 28px; align-items: center; padding: 28px; overflow: hidden; }
.discovery-hero h2 { margin: 7px 0 8px; font-size: clamp(26px, 2.2vw, 38px); }
.discovery-hero > div > p:last-child { max-width: 760px; margin: 0; color: var(--muted); line-height: 1.55; }
.discovery-search-form { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 10px; padding: 14px; border: 1px solid var(--border); border-radius: 15px; background: rgba(5, 20, 29, .75); }
.discovery-search-form label { min-width: 0; }
.discovery-search-form label > span { display: block; margin-bottom: 7px; color: var(--cyan); font-size: 10px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.discovery-search-form label > div { display: flex; align-items: center; height: 44px; border: 1px solid var(--border); border-radius: 10px; background: var(--panel-solid); overflow: hidden; }
.discovery-search-form label b { padding-left: 13px; color: var(--cyan); }
.discovery-search-form input { width: 100%; height: 100%; padding: 0 12px 0 4px; border: 0; outline: 0; background: transparent; color: var(--text); font: inherit; font-weight: 750; }
.discovery-search-form .primary-button { width: auto; min-width: 128px; height: 44px; margin: 0; }
.discovery-message { display: flex; align-items: center; gap: 14px; padding: 20px 22px; }
.discovery-message-icon { display: grid; place-items: center; width: 42px; height: 42px; flex: 0 0 auto; border-radius: 12px; background: rgba(68, 211, 197, .12); color: var(--cyan); font-size: 22px; }
.discovery-message strong { display: block; margin-bottom: 4px; }
.discovery-message p { margin: 0; color: var(--muted); line-height: 1.45; }
.discovery-result { display: grid; gap: 18px; min-width: 0; }
.discovery-profile { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 18px; align-items: center; padding: 22px; }
.discovery-avatar { display: grid; place-items: center; width: 76px; height: 76px; overflow: hidden; border: 1px solid rgba(68, 211, 197, .3); border-radius: 20px; background: linear-gradient(145deg, rgba(68, 211, 197, .22), rgba(55, 157, 235, .12)); color: #b8fff5; font-size: 20px; font-weight: 900; }
.discovery-avatar img { width: 100%; height: 100%; object-fit: cover; }
.discovery-profile-copy { min-width: 0; }
.discovery-profile-title { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; }
.discovery-profile-copy h3 { margin: 4px 0 3px; font-size: 24px; }
.discovery-profile-title > span { padding: 5px 8px; border-radius: 999px; background: rgba(68, 211, 197, .09); color: #bcebe5; font-size: 11px; font-weight: 750; }
.discovery-profile-copy a { color: var(--cyan); font-size: 13px; text-decoration: none; }
.discovery-profile-bio { max-width: 880px; margin: 9px 0 0; color: var(--muted); font-size: 12px; line-height: 1.48; white-space: pre-line; }
.discovery-statuses { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.discovery-badge { padding: 7px 10px; border: 1px solid var(--border); border-radius: 999px; background: rgba(255,255,255,.035); color: var(--muted); font-size: 10px; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.discovery-badge.accent { border-color: rgba(68, 211, 197, .28); background: rgba(68, 211, 197, .1); color: var(--cyan); }
.discovery-macro, .discovery-fingerprint-panel, .discovery-report-panel { padding: 22px; min-width: 0; }
.discovery-section-heading { display: flex; justify-content: space-between; gap: 18px; align-items: flex-start; margin-bottom: 16px; }
.discovery-section-heading h3 { margin: 4px 0 0; font-size: 19px; }
.discovery-section-heading > span { color: var(--muted); font-size: 11px; text-align: right; }
.discovery-macro-grid { display: grid; gap: 10px; }
.discovery-metric-sector { overflow: hidden; border: 1px solid var(--border); border-radius: 13px; background: rgba(4, 18, 27, .32); }
.discovery-metric-sector > summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 13px 15px; cursor: pointer; list-style: none; }
.discovery-metric-sector > summary::-webkit-details-marker { display: none; }
.discovery-metric-sector > summary::before { content: "›"; color: var(--cyan); font-size: 18px; transform: rotate(0deg); transition: transform .15s ease; }
.discovery-metric-sector[open] > summary::before { transform: rotate(90deg); }
.discovery-metric-sector > summary > span { display: grid; flex: 1; gap: 3px; }
.discovery-metric-sector > summary b { color: var(--text); font-size: 13px; }
.discovery-metric-sector > summary small { color: var(--muted); font-size: 10px; font-weight: 500; }
.discovery-metric-sector > summary i { color: var(--cyan); font-size: 10px; font-style: normal; font-weight: 750; white-space: nowrap; }
.discovery-metric-note { margin: 0 12px 10px; padding: 9px 11px; border-left: 2px solid rgba(68, 211, 197, .5); border-radius: 0 8px 8px 0; background: rgba(68, 211, 197, .055); color: var(--muted); font-size: 10px; line-height: 1.45; }
.discovery-metric-sector-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; padding: 0 12px 12px; }
.discovery-metric-explanation { display: block; margin-top: 6px; color: var(--muted); font-size: 9px; line-height: 1.35; }
.discovery-analysis-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; min-width: 0; }
.discovery-fingerprint { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; }
.fingerprint-summary { display: grid; gap: 10px; }
.fingerprint-summary-heading { display: grid; gap: 3px; padding: 0 2px; }
.fingerprint-summary-heading span { color: var(--text); font-size: 13px; font-weight: 850; }
.fingerprint-summary-heading small { color: var(--muted); font-size: 10px; }
.fingerprint-positioning { display: grid; gap: 7px; padding: 16px; border: 1px solid rgba(68, 211, 197, .25); border-radius: 13px; background: linear-gradient(115deg, rgba(68, 211, 197, .105), rgba(55, 157, 235, .035)); }
.fingerprint-positioning > span, .fingerprint-quick-grid span { color: var(--muted); font-size: 9px; font-weight: 850; letter-spacing: .055em; text-transform: uppercase; }
.fingerprint-positioning > strong { max-width: 1180px; font-size: 15px; line-height: 1.55; }
.fingerprint-quick-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; }
.fingerprint-quick-grid article { display: grid; gap: 7px; min-width: 0; padding: 12px; border: 1px solid var(--border); border-radius: 11px; background: rgba(4, 18, 27, .52); }
.fingerprint-quick-grid strong { overflow-wrap: anywhere; font-size: 14px; }
.fingerprint-macro-group { overflow: hidden; border: 1px solid var(--border); border-radius: 14px; background: rgba(4, 18, 27, .28); }
.fingerprint-macro-group > summary { display: flex; align-items: center; gap: 14px; padding: 15px 17px; cursor: pointer; list-style: none; }
.fingerprint-macro-group > summary::-webkit-details-marker { display: none; }
.fingerprint-macro-group > summary > span { display: grid; flex: 1; gap: 3px; }
.fingerprint-macro-group > summary b { color: var(--text); font-size: 14px; }
.fingerprint-macro-group > summary small { color: var(--muted); font-size: 10px; font-weight: 500; }
.fingerprint-macro-group > summary > i { color: var(--cyan); font-size: 20px; font-style: normal; transform: rotate(0deg); transition: transform .16s ease; }
.fingerprint-macro-group[open] > summary > i { transform: rotate(90deg); }
.fingerprint-macro-group[open] > summary { border-bottom: 1px solid var(--border); background: rgba(68, 211, 197, .035); }
.fingerprint-group-body { display: grid; gap: 12px; padding: 13px; }
.fingerprint-subsection { display: grid; gap: 10px; }
.fingerprint-subsection > header { display: grid; gap: 3px; padding: 0 2px; }
.fingerprint-subsection > header span { color: var(--text); font-size: 12px; font-weight: 800; }
.fingerprint-subsection > header small { color: var(--muted); font-size: 10px; }
.fingerprint-pillar-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.fingerprint-pillar-grid article { padding: 12px; border: 1px solid var(--border); border-radius: 11px; background: rgba(8, 30, 40, .62); }
.fingerprint-pillar-grid strong { color: var(--cyan); font-size: 11px; }
.fingerprint-pillar-grid p { margin: 5px 0 0; color: #c5d4dc; font-size: 10px; line-height: 1.45; }
.fingerprint-distribution-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.fingerprint-distribution-card { min-width: 0; padding: 13px; border: 1px solid var(--border); border-radius: 12px; background: rgba(4, 18, 27, .56); }
.fingerprint-distribution-card > header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 7px 12px; }
.fingerprint-distribution-card > header span { color: var(--muted); font-size: 9px; font-weight: 850; letter-spacing: .045em; text-transform: uppercase; }
.fingerprint-distribution-card > header b { padding: 4px 7px; border-radius: 999px; background: rgba(68, 211, 197, .09); color: var(--cyan); font-size: 9px; }
.fingerprint-distribution-chart { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 16px; align-items: center; margin-top: 13px; }
.fingerprint-donut { position: relative; display: grid; place-items: center; width: 112px; aspect-ratio: 1; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(255,255,255,.04); }
.fingerprint-donut::after { content: ""; position: absolute; inset: 24px; border-radius: 50%; background: #071a24; box-shadow: 0 0 0 1px rgba(255,255,255,.045); }
.fingerprint-donut > span { position: relative; z-index: 1; display: grid; gap: 1px; text-align: center; }
.fingerprint-donut strong { color: var(--text); font-size: 17px; }
.fingerprint-donut small { color: var(--muted); font-size: 8px; text-transform: uppercase; }
.fingerprint-distribution-legend { display: grid; grid-template-columns: minmax(0, 1fr); gap: 7px; }
.fingerprint-distribution-legend > div { display: grid; grid-template-columns: 7px minmax(0, 1fr) auto; gap: 6px; align-items: center; min-width: 0; }
.fingerprint-distribution-legend i { width: 7px; height: 7px; border-radius: 50%; }
.fingerprint-distribution-legend span { overflow: hidden; color: #c6d5dd; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.fingerprint-distribution-legend strong { color: var(--text); font-size: 10px; }
.fingerprint-color-0 { background: #44d3c5; }
.fingerprint-color-1 { background: #379deb; }
.fingerprint-color-2 { background: #8bd477; }
.fingerprint-color-3 { background: #f3c969; }
.fingerprint-color-4 { background: #a98bf3; }
.fingerprint-color-5 { background: #ef8d79; }
.fingerprint-color-6 { background: #65b7a8; }
.fingerprint-color-7 { background: #70849b; }
.fingerprint-profile-card { padding: 14px; border: 1px solid var(--border); border-radius: 12px; background: rgba(8, 30, 40, .5); }
.fingerprint-profile-card h5, .fingerprint-evidence-card h5 { margin: 0 0 9px; color: var(--text); font-size: 12px; }
.fingerprint-profile-summary { margin: 0 0 10px; color: #d4e2e8; font-size: 11px; font-weight: 650; line-height: 1.48; }
.fingerprint-profile-fields { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; }
.fingerprint-profile-fields > div { min-width: 0; padding: 9px; border-radius: 9px; background: rgba(68, 211, 197, .055); }
.fingerprint-profile-fields > div.limitation { grid-column: 1 / -1; border-left: 2px solid #f3c969; background: rgba(243, 201, 105, .06); }
.fingerprint-profile-fields span { display: block; margin-bottom: 5px; color: var(--muted); font-size: 8px; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.fingerprint-profile-fields p { margin: 0; color: #c9d9e0; font-size: 10px; line-height: 1.42; }
.fingerprint-text-tags { display: flex; flex-wrap: wrap; gap: 5px; }
.fingerprint-text-tags i { padding: 5px 7px; border-radius: 7px; background: rgba(68, 211, 197, .08); color: #c9d9e0; font-size: 9px; font-style: normal; }
.fingerprint-evidence-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.fingerprint-evidence-card { min-width: 0; padding: 13px; border: 1px solid var(--border); border-radius: 11px; background: rgba(4, 18, 27, .52); }
.fingerprint-evidence-card.warning { border-left-color: #f3c969; }
.fingerprint-evidence-card ul { display: grid; gap: 7px; margin: 0; padding-left: 17px; color: #c6d5dd; font-size: 10px; line-height: 1.45; }
.fingerprint-source-links { display: flex; flex-wrap: wrap; gap: 6px; }
.fingerprint-source-links a, .fingerprint-source-links > span { display: inline-flex; align-items: center; gap: 6px; padding: 6px 8px; border-radius: 8px; background: rgba(68, 211, 197, .08); color: #c6d5dd; font-size: 9px; text-decoration: none; }
.fingerprint-source-links a span { color: var(--cyan); }
.fingerprint-evidence-card dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 0; }
.fingerprint-evidence-card dl div { padding: 9px; border-radius: 8px; background: rgba(68, 211, 197, .055); }
.fingerprint-evidence-card dt { color: var(--muted); font-size: 8px; font-weight: 800; text-transform: uppercase; }
.fingerprint-evidence-card dd { margin: 5px 0 0; color: var(--text); font-size: 10px; font-weight: 700; overflow-wrap: anywhere; }
.discovery-data-card { min-width: 0; min-height: 82px; padding: 13px; border: 1px solid var(--border); border-radius: 12px; background: rgba(4, 18, 27, .52); }
.discovery-data-card > span { display: block; margin-bottom: 9px; color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: .045em; text-transform: uppercase; }
.discovery-data-card > strong { display: block; overflow-wrap: anywhere; font-size: 17px; line-height: 1.3; }
.discovery-data-card.distribution { grid-column: span 2; }
.discovery-data-card.wide, .discovery-data-card.lead { grid-column: 1 / -1; }
.discovery-data-card.lead > strong { max-width: 1180px; font-size: 15px; font-weight: 650; line-height: 1.55; }
.discovery-value-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.discovery-value-tags i { display: inline-flex; align-items: center; gap: 7px; max-width: 100%; padding: 6px 8px; border-radius: 7px; background: rgba(68, 211, 197, .08); color: #c6d8e1; font-size: 11px; font-style: normal; overflow-wrap: anywhere; }
.discovery-value-tags i span, .discovery-value-tags i small { color: #c6d8e1; font-size: inherit; }
.discovery-value-tags i b { color: var(--cyan); }
.discovery-value-tags em, .discovery-empty { margin: 0; color: var(--muted); font-size: 12px; font-style: normal; }
.discovery-report { max-width: 1280px; color: #c8d8e1; font-size: 14px; line-height: 1.68; }
.discovery-report h4, .discovery-report h5 { margin: 18px 0 7px; color: var(--text); font-size: 16px; }
.discovery-report h4:first-child, .discovery-report h5:first-child { margin-top: 0; }
.discovery-report p { margin: 0 0 10px; }
.discovery-report ul { margin: 0 0 13px; padding-left: 20px; }
.discovery-actions { display: grid; grid-template-columns: minmax(300px, 1fr) auto; gap: 14px 24px; align-items: center; padding: 20px 22px; }
.monitor-choice { display: flex; align-items: flex-start; gap: 11px; cursor: pointer; }
.monitor-choice input { width: 18px; height: 18px; margin-top: 2px; accent-color: var(--cyan); }
.monitor-choice span { display: grid; gap: 4px; }
.monitor-choice small { color: var(--muted); line-height: 1.4; }
.discovery-actions > div { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 9px; }
.discovery-actions .primary-button { width: auto; margin: 0; }
.discovery-save-button { color: var(--text); }
.discovery-actions > p { grid-column: 1 / -1; margin: 0; padding-top: 12px; border-top: 1px solid var(--border); color: var(--muted); font-size: 11px; }
.discovery-macro-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; padding: 8px; }
.discovery-macro-tabs button { display: grid; grid-template-columns: auto minmax(0, 1fr); grid-template-rows: auto auto; gap: 2px 10px; align-items: center; min-width: 0; padding: 13px 15px; border: 1px solid transparent; border-radius: 12px; background: transparent; color: var(--muted); text-align: left; cursor: pointer; }
.discovery-macro-tabs button > span { grid-row: 1 / 3; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: rgba(255,255,255,.035); color: var(--muted); font-size: 10px; font-weight: 900; }
.discovery-macro-tabs button b { color: #b8c9d2; font-size: 13px; }
.discovery-macro-tabs button small { overflow: hidden; color: var(--muted); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.discovery-macro-tabs button:hover, .discovery-macro-tabs button.active { border-color: rgba(68,211,197,.28); background: rgba(68,211,197,.08); }
.discovery-macro-tabs button.active > span { background: rgba(68,211,197,.18); color: var(--cyan); }
.discovery-macro-tabs button.active b { color: var(--text); }
.discovery-tab-panel { display: grid; gap: 18px; min-width: 0; }
.discovery-similarity-panel { min-width: 0; padding: 22px; }
.discovery-similarity-panel > .discovery-section-heading p:last-child { max-width: 780px; margin: 5px 0 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.discovery-similarity-panel > .discovery-section-heading button { flex: 0 0 auto; }
.discovery-similarity-empty { padding: 34px; border: 1px dashed var(--border); border-radius: 14px; text-align: center; }
.discovery-similarity-empty strong { display: block; margin-bottom: 6px; font-size: 16px; }
.discovery-similarity-empty p { max-width: 650px; margin: auto; color: var(--muted); font-size: 12px; line-height: 1.55; }
.discovery-similarity-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-bottom: 14px; }
.discovery-similarity-summary article, .similarity-score-cards article { min-width: 0; padding: 13px; border: 1px solid var(--border); border-radius: 11px; background: rgba(4,18,27,.52); }
.discovery-similarity-summary span, .similarity-score-cards span { display: block; margin-bottom: 6px; color: var(--muted); font-size: 9px; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.discovery-similarity-summary strong, .similarity-score-cards strong { display: block; color: var(--text); font-size: 16px; }
.discovery-similarity-summary small, .similarity-score-cards small { display: block; margin-top: 5px; color: var(--muted); font-size: 9px; line-height: 1.35; }
.discovery-similarity-workspace { display: grid; grid-template-columns: minmax(250px, .32fr) minmax(0, 1fr); gap: 12px; align-items: start; }
.discovery-similarity-ranking, .discovery-similarity-detail { min-width: 0; border: 1px solid var(--border); border-radius: 14px; background: rgba(4,18,27,.28); }
.discovery-similarity-ranking { overflow: hidden; }
.discovery-similarity-ranking > header, .similarity-campaign-evidence > header { display: flex; align-items: end; justify-content: space-between; gap: 10px; padding: 14px; border-bottom: 1px solid var(--border); }
.discovery-similarity-ranking > header div { display: grid; gap: 3px; }
.discovery-similarity-ranking > header span, .similarity-campaign-evidence > header span, .similarity-detail-header > div:first-child > span { color: var(--cyan); font-size: 9px; font-weight: 850; letter-spacing: .08em; }
.discovery-similarity-ranking > header strong, .similarity-campaign-evidence > header strong { font-size: 13px; }
.discovery-similarity-ranking > header small, .similarity-campaign-evidence > header small { color: var(--muted); font-size: 9px; }
.similarity-ranking-switch { display: flex; gap: 3px; padding: 3px; border: 1px solid var(--border); border-radius: 8px; background: rgba(4,18,27,.5); }
.similarity-ranking-switch button { padding: 5px 7px; border: 0; border-radius: 6px; background: transparent; color: var(--muted); font-size: 8px; font-weight: 800; cursor: pointer; }
.similarity-ranking-switch button.active { background: rgba(68,211,197,.14); color: var(--cyan); }
#discovery-similarity-list { display: grid; max-height: 680px; padding: 6px; overflow: auto; }
#discovery-similarity-list button { display: grid; grid-template-columns: 25px minmax(0, 1fr) auto; gap: 8px; align-items: center; width: 100%; padding: 10px 8px; border: 1px solid transparent; border-radius: 9px; background: transparent; color: var(--text); text-align: left; cursor: pointer; }
#discovery-similarity-list button:hover, #discovery-similarity-list button.active { border-color: rgba(68,211,197,.26); background: rgba(68,211,197,.08); }
#discovery-similarity-list button > span { color: var(--cyan); font-size: 9px; font-weight: 900; }
#discovery-similarity-list button div { min-width: 0; }
#discovery-similarity-list button strong, #discovery-similarity-list button small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#discovery-similarity-list button strong { font-size: 11px; }
#discovery-similarity-list button small { margin-top: 2px; color: var(--muted); font-size: 8px; }
#discovery-similarity-list button b { color: var(--cyan); font-size: 13px; }
.similarity-detail-header { display: flex; justify-content: space-between; gap: 15px; align-items: center; padding: 17px; border-bottom: 1px solid var(--border); }
.similarity-detail-header h4 { margin: 4px 0 2px; font-size: 20px; }
.similarity-detail-header small { color: var(--muted); font-size: 10px; }
.similarity-detail-header > div:last-child { text-align: right; }
.similarity-detail-header > div:last-child strong { display: block; color: var(--cyan); font-size: 25px; }
.similarity-detail-header > div:last-child.ineligible strong { color: #f3c969; font-size: 17px; }
.similarity-detail-header > div:last-child span { color: var(--muted); font-size: 9px; }
.similarity-score-explanation { display: grid; gap: 14px; padding: 16px; }
.similarity-score-cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.similarity-score-layer { display: grid; gap: 11px; padding: 13px; border: 1px solid var(--border); border-radius: 12px; background: rgba(4,18,27,.34); }
.similarity-score-layer.commercial { border-color: rgba(68,211,197,.22); background: rgba(68,211,197,.035); }
.similarity-score-layer > header { display: flex; justify-content: space-between; gap: 12px; align-items: baseline; }
.similarity-score-layer > header strong { font-size: 12px; }
.similarity-score-layer > header small { color: var(--muted); font-size: 9px; }
.similarity-reference-gate { padding: 11px 13px; border: 1px solid; border-radius: 10px; }
.similarity-reference-gate strong, .similarity-reference-gate span { display: block; }
.similarity-reference-gate strong { font-size: 11px; }
.similarity-reference-gate span { margin-top: 3px; color: var(--muted); font-size: 9px; }
.similarity-reference-gate ul { display: grid; gap: 3px; margin: 8px 0 0; padding-left: 17px; font-size: 9px; }
.similarity-reference-gate.eligible { border-color: rgba(110,231,183,.3); background: rgba(110,231,183,.07); }
.similarity-reference-gate.eligible strong { color: #6ee7b7; }
.similarity-reference-gate.ineligible { border-color: rgba(243,201,105,.3); background: rgba(243,201,105,.07); }
.similarity-reference-gate.ineligible strong, .similarity-reference-gate.ineligible ul { color: #f3c969; }
.similarity-reference-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.similarity-reference-summary article { padding: 10px; border: 1px solid var(--border); border-radius: 9px; background: rgba(4,18,27,.38); }
.similarity-reference-summary span { display: block; color: var(--muted); font-size: 8px; font-weight: 800; text-transform: uppercase; }
.similarity-reference-summary strong { display: block; margin-top: 4px; color: var(--cyan); font-size: 14px; }
.similarity-dimensions { display: grid; gap: 8px; }
.similarity-dimension { display: grid; grid-template-columns: 155px minmax(80px, 1fr) 45px 52px; gap: 9px; align-items: center; }
.similarity-dimension > span { font-size: 10px; font-weight: 700; }
.similarity-dimension > span small { display: block; margin-top: 2px; color: var(--muted); font-size: 8px; font-weight: 600; }
.similarity-dimension > div { height: 5px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.06); }
.similarity-dimension > div i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--cyan), var(--blue)); }
.similarity-dimension.reference > div i { background: linear-gradient(90deg, #8bd477, var(--cyan)); }
.similarity-dimension > strong { color: var(--cyan); font-size: 10px; text-align: right; }
.similarity-dimension > small { color: var(--muted); font-size: 8px; text-align: right; }
.similarity-dimension > em { display: flex; grid-column: 2 / -1; flex-wrap: wrap; gap: 5px 10px; color: var(--muted); font-size: 8px; font-style: normal; }
.similarity-dimension > em b { color: #b9ccd5; font-weight: 750; }
.similarity-dimension > em span { color: #698795; }
.similarity-reasons { padding: 13px; border-radius: 11px; background: rgba(68,211,197,.055); }
.similarity-reasons > strong { font-size: 11px; }
.similarity-reasons ul { display: grid; gap: 4px; margin: 8px 0 0; padding-left: 18px; color: #c8d8e1; font-size: 10px; }
.similarity-reasons p { margin: 9px 0 0; color: #f3c969; font-size: 9px; }
.similarity-campaign-evidence { border-top: 1px solid var(--border); }
.similarity-campaign-evidence > header > div { display: grid; gap: 3px; }
.similarity-campaign-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; padding: 14px; }
.similarity-campaign-columns h5 { margin: 0 0 8px; font-size: 11px; }
.similarity-campaign-columns > div { display: grid; align-content: start; gap: 8px; }
.similarity-campaign-card { padding: 11px; border: 1px solid var(--border); border-left: 3px solid var(--cyan); border-radius: 10px; background: rgba(4,18,27,.55); }
.similarity-campaign-card.warning { border-left-color: #f3c969; }
.similarity-campaign-card header { display: flex; justify-content: space-between; gap: 8px; }
.similarity-campaign-card header strong { max-width: 68%; font-size: 10px; line-height: 1.35; }
.similarity-campaign-card header span { color: var(--cyan); font-size: 11px; font-weight: 850; white-space: nowrap; }
.similarity-campaign-card dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; margin: 10px 0 0; }
.similarity-campaign-card dl div { min-width: 0; }
.similarity-campaign-card dt { color: var(--muted); font-size: 7px; text-transform: uppercase; }
.similarity-campaign-card dd { margin: 2px 0 0; overflow: hidden; color: #cfdee5; font-size: 9px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.discovery-similarity-models { margin-top: 14px; overflow: hidden; border: 1px solid var(--border); border-radius: 14px; background: rgba(4,18,27,.28); }
.discovery-similarity-models > header { padding: 15px; border-bottom: 1px solid var(--border); }
.discovery-similarity-models > header div { display: grid; gap: 3px; }
.discovery-similarity-models > header span { color: var(--cyan); font-size: 9px; font-weight: 850; letter-spacing: .08em; }
.discovery-similarity-models > header strong { font-size: 13px; }
.discovery-similarity-models > header small { color: var(--muted); font-size: 9px; }
.similarity-model-table { min-width: 760px; overflow-x: auto; }
.discovery-similarity-models { overflow: hidden; }
.similarity-model-row { display: grid; grid-template-columns: 34px minmax(220px, 1.4fr) minmax(170px, 1fr) 90px 100px; gap: 10px; align-items: center; padding: 10px 14px; border-top: 1px solid rgba(34,64,78,.55); }
.similarity-model-row:first-child { border-top: 0; }
.similarity-model-row > b { color: var(--cyan); font-size: 9px; }
.similarity-model-row > span { min-width: 0; }
.similarity-model-row > span strong, .similarity-model-row > span small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.similarity-model-row > span strong { font-size: 10px; }
.similarity-model-row > span small { margin-top: 2px; color: var(--muted); font-size: 8px; }
.similarity-model-row.heading { background: rgba(255,255,255,.025); color: var(--muted); font-size: 8px; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.similarity-model-row.winner { background: rgba(68,211,197,.055); }
.similarity-model-families { display: grid; gap: 12px; padding: 14px; }
.similarity-model-family { overflow: hidden; border: 1px solid var(--border); border-radius: 12px; background: rgba(4,18,27,.42); }
.similarity-model-family > header { display: flex; align-items: end; justify-content: space-between; gap: 12px; padding: 13px 14px; border-bottom: 1px solid var(--border); }
.similarity-model-family > header > div { display: grid; gap: 3px; }
.similarity-model-family > header span { color: var(--cyan); font-size: 8px; font-weight: 850; letter-spacing: .07em; }
.similarity-model-family > header strong { font-size: 14px; }
.similarity-model-family > header small { color: var(--muted); font-size: 9px; }
.similarity-model-tasks { display: grid; gap: 7px; padding: 8px; }
.similarity-model-task { overflow: hidden; border: 1px solid rgba(34,64,78,.75); border-radius: 10px; background: rgba(8,27,38,.55); }
.similarity-model-task > summary { display: grid; grid-template-columns: minmax(210px, 1.5fr) minmax(110px, .45fr) auto; gap: 14px; align-items: center; padding: 11px 13px; cursor: pointer; list-style: none; }
.similarity-model-task > summary::-webkit-details-marker { display: none; }
.similarity-model-task > summary > span { min-width: 0; }
.similarity-model-task > summary > span:first-child small, .similarity-model-task > summary > span:first-child strong, .similarity-model-task > summary > span:first-child i { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.similarity-model-task > summary > span:first-child small { color: var(--cyan); font-size: 8px; font-weight: 800; text-transform: uppercase; }
.similarity-model-task > summary > span:first-child strong { margin-top: 3px; font-size: 12px; }
.similarity-model-task > summary > span:first-child i { margin-top: 2px; color: var(--muted); font-size: 8px; font-style: normal; }
.similarity-model-task > summary > span:nth-child(2) { text-align: right; }
.similarity-model-task > summary > span:nth-child(2) b { display: block; color: var(--cyan); font-size: 14px; }
.similarity-model-task > summary > span:nth-child(2) small { color: var(--muted); font-size: 8px; }
.similarity-model-task > summary > em { color: var(--muted); font-size: 8px; font-style: normal; white-space: nowrap; }
.similarity-model-task[open] > summary { background: rgba(68,211,197,.045); }
.similarity-model-task > .similarity-model-table { border-top: 1px solid var(--border); }
.discovery-simulation-placeholder { display: flex; align-items: center; gap: 18px; padding: 34px; }
.discovery-simulation-placeholder > span { display: grid; place-items: center; width: 64px; height: 64px; flex: 0 0 auto; border: 1px solid rgba(68,211,197,.28); border-radius: 18px; background: rgba(68,211,197,.1); color: var(--cyan); font-size: 18px; font-weight: 900; }
.discovery-simulation-placeholder h3 { margin: 5px 0 6px; }
.discovery-simulation-placeholder p:last-child { max-width: 850px; margin: 0; color: var(--muted); line-height: 1.55; }
.discovery-simulation-panel { min-width: 0; padding: 22px; }
.discovery-simulation-panel > .discovery-section-heading p:last-child { max-width: 790px; margin: 5px 0 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.simulation-workspace { display: grid; grid-template-columns: minmax(420px, .85fr) minmax(350px, 1.15fr); gap: 14px; align-items: start; }
.simulation-form, .simulation-evidence { min-width: 0; padding: 15px; border: 1px solid var(--border); border-radius: 13px; background: rgba(4,18,27,.38); }
.simulation-form { display: grid; grid-template-columns: 1fr 1fr; gap: 11px; }
.simulation-form > header, .simulation-evidence > header { display: flex; grid-column: 1 / -1; align-items: end; justify-content: space-between; gap: 12px; padding-bottom: 11px; border-bottom: 1px solid var(--border); }
.simulation-form > header div, .simulation-evidence > header { display: grid; gap: 3px; }
.simulation-form > header span, .simulation-evidence > header span { color: var(--cyan); font-size: 8px; font-weight: 850; letter-spacing: .08em; }
.simulation-form > header strong, .simulation-evidence > header strong { font-size: 13px; }
.simulation-form > header small { color: var(--muted); font-size: 8px; }
.simulation-form label { display: grid; min-width: 0; gap: 5px; }
.simulation-form label > span, .simulation-capacity > span { color: var(--muted); font-size: 8px; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.simulation-form input, .simulation-form select { width: 100%; min-width: 0; padding: 11px; border: 1px solid var(--border); border-radius: 9px; background: rgba(7,24,35,.75); color: var(--text); font: inherit; font-size: 11px; }
.simulation-form label > small { color: var(--muted); font-size: 8px; line-height: 1.35; }
.simulation-form input[readonly] { color: var(--cyan); background: rgba(68,211,197,.06); cursor: default; }
.simulation-form input:focus, .simulation-form select:focus { outline: 1px solid rgba(68,211,197,.45); }
.simulation-wide { grid-column: 1 / -1; }
.simulation-capacity { display: grid; gap: 3px; padding: 11px 13px; border: 1px solid rgba(68,211,197,.22); border-radius: 10px; background: rgba(68,211,197,.055); }
.simulation-capacity strong { color: var(--cyan); font-size: 18px; }
.simulation-capacity small { color: var(--muted); font-size: 8px; }
.simulation-evidence { display: grid; gap: 11px; }
#simulation-reference-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
#simulation-reference-list article { display: grid; grid-template-columns: 24px minmax(0, 1fr) auto; gap: 7px; align-items: center; padding: 9px; border: 1px solid var(--border); border-radius: 9px; }
#simulation-reference-list article > b { color: var(--cyan); font-size: 8px; }
#simulation-reference-list article span { min-width: 0; }
#simulation-reference-list strong, #simulation-reference-list small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#simulation-reference-list strong { font-size: 9px; }
#simulation-reference-list small { margin-top: 2px; color: var(--muted); font-size: 7px; }
#simulation-reference-list em { color: var(--cyan); font-size: 10px; font-style: normal; font-weight: 800; }
.simulation-evidence details { overflow: hidden; border: 1px solid var(--border); border-radius: 10px; }
.simulation-evidence details summary { padding: 10px 12px; color: #cbd9df; font-size: 10px; font-weight: 800; cursor: pointer; }
#simulation-campaign-list, #simulation-model-list { display: grid; max-height: 285px; overflow: auto; border-top: 1px solid var(--border); }
#simulation-campaign-list button { display: flex; align-items: center; justify-content: space-between; gap: 9px; padding: 10px 12px; border: 0; border-bottom: 1px solid rgba(34,64,78,.45); background: transparent; color: var(--text); text-align: left; cursor: pointer; }
#simulation-campaign-list button:hover { background: rgba(68,211,197,.06); }
#simulation-campaign-list button span { min-width: 0; }
#simulation-campaign-list strong, #simulation-campaign-list small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#simulation-campaign-list strong { font-size: 9px; }
#simulation-campaign-list small { margin-top: 2px; color: var(--muted); font-size: 7px; }
#simulation-campaign-list button > b { color: var(--cyan); font-size: 9px; white-space: nowrap; }
#simulation-model-list article { display: grid; grid-template-columns: minmax(0, 1fr) 70px 35px; gap: 8px; align-items: center; padding: 9px 11px; border-bottom: 1px solid rgba(34,64,78,.45); }
#simulation-model-list span { min-width: 0; }
#simulation-model-list strong, #simulation-model-list small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#simulation-model-list strong { font-size: 9px; }
#simulation-model-list small { margin-top: 2px; color: var(--muted); font-size: 7px; }
#simulation-model-list b { color: var(--cyan); font-size: 9px; }
#simulation-model-list em { color: var(--muted); font-size: 8px; font-style: normal; }
.simulation-results { margin-top: 14px; overflow: hidden; border: 1px solid rgba(68,211,197,.28); border-radius: 14px; background: rgba(68,211,197,.035); scroll-margin-top: 20px; }
.simulation-results > header { display: flex; justify-content: space-between; gap: 14px; align-items: end; padding: 15px; border-bottom: 1px solid var(--border); }
.simulation-results > header > div:first-child { display: grid; gap: 3px; }
.simulation-results > header span { color: var(--cyan); font-size: 8px; font-weight: 850; letter-spacing: .08em; }
.simulation-results > header strong { font-size: 14px; }
.simulation-results > header small { color: var(--muted); font-size: 8px; }
.simulation-results > header > div:last-child { text-align: right; }
.simulation-results > header b { display: block; color: var(--cyan); font-size: 17px; }
.simulation-result-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 9px; padding: 14px; }
.simulation-result-grid article { min-width: 0; padding: 13px; border: 1px solid var(--border); border-radius: 11px; background: rgba(4,18,27,.55); }
.simulation-result-grid article > span { color: var(--muted); font-size: 8px; font-weight: 850; text-transform: uppercase; }
.simulation-result-grid article > strong { display: block; margin-top: 7px; color: var(--cyan); font-size: 21px; }
.simulation-result-grid article > small { display: block; min-height: 22px; margin-top: 5px; color: var(--muted); font-size: 8px; line-height: 1.35; }
.simulation-result-grid footer { display: grid; gap: 3px; margin-top: 11px; padding-top: 9px; border-top: 1px solid var(--border); }
.simulation-result-grid footer b { font-size: 9px; }
.simulation-result-grid footer i { color: var(--muted); font-size: 7px; font-style: normal; }
.simulation-results > p { margin: 0; padding: 0 14px 14px; color: #f3c969; font-size: 8px; }
.simulation-history { margin-top: 14px; padding: 14px; border: 1px solid var(--border); border-radius: 12px; }
.simulation-history > header { display: grid; gap: 3px; margin-bottom: 9px; }
.simulation-history > header span { color: var(--cyan); font-size: 8px; font-weight: 850; }
.simulation-history > header strong { font-size: 12px; }
.simulation-history > div { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; }
.simulation-history article { padding: 10px; border: 1px solid var(--border); border-radius: 9px; }
.simulation-history article span, .simulation-history article strong, .simulation-history article small { display: block; }
.simulation-history article span, .simulation-history article small { color: var(--muted); font-size: 7px; }
.simulation-history article strong { margin: 4px 0; font-size: 9px; }
.simulation-notice { margin: 12px 0 0; color: var(--muted); font-size: 8px; line-height: 1.5; }

@media (max-width: 1180px) {
  .discovery-workspace { grid-template-columns: 1fr; }
  .discovery-main { grid-column: 1; grid-row: 1; }
  .discovery-library { grid-column: 1; grid-row: 2; position: static; max-height: none; }
  .discovery-library > details { min-width: 0; }
  .discovery-profile-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .discovery-hero, .discovery-analysis-grid { grid-template-columns: 1fr; }
  .discovery-metric-sector-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .discovery-similarity-workspace { grid-template-columns: 1fr; }
  .simulation-workspace { grid-template-columns: 1fr; }
  .simulation-result-grid { grid-template-columns: 1fr 1fr; }
  .simulation-history > div { grid-template-columns: 1fr 1fr; }
  #discovery-similarity-list { grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: 360px; }
  .fingerprint-quick-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 780px) {
  .discovery-profile-list { grid-template-columns: 1fr 1fr; }
  .discovery-hero { padding: 20px; }
  .discovery-search-form, .discovery-actions { grid-template-columns: 1fr; }
  .discovery-search-form .primary-button { width: 100%; }
  .discovery-metric-sector-grid { grid-template-columns: 1fr 1fr; }
  .discovery-macro-tabs, .discovery-similarity-summary { grid-template-columns: 1fr; }
  .similarity-campaign-columns { grid-template-columns: 1fr; }
  .fingerprint-distribution-grid, .fingerprint-evidence-grid, .fingerprint-pillar-grid { grid-template-columns: 1fr; }
  .fingerprint-profile-fields { grid-template-columns: 1fr 1fr; }
  .discovery-actions > div { justify-content: stretch; }
  .discovery-actions > div button { flex: 1; }
}
@media (max-width: 470px) {
  .discovery-profile-list { grid-template-columns: 1fr; }
  .discovery-profile { grid-template-columns: auto 1fr; }
  .discovery-statuses { grid-column: 1 / -1; justify-content: flex-start; }
  .discovery-metric-sector-grid, .fingerprint-quick-grid, .fingerprint-profile-fields { grid-template-columns: 1fr; }
  #discovery-similarity-list, .similarity-score-cards, .similarity-reference-summary { grid-template-columns: 1fr; }
  .similarity-dimension { grid-template-columns: 105px minmax(60px, 1fr) 42px; }
  .similarity-dimension > small { display: none; }
  .similarity-model-task > summary { grid-template-columns: minmax(0, 1fr) auto; }
  .similarity-model-task > summary > em { grid-column: 1 / -1; }
  .simulation-form, .simulation-result-grid, .simulation-history > div, #simulation-reference-list { grid-template-columns: 1fr; }
  .discovery-data-card.distribution { grid-column: auto; }
  .discovery-actions > div { display: grid; }
}
