/* Layout */
div.layout {
	margin:0px;
	padding:0px;
	padding-top:var(--header-height);
	width:100vw;
	height:100vh;
	max-height:100vh;
	display: flex;
	overflow: hidden;
	transition: all 0.3s ease-in-out;
	}
	
	div.layout.print,
	div.layout.shared { /* View on print pages, not actual print output */
		padding:0px;
		max-height:none;
	}

@media (max-width: 768px) {
	
	div.layout {
		padding:var(--margin) var(--margin-s);
		width:100vw;
		left:0px;
	}
}


/* Content */
.content {
	position:relative;
}

/* Right Content - Body */
.content.right {
	flex-grow: 1;
	background-color:var(--gray-11);
	overflow: auto;
	transition: all 0.5s ease-in-out;
	padding:var(--margin);
	padding-top:var(--margin-xl);
	min-height:80vh;
	scroll-behavior: smooth;
}

/* Left Content - Navigation */
.content.left {
	width: 220px;
	min-width: 220px;
	border-right:1px solid var(--gray-10);
	background-color:var(--gray-11);
	color:var(--gray-1);
	background: linear-gradient(170deg,rgba(255, 255, 255, 1) 0%, rgba(245, 246, 245, 1) 100%);
	padding-top:var(--margin);
}

	.content.left a {
		color:var(--gray-1);
		text-transform:uppercase;
		font-size:11px;
		line-height:11px !important;
	}
	
		.content.left a:hover {
			color:var(--orange);
		}
	
		.content.left a span.count {
			display:inline-block;
			position:relative;
			background-color:var(--gray-6);
			color:white;
			padding:2px 6px;
			border-radius:2px;
			text-align:center;
			font-size:10px;
			font-weight:600;
			top:-2px;
			margin-left:var(--margin-xxs);
		}
		
		.content.left a.at_left {
			font-weight:600;
			color:var(--orange);
		}
	
	.content.left ul {
		margin:0px;
		padding:0px;
		position:relative;
		left:var(--margin);
		width:calc(220px - (var(--margin) * 2));
		list-style:none;
	}
	
		.content.left ul li {
			padding:4px;
			list-style:none;
			line-height:13px;
		}
	
		li.left_nav_section { /* Section Header */
			text-transform:uppercase;
			color:var(--blue);
			font-weight:500;
			margin-top:var(--margin-s);
			border-bottom:1px solid var(--gray-9);
			font-size:11px;
			letter-spacing:1px;
		}
	

/* Responsive (mobile-first) behavior */
@media (max-width: 728px) {
  .layout {
    flex-direction: column;
  }

  .content.left {
    width: 100%;
    max-height: 0;
    transition: max-height 0.3s ease-in-out;
  }

  .content.left.open {
    max-height: 300px; /* adjust based on actual nav height */
  }

  .content.right {
    width: 100%;
  }
}



/* Headings */
h1, h2, h3 {
	font-family:var(--font-logo);
	font-weight:500;
	padding:0;
	position:relative;
	clear:both;
}

h1 {
	font-size:26px;
	line-height:31px;
	margin-bottom:var(--margin-s);
}

h2 {
	font-size:32px;
	line-height:32px;
	color:var(--gray-6);
	margin-bottom:var(--margin);
}
	
	h2 span { /* Tooltip */
		font-weight:100;
		opacity:.6;
		position:relative;
		top:-2px;
		left:3px;
	}
	
	p.h2_pretext {
		position:absolute;
		top:14px;
		height:11px;
		margin:0px;
		padding:0px;
		font-weight:400;
		color:var(--gray-3);
		font-size:15px;
		line-height:14px;
	}

h3 {
	font-size:18px;
	line-height:22px;
	margin-bottom:var(--margin-xs);
	color:var(--blue);
}	
	
	h3:has(+ .view_fieldset) {
		border-bottom:1px solid var(--gray-10);
		padding-bottom:12px;
	}
	
h4 {
	font-size:14px;
	color:var(--gray-1);
}

h5 {
	font-size:14px;
	color:var(--gray-3);
}



.eyebrow {
	font-size:12px;
	text-transform:uppercase;
	line-height:12px;
	height:12px;
	opacity:.66;
	font-weight:400;
}
	
	
/* Forms */
form {
	width:100%;
	display:block;
	}
	
fieldset {
	border:0px;
	padding:0px;
	margin:0px;
	display:inline-block;
	position:relative;
	width:100%;
}

	fieldset.active-div {
	    display: block;
	}
	
label {
	font-size:13px;
	line-height:13px;
    height:13px;
    display:block;
	color:var(--gray-1);
    margin-bottom:var(--margin-xxs);
}
	
select, input {
	border-radius:var(--radius-tight);
	padding:var(--margin-s);
	font-family: var(--font-body);
	font-weight:500;
	outline:1px solid var(--white);
	}
	
select {
	border:none;
	border-right:var(--margin-s) solid transparent; /* Padding to the right of the arrow */
	box-shadow:var(--shadow);
	max-width:95%;
	}
	
	select.small_select {
		padding:var(--margin-xxs);
	}
		
	select:hover {
		outline:1px solid var(--purple);
	}

input {
	padding:var(--margin-s);
	border:var(--divider);
	font-size:16px;
	line-height:20px;
	height:var(--margin);
	font-weight:500;
	font-size:18px;
}
	
	input:placeholder {
	  	color:var(--gray-7);
		}
		
	input:focus::placeholder {
	  	color: transparent;
		}
		
	input.error {
		border:1px solid var(--orange) !important;
		outline:1px solid var(--orange) !important;
	}
		
textarea {
	width:100%;
	height:100px;
	border:1px solid var(--gray-8);
	outline:1px solid var(--white);
	padding:var(--margin-m);
	border-radius:var(--radius-tight);
	resize:none;
	font-size:16px;
	line-height:20px;
	font-family:var(--font-body);
	background-color:white;
}



