/* Kruiz OLED Dark Mode Semantic Tokens & WP Overrides */
:root {
    --kruiz-black: #08181D;
    --soft-black: #1A2B32;
    --deep-slate: #5B697D;
    --slate-core: #8492A6;
    --mist-white: #F6F6F7;
    --body-white: #E2E4E8;
    --splashing-puddles: #16F1F5;
    --midnight-navy: #10313C;
    --window-seat-teal: #3870A8;
    --sunset-orange: #FB9518;
    --golden-fetch: #F7D046;
    --tennis-ball-green: #CCFF00;
}

#kruiz-investor-dashboard {
    font-family: 'Figtree', sans-serif !important;
    background-color: var(--kruiz-black) !important;
    color: var(--body-white) !important;
    margin: 0 !important;
    padding: 80px 3% !important;
    font-size: 20px !important;
    box-sizing: border-box !important;
    line-height: 1.7 !important;
}

#kruiz-investor-dashboard * { box-sizing: border-box !important; }

#kruiz-investor-dashboard .container {
    width: 96% !important;
    max-width: 2400px !important;
    margin: auto !important;
}

/* Typography */
#kruiz-investor-dashboard h1 {
    font-family: 'Varela Round', sans-serif !important;
    color: var(--mist-white) !important;
    font-size: 56px !important; 
    font-weight: 700 !important;
    text-align: left !important;
    margin-top: 0 !important;
    margin-bottom: 16px !important;
    line-height: 1.2 !important;
}

#kruiz-investor-dashboard h2 {
    font-family: 'Varela Round', sans-serif !important;
    color: var(--splashing-puddles) !important;
    font-size: 40px !important;
    font-weight: 700 !important;
    text-align: left !important;
    margin-top: 0 !important;
    margin-bottom: 35px !important;
    border-bottom: 2px solid var(--midnight-navy) !important; 
    padding-bottom: 16px !important;
}

#kruiz-investor-dashboard h3 {
    font-family: 'Varela Round', sans-serif !important;
    color: var(--slate-core) !important; 
    font-size: 28px !important;
    text-align: left !important;
    font-weight: 600 !important;
    margin-top: 0 !important;
    margin-bottom: 40px !important;
}

.slide-subtitle {
	font-size: 26px !important;
	color: var(--mist-white) !important;
	margin-top: -20px !important;
	margin-bottom: 30px !important;
}

/* Brand Logo */
#kruiz-investor-dashboard .header-logo-wrapper {
    margin-bottom: 24px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
}

#kruiz-investor-dashboard .kruiz-main-logo {
    max-width: 220px !important;
    height: auto !important;
    display: block !important;
}

/* Utilities */
.highlight-text {
    color: var(--splashing-puddles) !important;
    font-weight: 700 !important;
}

.source-link {
    display: block !important;
    font-size: 13px !important;
    font-family: 'Poppins', sans-serif !important;
    color: var(--tennis-ball-green) !important;
    margin-top: 15px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

.source-link:hover {
	text-decoration: underline !important;
	opacity: 0.8 !important;
}

.slide-placeholder-image {
	background: rgba(16, 49, 60, 0.35) !important;
	border: 1px solid rgba(132, 146, 166, 0.35) !important;
	border-radius: 16px !important;
	min-height: 300px !important;
	width: 100% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin-bottom: 36px !important;
	color: var(--slate-core) !important;
	text-align: center !important;
	padding: 0 !important;
	overflow: hidden !important;
}

.slide-placeholder-image img {
	width: 100% !important;
	height: 100% !important;
	min-height: 300px !important;
	object-fit: cover !important;
	object-position: center !important;
	display: block !important;
}

.slide-one-image {
	min-height: 220px !important;
	max-height: 240px !important;
	background: rgba(8, 24, 29, 0.75) !important;
}

.slide-one-image img {
	min-height: 220px !important;
	max-height: 240px !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: contain !important;
	object-position: center !important;
}

.problem-split-layout {
	display: grid !important;
	grid-template-columns: 1fr 2fr !important;
	gap: 30px !important;
	align-items: stretch !important;
	margin-bottom: 30px !important;
}

.problem-image-container {
	background: var(--soft-black) !important;
	border: 1px solid rgba(132, 146, 166, 0.2) !important;
	border-radius: 16px !important;
	padding: 15px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4) !important;
}

