/* ==========================================================
   PPI TERMINAL — CMA
   ========================================================== */

#cmaCard {
	height: auto !important;
	min-height: 0;
	max-height: none;
	overflow: visible;
	background: linear-gradient(
			to bottom,
			rgba(239,239,239,1) 0%,
			rgba(255,255,255,1) 36%,
			rgba(255,255,255,1) 72%,
			rgba(239,239,239,1) 100%            
		);
}

.dark-theme #cmaCard {
	background: var(--stock-chart-background);
}

/* ===== Header ===== */

#cmaCard .cmaFilters.stockDrawerFilters {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 12px;
	width: 100%;
	margin: 12px 0;
	padding: 0;
}

#cmaCard .cmaFilters .stockDrawerColumn {
	position: relative;
	min-width: 0;
}

#cmaCard .cmaFilters .stockFilterTrigger {
	width: 100%;
	min-width: 0;
}

#cmaCard .cmaFilters .stockFilterPanel {
	width: 100%;
}

#cmaCard .cmaHeader {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	width: 100%;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

#cmaCard .cmaHeaderTitle h3 {
	margin: 0 0 4px;
	padding: 0;
	font-size: 15px;
	font-weight: 400;
	color: #515151;
}

#cmaCard .cmaHeaderTitle p {
	margin: 0;
	padding: 0;
	font-size: 13px;
	font-weight: 300;
	line-height: 1.4;
	color: #666;
}

.dark-theme #cmaCard .cmaHeaderTitle h3 {
	color: var(--ppi-dark-text);
}

.dark-theme #cmaCard .cmaHeaderTitle p {
	color: #bdbdbd;
}

/* ===== Steps ===== */

#cmaCard .cmaStep {
	width: calc(100% - 36px);
	margin: 0 18px 12px;
	padding: 14px 16px 16px;
	box-sizing: border-box;
	background: var(--stock-chart-background);
	border: 1px solid #d7d7d7;
	border-radius: 8px;
}

.dark-theme #cmaCard .cmaStep {
	border-color: #555;
}

#cmaCard .cmaStep.disabled {
	opacity: .45;
	pointer-events: none;
}

#cmaCard .cmaStepHeader {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin-bottom: 12px;
}

#cmaCard .cmaStepNumber {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	border-radius: 50%;
	background: #d9eff7;
	color: #66767d;
	font-size: 11px;
	font-weight: 600;
}

#cmaCard .cmaStep:not(.disabled) .cmaStepNumber {
	background: var(--ppi-green);
	color: #fff;
}

#cmaCard .cmaStepHeader h4 {
	margin: 0 0 3px;
	padding: 0;
	font-size: 15px;
	font-weight: 500;
	color: var(--stock-chart-text-primary);
}

#cmaCard .cmaStepHeader p {
	margin: 0;
	padding: 0;
	font-size: 12px;
	font-weight: 300;
	line-height: 1.4;
	color: var(--stock-chart-text-muted);
}

/* ===== Strategy ===== */

#cmaCard .cmaStrategyOptions {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

#cmaCard .cmaStrategyOption {
	min-height: 78px;
	padding: 12px 14px;
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 6px;
	color: #333;
	text-align: left;
	cursor: pointer;
}

#cmaCard .cmaStrategyOption:hover {
	border-color: #aaa;
	background: #f6f6f6;
}

#cmaCard .cmaStrategyOption.active {
	background: var(--ppi-green);
	border-color: var(--ppi-green);
	color: #fff;
}

#cmaCard .cmaStrategyOption strong {
	display: block;
	margin-bottom: 5px;
	font-size: 14px;
	font-weight: 500;
	color: inherit;
}

#cmaCard .cmaStrategyOption span {
	display: block;
	font-size: 12px;
	font-weight: 300;
	line-height: 1.35;
	color: #777;
}

#cmaCard .cmaStrategyOption.active span {
	color: #fff;
}

.dark-theme #cmaCard .cmaStrategyOption {
	background: #3c3c3c;
	border-color: #666;
	color: var(--ppi-dark-text);
}

.dark-theme #cmaCard .cmaStrategyOption:hover {
	background: #484848;
}

.dark-theme #cmaCard .cmaStrategyOption.active {
	background: var(--ppi-green);
	border-color: var(--ppi-green);
	color: #fff;
}