/* Buttons */
button,
a.button,
input.button {
	display:inline-block;
	height:var(--margin);
	background-color:var(--blue);
	line-height:var(--margin);
	padding:0px 20px 0px 20px;
	color:#ffffff;
	font-family: var(--font-body);
	font-weight:700;
	border-radius:var(--radius-tight);
	box-shadow:var(--shadow);
	transition:.5s;
	border:none;
	cursor:pointer;
	width:auto;
	white-space:nowrap;
	min-width:var(--button-width);
	text-align:center;
	font-size:14px;
	}
	
	button:hover,
	a.button:hover,
	input.button:hover {
		filter:brightness(120%) saturate(200%);
		color:white;
		}
	
	.green, .good { background-color:var(--green) !important; }
	.blue, .neutral { background-color:var(--blue) !important; }
	.red, .warning { background-color:var(--red) !important; }
	.orange { background-color:var(--orange) !important; }
	.purple { background-color:var(--purple) !important; }
	
	button.right,
	a.button.right,
	input.button.right {
		float:right;
		margin-left:var(--margin-m);
		}
	
	button.cancel,
	a.button.cancel,
	input.button.cancel {
		background-color:transparent;
		color:var(--gray-8);
		outline:1px solid var(--gray-9);
		border:2px solid white;
		box-shadow:none;
		transition:2s;
		line-height:40px;
		}
		
		button.cancel:hover,
		a.button.cancel:hover,
		input.button.cancel:hover {
			background-color:var(--gray-8);
			color:var(--white);
			outline:1px solid var(--white);
			border:2px solid transparent;
			filter:none;
			}

	/* Remove all buttony elements */
	button.no_button {
		background:transparent !important;
		border-radius:none;
		box-shadow:none;
		color:var(--gray-1);
		width:auto;
		height:auto;
		min-width:auto;
		padding:0;
		}
		
	button.disabled {
		opacity: 0.4;
		cursor: not-allowed;
		pointer-events: none;
		transition: opacity 0.2s ease;
	}	
	
		
	
/* Password field visibility toggle */
button.toggle-visibility {
    position:absolute;
    right:0px;
    top:17px;
    background:none;
    font-size: 10px;
    color:var(--gray-6);
	box-shadow:none;
	min-width:44px;
	width:44px;
	height:44px;
	padding:0px;
	margin:0px;
	text-transform:uppercase;
	}

	button.toggle-visibility:hover {
		color:var(--gray-0);
	}
		
	
	

/* Toggle Switch - Pricing & Upgrade */
.switch {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 25px;
    margin: 0 10px;
	}

	.switch input {
	    opacity: 0;
	    width: 0;
	    height: 0;
		}

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    transition: 0.4s;
    border-radius: 25px;
	}

	.slider::before {
	    position: absolute;
	    content: "";
	    height: 18px;
	    width: 18px;
	    left: 4px;
	    bottom: 3px;
	    background-color: white;
	    transition: 0.4s;
	    border-radius: 50%;
		}
	
	input:checked + .slider {
		}
	
	input:checked + .slider::before {
	    transform: translateX(24px);
		}
	
	

/* Layout Grids */
div.grid_four {
	width:100%;
	margin-bottom:var(--margin-m);
	position:relative;
	display: grid;
	grid-template-columns: repeat(4, 1fr); /* 4 equal columns */
  	gap: var(--margin-s) /* space between items */
}

div.grid_three {
	width:100%;
	margin-bottom:var(--margin-m);
	position:relative;
	display: grid;
	grid-template-columns: repeat(3, 1fr); /* 3 equal columns */
  	gap: var(--margin-s) /* space between items */
}

div.grid_two {
	width:100%;
	margin-bottom:var(--margin-m);
	position:relative;
	display: grid;
	grid-template-columns: repeat(2, 1fr); /* 2 equal columns */
  	gap: var(--margin-s) /* space between items */
}



/* Content Sections */
div.section {
	width:100%;
	padding:var(--margin-m);
	border:1px solid var(--gray-10);
	border-radius:var(--radius-tight);
	background-color:var(--white);
	margin-bottom:var(--margin-m);
}

	div.section p {
		margin-bottom:var(--margin-xs);
	}
	
	div.section ul {
		margin-left:var(--margin-m);
		margin-bottom:var(--margin-xs);
	}
	
	div.section ul.no_bullets {
		list-style:none;
		margin:0px;
		padding:0px;
		margin-bottom:var(--margin-xs);
	}
				
	

/* Project Display */
/* Citations */
div.citations {
	width:100%;
	border-top:1px solid var(--gray-10);
	padding-top:var(--margin-s);
	margin-bottom:var(--margin);
	
}
	div.citations a {
		padding:var(--margin-xs) 0px;
		font-size:13px;
		line-height:15px;
		color:var(--gray-3);
	}
	
	div.citations a p {
		padding:0px;
		margin:0px;
	}
	
	div.citations a p:nth-child(2){
		text-decoration:underline;
	}
		
		div.citations a:hover p:nth-child(2){
			text-decoration:underline;
			color:var(--orange);
		}

a.citations_link {
	color:var(--blue);
	text-decoration:underline;
	opacity:.8;
	transition:.3s;
	font-weight:300;
}

a.citations_link:hover {
	color:var(--orange);
	text-decoration:underline;
	opacity:1;
}





