:root {
    color-scheme: dark;

    --bg: #071018;
    --bg-deep: #04090e;
    --panel: rgba(13, 26, 37, 0.86);
    --panel-strong: #0d1b27;
    --border: rgba(148, 184, 208, 0.15);
    --text: #edf6fb;
    --muted: #8198a8;
    --soft: #afc1cc;
    --accent: #47d7c7;
    --accent-2: #7ed7ff;
    --success: #4ce2a7;
    --warning: #f2c96d;
    --danger: #ff7a82;

    --shadow:
        0 30px 90px rgba(0, 0, 0, 0.35);

    font-family:
        Inter,
        ui-sans-serif,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        sans-serif;
}


* {
    box-sizing: border-box;
}


html,
body {
    margin: 0;
    min-height: 100%;
    background:
        radial-gradient(
            circle at 30% -20%,
            #143544 0,
            transparent 38%
        ),
        var(--bg);

    color: var(--text);
}


body {
    min-height: 100vh;
}


button,
input {
    font: inherit;
}


button {
    cursor: pointer;
}


.hidden {
    display: none !important;
}


.eyebrow {
    color: var(--accent);
    font-size: 11px;
    letter-spacing: 0.16em;
    font-weight: 800;
}


.brand-lockup,
.sidebar-brand {
    display: flex;
    gap: 13px;
    align-items: center;
}


.brand-mark {
    display: grid;
    width: 48px;
    height: 48px;
    place-items: center;
    border-radius: 14px;

    background:
        linear-gradient(
            145deg,
            var(--accent),
            #17898e
        );

    color: #031518;
    font-size: 24px;
    font-weight: 900;

    box-shadow:
        0 12px 35px
        rgba(71, 215, 199, 0.2);
}


.brand-mark.small {
    width: 38px;
    height: 38px;
    border-radius: 11px;
    font-size: 19px;
}


.brand-name {
    font-size: 18px;
    letter-spacing: 0.22em;
    font-weight: 900;
}


.brand-subtitle,
.sidebar-brand-sub {
    margin-top: 3px;
    color: var(--muted);
    font-size: 12px;
}


.login-shell {
    position: relative;

    display: grid;
    min-height: 100vh;
    place-items: center;

    padding: 32px;

    overflow: hidden;
}


.login-ambient {
    position: absolute;

    width: 720px;
    height: 720px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(71, 215, 199, 0.13),
            transparent 67%
        );

    transform: translate(
        -34vw,
        -23vh
    );

    pointer-events: none;
}


.login-card {
    position: relative;
    z-index: 1;

    width: min(
        100%,
        490px
    );

    padding: 42px;

    border: 1px solid var(--border);
    border-radius: 28px;

    background:
        linear-gradient(
            145deg,
            rgba(14, 29, 41, 0.96),
            rgba(6, 14, 21, 0.94)
        );

    box-shadow: var(--shadow);
}


.login-copy {
    margin-top: 54px;
}


.login-copy h1 {
    margin: 12px 0 14px;

    font-size: clamp(
        32px,
        5vw,
        47px
    );

    line-height: 1.01;
    letter-spacing: -0.04em;
}


.login-copy p {
    color: var(--soft);
    line-height: 1.65;
}


.login-form {
    display: grid;
    gap: 18px;

    margin-top: 34px;
}


.login-form label {
    display: grid;
    gap: 8px;

    color: var(--soft);
    font-size: 13px;
    font-weight: 700;
}


input {
    width: 100%;

    border: 1px solid
        rgba(153, 190, 211, 0.18);

    border-radius: 12px;

    outline: none;

    background: rgba(2, 9, 14, 0.72);
    color: var(--text);

    padding: 14px 15px;

    transition:
        border 0.2s,
        box-shadow 0.2s;
}


input:focus {
    border-color: var(--accent);

    box-shadow:
        0 0 0 3px
        rgba(71, 215, 199, 0.1);
}


.primary-button {
    border: 0;
    border-radius: 12px;

    background:
        linear-gradient(
            135deg,
            var(--accent),
            #36b8c7
        );

    color: #041517;

    padding: 14px 18px;

    font-weight: 900;

    transition:
        transform 0.15s,
        filter 0.15s;
}


.primary-button:hover {
    transform: translateY(-1px);
    filter: brightness(1.06);
}


.form-error {
    min-height: 18px;

    color: #ff9ca2;
    font-size: 13px;
}


.login-footer {
    margin-top: 28px;

    border-top: 1px solid var(--border);

    padding-top: 20px;

    color: #607a8c;
    font-size: 11px;
    line-height: 1.5;
}


.app-shell {
    display: grid;

    min-height: 100vh;

    grid-template-columns:
        242px
        minmax(0, 1fr);
}