/* ===== Property / subtype ===== */

#cmaCard .cmaPropertyOptions,
#cmaCard .cmaSubtypeOptions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

#cmaCard .cmaSubtypeOptions {
	margin-top: 10px;
}

#cmaCard .cmaPropertyOptions button,
#cmaCard .cmaSubtypeOptions button {
	min-width: 120px;
	height: 38px;
	padding: 0 14px;
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 6px;
	color: #333;
	font-family: inherit;
	font-size: 14px;
	font-weight: 300;
	cursor: pointer;
}

#cmaCard .cmaPropertyOptions button:hover,
#cmaCard .cmaSubtypeOptions button:hover {
	background: #f6f6f6;
}

#cmaCard .cmaPropertyOptions button.active,
#cmaCard .cmaSubtypeOptions button.active {
	background: var(--ppi-green);
	border-color: var(--ppi-green);
	color: #fff;
}

.dark-theme #cmaCard .cmaPropertyOptions button,
.dark-theme #cmaCard .cmaSubtypeOptions button {
	background: #3c3c3c;
	border-color: #666;
	color: var(--ppi-dark-text);
}

.dark-theme #cmaCard .cmaPropertyOptions button.active,
.dark-theme #cmaCard .cmaSubtypeOptions button.active {
	background: var(--ppi-green);
	border-color: var(--ppi-green);
	color: #fff;
}

/* ===== Step meta ===== */

#cmaCard .cmaStepMeta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 10px;
	padding: 8px 10px;
	background: #f6f6f6;
	border-radius: 4px;
	color: #777;
	font-size: 12px;
}

.dark-theme #cmaCard .cmaStepMeta {
	background: #343434;
	color: #ccc;
}

#cmaCard .cmaStepMeta strong {
	color: var(--stock-chart-text-primary);
	font-weight: 500;
}

/* ===== A-B-C comparison ===== */

#cmaCard .cmaComparisonGrid {
	display: grid;
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
}

#cmaCard .cmaComparisonCard {
	min-height: 112px;
	padding: 12px 14px;
	box-sizing: border-box;
	background: var(--stock-chart-background);
	border: 1px solid #d7d7d7;
	border-radius: 6px;
}

.dark-theme #cmaCard .cmaComparisonCard {
	border-color: #555;
}

#cmaCard .cmaComparisonCard:first-child {
	border-color: var(--ppi-green);
}

#cmaCard .cmaComparisonRank {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	margin-bottom: 10px;
	border-radius: 50%;
	background: #d9eff7;
	color: #66767d;
	font-size: 11px;
	font-weight: 600;
}

#cmaCard .cmaComparisonCard:first-child .cmaComparisonRank {
	background: var(--ppi-green);
	color: #fff;
}

#cmaCard .cmaComparisonCard h4 {
	margin: 0 0 4px;
	padding: 0;
	font-size: 15px;
	font-weight: 500;
	color: var(--stock-chart-text-primary);
}

#cmaCard .cmaComparisonCommunity {
	display: block;
	margin-bottom: 8px;
	font-size: 12px;
	font-weight: 300;
	color: var(--stock-chart-text-muted);
}

#cmaCard .cmaComparisonScore {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: 10px;
	padding-top: 8px;
	border-top: 1px solid #e1e1e1;
}

.dark-theme #cmaCard .cmaComparisonScore {
	border-top-color: #555;
}

#cmaCard .cmaComparisonScore span {
	font-size: 11px;
	font-weight: 300;
	color: var(--stock-chart-text-muted);
}

#cmaCard .cmaComparisonScore strong {
	font-size: 13px;
	font-weight: 500;
	color: var(--stock-chart-text-primary);
}

/* ===== Result ===== */

#cmaCard .cmaResult {
    width: calc(100% + 40px);
    margin: 10px -20px;
    padding: 0;
    box-sizing: border-box;
    background: transparent;
    border: none;
    border-radius: 8px;
    overflow: hidden;
}

.dark-theme #cmaCard .cmaResult {
	border-color: #555;
}

#cmaCard .cmaResultHeader {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 12px 15px;
	background: #f6f6f6;
	border-bottom: 1px solid #d7d7d7;
}

.dark-theme #cmaCard .cmaResultHeader {
	background: rgb(55 55 55 / 85%);
	border-bottom-color: #555;
}