/* BRICKS */
.brick {
	position:relative;
	top:0px;
	left:0px;
	width:100%;
	min-height:var(--margin);
	height:auto;
	border-radius:var(--radius-tight);
	padding:0px;
	margin-bottom:var(--margin-xs);
	transition:.25s;
	font-size:13px;
	overflow:hidden;
	z-index:100;
	display:block;
}

	.brick form,
	.brick_container {
		width:100% !important;
		height:auto;
		min-height:var(--margin);
		display:flex;
	}
	
	.brick div {
		background-color:rgb(255,255,255,.2);
	}
	
	
	a.brick_button,
	button.brick_button {
		min-width:240px;
		width:50%;
		max-width:350px;
		float:right;
	}
	
	
	/* Brick Icons */
	.brick_icon {
		width:var(--margin);
		max-width:var(--margin);
		padding:10px 10px;
		border-right:1px solid var(--gray-10);
		background-color:transparent !important;
	}
	
		button.brick div.brick_icon {
			padding:8px 10px;
		}
		
		.brick_icon img {
			position:absolute;
			height:43px;
			width:43px;
			top:0px;
			left:0px;
		}
		
		.brick_icon svg {
			opacity:.66;
			position:absolute;
		}
	
	/* Brick Buttons */
	.brick_buttons {
		width:auto;
		margin-left:auto;
	}
	
		.brick_buttons button,
		.brick_buttons a.button,
		.brick_buttons input[type="submit"] {
			margin:4px 4px 4px 8px !important;
			height:36px;
			line-height:36px;
		}
		
	/* Brick URL Input */
	.brick_url_input {
		margin-right:auto;
		flex-grow:1;
		display:inline-flex;
		background-color:rgb(255,255,255,.2);
		padding-left:8px;
	}
		
		.brick_url_input input[type="text"] {
			width:100%;
			margin:4px 4px 4px 0px !important;
			height:36px;
			line-height:36px;
			font-size:16px;
			font-weight:400;
		}
		
	
	/* Brick Title / Content */
	div.brick_title {
		margin-right:auto;
		flex-grow:1;
		display:inline-flex;
		padding-left:8px;
	}	
	
		div.brick_title span {
			position:absolute;
			left:8px;
			margin:0;
			padding:0;
			width:100%;
		}
		
			div.brick_title span.eyebrow {
				top:4px;
				font-size:9px;
				text-transform:uppercase;
				line-height:9px;
				height:9px;
				opacity:.66;
				font-weight:400;
			}
			
			div.brick_title span.label {
				top:5px;
				font-size:15px;
				line-height:21px;
				font-weight:600;
			}
			
			div.brick_title span.eyebrow ~ span.label {
				top:11px;
				font-size:13px;
				line-height:20px;
			}
		
			div.brick_title span.note {
				top:25px;
				font-size:11px;
				line-height:11px;
				font-weight:300;
			}
		
			div.brick_title span.eyebrow ~ span.note {
				top:29px;
				font-size:10px;
				line-height:10px;
			}
		
			div.brick_title span.progress_note {
				color:var(--gray-3);
				top:16px;
				font-size:14px;
				line-height:14px;
				font-weight:600;
			}
			
			
	/* Brick Progress */		
	div.brick_progress {
		width:100% !important;
		display:none;
		height:0;
		background-color:rgb(255,255,255,.2);
	}
		
		.async_active .brick_progress {
			display:block;
			height:16px;
			border-top:1px solid var(--gray-10);
		}
		
		.scan_progress {
		  --progress-color: var(--orange);
		  	opacity:0;
		  	height:0px;
			position:absolute;
			top:-1px;
			left:0px;
			opacity:0;
			transition: 3s ease-in;
			width:100%;
			overflow: hidden;
			box-sizing: border-box;
		}
		
			.async_active .scan_progress {
				height:16px !important;
				opacity:1 !important;
			}

			.scan_progress_grid {
			  	width: 100%;
			  	height: 100%;
			  	display: grid;
			  	box-sizing: border-box;
			  	align-content: center;
			  	justify-content: start;
			}
			
				.scan_progress_cell {
				  	width: 100%;
				  	height: 100%;
				  	border-radius: 10px;
				  	background: rgba(220, 220, 220, 0.5);
				  	will-change: background, opacity;
				}

	.brick.card {
		width:calc(33% - ((var(--margin-xxs) * 2) / 3) - 3px);
		margin-right:var(--margin-xxs);
		float:left;
	}
	
			
			
			
			
			/* Report Tools */
div.brick.report_tools {
	width:100%;
	background-color:var(--gray-4);
	height:var(--margin);
	color:white !important;
	margin-bottom:var(--margin);
}

	div.report_tools .brick_tool {
		float:left;
		width:auto;
		border-right:1px solid white;
		height:var(--margin);
		cursor:default;
		padding:0px 12px;
	}
	
	
		div.report_tools a.brick_tool:hover {	
			background-color:var(--green-bright) !important;
			color:var(--white) !important;
			opacity:1;
			cursor:pointer;
		}
		
		.brick_tool span.tool_caption {
			font-size:10px;
			line-height:14px;
			text-transform:uppercase;
			opacity:.66 !important;
			display:block;
			position:relative;
			height:10px;
			top:8px;
			color:white;
			font-weight:400 !important;
		}
		
		.brick_tool span.tool_data {
			font-weight:500 !important;
			font-size:13px;
			line-height:13px;
			display:block;
			position:relative;
			top:12px;
			color:white;
		}
		
		.brick_tool .tooltip_small svg {
			height:10px;
			width:10px;
			position:relative;
			left:4px;
			top:2px;
		}
		
		form.brick_tool_form {
			margin:0 !important;
			padding:0 !important;
			cursor:pointer !important;
		}
		
		.brick_tool_form button {
			text-align:left;
			width:100%;
		}
		
		.brick_tool_form button span {
			border:none;
			padding:0px;
			margin:0px;
		}
		
		.brick_tool_form button span:not(.tool_caption){
			opacity:1;
		}

		.brick.report_tools input[type="checkbox"], 
		.brick.report_tools input[type="radio"] {
			outline:none;
			font-size:12px;
			line-height:12px;
			height:12px;
			margin-right:2px;
			position:relative;
			top:2px;
			accent-color: var(--green-bright);
		}


			
			
		
/* Upgrade */	
/* Toggle Switch */
div.pricing_toggle {
	background-color: white;
	display: flex;
	justify-content: center;
	align-items: center;
	height:var(--button-height);
	font-size:16px;
	font-weight:400;
	line-height:16px;
    box-shadow:1px 1px 2px rgb(0,0,0,.3);
    padding:var(--margin-xs);
    border-radius:var(--radius-tight);
    margin-bottom:var(--margin-m);
}
	
	div.pricing_toggle div {
		width:33%;
	}
	
	div.pricing_toggle div:nth-child(1) {
		text-align: right;
	}
	
	div.pricing_toggle div:nth-child(2) {
		text-align: center;
		width:80px;
	}
		
	div.pricing_toggle div span:nth-child(1){
		display:inline-block;
		font-weight:500;
		color:var(--blue);
	}
		
	div.pricing_toggle div span:nth-child(3){
		display:inline-block;
		font-weight:300;
		font-size:14px;
		height:40%;
	}
	





/* New Project Button & Flow */
.add_project {
	display:inline-block;
	width:100%;
	border-radius:var(--radius-tight);
	background: #ffffff;
	background: linear-gradient(170deg,rgba(255, 255, 255, 1) 0%, rgba(245, 245, 245, 1) 100%);
	box-shadow: 2px 2px 4px rgb(0,0,0,.6);
	padding:var(--margin-s);
	margin-bottom:var(--margin-xs);
	transition:.5s;
	border:1px solid var(--gray-8);
	outline:4px solid var(--white);
	top:0px;
	left:0px;
	opacity:.95;
}