.sidebar {
    position: sticky;
    top: 0;

    display: flex;
    flex-direction: column;

    height: 100vh;

    border-right: 1px solid var(--border);

    background:
        rgba(4, 12, 18, 0.84);

    backdrop-filter: blur(20px);

    padding: 27px 18px;
}


.sidebar-brand {
    padding: 0 8px 28px;
}


.nav {
    display: grid;
    gap: 6px;

    margin-top: 18px;
}


.nav-item {
    display: flex;
    align-items: center;
    gap: 11px;

    border: 1px solid transparent;
    border-radius: 11px;

    background: transparent;
    color: #7f98aa;

    padding: 12px 13px;

    text-align: left;
    font-size: 13px;
    font-weight: 700;
}


.nav-item:hover,
.nav-item.active {
    border-color:
        rgba(71, 215, 199, 0.14);

    background:
        rgba(71, 215, 199, 0.07);

    color: var(--text);
}


.nav-item.active span {
    color: var(--accent);
}


.sidebar-bottom {
    margin-top: auto;

    padding: 16px 8px 0;

    border-top:
        1px solid var(--border);
}


.platform-status {
    display: flex;
    align-items: center;
    gap: 8px;

    color: var(--soft);
    font-size: 12px;
}


.status-dot {
    display: inline-block;

    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: var(--success);

    box-shadow:
        0 0 14px
        rgba(76, 226, 167, 0.75);
}


.build-label {
    margin-top: 8px;

    color: #506979;
    font-size: 10px;
}


.workspace {
    min-width: 0;

    padding:
        0
        clamp(22px, 4vw, 54px)
        56px;
}


.topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;

    min-height: 86px;

    border-bottom: 1px solid var(--border);
}


.topbar h2 {
    margin: 5px 0 0;

    font-size: 19px;
}


.topbar-actions {
    display: flex;
    align-items: center;
    gap: 16px;
}


.live-pill {
    display: flex;
    align-items: center;
    gap: 8px;

    border: 1px solid
        rgba(76, 226, 167, 0.18);

    border-radius: 999px;

    background:
        rgba(76, 226, 167, 0.05);

    color: var(--success);

    padding: 7px 10px;

    font-size: 10px;
    letter-spacing: 0.1em;
    font-weight: 900;
}


.user-name {
    color: var(--soft);
    font-size: 12px;
}


.ghost-button {
    border:
        1px solid var(--border);

    border-radius: 10px;

    background: transparent;
    color: var(--soft);

    padding: 9px 12px;

    font-size: 12px;
}


.hero {
    display: flex;
    justify-content: space-between;
    gap: 30px;
    align-items: flex-end;

    padding: 52px 0 32px;
}


.hero-copy {
    max-width: 740px;
}


.hero h1 {
    margin: 10px 0 14px;

    font-size:
        clamp(
            38px,
            5vw,
            67px
        );

    line-height: 0.98;
    letter-spacing: -0.055em;
}


.hero p {
    max-width: 620px;

    margin: 0;

    color: var(--soft);

    line-height: 1.65;
}


.hero-badge {
    display: flex;
    align-items: center;
    gap: 13px;

    max-width: 220px;

    border:
        1px solid var(--border);

    border-radius: 15px;

    background:
        rgba(11, 26, 37, 0.62);

    color: var(--muted);

    padding: 15px;

    font-size: 11px;
    line-height: 1.45;
}


.hero-badge-number {
    color: var(--accent);
    font-size: 32px;
    font-weight: 900;
}


.kpi-grid {
    display: grid;

    grid-template-columns:
        repeat(
            5,
            minmax(0, 1fr)
        );

    gap: 12px;
}


.kpi {
    min-height: 126px;

    border:
        1px solid var(--border);

    border-radius: 17px;

    background:
        linear-gradient(
            145deg,
            rgba(15, 31, 44, 0.86),
            rgba(8, 20, 29, 0.86)
        );

    padding: 18px;

    box-shadow:
        0 18px 45px
        rgba(0, 0, 0, 0.12);
}


.kpi-label {
    color: var(--muted);

    font-size: 10px;
    letter-spacing: 0.1em;
    font-weight: 800;
}


.kpi-value {
    margin-top: 22px;

    color: var(--text);

    font-size:
        clamp(
            26px,
            3vw,
            40px
        );

    font-weight: 900;
    letter-spacing: -0.045em;
}


.kpi-foot {
    margin-top: 5px;

    color: #648090;
    font-size: 10px;
}


.deep-search-card {
    margin-top: 18px;

    border:
        1px solid
        rgba(71, 215, 199, 0.25);

    border-radius: 19px;

    background:
        radial-gradient(
            circle at 100% 0,
            rgba(71, 215, 199, 0.12),
            transparent 35%
        ),
        linear-gradient(
            145deg,
            rgba(15, 34, 46, 0.93),
            rgba(7, 18, 27, 0.95)
        );

    padding: 24px;
}