.problem-hero-img {
	width: 100% !important;
	height: 100% !important;
	max-height: 500px !important;
	object-fit: contain !important;
	border-radius: 8px !important;
}

.problem-cards {
	grid-template-columns: repeat(2, 1fr) !important;
	gap: 20px !important;
}

.emoji-icon {
	font-size: 42px !important;
	margin-bottom: 15px !important;
	text-align: center !important;
}

.check-icon {
	color: var(--tennis-ball-green) !important;
	font-weight: 800 !important;
	font-size: 1.2em !important;
}

.timeline-badge {
	background: var(--tennis-ball-green) !important;
	color: var(--kruiz-black) !important;
	padding: 4px 10px !important;
	border-radius: 4px !important;
	font-weight: bold !important;
	font-size: 14px !important;
	margin-right: 10px !important;
	vertical-align: middle !important;
}

.demo-btn {
	background: var(--splashing-puddles) !important;
	color: var(--kruiz-black) !important;
	padding: 18px 40px !important;
	border-radius: 30px !important;
	font-size: 18px !important;
	text-decoration: none !important;
	display: inline-block !important;
	font-weight: bold !important;
	box-shadow: 0 4px 20px rgba(22, 241, 245, 0.3) !important;
	transition: all 0.3s ease !important;
}

.demo-btn:hover {
	background: var(--mist-white) !important;
	transform: translateY(-3px) !important;
}

.hero-image-placeholder {
	background: rgba(132, 146, 166, 0.1);
	border: 2px dashed var(--slate-core);
	border-radius: 16px;
	height: 300px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 40px;
	color: var(--slate-core);
	text-align: center;
	padding: 20px;
}

/* Grids & Cards */
#kruiz-investor-dashboard .section-wrapper { margin-bottom: 100px !important; }

#kruiz-investor-dashboard .stats-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important; 
    gap: 24px !important;
}

#kruiz-investor-dashboard .team-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 20px !important;
}

.team-img {
	width: 100px !important;
	height: 100px !important;
	border-radius: 50% !important;
	object-fit: cover !important;
	margin-bottom: 15px !important;
	border: 3px solid var(--midnight-navy) !important;
	box-shadow: 0 4px 12px rgba(0,0,0,0.3) !important;
}

.team-headshot {
	width: 118px !important;
	height: 118px !important;
	border-radius: 50% !important;
	object-fit: cover !important;
	object-position: center !important;
	display: block !important;
	margin: 0 auto 16px auto !important;
	border: 2px solid var(--midnight-navy) !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
}

#kruiz-investor-dashboard .team-grid .stat-card {
	min-height: 300px !important;
	padding: 24px 18px !important;
	align-items: center !important;
	text-align: center !important;
}

.team-name {
	color: var(--splashing-puddles) !important;
	font-size: 24px !important;
	margin-bottom: 8px !important;
}

.team-role {
	color: var(--tennis-ball-green) !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	margin-bottom: 10px !important;
}

.team-bio {
	font-size: 16px !important;
	margin: 0 !important;
}

#kruiz-investor-dashboard .stat-card {
    background: var(--soft-black) !important;
    padding: 30px 24px !important; 
    border-radius: 16px !important; 
    border: 1px solid rgba(132, 146, 166, 0.2) !important; 
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4) !important;
    display: flex !important;
    flex-direction: column !important;
    transition: transform 0.3s ease !important; 
}

#kruiz-investor-dashboard .stat-card:hover {
    transform: translateY(-5px) !important;
}

#kruiz-investor-dashboard .stat-card h4 {
    font-family: 'Poppins', sans-serif !important;
    color: var(--mist-white) !important;
    margin: 0 0 12px 0 !important;
    font-size: 22px !important;
    letter-spacing: 0.5px !important; 
}

#kruiz-investor-dashboard .stat-card .stat-value {
    font-family: 'Varela Round', sans-serif !important;
    color: var(--splashing-puddles) !important;
    font-size: 56px !important; 
    font-weight: 700 !important;
    margin: 0 0 12px 0 !important;
}