a.add_project_button {
	float:right;
}





/* Project List */
div.project_row {
	position:relative;
	width:100%;
	min-width:100%;
}	




/* New Project URL */
.new_project_url input {
	width:calc(100% - 176px - var(--margin-s) - var(--margin-s));
	height:var(--margin);
	font-weight:500;
	font-size:18px;
	float:left;
}

.new_project_url button {
	margin-left:var(--margin-s);
	float:left;
	background-color:var(--green);
} 

.new_project_url a.button {
	margin-left:var(--margin-s);
	float:left;
}
  


/* ASYNC */
.link_pending {
	pointer-events: none !important;
	cursor:default !important;
	opacity:.4 !important;
	background-color:var(--gray-5);
}

div.layout.async_active a.add_project_button {
	display:none;
}

div.layout:not(.async_active) a.add_project_button {
	display:block;
}

div.content.left nav.navigation ul li.async_hide.async_active,
div.async_active div.content.left nav.navigation ul li.async_hide {
	display:none;
}




/* Visual Additions */
.outlined {
	border:1px solid var(--gray-8);
	outline:4px solid var(--white);	
}

	a.outlined:hover {
		border-color:var(--orange);
	}

.silver_back {
	color:var(--gray-3);
	border:1px solid var(--gray-9);
	outline:2px solid var(--gray-10);
	background:var(--gradient-light-soft);
}
	
	a.silver_back {
		border:1px solid var(--gray-9);
		outline:2px solid var(--gray-10);
	}
	
	a.silver_back:hover {
		border-color:var(--orange-subtle) !important;
		outline:2px solid var(--white);
		color:var(--gray-1);
		box-shadow:var(--shadow) !important;
	}
	
.green_back {
	background-color:var(--green) !important;
	color:var(--white);
	opacity:.9;
}
	
	.brick_tool.green_back:hover,
	a.green_back:hover {
		background-color:var(--green-bright) !important;
		color:var(--white) !important;
		opacity:1;
	}


.gold_back {
	background:var(--gold-blend) !important;
	color:var(--white);
	opacity:.9;
}
	
	a.gold_back:hover {
		background-color:var(--gold-bright) !important;
		color:var(--white) !important;
		opacity:1;
	}
	
	a.gold_back {
		text-shadow:0px 0px 15px rgb(55, 0, 15, .7) !important;
	}
	
	
.blue_back,
.intelligence_link,
.intelligence_brick {
	background-color:var(--blue) !important;
	color:var(--white) !important;
	opacity:.9;
	transition:1s;
}
	
	a.blue_back:hover,
	.intelligence_link:hover,
	.intelligence_brick:hover {
		background-color:var(--blue-bright) !important;
		color:var(--white) !important;
		opacity:1;
	}

	
.dark_back {
	background:var(--gradient-dark-prism);
	color:var(--white);
	opacity:.9;
	outline:2px solid var(--gray-9);
}
	
	a.dark_back:hover {
		background:var(--blue-bright);
		color:var(--white);
		opacity:1;
		box-shadow:var(--shadow) !important;

	}


.purple_back,
.analysis_link,
.analysis_brick {
	background-color:var(--purple) !important;
	color:var(--white) !important;
	opacity:.9;
	height:auto !important;
	max-height:auto !important;
	transition:1s;
}
	
	a.purple_back:hover,
	.analysis_link:hover,
	.analysis_brick:hover {
		filter: contrast(200%) !important;
		color:var(--white) !important;
		opacity:1;
	}



	
	
	
	


		
/* Dimensions */
.spotlight {
	border-radius:var(--radius-tight);
	text-align:center;
	padding:var(--margin-xs) 0px 0px 0px;
	background:var(--gradient-white-soft);
	border:1px solid var(--gray-9);
	outline:2px solid var(--gray-10);
	margin:0px var(--margin-xxs);
	transition:.35s;
}

	a.spotlight:hover {
		border:1px solid var(--blue);
		box-shadow:var(--shadow) !important;
	}
	
	.spotlight .stats {
		margin-top:var(--margin-s);
		background-color:var(--gray-10);
		padding:0px;
		padding-bottom:0px;
		width:100%;
		border-top:1px solid var(--gray-9);
		opacity:.66;
		font-size:10px;
		text-transform:uppercase;
		font-weight:600;
		transition:.35s;
	}
	
		a.spotlight:hover .stats {
			background-color:var(--blue);
			color:white;
		}

	.spotlight h4 {
		font-family:var(--font-logo);
		font-size:14px;
		color:var(--blue);
		line-height:16px;
		margin-top:var(--margin-xs);
	}
	
	.spotlight p {
		font-size:13px;
		line-height:16px;
		padding:0px var(--margin-xs);
	}

	.spotlight .spotlight_icon {
		position:relative;
		height:32px;
		width:32px;
		margin:auto;
	}
	
		.spotlight .spotlight_icon svg {
			height:32px;
			width:32px;
			color:var(--gray-5);
			transition:.35s;
		}
		
		a.spotlight:hover .spotlight_icon svg {
			color:var(--blue);
		}



/* Tiles - Opportunties */
.tile {
	border-radius:var(--radius-tight);
}

