/* General Setup */
        .epc-container {
            padding: 10px;
			color: white;
        }

        /* Header and Key */
        .epc-header {
            font-size: 0.9em;
            margin-bottom: 5px;
            font-weight: bold;
            display: flex;
            justify-content: space-between;
        }
        .epc-header-left {
            flex-grow: 1;
        }
        .epc-header-right {
            width: 80px;
            text-align: center;
        }

        /* Rating Scale */
        .epc-scale {
            display: flex;
            flex-direction: column;
            gap: 2px;
        }
        .epc-row {
            display: flex;
            align-items: center;
            height: 25px; /* Uniform height for bars */
        }
        
        /* Bar Styles */
        .epc-bar-wrapper {
            display: flex;
            align-items: center;
            flex-grow: 1;
            box-sizing: border-box;
        }

        .epc-bar {
            height: 100%;
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding-right: 5px;
            font-weight: bold;
            color: white;
            box-sizing: border-box;
            font-size: 1.2em;
			box-shadow: 1px 1px 1px rgba(0,0,0,0.4);
        }

        /* Rating Category Colors and Widths */
        .rating-A { background-color: #00703c; width: 32%; } /* Green */
		.rating-A > .epc-score-range { color: white; }
        .rating-B { background-color: #2da74e; width: 43%; } /* Lighter Green */
		.rating-B > .epc-score-range { color: white; }
        .rating-C { background-color: #79c536; width: 55%; } /* Yellow-Green */
        .rating-D { background-color: #f6d100; width: 68%; } /* Yellow */
        .rating-E { background-color: #f7961b; width: 78%; } /* Orange */
        .rating-F { background-color: #ec4d2d; width: 89%; } /* Red-Orange */
        .rating-G { background-color: #c90000; width: 100%; } /* Red */
        
		.rating {
			text-shadow: 2px 2px black;
		}

        /* Score & Range Text */
        .epc-score-range {
            font-size: 0.8em;
            color: black;
            font-weight: normal;
            margin-left: 5px;
            width: 70px; /* Fixed width for alignment */
            text-align: left;
        }
        .epc-footnote {
            font-size: 0.8em;
            margin-top: 5px;
            font-weight: bold;
        }

		.epc-rating-widget {
			display: flex;
			min-width: 378px;
			
		}
		.current {
			padding-left: 4px;
			margin-left: 4px;
			border-left: 1px solid #ddd;
			position: relative;
		}
		.actual {
			position: absolute;
			top: 145px;
			padding: 4px 6px;
			display: flex;
			background-color: #f7961b;
			text-shadow: 1px 1px black;
			font-weight: bold;
			z-index: 2;
		}
		.actual:before {
			content: '';
			position: absolute;
			width: 18px;
			height: 18px;
			top: 4px;
			left: -9px;
			transform: rotate(-45deg);
			z-index: -1;
			background-color: #f7961b;
		}

		