#kruiz-investor-dashboard .stat-card p {
    font-size: 18px !important;
    margin: 0 !important;
    color: var(--body-white) !important;
    flex-grow: 1 !important;
}

/* Economics/Feature Grid */
#kruiz-investor-dashboard .economics-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)) !important;
    gap: 30px !important;
    margin-bottom: 50px !important;
}

#kruiz-investor-dashboard .pitch-card {
    background: var(--soft-black) !important;
    border-radius: 16px !important;
    padding: 30px !important;
    border-top: 6px solid var(--splashing-puddles) !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3) !important;
}
#kruiz-investor-dashboard .pitch-card.teal-accent { border-top-color: var(--window-seat-teal) !important; }
#kruiz-investor-dashboard .pitch-card.orange-accent { border-top-color: var(--sunset-orange) !important; }
#kruiz-investor-dashboard .pitch-card.gold-accent { border-top-color: var(--golden-fetch) !important; }

#kruiz-investor-dashboard .card-header h4 {
    margin: 0 0 15px 0 !important;
    color: var(--mist-white) !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    border-bottom: 1px dashed var(--deep-slate) !important;
    padding-bottom: 15px !important;
}

/* Summary Boxes & Lists */
#kruiz-investor-dashboard .summary-box {
    background: linear-gradient(135deg, var(--midnight-navy) 0%, var(--kruiz-black) 100%) !important; 
    padding: 35px !important;
    border-radius: 16px !important;
    border-left: 6px solid var(--splashing-puddles) !important; 
    margin-bottom: 30px !important;
}
#kruiz-investor-dashboard .summary-title { margin-top: 0 !important; }
#kruiz-investor-dashboard .signal-list { list-style: none !important; padding: 0 !important; margin: 0 !important; }
#kruiz-investor-dashboard .signal-list li {
    margin-bottom: 16px !important;
    position: relative !important;
    padding-left: 20px !important;
    font-size: 18px !important;
}
#kruiz-investor-dashboard .signal-list li::before {
    content: "•" !important;
    color: var(--splashing-puddles) !important;
    position: absolute !important;
    left: 0 !important;
    font-size: 20px !important;
}

/* GTM & Scenarios */
#kruiz-investor-dashboard .gtm-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 40px !important;
}
#kruiz-investor-dashboard .gtm-col-title {
    font-size: 28px !important;
    color: var(--mist-white) !important;
    border-bottom: 1px solid var(--midnight-navy) !important;
    padding-bottom: 10px !important;
}
#kruiz-investor-dashboard .gtm-item {
    margin-bottom: 25px !important;
    padding: 20px !important;
    background: rgba(16, 49, 60, 0.3) !important;
    border-radius: 10px !important;
    border-left: 4px solid var(--window-seat-teal) !important;
}
#kruiz-investor-dashboard .gtm-item p { font-size: 18px !important; }
/* Styles the main titles of the GTM cards */
#kruiz-investor-dashboard .gtm-item > strong { 
    color: var(--mist-white) !important; 
    display: block !important; 
    margin-bottom: 12px !important;
    font-size: 22px !important;
}

/* Forces the highlighted keywords inside the paragraph to stay inline */
#kruiz-investor-dashboard .gtm-item p strong { 
    display: inline !important; 
    margin: 0 !important;
    color: var(--splashing-puddles) !important;
    font-size: inherit !important;
}

/* Slide 09 column balancing */
#kruiz-investor-dashboard .gtm-strategy-grid .gtm-column {
    display: grid !important;
    grid-template-rows: auto repeat(3, minmax(0, 1fr)) !important;
    gap: 18px !important;
}

#kruiz-investor-dashboard .gtm-strategy-grid .gtm-col-title {
    margin: 0 !important;
}

#kruiz-investor-dashboard .gtm-strategy-grid .gtm-item {
    margin-bottom: 0 !important;
    height: 100% !important;
}