.tile.show {
	width:100%;
	background:var(--gradient-white-soft);
	border:1px solid var(--gray-9);
	outline:2px solid var(--gray-10);
	border-radius:var(--radius-tight);
	overflow:hidden;
	transition:.4s;
}

	a.tile.show:hover {
		border:1px solid var(--gray-6);
		outline:2px solid var(--white);
		box-shadow:var(--shadow) !important;
	}
	
	.tile.show div {
		padding:var(--margin-xxs);
	}
	
	a.tile_show_facet {
		display:inline-block;
		width:85% !important;
		margin-bottom:20px;
	}
	
	.tile.show h3 {
		padding:var(--margin-xxs);
		font-size:16px;
		color:var(--gray-2);
		border-bottom:1px solid var(--gray-10);
		margin:0px;
	}
	
	.tile.show.tile_show_facet h3 {
		padding:var(--margin-xxxs);
		font-size:13px;
	}
	
		
	.tile.show.tile_show_facet h3 .tooltip_small svg {
			height:12px;
			width:12px;
			position:relative;
			left:4px;
			top:2px;
		}
	
	.tile.show .impact {
		padding:var(--margin-xxxs);
		padding-top:0px;
		padding-bottom:0px;
		width:100%;
		background-color:var(--gray-9);
		color:var(--white) !important;
		font-size:10px;
		font-weight:500;
		text-transform:uppercase;
		line-height:18px;
	}
	
	.tile.show .impact_metrics {
		background-color:var(--gray-10);
		padding:0px;
		padding-bottom:0px;
		width:100%;
	}
	
	
	.tile.show .impact_metrics span {
		color:var(--gray-2);
		font-size:12px;
		font-weight:400;
		line-height:20px;
		padding:3px 6px;
		margin:0px;
		display:inline-block;
		border-right:1px solid var(--gray-9);
	}
	
	.tile.show .impact_metrics span:last-child{
		border:none;
	}
	
	.tile.show .impact svg {
		position:relative;
		top:3px;
		height:14px;
		width:14px;
		padding:0px;
		margin:0px;
	}

	
.bubble_count {
	border-radius:2px;
	background-color:var(--blue);
	color:var(--white);
	font-size:10px;
	font-weight:600;
	padding:1px 3px 1px 3px !important;
	position:relative;
	top:-1px;
	left:2px;
}
	.report_tools button span.bubble_count {
		background-color:white;
		color:var(--green);
	}



div.project_bricks {
	width:100%;
	margin-bottom:var(--margin-2);
	position:relative;
}




/* Project View */
div.topic_tldr {
	font-size:20px;
	color:var(--gray-1);
	margin-bottom:var(--margin-m);
	font-weight:400;
	line-height:28px;
	border-top:1px solid var(--gray-9);
	margin-top:var(--margin-m);
	padding-top:var(--margin-m);
}

	h2:has(~ .topic_tldr){
		margin-bottom:var(--margin-m);
	}

div.topic_summary {
	font-size:18px;
	color:var(--gray-1);
	margin-bottom:var(--margin);
	font-weight:400;
	line-height:28px;
}





a.sources_link {
	font-size:14px;
}

div.show_third {
	width:31%;
	max-width:31%;
	margin-right:2%;
	float:left;
}

div.view_fieldset {
	font-size:14px;
	padding-bottom:var(--margin-m);
	margin-bottom:var(--margin);
}
	
	div.view_fieldset:has(+div.start_footer),
	div.view_fieldset:has(+div.confidence_gauges) {
	    border-bottom:none;
	}
	
	div.view_fieldset .tooltip_small svg {
		height:10px;
		width:10px;
		position:relative;
		left:4px;
		top:2px;
	}
		

div.view_fieldset p {
	line-height:20px;
}

div.view_notes {
	color:var(--gray-3);
}

ul.view_people li {
	margin-bottom:var(--margin);
}

ul.view_people li p {
	margin:0;
}

ul.view_people li h5 {
	margin-top:var(--margin-s);
}












span.tag {
	background-color:var(--blue);
	color:white;
	font-size:10px;
	font-weight:600;
	padding:2px 12px 2px 12px;
	border-radius:2px;
}



/* Panel Display */
div.panel_header {
	height:60px;
	width:100vw;
	position:fixed;
	top:88px;
	left:0px;
	z-index:9000;
	background-color:rgb(255,255,255,.95);
	border-bottom:1px solid var(--gray-10);
}

	div.panel_eyebrow {
		position:absolute;
		left:264px;
		top:2px;
		font-size:12px;
		font-weight:600;
		color:var(--gray-7);
	}
	
	div.panel_header h2 {
		position:absolute;
		left:264px;
		top:24px;
		border:0px;
		padding:0px;
		margin:0px;
		font-size:22px !important;
	}
	
	div.panel_header div.panel_menu {
		width:200px;
		border-radius:var(--radius-tight);
		position:absolute;
		right:var(--margin);
		top:8px;
		height:44px;
		overflow:hidden;
		border:1px solid var(--gray-8);
		outline:2px solid var(--gray-11);
		opacity:.66;
		transition:height .1s, opacity .3s;
	}
	
	div.panel_header div.panel_menu:hover {
		height:176px;
		opacity:1;
	}

	div.panel_header div.panel_menu a {
		width:200px;
		height:44px;
		line-height:44px;
		border-bottom:1px solid var(--gray-9);
		background-color:white;
		display:inline-block;
		padding:0px 12px 0px 12px;
		margin:0px;
		font-size:14px;
		font-weight:bold;
	}
	
	div.panel_header div.panel_menu a:hover {
		color:var(--orange);
	}
	
div.panel_options {
	width:100%;
	text-align:center;
	padding:var(--margin-xs);
	margin-bottom:var(--margin);
	text-transform:uppercase !important;
	font-weight:500 !important;
	font-size:11px !important;
	opacity:1;
	background-color:var(--gray-10);
	border-radius:var(--radius-tight);
}

	div.panel_options a {
		color:var(--gray-2);
		padding:0px var(--margin-m);
		text-decoration:none;
		transition:.1s;
	}
	
	div.panel_options a:hover {
		color:var(--orange);
	}
	
	div.panel_options form {
		width:auto !important;
		display:inline-block !important;
		height:auto;
		color:var(--gray-3);
	}
		
	div.panel_options button {
		color:var(--gray-3);
		padding:0px var(--margin-m);
		text-decoration:none;
		transition:.1s;
		text-transform:uppercase !important;
		font-weight:400 !important;
		font-size:11px !important;
	}
	
	div.panel_options button:hover {
		color:var(--orange);
	}
	
	span.panel_options_divider {
		margin:0px var(--margin-m);
		border-left:1px solid var(--gray-5);
	}
		
/* Gauge */
div.gauge {
	position:relative;
	width:100%;
	text-align:center;
}
	
	div.gauge_back {
		position:absolute;
		width:100%;
		box-shadow:inset 2px 2px 4px rgb(0,0,0,.25);
		border-radius:24px;
		height:24px;
		padding:2px;
		margin:0px;
	}
	
		.small div.gauge_back {
			border-radius:12px;
			height:12px;
		}
	
	div.gauge_data {
		position:absolute;
		width:calc(100% - 6px);
		border-radius:20px;
		height:20px;
	}
		
		.small div.gauge_data {
			border-radius:8px;
			height:8px;
		}