#cmaCard .cmaResultLabel {
	display: block;
	margin-bottom: 3px;
	font-size: 11px;
	font-weight: 300;
	color: #777;
}

#cmaCard .cmaResultHeader h3 {
	margin: 0;
	padding: 0;
	font-size: 15px;
	font-weight: 500;
	color: var(--stock-chart-text-primary);
}

#cmaCard .cmaResultActions {
    display: flex;
    width: calc(100% - 20px);
	padding-left: 20px;
    align-items: start;
    gap: 10px;
}

#cmaCard .cmaResultActions button {
	min-width: 108px;
	height: 38px;
	padding: 0 18px;
	border: 1px solid #d0d0d0;
	border-radius: 7px;
	background: linear-gradient(to bottom, #fafafa, #e9e9e9);
	color: #111;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 15px;
	font-weight: 500;
	cursor: pointer;
}

.dark-theme #cmaCard .cmaResultActions button {
	background: #3c3c3c;
	border-color: #666;
	color: var(--ppi-dark-text);
}

.dark-theme #cmaCard .cmaResultActions button:hover {
	background: #484848;
}

/* ===== Result meta ===== */

#cmaCard .cmaResultMeta {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	padding: 14px 15px 0;
}

#cmaCard .cmaResultMeta div {
	padding: 9px 10px;
	background: #f6f6f6;
	border-radius: 4px;
}

.dark-theme #cmaCard .cmaResultMeta div {
	background: #343434;
}

#cmaCard .cmaResultMeta span {
	display: block;
	margin-bottom: 3px;
	font-size: 10px;
	font-weight: 300;
	color: var(--stock-chart-text-muted);
}

#cmaCard .cmaResultMeta strong {
	font-size: 13px;
	font-weight: 500;
	color: var(--stock-chart-text-primary);
}

/* ===== Final recommendation ===== */

#cmaCard .cmaRecommendationGrid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	padding: 14px 15px;
}

#cmaCard .cmaRecommendationCard {
	min-height: 130px;
	padding: 12px 14px;
	box-sizing: border-box;
	background: var(--stock-chart-background);
	border: 1px solid #d7d7d7;
	border-radius: 6px;
}

.dark-theme #cmaCard .cmaRecommendationCard {
	border-color: #555;
}

#cmaCard .cmaRecommendationCard:first-child {
	border-color: var(--ppi-green);
}

#cmaCard .cmaRecommendationNumber {
	display: block;
	margin-bottom: 8px;
	font-size: 11px;
	font-weight: 600;
	color: var(--ppi-green);
}

#cmaCard .cmaRecommendationLabel {
	display: block;
	margin-bottom: 5px;
	font-size: 11px;
	font-weight: 300;
	color: var(--stock-chart-text-muted);
}

#cmaCard .cmaRecommendationCard h4 {
	margin: 0;
	padding: 0;
	font-size: 16px;
	font-weight: 500;
	color: var(--stock-chart-text-primary);
}

#cmaCard .cmaScore {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 14px;
	padding-top: 8px;
	border-top: 1px solid #e1e1e1;
}

.dark-theme #cmaCard .cmaScore {
	border-top-color: #555;
}

#cmaCard .cmaScore span {
	font-size: 11px;
	font-weight: 300;
	color: var(--stock-chart-text-muted);
}

#cmaCard .cmaScore strong {
	font-size: 13px;
	font-weight: 500;
	color: var(--stock-chart-text-primary);
}

/* ===== Strategy factors ===== */

#cmaCard .cmaFactors,
#cmaCard .cmaAlternatives {
	padding: 0 15px 14px;
}

#cmaCard .cmaFactorsHeader {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 8px;
}

#cmaCard .cmaFactorsHeader h4 {
	margin: 0;
	padding: 0;
	font-size: 15px;
	font-weight: 500;
	color: var(--stock-chart-text-primary);
}

#cmaCard .cmaFactorsHeader span {
	font-size: 11px;
	font-weight: 300;
	color: var(--stock-chart-text-muted);
}

#cmaCard .cmaFactorsTable {
	border: 1px solid #d7d7d7;
	border-radius: 4px;
	overflow: hidden;
}

.dark-theme #cmaCard .cmaFactorsTable {
	border-color: #555;
}