/* Tables */
#kruiz-investor-dashboard .table-wrapper { overflow-x: auto !important; border-radius: 12px !important; }
#kruiz-investor-dashboard .kruiz-table { width: 100% !important; border-collapse: collapse !important; background: var(--soft-black) !important; min-width: 800px !important; }
#kruiz-investor-dashboard .kruiz-table th, #kruiz-investor-dashboard .kruiz-table td { padding: 20px 24px !important; text-align: left !important; border-bottom: 1px solid var(--midnight-navy) !important; font-size: 18px !important; }
#kruiz-investor-dashboard .kruiz-table th { background-color: var(--midnight-navy) !important; color: var(--splashing-puddles) !important; text-transform: uppercase !important; }
#kruiz-investor-dashboard .kruiz-table th:not(:first-child),
#kruiz-investor-dashboard .kruiz-table td:not(:first-child) {
    text-align: center !important;
}

/* The Ask & Exit */
#kruiz-investor-dashboard .ask-container { background: var(--soft-black) !important; border-radius: 16px !important; padding: 40px !important; border: 1px solid var(--midnight-navy) !important; }
#kruiz-investor-dashboard .ask-main { text-align: center !important; margin-bottom: 40px !important; }
#kruiz-investor-dashboard .ask-amount { font-size: 64px !important; font-weight: 700 !important; color: var(--splashing-puddles) !important; }
#kruiz-investor-dashboard .ask-sub { font-size: 28px !important; color: var(--slate-core) !important; }
#kruiz-investor-dashboard .ask-grid { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 20px !important; }
#kruiz-investor-dashboard .ask-card { background: var(--midnight-navy) !important; padding: 24px !important; border-radius: 12px !important; text-align: center !important; }
#kruiz-investor-dashboard .ask-pct { font-size: 48px !important; color: var(--tennis-ball-green) !important; font-weight: 700 !important; margin-bottom: 8px !important; }

.exit-strategy-section {
	margin-top: 50px !important; 
	padding: 35px 30px !important; 
	background: linear-gradient(135deg, rgba(22, 241, 245, 0.05) 0%, rgba(16, 49, 60, 0.4) 100%) !important;
	border: 1px solid var(--window-seat-teal) !important;
	border-radius: 16px !important;
	text-align: center !important;
	box-shadow: inset 0 0 20px rgba(0,0,0,0.2) !important;
}

.exit-title {
	color: var(--splashing-puddles) !important;
	font-family: 'Varela Round', sans-serif !important;
	font-size: 36px !important;
	font-weight: 700 !important;
	margin: 0 0 10px 0 !important;
}

.exit-subtitle {
	color: var(--body-white) !important;
	font-size: 20px !important;
	margin: 0 0 30px 0 !important;
}

.exit-logos {
	display: flex !important;
	justify-content: center !important;
	gap: 20px !important;
	flex-wrap: wrap !important;
}

/* Individual Mist-White Logo Cards */
.logo-card {
	background: var(--mist-white) !important;
	border-radius: 12px !important;
	padding: 15px 25px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.4) !important;
	transition: transform 0.3s ease, box-shadow 0.3s ease !important;
	height: 75px !important;
	min-width: 140px !important;
}

.logo-card:hover {
	transform: translateY(-5px) !important;
	box-shadow: 0 12px 25px rgba(22, 241, 245, 0.25) !important;
}

.logo-card img {
	max-width: 110px !important;
	max-height: 40px !important;
	object-fit: contain !important;
	display: block !important;
	filter: none !important;
}

.logo-pill {
	background: rgba(16, 49, 60, 0.5) !important;
	border: 1px solid var(--window-seat-teal) !important;
	color: var(--splashing-puddles) !important;
	padding: 12px 30px !important;
	border-radius: 30px !important;
	font-weight: 700 !important;
	font-size: 18px !important;
	letter-spacing: 1px !important;
	text-transform: uppercase !important;
}

@media (max-width: 900px) {
	.logo-card {
		min-width: 120px !important;
		height: 65px !important;
		padding: 10px 15px !important;
	}
}

/* Badges */
#kruiz-investor-dashboard .cash-flow-badge {
    background: rgba(204, 255, 0, 0.05) !important;
    border: 1px dashed var(--tennis-ball-green) !important;
    padding: 16px 20px !important;
    border-radius: 8px !important;
    color: var(--body-white) !important;
}