div.gauge_step {
	height:100%;
	background-color:var(--blue);
	float:left;
}

div.gauge_step:first-child:last-child {
	border-radius:20px 20px 20px 20px;
}

div.gauge_step:first-child {
	border-radius:20px 0px 0px 20px;
}

div.gauge_step:last-child {
	border-radius:0px 20px 20px 0px;
}


div.gauge_name {
	text-align:center;
	font-size:12px;
	font-weight:bold;
	margin-bottom:5px;
	line-height:12px;
}

div.gauge_label {
	text-align:center;
	font-size:9px;
	line-height:9px;
	width:100%;
	top:26px;
	margin-bottom:26px;  
}
	
	.small div.gauge_label {
		top:14px;
		margin-bottom:6px;  
	}
 
 
 
 
 
 /* Account Pages */
 .account_input {
	 width:calc(100% - 100px);
	 position:relative;
	 outline:2px solid var(--gray-10);
	 top:2px;
	 margin-right:var(--margin-xxs);
 }
 
input[type="checkbox"] {
  accent-color: var(--orange);
 }
 
.account_checkboxes form {
	display:block;
	width:100%;
	min-height:var(--margin);
}

.account_checkbox {
	float;left;
	height:var(--margin-m);
	width:var(--margin-m);
}

.account_checkbox_text {
	position:relative;
 	margin-left:10px;
 	top:-8px;
}

.account_button_text {
	position:relative;
 	margin-left:37px;
 	margin-right:10px;
 	float:left;
 	top:8px;
}

.upgrade_button button {
	background-color:var(--green);
}

.upgrade_page_promo_vip {
	display:block;
	}
	
.upgrade_button {
	border-top:1px solid var(--gray-10);
	padding-top:var(--margin-s);
}


.form_grid_two {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
  	gap: var(--margin-m);
  	margin-bottom:var(--margin);
}

.form_grid_two input[type="text"]{
	width:100%;
}


.button span,
button span {
	opacity:80%;
	border-left:1px solid white;
	padding-left:4px;
	margin-left:4px;
}




/* Feedback */
div.feedback {
	position:absolute;
	height:var(--margin);
	width:auto;
	right:var(--margin);
	top:40px;
	border-radius:var(--radius-tight);
	background-color:var(--blue);
	z-index:6000;
}
	div.feedback.open {
		width:100%;
		height:auto;
		width:calc(100% - (var(--margin) * 2));
	}

	div.feedback div.icons {
		height:var(--margin);
		width:100%;
	}
		
		div.feedback.open div.icons {
			border-bottom:1px solid var(--gray-10);
			padding-bottom:var(--margin-xxs);
			margin-bottom:var(--margin-xxs);
		}
	
		div.feedback .feedback_icon {
			height:calc(var(--margin) - 6px);
			width:calc(var(--margin) - 6px);
			margin:2px;
			float:right;
			transition:.5s;
			border-radius:var(--radius-tight);
		}
			div.feedback .feedback_icon.feedback_open:hover{
				background-color:var(--blue) !important;
			}
			
			div.feedback .feedback_icon:hover svg{
				color:white;
			}
		
		div.feedback .feedback_icon.up svg{
			position:relative;
			top:-2px;
		}
			
			.feedback_icon.up:has(.feedback_rating:checked),
			div.feedback .feedback_icon.up:hover{
				background-color:var(--green);
			}
			
			.feedback_icon.up:has(.feedback_rating:checked) svg,
			div.feedback .feedback_icon.up:hover svg{
				color:white;
			}
			
		
		div.feedback .feedback_icon.up.noted {
			background-color:var(--green-soft);
		}
		
		div.feedback .feedback_icon.down.noted {
			background-color:var(--red-soft);
		}
		
		div.feedback .feedback_icon.down svg{
			position:relative;
			transform:rotate(180deg);
			top:2px;
		}
			.feedback_icon.down:has(.feedback_rating:checked),
			div.feedback .feedback_icon.down:hover{
				background-color:var(--red);
			}
			
			.feedback_icon.down:has(.feedback_rating:checked) svg,
			div.feedback .feedback_icon.down:hover svg{
				color:white;
			}
	
		div.feedback svg {
			height:18px;
			width:18px;
			color:var(--gray-5);
			margin:11px;
			transition:.5s;
		}
		
		

	div.feedback_expanded {
		height:auto;
		width:100%;
		padding:var(--margin-s);
	}	
	
	div.feedback div.feedback_expanded {
		display:none;
	}
	
	div.feedback.open div.feedback_expanded {
		display:block;
	}
		
		.feedback_rating {
			position: absolute;
			opacity: 0;
			width: 1px;
			height: 1px;
			pointer-events: none;
		}

		div.feedback_expanded p {
			margin:4px;
		}
		
		div.feedback div.feedback_expanded p.not_rated {
			display:block;
		}
		
		div.feedback div.feedback_expanded p.rated_up,
		div.feedback div.feedback_expanded p.rated_down {
			display:none;
		}
		
		div.feedback.rated_up div.feedback_expanded p.rated_up {
			display:block;
		}
		
		div.feedback.rated_up div.feedback_expanded p.rated_down,
		div.feedback.rated_up div.feedback_expanded p.not_rated {
			display:none;
		}
		
		div.feedback.rated_down div.feedback_expanded p.rated_down {
			display:block;
		}
		
		div.feedback.rated_down div.feedback_expanded p.rated_up,
		div.feedback.rated_down div.feedback_expanded p.not_rated {
			display:none;
		}
		
		div.feedback_expanded textarea {
			width:100%;
			height:100px;
			border-radius:var(--radius-tight);
			margin-bottom:var(--margin-xxs);
			padding:var(--margin-s);
		}
		
		div.feedback input.button {
			float:right;
		}
		
		
		


p.report_date {
	position:relative;
	top:-12px;
	color:var(--gray-4);
	font-size:14px;
}