#cmaCard .cmaFactorRow {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	min-height: 34px;
	padding: 0 10px;
	border-bottom: 1px solid #e5e5e5;
	background: var(--stock-chart-background);
}

#cmaCard .cmaFactorRow:last-child {
	border-bottom: 0;
}

.dark-theme #cmaCard .cmaFactorRow {
	border-bottom-color: #555;
}

#cmaCard .cmaFactorRow span,
#cmaCard .cmaFactorRow strong {
	font-size: 12px;
}

#cmaCard .cmaFactorRow span {
	font-weight: 300;
	color: var(--stock-chart-text-secondary);
}

#cmaCard .cmaFactorRow strong {
	font-weight: 500;
	color: var(--stock-chart-text-primary);
}

/* ===== Empty ===== */

#cmaCard .cmaEmptyState,
#cmaCard .cmaNoResults {
	width: calc(100% - 36px);
	min-height: 300px;
	margin: 0 18px 18px;
	padding: 15px;
	box-sizing: border-box;
	background: transparent;
	border: none;
	border-radius: 6px;
	color: var(--stock-chart-text-muted);
	font-size: 14px;
	font-weight: 300;
	text-align: center;
	vertical-align: middle;
}

.dark-theme #cmaCard .cmaEmptyState,
.dark-theme #cmaCard .cmaNoResults {
	border-color: #555;
}

.cmaResult {
	width: 100%;
	margin-top: 28px;
}

.calc-ui .cmaModeTabs {
	display: flex;
	gap: 0;
	margin-bottom: 20px;
	background: linear-gradient(rgb(248,248,248,0), rgb(195, 195, 195, 0.3));
	border-bottom: 2px solid #d9dde2;
}

.dark-theme .calc-ui .cmaModeTabs {
	background: linear-gradient(rgb(248,248,248,0), rgba(0, 0, 0, 0.3));
	border-bottom: 2px solid rgba(255,255,255,0.25);
}

.calc-ui .cmaModeTab {
    height: 42px;
    margin-bottom: -2px;
    padding: 12px 24px 18px 24px;
    border: 0;
    border-bottom: 2px solid transparent;
    background: transparent;
    border-radius: 0;
    border-bottom: 2px solid #ddd;
    color: #222;
    font: inherit;
    font-weight: 300;
    cursor: pointer;
}

.dark-theme .calc-ui .cmaModeTab {
	border-color: transparent;
	color: #cdcdcd;	
}

.calc-ui .cmaModeTab.active {
	border-bottom-color: #28a73f;
	color: #111;
}

.dark-theme .calc-ui .cmaModeTab.active {
	border-bottom-color: #42c45a;
	color: #fff;
}

.cmaComparison {
	width: 100%;
	padding: 0 20px;
}

.cmaSectionTitle {
	margin: 0 0 10px;
    border-radius: 8px 8px 0 0;
	color: #111;
	font-size: 16px;
	font-weight: 300;    
    overflow: hidden;
}

.dark-theme .cmaSectionTitle {
  color: #fff;
}

.cmaComparisonTable {
	width: calc(100% - 40px);
	padding: 0;
	box-sizing: border-box;
	border: 1px solid #e1e5e8;
	border-radius: 8px;
	overflow: hidden;
}

.dark-theme .cmaComparisonTable {
	border: 1px solid rgba(255,255,255,0.15);
}

.cmaTable {
	display: grid;
	min-width: 760px;
}

.cmaComparisonCell {
	display: flex;
	min-height: 28px;
	align-items: center;
	padding: 5px 16px;
	box-sizing: border-box;
	border-bottom: 1px solid #e7eaed;
	font-size: 14px;
}

.dark-theme .cmaComparisonCell {
	border-right: 1px solid #333;
	border-bottom: 1px solid #333;
}

.cmaComparisonCell.factor {
    padding-top: 10px;
    padding-bottom: 10px;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: 3px;
}

.cmaComparisonCell.factor .factorTitle {
	display: block;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.25;
	color: #535d66;
}

.dark-theme .cmaComparisonCell.factor .factorTitle {
	color: var(--ppi-dark-text);
}

.dark-theme .cmaComparisonCell.factor small {
	color: #c3c3c3;
}