.deep-search-content {
    display: flex;
    gap: 17px;
    align-items: flex-start;
}


.deep-search-content h3 {
    margin: 6px 0 7px;
    font-size: 23px;
}


.deep-search-content p {
    max-width: 750px;

    margin: 0;

    color: var(--soft);

    font-size: 13px;
    line-height: 1.5;
}


.deep-icon {
    display: grid;

    width: 46px;
    height: 46px;

    flex: 0 0 46px;

    place-items: center;

    border-radius: 13px;

    background:
        rgba(71, 215, 199, 0.1);

    color: var(--accent);

    font-size: 25px;
}


.search-form {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        auto;

    gap: 10px;

    margin-top: 20px;
}


.search-button {
    min-width: 130px;
}


.search-results {
    margin-top: 13px;
}


.search-result {
    display: flex;
    justify-content: space-between;
    gap: 20px;

    border-top:
        1px solid var(--border);

    padding: 12px 4px;

    color: var(--soft);

    font-size: 12px;
}


.no-match {
    border-top:
        1px solid var(--border);

    margin-top: 10px;
    padding-top: 14px;

    color: var(--warning);

    font-size: 12px;
}


.dashboard-grid {
    display: grid;

    grid-template-columns:
        minmax(0, 1.45fr)
        minmax(320px, 0.55fr);

    gap: 16px;

    margin-top: 16px;
}


.dashboard-grid.lower {
    grid-template-columns:
        minmax(0, 1.1fr)
        minmax(320px, 0.9fr);
}


.panel {
    border:
        1px solid var(--border);

    border-radius: 18px;

    background:
        rgba(9, 22, 32, 0.78);

    padding: 22px;
}


.panel-header {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: flex-start;

    margin-bottom: 22px;
}


.panel-header h3 {
    margin: 6px 0 0;

    font-size: 19px;
}


.panel-stat {
    color: var(--accent);

    font-size: 13px;
    font-weight: 800;
}


.ecosystem-bars {
    display: grid;
    gap: 14px;
}


.ecosystem-row {
    display: grid;

    grid-template-columns:
        90px
        minmax(0, 1fr)
        85px;

    gap: 13px;
    align-items: center;
}


.ecosystem-name {
    color: var(--soft);
    font-size: 12px;
    font-weight: 700;
}


.bar-track {
    height: 6px;

    overflow: hidden;

    border-radius: 99px;

    background:
        rgba(119, 151, 170, 0.13);
}


.bar-fill {
    height: 100%;

    border-radius: inherit;

    background:
        linear-gradient(
            90deg,
            #207d87,
            var(--accent)
        );
}


.ecosystem-count {
    color: var(--muted);

    text-align: right;
    font-size: 11px;
}


.risk-tiers {
    display: grid;
    gap: 11px;
}


.risk-tier {
    display: flex;
    justify-content: space-between;
    align-items: center;

    border-bottom:
        1px solid var(--border);

    padding: 11px 0;
}


.risk-tier:last-child {
    border-bottom: 0;
}


.risk-name {
    text-transform: capitalize;

    color: var(--soft);

    font-size: 12px;
}


.risk-count {
    font-size: 21px;
    font-weight: 900;
}


.recent-list {
    display: grid;
}


.recent-item {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        85px
        105px;

    gap: 12px;

    border-bottom:
        1px solid var(--border);

    padding: 11px 0;

    align-items: center;
}


.recent-item:last-child {
    border-bottom: 0;
}


.recent-name {
    min-width: 0;

    overflow: hidden;

    text-overflow: ellipsis;
    white-space: nowrap;

    color: var(--soft);

    font-size: 12px;
}


.ecosystem-pill {
    color: var(--accent);

    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.07em;
}


.recent-time {
    color: #60798a;
    font-size: 10px;
    text-align: right;
}


.health-grid {
    display: grid;

    grid-template-columns:
        1fr 1fr;

    gap: 11px;
}


.health-card {
    border:
        1px solid var(--border);

    border-radius: 13px;

    background:
        rgba(13, 29, 41, 0.7);

    padding: 16px;
}


.health-value {
    font-size: 25px;
    font-weight: 900;
}


.health-label {
    margin-top: 5px;

    color: var(--muted);
    font-size: 10px;
}


@media (
    max-width: 1100px
) {
    .kpi-grid {
        grid-template-columns:
            repeat(
                3,
                minmax(0, 1fr)
            );
    }

    .dashboard-grid,
    .dashboard-grid.lower {
        grid-template-columns: 1fr;
    }
}