section.p {
	width:100%;
	margin-bottom:calc(var(--margin) * 2);
	background-color:var(--white);
	padding:var(--margin-m);
	border:1px solid var(--gray-10);
}

	section.p > h4 {
		width:100%;
		margin-bottom:var(--margin-s);
		border-bottom:1px solid var(--gray-10);
		font-family:var(--font-logo);
		color:var(--gray-5);
		font-size:14px;
	}
	
	section.p h5 {
		color:var(--gray-2);
	}
	
	section.p > div {
		margin:0px 0px var(--margin) 0px;
	}
	section.p > div.topic_tldr {
		color:var(--blue);
		border:none;
		margin:0px;
		padding:0px;
		margin-bottom:var(--margin);
	}
	
	
	
.export_selection {
	width:100%;
	position:relative;
	margin-bottom:var(--margin);
}
	.export_selection_top {
		display:flex;
		width:100%;
		height:var(--margin);
		margin:0px 0px var(--margin-m) 0px;
	}
	.export_selection_top > div {
		display: inline-flex;
		width:auto;
		height:var(--margin);
	}
	
	.export_selection_top div {
		display:block;
	}
	
	.export_format {
		 margin-left: auto; 
	}
	
	.export_print {
		margin:5px 0px 0px var(--margin-m);
	}
	
	button.print_button {
		background-color:var(--green);
	}
	button.print_disable {
		background-color:var(--gray-7);
		cursor:default;
		pointer-events: none;
	}


.filter_tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.filter_tag {
	display: inline-flex;
	align-items: center;
	cursor: pointer;
	user-select: none;
}

.filter_tag input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.filter_tag span {
	display: inline-flex;
	align-items: center;
	padding: 4px 8px;

	border: 1px solid var(--gray-6);
	outline:2px solid var(--gray-10);
	border-radius:2px;
	margin:4px 4px 4px 0px;

	background-color:var(--gray-11);
	color:var(--gray-5);

	font-size: 12px;
	line-height: 1;

	transition:
	background-color .15s ease,
	border-color .15s ease,
	color .15s ease,
	transform .15s ease;
}

.filter_tag:hover span {
	border-color: #999;
	background: #f5f5f5;
}

.filter_tag input:checked + span {
	background: var(--blue);
	border-color: var(--blue);
	color: #fff;
}
	
	.export_format .filter_tag input:checked + span {
		background: var(--gray-1);
		border-color: var(--gray-1);
		color: #fff;
	}
		
	.filter_tag.analysis input:checked + span {
		background: var(--purple);
		border-color: var(--purple);
		color: #fff;
	}
		
	.filter_tag.opportunities input:checked + span {
		background: var(--orange);
		border-color: var(--orange);
		color: #fff;
	}
		
	.filter_tag.intelligence input:checked + span {
		background: var(--blue);
		border-color: var(--blue);
		color: #fff;
	}


.filter_tag input:focus-visible + span {
	outline:2px solid var(--gray-10);
}










table.panel_table {
	width:100%;
	position:relative;
	border-radius:var(--radius-tight);
	border:1px solid var(--gray-10);
	outline:2px solid white;
}

	.layout.export table {
		border-collapse: collapse !important;
		width:100% !important;
		position:relative !important;
		border-radius:0px !important;
		border:1px solid var(--gray-3) !important;
		outline:none !important;
	}
	
	.layout.export table td,
	.layout.export table tr,
	.layout.export table th {
		border-collapse: collapse !important;
		border:none;
		border-bottom:1px solid var(--gray-3) !important;
		background-color:none !important;
	}
	
	.layout.export table .panel_expand_inner {
		max-height: 2500px;
		padding: 12px;
		border-bottom:none !important;
	}
	
	.layout.export table .alert_table_button button,
	.layout.export table .panel_table_button button{
		display:none;
	}
	
	.layout.export table tr.row_title,
	.layout.export table tr.row_title td {
		border-bottom:1px solid var(--gray-9) !important;
		font-size:16px !important;
		font-weight:600 !important;
	}
	
	.layout.export table tr.row_title td {
		padding-top:14px !important;
	}
		
	.layout.export table tr.row_title .panel_table_text {
		font-size:16px !important;
		font-weight:600 !important;
	}



td {
	position:relative;
}

td span.impact_icon {
	display:block;
	position:relative;
	top:0px;
	left:0px;
	border-radius:2px;
	background-color:var(--gray-10);
	height:24px;
	width:24px;
}

td span.impact_icon svg {
	position:absolute;
	height:18px;
	width:18px;
	margin:3px;
	color:#fff;
}



.attention_placeholder,
.attention_,
.attention_0,
.attention_1,
.attention_2 {
	display:block;
	position:relative;
	top:0px;
	left:0px;
	border-radius:2px;
	background-color:var(--gray-7);
	height:24px;
	width:24px;
	font-size:12px;
	line-height:24px;
	font-weight:600;
	text-align:center;
	color:#ffffff;
}

	.attention_placeholder {
		opacity:0;
	}
	
	.attention_1 {
		background-color:var(--orange);
		opacity:1;
	}
	
	.attention_2 {
		background-color:var(--red);
		opacity:1;
	}
	
	.attention_0 svg,
	.attention_1 svg,
	.attention_2 svg {
		position:absolute;
		top:0px;
		left:0px;
		height:12px;
		width:12px;
		margin:6px;
		color:#ffffff;
	}

.panel_table_text {
	font-size:13px;
	max-width:300px;
	font-weight:500;
	line-height:18px;
	background-color:white;
	padding:8px 30px 12px 12px !important;
}

.panel_table_url {
	font-size:14px;
	max-width:200px;
	font-weight:300;
	line-height:18px;
	background-color:white;
	padding:8px 12px 12px 12px !important;
}

.panel_table_label {
	text-transform:uppercase;
	font-size:10px;
	font-weight:400;
	color:var(--gray-1);
	
}

.panel_table_label.first {
	padding:6px 0px 6px 12px !important;
}


.panel_table_header td {
	background-color:var(--gray-10);
	height:16px;
	line-height:12px;
	padding:6px;
}

.panel_row td {
	background-color:white;
	border-bottom:1px solid var(--gray-10);
	padding:6px 6px 12px 6px;
}

.panel_table_gauge {
	padding-right:16px !important;
	max-width:120px;
	min-width:60px;
}

.panel_table_button {
	width:50px;
	text-align:center;
}

.panel_table_button button {
	height:18px;
	padding:0px;
	margin:0px;
	line-height:18px;
	font-size:12px;
	opacity:.33;
}