.cmaComparisonCell.factor small {
	display: block;
	max-width: 240px;
	font-size: 13px;
	font-weight: 300;
	line-height: 1.3;
	color: #666;
}

.cmaComparisonCell.head {
	justify-content: center;
	background: #f5f6f7;
	color: #111820;
	font-weight: 400;
	text-align: left;
}

.dark-theme .cmaComparisonCell.head {
	background: rgba(255,255,255,0.25);
	color: #fcfcfc;
	border-top: 1px solid rgba(255,255,255,0.35);
}

.dark-theme .cmaComparisonCell.head {
    background: rgba(255,255,255,0.25);
    border-top: 1px solid rgba(255,255,255,0.35);
}

.cmaComparisonCell.value {
	flex-direction:column;
	align-items:center;
	justify-content:center;
	text-align:center;
	color: #111820;
}

.cmaComparisonCell.value em {
	display: block;
	width: 100%;
	margin-bottom: 4px;
	font-style: normal;
	font-size: 14px;
}

.cmaComparisonCell.value small {
	display: block;
	width: 100%;
	font-style: normal;
	font-size: 12px;	
}

/* ===== CMA comparison zebra rows ===== */

.cmaComparisonCell.cmaRowEven {
	background: #ffffff;
}

.cmaComparisonCell.cmaRowOdd {
	background: #f5f6f7;
}

.dark-theme .cmaComparisonCell.cmaRowEven {
	background: rgba(255,255,255,0.10);
}

.dark-theme .cmaComparisonCell.cmaRowOdd {
	background: rgba(255,255,255,0.16);
}

.dark-theme .cmaComparisonCell.value.cmaRowEven,
.dark-theme .cmaComparisonCell.value.cmaRowOdd {
	color: #fcfcfc;
}

.cmaComparisonCell.result {
	min-height: 64px;
	flex-direction: column;
	justify-content: center;
	gap: 4px;
	background: #f5f6f7;
	font-size: 18px;
	font-weight: 700;
	text-align: center;
}

.dark-theme .cmaComparisonCell.result {
    background: rgba(255,255,255,0.15);
    font-weight: normal;
    color: #fff;
}

.cmaComparisonCell.result.factor {
	align-items: flex-start;
	justify-content: center;
	font-size: 14px;
}

.cmaComparisonCell.winner {
	background: rgb(107 198 124 / 20%);
}

.cmaComparisonCell.winner strong {
	font-weight: bold;
}

.cmaCell.winner {
	flex-direction: column;
	justify-content: center;
	gap: 4px;
}