@media (
    max-width: 780px
) {
    .app-shell {
        grid-template-columns: 1fr;
    }

    .sidebar {
        display: none;
    }

    .workspace {
        padding:
            0
            18px
            42px;
    }

    .hero {
        display: block;
    }

    .hero-badge {
        margin-top: 20px;
    }

    .kpi-grid {
        grid-template-columns:
            1fr 1fr;
    }

    .topbar-actions {
        gap: 8px;
    }

    .live-pill,
    .user-name {
        display: none;
    }
}


@media (
    max-width: 520px
) {
    .login-shell {
        padding: 16px;
    }

    .login-card {
        padding: 28px 22px;
    }

    .kpi-grid {
        grid-template-columns: 1fr;
    }

    .search-form {
        grid-template-columns: 1fr;
    }

    .ecosystem-row {
        grid-template-columns:
            70px
            minmax(0, 1fr)
            70px;
    }

    .recent-item {
        grid-template-columns:
            minmax(0, 1fr)
            70px;
    }

    .recent-time {
        display: none;
    }
}


/* BUILD 042 DEEP SEARCH */

.deep-search-running {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 14px;
    border-top: 1px solid var(--border);
    padding: 17px 3px 3px;
    color: var(--soft);
}

.deep-search-running span {
    display: block;
    margin-top: 4px;
    color: var(--muted);
    font-size: 11px;
}

.deep-search-pulse {
    width: 13px;
    height: 13px;
    flex: 0 0 13px;
    border-radius: 50%;
    background: var(--accent);
    box-shadow:
        0 0 0 0
        rgba(71, 215, 199, 0.45);
    animation:
        nexusDeepPulse
        1.5s infinite;
}

@keyframes nexusDeepPulse {
    0% {
        box-shadow:
            0 0 0 0
            rgba(71, 215, 199, 0.45);
    }

    70% {
        box-shadow:
            0 0 0 13px
            rgba(71, 215, 199, 0);
    }

    100% {
        box-shadow:
            0 0 0 0
            rgba(71, 215, 199, 0);
    }
}

.deep-result-shell {
    margin-top: 18px;
    border-top: 1px solid var(--border);
    padding-top: 20px;
}

.deep-result-header {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    align-items: flex-start;
}

.deep-result-header h4 {
    margin: 6px 0 5px;
    font-size: 22px;
}

.deep-result-header p {
    margin: 0;
    color: var(--muted);
    font-size: 10px;
}

.deep-state {
    border: 1px solid var(--border);
    border-radius: 999px;
    padding: 8px 11px;
    color: var(--soft);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.08em;
}

.quarantine-state {
    border-color:
        rgba(242, 201, 109, 0.28);
    background:
        rgba(242, 201, 109, 0.07);
    color: var(--warning);
}

.trusted-state {
    border-color:
        rgba(76, 226, 167, 0.25);
    background:
        rgba(76, 226, 167, 0.06);
    color: var(--success);
}

.deep-summary-grid {
    display: grid;
    grid-template-columns:
        repeat(
            6,
            minmax(0, 1fr)
        );
    gap: 9px;
    margin-top: 18px;
}

.deep-summary-item {
    border: 1px solid var(--border);
    border-radius: 12px;
    background:
        rgba(5, 15, 22, 0.48);
    padding: 12px;
}

