/* landing-theme.css — enforces the index landing design on subpages
   (results, system-journey, features, features/algorithms, features/apps) */
:root {
    --dv-base: #050608;
    --dv-page-tone: rgba(5, 6, 8, 0.72);
}

body {
    background: var(--dv-base) !important;
    color: #f4f4f5 !important;
}

/* index type system: system sans everywhere — kill stray display fonts */
h1, h2, h3, h4, .font-serif,
.portfolio-card .meta,
.stat .number {
    font-family: var(--font-sans) !important;
}
h1, h2 { letter-spacing: -0.03em; color: #ffffff; }

/* one surface style: machined metal (same as the index phone mockup) —
   light top rim, black bottom rim, layered drop + inset shadows */
.dv-card-morphic,
.dv-panel,
.dv-sheet,
.bp-plate,
.bp-sketch,
.portfolio-card,
.hero-kpi-card,
.chart-panels,
.chart-canvas,
.stat,
.sankey-wrap,
.profit-card,
div[class*="rounded-xl"][class*="p-"][class*="border-white"],
div[class*="rounded-2xl"][class*="p-"][class*="border-white"],
div[class*="rounded-lg"][class*="p-"][class*="border-white"] {
    background: linear-gradient(165deg, rgba(255,255,255,0.07) 0%, rgba(23,26,33,0.88) 28%, rgba(9,10,15,0.97) 66%, #04050a 100%) !important;
    border: 1px solid rgba(255,255,255,0.10) !important;
    border-top-color: rgba(255,255,255,0.32) !important;
    border-bottom-color: rgba(0,0,0,0.95) !important;
    border-radius: 14px !important;
    box-shadow: 0 26px 60px -24px rgba(0,0,0,0.95), 0 10px 24px -12px rgba(0,0,0,0.85), inset 0 1px 0 rgba(255,255,255,0.10), inset 0 -2px 8px rgba(0,0,0,0.55) !important;
}

/* small wells / pills: recessed metal inset */
.dv-well {
    background: linear-gradient(180deg, #0a0c11 0%, #04050a 100%) !important;
    border: 1px solid rgba(0,0,0,0.9) !important;
    border-top-color: rgba(255,255,255,0.16) !important;
    border-bottom-color: rgba(255,255,255,0.07) !important;
    border-radius: 10px !important;
    box-shadow: inset 0 2px 8px rgba(0,0,0,0.9), inset 0 -1px 0 rgba(255,255,255,0.05), 0 1px 0 rgba(255,255,255,0.04) !important;
}

/* remove decorative sheen / corner brackets from the old morphic theme */
.dv-card-morphic::before,
.dv-card-morphic::after,
.bp-plate::before,
.bp-plate::after,
.hero-kpi-card::before {
    display: none !important;
}

/* one page tone: top-level wrappers get the same veil as index sections */
body > header,
body > main,
body > section,
body > div[class*="bg-black/60"] {
    background: var(--dv-page-tone) !important;
}

/* full-width bands inside main stay transparent so the single veil shows through */
body > main > section,
body > main > header {
    background: transparent !important;
}

/* sticky navs match the glass tone */
main .sticky {
    background: rgba(5, 6, 8, 0.8) !important;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

/* separators: 1px hairline only */
.dv-separator {
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.08), transparent) !important;
    box-shadow: none !important;
}

/* steel palette -> index zinc palette */
.bp-row .k { color: #71717a !important; }
.bp-row .v,
.bp-cut { color: #e4e4e7 !important; }

/* fixed full-page particle canvas (injected by landing-canvas.js) */
body > .landing-canvas {
    position: fixed;
    left: 0;
    top: -40vh;
    width: 100vw;
    height: 140vh;
    z-index: -1;
    pointer-events: none;
}