/* Slider Controls */
#kruiz-investor-dashboard .deck-slider-wrapper { overflow: hidden !important; width: 100% !important; position: relative !important; }
#kruiz-investor-dashboard .deck-slider-track { display: flex !important; width: 100% !important; transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1) !important; align-items: flex-start !important; }
#kruiz-investor-dashboard .deck-slide { flex: 0 0 100% !important; width: 100% !important; padding-right: 40px !important; box-sizing: border-box !important; }

/* Slide 2 — Market Opportunity: slightly tighter type */
#kruiz-investor-dashboard .deck-slide--market > h2 {
	font-size: 36px !important;
	margin-bottom: 28px !important;
	padding-bottom: 12px !important;
}
#kruiz-investor-dashboard .deck-slide--market > p {
	font-size: 16px !important;
	line-height: 1.5 !important;
	margin: 0 0 20px 0 !important;
	color: var(--body-white) !important;
}
#kruiz-investor-dashboard .deck-slide--market .stat-card h4 {
	font-size: 19px !important;
	margin-bottom: 10px !important;
}
#kruiz-investor-dashboard .deck-slide--market .stat-card .stat-value {
	font-size: 48px !important;
	margin-bottom: 10px !important;
}
#kruiz-investor-dashboard .deck-slide--market .stat-card p {
	font-size: 16px !important;
}
#kruiz-investor-dashboard .deck-slide--market .source-link {
	font-size: 11px !important;
	margin-top: 12px !important;
}
#kruiz-investor-dashboard .slide-nav { display: flex !important; justify-content: space-between !important; margin-top: 50px !important; padding-top: 30px !important; border-top: 1px solid var(--midnight-navy) !important; }
#kruiz-investor-dashboard .kruiz-btn { font-family: 'Poppins', sans-serif !important; font-weight: 600 !important; padding: 14px 28px !important; border-radius: 8px !important; cursor: pointer !important; border: none !important; }
#kruiz-investor-dashboard .next-btn { background-color: var(--splashing-puddles) !important; color: var(--kruiz-black) !important; }
#kruiz-investor-dashboard .prev-btn { background-color: transparent !important; color: var(--slate-core) !important; border: 1px solid var(--deep-slate) !important; }

/* Responsive */
@media (max-width: 900px) {
    #kruiz-investor-dashboard .stats-grid, #kruiz-investor-dashboard .team-grid { grid-template-columns: repeat(2, 1fr) !important; }
    #kruiz-investor-dashboard .gtm-grid, #kruiz-investor-dashboard .ask-grid { grid-template-columns: 1fr !important; }
    #kruiz-investor-dashboard .deck-slide { padding-right: 0px !important; }
    #kruiz-investor-dashboard .gtm-strategy-grid .gtm-column { grid-template-rows: auto !important; }
    .problem-split-layout {
        grid-template-columns: 1fr !important;
    }
    .slide-one-image {
        min-height: 190px !important;
        max-height: 210px !important;
    }
    .slide-one-image img {
        min-height: 190px !important;
        max-height: 210px !important;
        object-fit: contain !important;
    }
}
@media (max-width: 600px) {
    #kruiz-investor-dashboard .stats-grid, #kruiz-investor-dashboard .team-grid { grid-template-columns: 1fr !important; }
}

.solution-split-layout {
    display: grid !important;
    grid-template-columns: 1fr 340px !important;
    gap: 40px !important;
    align-items: stretch !important;
    margin-bottom: 20px !important;
}

.solution-left-col {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 30px !important;
}

.iphone-frame {
    width: 360px !important;
    height: 680px !important;
    background-color: #111C22 !important;
    border: 12px solid var(--kruiz-black) !important;
    border-radius: 40px !important;
    box-shadow: 0 20px 40px rgba(0,0,0,0.6), inset 0 0 0 2px #2A3B45 !important;
    position: relative !important;
    overflow: hidden !important;
    margin: 0 auto !important;
    font-family: 'Figtree', sans-serif !important;
    display: flex !important;
    flex-direction: column !important;
}

.iphone-notch {
    position: absolute !important;
    top: 0 !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 120px !important;
    height: 25px !important;
    background-color: var(--kruiz-black) !important;
    border-bottom-left-radius: 16px !important;
    border-bottom-right-radius: 16px !important;
    z-index: 10 !important;
}

@media (max-width: 1000px) {
    .solution-split-layout {
        grid-template-columns: 1fr !important;
    }
}