.panel_table_button:hover button {
	color:var(--orange);
	opacity:1;
}

.panel_expand_row td {
	padding: 0;
	border: 0;
}

.panel_expand_inner {
	max-height: 0;
	overflow: hidden;
	padding: 0 12px;
	transition: max-height 0.35s ease, padding 0.35s ease;
	background-color:white;
}

.panel_expand_row.open .panel_expand_inner {
	max-height: 2500px;
	padding: 12px;
	border-bottom:1px solid var(--gray-8);
}






.reference {
	display:block;
	position:relative;
	width:100%;
	margin-bottom:var(--margin);
}

	.reference_list {
		list-style:none;
		padding-left: 0px !important;
		margin-left:0px !important;
	}
	
	.reference_title {
		font-weight:600;
	}
	
	.reference_data {
		position:relative;
		height:var(--margin-m);
		border-bottom:1px solid var(--gray-10);
		color:var(--gray-0);
		font-size:14px;
		line-height:var(--margin-m);
		margin:6px 0px 16px 0px;
	}
		
	.reference_data div {
		display:inline-block;
	}
	.reference_data span {
		display:inline-block;
		position:relative;
		height:var(--margin-m);
		line-height:var(--margin-m);
		top:-4px;
		padding:0px 20px 0px 4px;
	}
	
	.reference_data icon {
		top:-0px;
		height:18px;
		width:18px;
		padding-right:0px;
	}
	
	.reference_data svg {
		height:18px;
		width:18px;
		color:var(--gray-5);
	}
	
	.reference_summary {
		margin:0px 0px 10px 0px;
	}
	
	.reference_stats {
		height:var(--margin);
		background-color:var(--gray-10);
		margin:12px 0px 0px 0px;
		padding:6px 12px;
		border-radius:var(--radius-tight);
	}
	
		.reference_stats h5,
		.reference_tags h5 {
			font-weight:400;
			position:relative;
			top:-5px;
			font-size:12px;
		}
		.reference_tags h5 {
			top:0px;
		}
		
		.reference_stats span {
			position:relative;
			top:-14px;
			font-size:14px;
			font-weight:500;
		}

.reference_tags {
	top:-14px;
		height:auto;
		background-color:var(--gray-10);
		padding:6px 12px;
		border-radius:var(--radius-tight);
}
		
a.tag {
	display:inline-block;
	background-color:var(--gray-2) !important;
	align-items: center;
	padding: 4px 8px !important;

	border: 1px solid var(--gray-6);
	outline:2px solid var(--gray-9);
	border-radius:2px !important;
	margin:2px 4px 6px 0px !important;

	background-color:var(--gray-11);

	font-size: 12px !important;
	line-height: 1;
	transition:.25s;
	color:white !important;
}

a.tag:hover {
	background-color:var(--blue) !important;
	cursor:pointer;
	color:white !important;
}







/* VIP Promp */
.vip_promo {
	position:relative;
	top:0px;
	left:0px;
	width:100%;
	min-height:var(--margin);
	height:60px;
	border-radius:var(--border-radius);
	padding:0px;
	margin-bottom:var(--margin-xs);
	transition:.25s;
	font-size:13px;
	overflow:hidden;
	z-index:100;
	display:block;
	outline:2px solid var(--gray-9);
	background:var(--gold-blend) !important;
	color:var(--white);
	opacity:.9;
}
	
	a.vip_promo:hover {
		filter:saturate(130%) brightness(110%);
		background-color:var(--gold-bright) !important;
		color:var(--white) !important;
		opacity:1;
		text-shadow:0px 0px 15px rgb(55, 0, 15, .7) !important;
	}
	
	.vip_promo_container {
		width:100% !important;
		height:auto;
		min-height:var(--margin);
		display:flex;
	}
	
	/* Brick Icons */
	.vip_promo_icon {
		width:60px;
		height:60px;
		padding:10px 10px;
		border-right:1px solid var(--gray-10);
		background-color:transparent !important;
	}
	
		.vip_promo_icon svg {
			height:40px;
			width:40px;
		}
		
		.vip_promo_icon svg {
			opacity:.66;
			position:absolute;
		}
	
	/* Brick Title / Content */
	div.vip_promo_title {
		position:absolute;
		margin-right:auto;
		left:60px;
		width:calc(100% - 60px);
		height:100%;
		flex-grow:1;
		padding-left:8px;
		background-color:rgb(30,20,0,.25) !important;
	}	
	
		div.vip_promo_title span {
			position:absolute;
			left:8px;
			margin:0;
			padding:0;
			width:100%;
		}
			
			div.vip_promo_title span.vip_promo_title_eyebrow {
				top:10px;
				font-size:9px;
				text-transform:uppercase;
				line-height:9px;
				height:9px;
				font-weight:400;
			}
			
			div.vip_promo_title span.vip_promo_title_label {
				top:19px;
				font-size:14px;
				line-height:21px;
				font-weight:600;
			}
			
			div.vip_promo_title span.vip_promo_title_note {
				top:40px;
				font-size:11px;
				line-height:11px;
				font-weight:300;
			}
			



/* New Project Button & Flow */
.vip_code_reminder {
	min-width:240px;
	width:50%;
	max-width:350px;
	float:right;
	font-size:14px;
	line-height:20px;
	font-weight:400;
	padding-left:36px;
	padding-top:4px;
}
	
	.vip_code_reminder span.code {
		font-weight:500;
	}
	
/* Promotion Badges */
.promotion_badges {
	display:inline;
	position:relative;
	margin-left:4px;
	height:0px;
	overflow:visible;
	top:4px;
}

	.vip_code_reminder .promotion_badges {
		margin-left:0px;
		top:0px;
		position:absolute;
		top:0px;
		left:0px;
	}

	.promotion_badges span {
		margin-left:4px;
		display:inline-block;
		height:24px;
		max-height:24px;
		width:24px;
		max-width:24px;
		padding:4px;
		background-color:var(--gray-7);
		border-radius:2px;
		color:var(--white);
		outline:2px solid var(--gray-9);
	}
	
	.promotion_badges span.vip_badge {
		background:var(--gold-blend) !important;
	}
	
	
	.promotion_badges span svg {
		height:16px;
		width:16px;
		color:var(--white);
	}