.cmaOptimal {
	color: var(--ppi-green-dark);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.cmaRecommendation {
	width: calc(100% - 40px);	
	margin: 20px auto;
}

.cmaRecommendationText {
	padding: 18px;
	background: rgb(107 198 124 / 20%);
    border-radius: 8px;
	color: #48515a;
	font-size: 14px;
	line-height: 1.55;
}

.dark-theme .cmaRecommendationText {
    background: rgb(255,255,255,0.15);
    color: #fff;
}

/* ==========================================================
   CMA — RECOMMENDATION
   ========================================================== */

.cmaRecommendationBody {
	display: grid;
	grid-template-columns: minmax(0,1.55fr) minmax(280px,.85fr);
	gap: 34px;
	min-height: 300px;
	height: 300px;
	padding: 18px 0 12px 18px;
	box-sizing: border-box;
	overflow: visible;
}

.cmaRecommendationContent {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.cmaRecommendationStep {
	flex: 1;
	max-height: 220px;
}

.cmaRecommendationStep p {
	margin: 0;
	padding: 0;
	line-height: 1.6;
}

.cmaRecommendationStep .noticeList {
	margin: 5px 0 0;
	padding-left: 20px;
}

.cmaRecommendationStep .noticeList li {
	margin: 0 0 8px;
	line-height: 1.3;
}

.dark-theme .cmaRecommendationStep p,
.dark-theme .cmaRecommendationStep .noticeList li {
	color: #fcfcfc;
}

.dark-theme .cmaRecommendationStep p {
	margin-bottom: 10px;
}

.dark-theme .cmaRecommendationStep .noticeList li {
	margin-bottom: 8px;
}

.cmaRecommendationActions {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 0;
	padding-top: 12px;
}

.cmaRecommendationActions button {
	min-width: 92px;
}

/* ===== CMA guide: same geometry as Charts / Forecasts ===== */

.cmaGuide {
	position: relative;
	right: 10px;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	min-width: 0;
	vertical-align: top;
}

.cmaGuideSlider {
	position: relative;
	right: 10px;
	width: 350px;
	height: 228px;
	overflow: hidden;
	border: 1px solid rgba(255,255,255,.2);
	border-radius: 8px;
	background: rgba(0,0,0,.12);
}

.cmaGuideSlide {
	position: relative;
	width: 100%;
	height: 100%;
	background: #111;
}

.cmaGuideSlide.hidden {
	display: none;
}

.cmaGuideSlide img {
	display: block;
	width: 100%;
	height: auto;
}

.cmaGuideSlide span {
	display: none;
}

/* Charts / Forecasts use dots as the visible navigation. */
button#cmaGuidePrev,
button#cmaGuideNext {
	display: none;
}

.cmaGuideDots {
	position: relative;
	top: -35px;
	display: flex;
	justify-content: center;
	gap: 7px;
	margin-top: 12px;
}

.cmaGuideDots button {
	width: 8px;
	height: 8px;
	min-width: 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: rgba(255,255,255,.3);
	cursor: pointer;
}

.cmaGuideDots button.active {
	background: #fff;
	transform: scale(1.15);
}

.dark-theme .cmaGuideSlider {
	background: #111;
}

/* ==========================================================
   RESPONSIVE
   ========================================================== */

@media(max-width:900px){

	#cmaCard .cmaStrategyOptions,
	#cmaCard .cmaComparisonGrid,
	#cmaCard .cmaRecommendationGrid,
	#cmaCard .cmaResultMeta {
		grid-template-columns: 1fr;
	}

	.cmaRecommendationBody {
		grid-template-columns: 1fr;
		height: auto;
		min-height: 300px;
	}

	.cmaRecommendationStep {
		max-height: none;
	}

	.cmaGuide {
		right: 0;
		max-width: 480px;
		width: 100%;
		margin: 10px auto 0;
	}

	.cmaGuideSlider {
		right: 0;
		width: 100%;
		height: auto;
		aspect-ratio: 350 / 228;
	}

}

@media(max-width:768px){

	#cmaCard .cmaHeader,
	#cmaCard .cmaResultHeader,
	#cmaCard .cmaFactorsHeader {
		flex-direction: column;
		align-items: stretch;
	}

	#cmaCard .cmaResultActions {
		width: 100%;
	}

	#cmaCard .cmaResultActions button {
		flex: 1 1 auto;
	}

}

.cmaResultActions {
	display:flex;
	justify-content:flex-start;
	margin-top:16px;
}

.cmaResultActions .copy {
	min-width:100px;
}

.cmaCard.enlargeCMAresult {
	height:auto;
	max-height:none;
	overflow:visible;
}

.cmaCard.enlargeCMAresult .cmaResult {
	height:auto;
	max-height:none;
	overflow:visible;
}

.cmaCard.enlargeCMAresult .cmaComparison {
	height:auto;
	max-height:none;
	overflow:visible;
}

.cmaCard.enlargeCMAresult .cmaComparisonTable {
	height:auto;
	max-height:none;
	overflow:visible;
}

.cmaRecommendationStep p,.cmaRecommendationStep li{opacity:0;transform:translateY(5px);transition:opacity .32s ease,transform .32s ease;}
.cmaRecommendationStep.cmaSpeaking p,.cmaRecommendationStep.cmaSpeaking li{opacity:1;transform:translateY(0);}
.cmaRecommendationStep.cmaSpeaking p:nth-child(1){transition-delay:.05s;}
.cmaRecommendationStep.cmaSpeaking p:nth-child(2){transition-delay:.14s;}
.cmaRecommendationStep.cmaSpeaking p:nth-child(3){transition-delay:.23s;}
.cmaRecommendationStep.cmaSpeaking li:nth-child(1){transition-delay:.12s;}
.cmaRecommendationStep.cmaSpeaking li:nth-child(2){transition-delay:.20s;}
.cmaRecommendationStep.cmaSpeaking li:nth-child(3){transition-delay:.28s;}
.cmaRecommendationStep.cmaSpeaking li:nth-child(4){transition-delay:.36s;}