.deep-summary-item span {
    display: block;
    color: var(--muted);
    font-size: 9px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.deep-summary-item strong {
    display: block;
    margin-top: 7px;
    font-size: 17px;
}

.deep-warning {
    margin-top: 13px;
    border:
        1px solid
        rgba(242, 201, 109, 0.22);
    border-radius: 12px;
    background:
        rgba(242, 201, 109, 0.05);
    padding: 12px 14px;
    color: var(--warning);
    font-size: 11px;
    line-height: 1.5;
}

.deep-section {
    margin-top: 20px;
}

.deep-section-title {
    margin-bottom: 9px;
    color: var(--muted);
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.deep-identity {
    display: grid;
    grid-template-columns:
        repeat(
            4,
            minmax(0, 1fr)
        );
    gap: 9px;
}

.deep-identity > div {
    min-width: 0;
    border: 1px solid var(--border);
    border-radius: 11px;
    padding: 12px;
}

.deep-identity span {
    display: block;
    color: var(--muted);
    font-size: 9px;
}

.deep-identity strong {
    display: block;
    margin-top: 5px;
    overflow: hidden;
    color: var(--soft);
    font-size: 11px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.deep-match-list,
.deep-vuln-list {
    display: grid;
}

.deep-match-row,
.deep-vuln {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    border-bottom:
        1px solid var(--border);
    padding: 11px 3px;
}

.deep-match-row:last-child,
.deep-vuln:last-child {
    border-bottom: 0;
}

.deep-match-row strong,
.deep-vuln strong {
    color: var(--soft);
    font-size: 12px;
}

.deep-match-meta {
    color: var(--muted);
    font-size: 10px;
    white-space: nowrap;
}

.deep-vuln span {
    max-width: 75%;
    color: var(--muted);
    font-size: 10px;
    text-align: right;
}

.deep-source-grid {
    display: grid;
    grid-template-columns:
        repeat(
            4,
            minmax(0, 1fr)
        );
    gap: 9px;
}

.deep-source {
    border: 1px solid var(--border);
    border-radius: 11px;
    padding: 11px;
}

.deep-source strong,
.deep-source span,
.deep-source small {
    display: block;
}

.deep-source strong {
    color: var(--soft);
    font-size: 11px;
    text-transform: uppercase;
}

.deep-source span {
    margin-top: 5px;
    color: var(--muted);
    font-size: 9px;
}

.deep-source small {
    margin-top: 3px;
    color: #567182;
    font-size: 9px;
}

.deep-guardrail {
    margin-top: 19px;
    border:
        1px solid
        rgba(71, 215, 199, 0.13);
    border-radius: 12px;
    background:
        rgba(71, 215, 199, 0.035);
    padding: 13px;
    color: var(--muted);
    font-size: 10px;
    line-height: 1.55;
}

.deep-guardrail strong {
    margin-right: 7px;
    color: var(--accent);
    letter-spacing: 0.09em;
}

@media (
    max-width: 1100px
) {
    .deep-summary-grid {
        grid-template-columns:
            repeat(
                3,
                minmax(0, 1fr)
            );
    }

    .deep-source-grid {
        grid-template-columns:
            1fr 1fr;
    }

    .deep-identity {
        grid-template-columns:
            1fr 1fr;
    }
}

@media (
    max-width: 600px
) {
    .deep-summary-grid,
    .deep-source-grid,
    .deep-identity {
        grid-template-columns: 1fr;
    }

    .deep-result-header {
        display: block;
    }

    .deep-state {
        display: inline-block;
        margin-top: 12px;
    }
}


/* BUILD 043 FUNCTIONAL NAVIGATION */

.functional-workspace {
    padding: 42px 0 0;
}

.functional-hero {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 24px;
    margin-bottom: 22px;
}

.functional-hero h1 {
    margin: 8px 0 8px;
    font-size: clamp(
        34px,
        4vw,
        54px
    );
    letter-spacing: -0.045em;
}

.functional-hero p {
    max-width: 720px;
    margin: 0;
    color: var(--soft);
    line-height: 1.55;
}

.workspace-loading {
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 180px;
    color: var(--soft);
}

.workspace-loading span {
    display: block;
    margin-top: 4px;
    color: var(--muted);
    font-size: 11px;
}

.intel-filter-bar {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        170px
        170px
        auto;
    gap: 10px;
    margin-bottom: 16px;
}

.simple-filter {
    grid-template-columns:
        minmax(0, 1fr)
        auto;
}

.intel-filter-bar select {
    border: 1px solid
        rgba(153, 190, 211, 0.18);
    border-radius: 12px;
    background: rgba(2, 9, 14, 0.72);
    color: var(--text);
    padding: 12px;
}

.intel-list-panel {
    margin-top: 0;
}

.intel-table {
    display: grid;
}

.intel-row {
    display: grid;
    gap: 12px;
    align-items: center;
    border-bottom:
        1px solid var(--border);
    padding: 13px 4px;
    color: var(--soft);
    font-size: 11px;
}

.intel-row:last-child {
    border-bottom: 0;
}

.intel-header-row {
    color: var(--muted);
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.intel-software-table .intel-row {
    grid-template-columns:
        minmax(0, 2.2fr)
        80px
        120px
        120px
        60px
        100px;
}

.intel-click-row {
    width: 100%;
    border-top: 0;
    border-left: 0;
    border-right: 0;
    background: transparent;
    text-align: left;
}

.intel-click-row:hover {
    background:
        rgba(71, 215, 199, 0.035);
}

.intel-row strong {
    display: block;
    overflow: hidden;
    color: var(--text);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.intel-row small {
    display: block;
    margin-top: 4px;
    color: var(--muted);
    font-size: 9px;
}

.intel-empty {
    padding: 30px 5px;
    color: var(--muted);
}

.risk-chip {
    display: inline-block;
    border: 1px solid var(--border);
    border-radius: 999px;
    padding: 5px 8px;
    font-size: 9px;
    text-transform: uppercase;
}

.risk-danger {
    border-color:
        rgba(255, 122, 130, 0.22);
    background:
        rgba(255, 122, 130, 0.06);
    color: var(--danger);
}

.risk-warning {
    border-color:
        rgba(242, 201, 109, 0.22);
    background:
        rgba(242, 201, 109, 0.06);
    color: var(--warning);
}

.risk-low {
    border-color:
        rgba(76, 226, 167, 0.2);
    background:
        rgba(76, 226, 167, 0.05);
    color: var(--success);
}

.profile-kpi-grid {
    display: grid;
    grid-template-columns:
        repeat(
            5,
            minmax(0, 1fr)
        );
    gap: 10px;
    margin-bottom: 16px;
}

.profile-kpi {
    border: 1px solid var(--border);
    border-radius: 14px;
    background:
        rgba(9, 22, 32, 0.78);
    padding: 16px;
}

.profile-kpi span {
    display: block;
    color: var(--muted);
    font-size: 9px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.profile-kpi strong {
    display: block;
    margin-top: 9px;
    font-size: 23px;
}

.profile-grid {
    display: grid;
    grid-template-columns:
        1fr 1fr;
    gap: 16px;
}

.profile-section {
    margin-top: 16px;
}

.profile-fields {
    display: grid;
    grid-template-columns:
        1fr 1fr;
    gap: 11px;
}

.profile-fields > div {
    min-width: 0;
    border: 1px solid var(--border);
    border-radius: 11px;
    padding: 12px;
}

.profile-fields span {
    display: block;
    color: var(--muted);
    font-size: 9px;
    text-transform: uppercase;
}

.profile-fields strong {
    display: block;
    margin-top: 5px;
    overflow: hidden;
    color: var(--soft);
    font-size: 11px;
    text-overflow: ellipsis;
}

.profile-state {
    border: 1px solid
        rgba(242, 201, 109, 0.22);
    border-radius: 999px;
    background:
        rgba(242, 201, 109, 0.05);
    color: var(--warning);
    padding: 8px 12px;
    font-size: 10px;
    font-weight: 900;
}

.intel-back {
    margin-bottom: 24px;
}

.vuln-table-row {
    grid-template-columns:
        minmax(0, 2fr)
        150px
        140px
        90px
        70px
        60px;
}

.vuln-profile-row {
    grid-template-columns:
        minmax(0, 2fr)
        120px
        120px
        100px
        100px;
}

.evidence-table-row {
    grid-template-columns:
        minmax(0, 1.5fr)
        minmax(180px, 2fr)
        150px
        100px
        100px;
}

.evidence-profile-row {
    grid-template-columns:
        minmax(0, 1.5fr)
        minmax(180px, 2fr)
        150px
        100px;
}

.mono-short {
    overflow: hidden;
    font-family:
        ui-monospace,
        SFMono-Regular,
        Menlo,
        monospace;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.source-card-grid {
    display: grid;
    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        );
    gap: 12px;
}

.source-card {
    border: 1px solid var(--border);
    border-radius: 14px;
    background:
        rgba(8, 20, 29, 0.62);
    padding: 16px;
}

.source-card-head {
    display: flex;
    justify-content: space-between;
    gap: 14px;
}

.source-card-head strong,
.source-card-head span {
    display: block;
}

.source-card-head strong {
    font-size: 12px;
}

.source-card-head span {
    margin-top: 4px;
    color: var(--muted);
    font-size: 9px;
}

.source-health {
    height: fit-content;
    border-radius: 999px;
    padding: 5px 7px;
    font-size: 8px;
    font-weight: 900;
}

.source-ok {
    background:
        rgba(76, 226, 167, 0.07);
    color: var(--success);
}

.source-error {
    background:
        rgba(255, 122, 130, 0.08);
    color: var(--danger);
}

.source-disabled {
    background:
        rgba(129, 152, 168, 0.08);
    color: var(--muted);
}

.source-meta {
    display: flex;
    gap: 8px;
    margin-top: 13px;
    color: var(--muted);
    font-size: 9px;
}

.source-times {
    display: grid;
    gap: 8px;
    margin-top: 14px;
}

.source-times span,
.source-times strong {
    display: block;
}

.source-times span {
    color: var(--muted);
    font-size: 8px;
}

.source-times strong {
    margin-top: 2px;
    color: var(--soft);
    font-size: 10px;
}

.source-error-detail {
    margin-top: 12px;
    color: var(--danger);
    font-size: 9px;
}

.source-error-detail pre {
    max-height: 160px;
    overflow: auto;
    white-space: pre-wrap;
    color: #d58f94;
    font-size: 8px;
}

.deep-history-panel {
    margin-top: 16px;
}

.history-row {
    grid-template-columns:
        minmax(0, 2fr)
        minmax(0, 1.4fr)
        90px
        70px
        100px;
}

@media (
    max-width: 1150px
) {
    .source-card-grid {
        grid-template-columns:
            1fr 1fr;
    }

    .profile-kpi-grid {
        grid-template-columns:
            repeat(
                3,
                minmax(0, 1fr)
            );
    }
}

@media (
    max-width: 780px
) {
    .intel-filter-bar,
    .simple-filter {
        grid-template-columns: 1fr;
    }

    .profile-grid {
        grid-template-columns: 1fr;
    }

    .profile-kpi-grid {
        grid-template-columns:
            1fr 1fr;
    }

    .profile-fields {
        grid-template-columns: 1fr;
    }

    .source-card-grid {
        grid-template-columns: 1fr;
    }

    .intel-row {
        grid-template-columns:
            1fr !important;
    }

    .intel-header-row {
        display: none;
    }
}


/* BUILD 044 UNIVERSAL PRODUCT INTELLIGENCE */

.universal-report {
    margin-top: 18px;
    border-top: 1px solid var(--border);
    padding-top: 24px;
}

.universal-report-head {
    display: flex;
    justify-content: space-between;
    gap: 30px;
    align-items: flex-start;
}

.universal-report-head h3 {
    margin: 6px 0;
    font-size: clamp(
        27px,
        4vw,
        43px
    );
    letter-spacing: -0.045em;
}

.universal-report-head p {
    margin: 0;
    color: var(--muted);
    font-size: 11px;
}

.universal-score-block {
    min-width: 145px;
    border: 1px solid
        rgba(71, 215, 199, 0.17);
    border-radius: 17px;
    background:
        rgba(71, 215, 199, 0.045);
    padding: 16px;
    text-align: center;
}

.universal-score-block span,
.universal-score-block strong,
.universal-score-block small {
    display: block;
}

.universal-score-block span {
    color: var(--muted);
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 0.11em;
}

.universal-score-block strong {
    margin: 5px 0;
    font-size: 42px;
    line-height: 1;
}

.universal-score-block small {
    color: var(--soft);
    font-size: 9px;
}

.universal-identity-warning {
    margin-top: 14px;
    border: 1px solid
        rgba(242, 201, 109, 0.24);
    border-radius: 12px;
    background:
        rgba(242, 201, 109, 0.05);
    padding: 13px;
    color: var(--warning);
    font-size: 10px;
    line-height: 1.55;
}

.universal-identity-warning strong {
    margin-right: 7px;
}

.universal-disposition-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 11px;
    margin-top: 17px;
}

.universal-disposition {
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 14px;
}

.universal-disposition span,
.universal-disposition strong,
.universal-disposition small {
    display: block;
}

.universal-disposition span {
    font-size: 8px;
    font-weight: 900;
    letter-spacing: 0.1em;
}

.universal-disposition strong {
    margin: 6px 0 4px;
    font-size: 19px;
}

.universal-disposition small {
    color: var(--muted);
    font-size: 9px;
}

.universal-danger {
    border-color:
        rgba(255, 122, 130, 0.25);
    background:
        rgba(255, 122, 130, 0.055);
    color: var(--danger);
}

.universal-warning {
    border-color:
        rgba(242, 201, 109, 0.25);
    background:
        rgba(242, 201, 109, 0.05);
    color: var(--warning);
}

.universal-safe {
    border-color:
        rgba(76, 226, 167, 0.20);
    background:
        rgba(76, 226, 167, 0.04);
    color: var(--success);
}

.universal-stat-grid {
    display: grid;
    grid-template-columns:
        repeat(
            4,
            minmax(0, 1fr)
        );
    gap: 9px;
    margin-top: 14px;
}

.universal-stat-grid > div {
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 12px;
}

.universal-stat-grid span,
.universal-stat-grid strong {
    display: block;
}

.universal-stat-grid span {
    color: var(--muted);
    font-size: 8px;
    text-transform: uppercase;
}

.universal-stat-grid strong {
    margin-top: 6px;
    overflow: hidden;
    color: var(--soft);
    font-size: 12px;
    text-overflow: ellipsis;
}

.universal-section {
    margin-top: 18px;
    border: 1px solid var(--border);
    border-radius: 15px;
    background:
        rgba(7, 19, 27, 0.52);
    padding: 17px;
}

.universal-section h4 {
    margin: 6px 0 14px;
    font-size: 17px;
}

.universal-factor-list {
    display: grid;
    gap: 13px;
}

.universal-factor {
    border-bottom:
        1px solid var(--border);
    padding-bottom: 12px;
}

.universal-factor:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}

.universal-factor-head {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    font-size: 10px;
}

.universal-factor-head span {
    color: var(--soft);
}

.universal-factor-track {
    height: 5px;
    margin-top: 7px;
    overflow: hidden;
    border-radius: 999px;
    background:
        rgba(145, 175, 192, 0.10);
}

.universal-factor-fill {
    height: 100%;
    border-radius: inherit;
    background: currentColor;
    color: var(--accent);
}

.universal-factor p {
    margin: 7px 0 0;
    color: var(--muted);
    font-size: 9px;
    line-height: 1.45;
}

.universal-two-column {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.universal-detail-grid {
    display: grid;
    grid-template-columns:
        1fr 1fr;
    gap: 9px;
}

.universal-six {
    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        );
}

.universal-detail-grid > div {
    min-width: 0;
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 10px;
}

.universal-detail-grid span,
.universal-detail-grid strong {
    display: block;
}

.universal-detail-grid span {
    color: var(--muted);
    font-size: 8px;
    text-transform: uppercase;
}

.universal-detail-grid strong {
    margin-top: 4px;
    overflow: hidden;
    color: var(--soft);
    font-size: 10px;
    text-overflow: ellipsis;
}

.universal-conclusion {
    margin: 13px 0 0;
    color: var(--soft);
    font-size: 10px;
    line-height: 1.55;
}

.universal-legal-note {
    margin-top: 12px;
    color: var(--muted);
    font-size: 8px;
    line-height: 1.5;
}

.universal-reasons {
    display: grid;
    gap: 7px;
    margin-top: 12px;
}

.universal-reasons > div {
    border-left: 2px solid currentColor;
    padding-left: 8px;
    color: var(--soft);
    font-size: 9px;
}

.universal-advisory-list {
    display: grid;
    margin-top: 13px;
}

.universal-advisory {
    display: grid;
    grid-template-columns:
        minmax(0, 2fr)
        100px
        110px;
    gap: 12px;
    align-items: center;
    border-top:
        1px solid var(--border);
    padding: 10px 0;
    color: var(--soft);
    font-size: 9px;
}

.universal-advisory strong,
.universal-advisory span {
    display: block;
}

.universal-advisory span {
    margin-top: 2px;
    color: var(--muted);
    font-size: 8px;
}

.universal-empty {
    color: var(--muted);
    font-size: 10px;
    line-height: 1.5;
}

.universal-source-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 12px;
}

.universal-source-pills span {
    border: 1px solid var(--border);
    border-radius: 999px;
    padding: 5px 8px;
    color: var(--soft);
    font-size: 8px;
}

@media (
    max-width: 900px
) {
    .universal-stat-grid {
        grid-template-columns:
            1fr 1fr;
    }

    .universal-two-column {
        grid-template-columns: 1fr;
    }

    .universal-six {
        grid-template-columns:
            1fr 1fr;
    }
}

@media (
    max-width: 600px
) {
    .universal-report-head {
        display: block;
    }

    .universal-score-block {
        margin-top: 14px;
    }

    .universal-disposition-row,
    .universal-stat-grid,
    .universal-detail-grid,
    .universal-six {
        grid-template-columns: 1fr;
    }

    .universal-advisory {
        grid-template-columns: 1fr;
    }
}


/* BUILD 044.2 SUPPORTING REGISTRY DISCOVERY */

.universal-supporting-discovery {
    margin-top: 18px;
    border: 1px solid var(--border);
    border-radius: 14px;
    background:
        rgba(7, 19, 27, 0.45);
    overflow: hidden;
}

.universal-supporting-discovery > summary {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    cursor: pointer;
    padding: 14px 16px;
    color: var(--soft);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.04em;
}

.universal-supporting-discovery > summary span {
    color: var(--muted);
    font-size: 8px;
    font-weight: 700;
}

.supporting-discovery-body {
    border-top: 1px solid var(--border);
    padding: 15px;
}

.supporting-discovery-warning {
    margin-bottom: 14px;
    border: 1px solid
        rgba(242, 201, 109, 0.22);
    border-radius: 10px;
    background:
        rgba(242, 201, 109, 0.04);
    padding: 10px;
    color: var(--warning);
    font-size: 9px;
    line-height: 1.5;
}

.supporting-discovery-warning strong {
    display: block;
    margin-bottom: 4px;
}

.supporting-package-list {
    display: grid;
    margin-top: 14px;
}

.supporting-package-row {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        100px
        80px;
    gap: 12px;
    align-items: center;
    border-top:
        1px solid var(--border);
    padding: 10px 2px;
    color: var(--soft);
    font-size: 9px;
}

.supporting-package-row strong,
.supporting-package-row span {
    display: block;
}

.supporting-package-row span {
    margin-top: 3px;
    color: var(--muted);
    font-size: 8px;
}

@media (
    max-width: 650px
) {
    .supporting-package-row {
        grid-template-columns: 1fr;
    }
}


/* BUILD 045 PRODUCT IDENTITY */

.universal-provisional-warning {
    margin-top: 14px;
    border: 1px solid
        rgba(242, 201, 109, 0.28);
    border-radius: 12px;
    background:
        rgba(242, 201, 109, 0.055);
    padding: 13px;
    color: var(--warning);
    font-size: 9px;
    line-height: 1.55;
}

.universal-provisional-warning strong {
    display: block;
    margin-bottom: 5px;
    font-size: 9px;
    letter-spacing: 0.08em;
}
