/*
Theme Name: the7dtchild (aicepa)
Author: Dream-Theme
Author URI: http://dream-theme.com/
Description: The7 is perfectly scalable, performance and SEO optimized, responsive, retina ready multipurpose WordPress theme. It will fit every site – big or small. From huge corporate portals to studio or personal sites – The7 will become a great foundation for your next project!
Version: 1.0.0
License: This WordPress theme is comprised of two parts: (1) The PHP code and integrated HTML are licensed under the GPL license as is WordPress itself.  You will find a copy of the license text in the same directory as this text file. Or you can read it here: http://wordpress.org/about/gpl/ (2) All other parts of the theme including, but not limited to the CSS code, images, and design are licensed according to the license purchased. Read about licensing details here: http://themeforest.net/licenses/regular_extended
Template: dt-the7
*/
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Noto+Nastaliq+Urdu:wght@400..700&display=swap');
@font-face {
    font-family: 'AlQalam Alvi Nastaleeq';
    src: url('assets/css/report/fonts/AlQalamAlviNastaleeq.woff2') format('woff2'),
        url('assets/css/report/fonts/AlQalamAlviNastaleeq.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

html{
	margin-top: 0px !important;
}
#wpadminbar{
	display: none !important;
}
.the7-e-sticky-overlap-yes.the7-e-sticky.the7-e-sticky-active{
	top: 0px !important;
}
body#the7-body{
	font-family: "Comfortaa";
}
body:not(.home) .elementor-2609 .elementor-section.elementor-top-section.elementor-section-height-min-height{
	padding: 35px 0px 0px 0px;
}
.arrow_left.rtl-text{
	left: auto;
	right: -25px;	
}
.form-overlay {
	display: none;
	position: fixed;
	left: 0px;
	top: 0px;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background: rgba(255, 255, 255, 0.8);
	font-family: arial;
	font-size: 20px;
	font-weight: bold;
	font-style: italic;
	z-index: 9999;
}	
.form-status-messages{
	font-weight:500;
	margin-top: 0px;
	margin-bottom: 5px;
	padding: 5px 10px;
	font-size: 15px;
	display: inline-block;
	width: 100%;
	color: #fff;
}
.error-message{
	background-color: #cd2653;
}
.success-message,
.success-message.reached-error-message{
	background-color: #32CD32;
}
.warning-message{
	background-color: #ffc107;
}
.form-status-messages .the7-feather-x-circle,
.form-status-messages .the7-feather-check-circle{
	margin-top: 6px;
	margin-right: 3px;
}
#aicepa-login-form .form-status-messages,
#aicepa-register-form .form-status-messages,
#aicepa-forgot-password-form .form-status-messages{
	font-size: 13px;
}
a.default-anchor{
	color: #0376EA;
}
#wizard_container .thank-you-page{
	min-height: 360px;
}
.thank-you-page ul{
	list-style: none;
	padding-left: 0px;
	margin-left: 0px;
	margin-top:20px;
	display: flex;
	gap: 5px;
}
.thank-you-page ul.download-static-report-wrapper{
	margin-top:5px;
}
.thank-you-page ul li{
	flex: 0 0 50%;
}
.thank-you-page ul li a{
	text-align: center;
	display: block;
	background: #00A4DE;
	color: #fff;
	padding: 5px 10px;
	border-radius: 3px;
}
.aicepa-report-overlay{
    display: flex;
    position: fixed;
    left: 0px;
    top: 0px;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    background: rgba(255,255,255, 0.8);
    font-family: arial;
    font-size: 35px;
    font-weight: bold;
    font-style: italic;
    z-index: 9999;	
	color: #222;	
}
ul.aicepa-admin-dashboard-menu{
    float: left;
    list-style: none;
    margin-right: 0px;
    margin-left: 0px;
    margin-bottom: 10px;
    background-color: #000;
    width: 100%;
    padding: 20px 12px;
    border: 1px solid #ddd;
    border-radius: 5px;
    margin-top: 10px;
}
ul.aicepa-admin-dashboard-menu li {
    float: left;
    margin-right: 10px;
	display: flex;
    align-items: center;
}
ul.aicepa-admin-dashboard-menu li a {
    font-size: 15px;
    font-weight: 500;
    border-right: 1px solid #999;
    padding-right: 10px;
	margin-left: 3px;
	color: #fff;
}
ul.aicepa-admin-dashboard-menu li i {
	color: #fff;
}
ul.aicepa-admin-dashboard-menu li.dashboard-active-menu a, 
ul.aicepa-admin-dashboard-menu li.dashboard-active-menu i, 
ul.aicepa-admin-dashboard-menu li:hover a,
ul.aicepa-admin-dashboard-menu li:hover i {
    color: #00A4DE;
}
table.dashboard-table-wrapper caption + thead tr:first-child th, 
table.dashboard-table-wrapper caption + thead tr:first-child td, 
table.dashboard-table-wrapper colgroup + thead tr:first-child th, 
table.dashboard-table-wrapper colgroup + thead tr:first-child td, 
table.dashboard-table-wrapper thead:first-child tr:first-child th, 
table.dashboard-table-wrapper thead:first-child tr:first-child td{
	border-block-start: 1px solid rgba(128, 128, 128, 0.5019607843);
	border-bottom-width: 1px;
	padding: .5rem .5rem;
}
table.dashboard-table-wrapper thead tr th, 
table.dashboard-table-wrapper tbody tr td{
	text-align: center;
}
.table-report-export-form{
	text-align: left;
	margin-top: 20px;
	height: 45px;
	line-height: 10px;
	margin-bottom: 30px;			
}
#reportDetailsExportData{
	display: none;
}
#reportDetailsExportBtn,
.assessment-toggle-button-wrapper{
	float: left;
	border: 0px;
}
.assessment-toggle-button-wrapper{
	margin-top: 15px;
	margin-left: 15px;			
}
ul.aicepa-header-menu-wrapper{
    padding-left: 0px;
    margin-left: 0px !important;
    list-style: none !important;	
}
ul.aicepa-header-menu-wrapper li{
	float: left;
}
ul.aicepa-header-menu-wrapper li:first-child{
	margin-right: 10px;
}
ul.aicepa-header-menu-wrapper li a{
	font-family: "Manrope";
	font-size: 16px;
	font-weight: 500;
	color: #fff;	
}
.assessment-pagination-warpper{
    text-align: center;
    margin-top: 20px;
    margin-bottom: 20px;	
}
.assessment-pagination-warpper a,
.assessment-pagination-warpper span{
    padding: 5px 12px;
    background: #00A4DE;
    color: #fff;	
	margin-left: 1px;
	margin-right: 1px;
}
.assessment-pagination-warpper a:hover,
.assessment-pagination-warpper span.current{
	background: #000;
}
.table-filter-form{
    display: flex;
    gap: 10px;	
	margin-top: 10px;
	margin-bottom: 10px;
}
.table-filter-form .field-group label,
.table-filter-form .field-group input[type="text"],
.table-filter-form .field-group input[type="submit"]{
	width: 100%;
	font-size: 14px;
}
.table-filter-form input[type="submit"]{
    background: #00A4DE;
    border: 0px;
    height: 35px;
    margin-top: 27px;
    width: 100px;
    transition: all 0.3s;
}
.table-filter-form input[type="submit"]:hover{
	opacity: 0.7px;
}
body.page-id-6326 .elementor-heading-title.elementor-size-default,
body.page-id-6331 .elementor-heading-title.elementor-size-default{
	visibility: hidden;
	position: relative;
}
body.page-id-6326 .elementor-heading-title.elementor-size-default::before,
body.page-id-6331 .elementor-heading-title.elementor-size-default::before{
    content: "Initial Assessment";
    visibility: visible;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}
.main_question_ur{
    font-family: 'Noto Nastaliq Urdu';
    font-size: 13px !important;
    line-height: 30px !important;
}
.main_question_ur .arrow_left.rtl-text{
	margin-top: 10px;
}
.account-page-report-wrapper.thank-you-page .account-page-reports{
	margin: 0px auto;
	width: 70%;
}
.account-page-report-wrapper.thank-you-page .main_question_ur{
	text-align: right;
}
.page-id-6731 .woocommerce,
.woocommerce-page .woocommerce{
	margin: 15px auto;
    width: 95%;	
}
.page-id-6731 .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-navigation{
	padding-right: 20px;
}
.page-id-6731 .woocommerce-MyAccount-navigation ul li,
.woocommerce-account .woocommerce-MyAccount-navigation ul li{
	margin-bottom: 0px;
	border-bottom: 1px solid #ddd;
}
/* Force display of site header on My Account page */
body.page-id-6731 .site-header,
body.page-id-6731 #header,
body.page-id-6731 .main-header,
body.page-id-6731 .header,
body.page-id-6731 .elementor-location-header,
body.page-id-6731 .dt-header,
body.page-id-6731 #main-header,
body.woocommerce-account .site-header,
body.woocommerce-account #header,
body.woocommerce-account .elementor-location-header {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    overflow: visible !important;
    position: relative !important;
    z-index: 9999 !important;
}

/* Ensure My Account page uses standard header layout */
body.page-id-6731.elementor-page {
    padding-top: 0 !important;
}

/* Override any Elementor settings that might hide the header */
body.page-id-6731 .elementor-editor-active .elementor-location-header {
    display: block !important;
}

.customer-orders-table{
	font-size: 15px;
    line-height: 20px;	
}
.aicepa-online-counseling-session-form.aicepa-online-counseling-session{
	display: none;
}
a.book-my-online-session{
	padding: 5px 10px;
	width: 50%;
	margin: 15px auto;
	display: inherit;	
}
#otherDetails{
	resize: none;
}
a.meeting-link-btn{
    padding: 5px 10px;
    font-size: 13px;
    width: 100%;
    margin: 0px auto;
	line-height: 15px;
}
a.meeting-link{
	line-height: 20px;
    display: block;
    text-align: center;
}
.woocommerce-form.woocommerce-form-login.login{
	margin: 0px auto;
	width: 45%;	
}
.aicepa-counseling-search .form-group{
	display: flex;
}
.aicepa-counseling-search .form-group input[type="text"]{
	flex: 0 0 50%;
	height: 35px;
	margin-right: 15px;
}
.aicepa-counseling-search .form-group input[type="submit"]{
	flex: 0 0 20%;
    height: 40px;
    margin: 0px;
    border: none;
}
.aicepa-online-counseling-meeting-session{
    background: #fff;
    position: absolute;
    width: 550px;
    padding: 10px;
    box-shadow: 0 0 5px #ddd;
    border-radius: 8px;	
}
.aicepa-online-counseling-meeting-session #meetingLink{
	margin-top: 30px;
}
.close-form-btn{
	position: absolute;
	right:5px;
	top:5px;
	background:#000;
	color:#fff;
	width:30px;
	height:30px;
	border-radius: 50%;
	text-align:center;
	cursor:pointer;
	line-height:30px;
}
.account-page-plan-wrapper-4 .account-page-plans,
.account-page-plan-wrapper-3 .account-page-plans,
.account-page-plan-wrapper-2 .account-page-plans,
.account-page-plan-wrapper-1 .account-page-plans{
	display: flex;
	gap: 10px;
}
.account-page-plan-wrapper-4 .account-page-reports.account-page-plans,
.account-page-plan-wrapper-3 .account-page-reports.account-page-plans{
	width: 100%;
}
.account-page-plan-wrapper-4 .account-page-reports.account-page-plans .pricing-name{
	font-size: 1rem;
}
.account-page-plan-wrapper-4 .account-page-reports.account-page-plans .pricing-btn.btn-primary{
	width: 85%;
}
.account-page-plan-wrapper-3 .account-page-reports.account-page-plans .pricing-btn.btn-primary{
	width: 89%;
}
.account-page-plan-wrapper-2 .account-page-reports.account-page-plans .pricing-btn.btn-primary{
	width: 90%;
}
@media screen and (min-width: 992px){
	.page-template-template-assessment .sidebar-right .wf-container-main {
        -ms-grid-columns: calc(100% - 350px - 25px) 50px calc(350px - 25px);
        grid-template-columns: calc(100%);
    }
}
@media screen and (max-width: 550px){
	.aicepa-online-counseling-meeting-session{
		width: 100%;
	}
}

.woocommerce-checkout-review-order-table .remove {
    color: #ff0000 !important; /* Makes both the × and "Remove" text red */
    font-size: 16px;
    text-decoration: none;
    margin-left: 10px;
    vertical-align: middle;
}
.woocommerce-checkout-review-order-table .remove:hover {
    color: #cc0000 !important;
    text-decoration: underline;
}
.woocommerce-checkout-review-order-table .remove span {
    font-size: 18px;
    margin-right: 4px;
}
/* Enhanced Download Button Styles */
.account-page-reports {
    margin: 30px auto;
    width: 70%;
    text-align: center;
}

.account-page-reports ul {
    list-style: none;
    padding: 0;
    margin: 20px 0;
    display: flex;
    gap: 20px;
    justify-content: center;
    flex-wrap: wrap;
}

.account-page-reports ul li {
    margin: 0;
    flex: 1;
    max-width: 250px;
    min-width: 200px;
}

.download-report {
    display: inline-block;
    width: 100%;
    padding: 15px 25px;
    background: linear-gradient(135deg, #1a3a6d 0%, #2a4a7d 100%);
    color: white !important;
    text-decoration: none !important;
    border-radius: 8px;
    font-weight: 600;
    font-size: 16px;
    text-align: center;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(26, 58, 109, 0.3);
    border: 2px solid transparent;
    position: relative;
    overflow: hidden;
}

.download-report:before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.5s;
}

.download-report:hover {
    background: linear-gradient(135deg, #f77f2e 0%, #e06a18 100%);
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(247, 127, 46, 0.4);
    color: white !important;
}

.download-report:hover:before {
    left: 100%;
}

.download-report:active {
    transform: translateY(-1px);
    box-shadow: 0 4px 15px rgba(247, 127, 46, 0.3);
}

/* Add download icon */
.download-report:after {
    content: '⬇';
    margin-left: 8px;
    font-size: 14px;
    opacity: 0.8;
}

/* Responsive design */
@media (max-width: 768px) {
    .account-page-reports {
        width: 90%;
    }
    
    .account-page-reports ul {
        flex-direction: column;
        gap: 15px;
    }
    
    .account-page-reports ul li {
        max-width: 100%;
    }
    
    .download-report {
        padding: 12px 20px;
        font-size: 15px;
    }
}

/* Additional styling for the report content wrapper */
.report-additional-content {
    margin-top: 30px;
    padding: 20px;
    background: #f9f9f9;
    border-radius: 8px;
    border-left: 4px solid #1a3a6d;
}

.report-additional-content .english-paragraph,
.report-additional-content .urdu-paragraph {
    margin-bottom: 15px;
    line-height: 1.6;
    font-size: 16px;
}

.report-additional-content .urdu-paragraph {
    text-align: right;
    font-family: 'Noto Nastaliq Urdu', serif;
}
/* My Account Navigation Icons */
.woocommerce-MyAccount-navigation ul li a {
    display: flex;
    align-items: center;
    padding: 12px 15px;
    text-decoration: none;
    transition: all 0.3s ease;
    border-radius: 4px;
    margin-bottom: 2px;
}

.woocommerce-MyAccount-navigation ul li a:hover {
    background-color: #f8f9fa;
    color: #007cba;
}

.woocommerce-MyAccount-navigation ul li.is-active a {
    background-color: #007cba;
    color: #ffffff;
    font-weight: 600;
}

.woocommerce-MyAccount-navigation .aicepa-nav-icon {
    width: 20px;
    height: 20px;
    margin-right: 12px;
    display: inline-block;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    flex-shrink: 0;
}

/* Icon definitions using SVG backgrounds */
.aicepa-icon-dashboard {
    background-image: url('assets/css/icon_fonts/SVG_icon_set_4/dashboard.svg');
}

.aicepa-icon-shopping-cart {
    background-image: url('assets/css/icon_fonts/SVG_icon_set_4/shopping-cart.svg');
}

.aicepa-icon-user {
    background-image: url('assets/css/icon_fonts/SVG_icon_set_4/user.svg');
}

.aicepa-icon-bar-chart {
    background-image: url('assets/css/icon_fonts/SVG_icon_set_4/bar-chart.svg');
}

.aicepa-icon-clipboard {
    background-image: url('assets/css/icon_fonts/SVG_icon_set_4/clipboard.svg');
}

.aicepa-icon-video-camera {
    background-image: url('assets/css/icon_fonts/SVG_icon_set_4/video-camera.svg');
}

.aicepa-icon-support {
    background-image: url('assets/css/icon_fonts/SVG_icon_set_4/support.svg');
}

.aicepa-icon-calendar {
    background-image: url('assets/css/icon_fonts/SVG_icon_set_4/calendar.svg');
}

.aicepa-icon-book {
    background-image: url('assets/css/icon_fonts/SVG_icon_set_4/book.svg');
}

.aicepa-icon-comments {
    background-image: url('assets/css/icon_fonts/SVG_icon_set_4/comments.svg');
}

.aicepa-icon-files {
    background-image: url('assets/css/icon_fonts/SVG_icon_set_4/files.svg');
}

.aicepa-icon-power-off {
    background-image: url('assets/css/icon_fonts/SVG_icon_set_4/power-off.svg');
}

/* Responsive design for mobile */
@media (max-width: 768px) {
    .woocommerce-MyAccount-navigation ul li a {
        padding: 10px 12px;
    }
    
    .woocommerce-MyAccount-navigation .aicepa-nav-icon {
        width: 18px;
        height: 18px;
        margin-right: 10px;
    }
    
    .woocommerce-MyAccount-navigation .nav-text {
        font-size: 14px;
    }
}

/* Active state icon color adjustment */
.woocommerce-MyAccount-navigation ul li.is-active .aicepa-nav-icon {
    filter: brightness(0) invert(1);
}

/* Hover state icon color adjustment */
.woocommerce-MyAccount-navigation ul li a:hover .aicepa-nav-icon {
    filter: brightness(0) saturate(100%) invert(27%) sepia(51%) saturate(2878%) hue-rotate(346deg) brightness(104%) contrast(97%);
}

/* ========================================
   WooCommerce Checkout Payment Methods Styling
   ======================================== */

/* Payment methods container */
.woocommerce-checkout #payment {
    background: #f9f9f9;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 20px;
}

/* Payment methods list */
.woocommerce-checkout #payment ul.payment_methods {
    list-style: none;
    margin: 0;
    padding: 0;
    border: none;
}

/* Individual payment method */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method {
    background: #ffffff;
    border: 2px solid #e8e8e8;
    border-radius: 6px;
    margin-bottom: 15px;
    padding: 0;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

/* Payment method hover effect */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:hover {
    border-color: #007cba;
    box-shadow: 0 2px 8px rgba(0, 124, 186, 0.1);
    transform: translateY(-1px);
}

/* Selected payment method */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method input[type="radio"]:checked + label {
    background: linear-gradient(135deg, #f0f8ff 0%, #e6f3ff 100%);
    border-left: 4px solid #007cba;
}

.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:has(input[type="radio"]:checked) {
    border-color: #007cba;
    box-shadow: 0 4px 12px rgba(0, 124, 186, 0.15);
}

/* Payment method labels */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method label {
    display: block;
    padding: 18px 20px;
    margin: 0;
    cursor: pointer;
    font-weight: 600;
    font-size: 16px;
    color: #333;
    border-radius: 4px;
    transition: all 0.3s ease;
    position: relative;
}

.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method label:hover {
    background: #f8f9fa;
}

/* Radio button styling */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method input[type="radio"] {
    margin-right: 12px;
    transform: scale(1.2);
    accent-color: #007cba;
}

/* Payment method icons */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method label img {
    max-height: 24px;
    margin-left: 10px;
    vertical-align: middle;
}

/* Payment box (description area) */
.woocommerce-checkout #payment .payment_box {
    background: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 0 0 4px 4px;
    padding: 20px;
    margin: 0;
    position: relative;
}

.woocommerce-checkout #payment .payment_box::before {
    content: '';
    position: absolute;
    top: -8px;
    left: 30px;
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 8px solid #f8f9fa;
}

.woocommerce-checkout #payment .payment_box p {
    margin: 0 0 10px 0;
    color: #666;
    font-size: 14px;
    line-height: 1.5;
}

.woocommerce-checkout #payment .payment_box p:last-child {
    margin-bottom: 0;
}

/* Payment method specific styling */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:first-child {
    margin-top: 0;
}

.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:last-child {
    margin-bottom: 0;
}

/* Place order section */
.woocommerce-checkout #payment .place-order {
    margin-top: 25px;
    padding-top: 20px;
    border-top: 1px solid #e0e0e0;
}

/* Terms and conditions */
.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper {
    margin-bottom: 15px;
}

.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper label {
    font-weight: normal;
    font-size: 14px;
    padding: 0;
    background: none;
    border: none;
}

/* Place order button */
.woocommerce-checkout #payment #place_order {
    width: 100%;
    padding: 15px 30px;
    font-size: 16px;
    font-weight: 600;
    background: linear-gradient(135deg, #007cba 0%, #005a87 100%);
    color: white;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.woocommerce-checkout #payment #place_order:hover {
    background: linear-gradient(135deg, #005a87 0%, #004066 100%);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 124, 186, 0.3);
}

.woocommerce-checkout #payment #place_order:active {
    transform: translateY(0);
}

/* Responsive design for payment methods */
@media (max-width: 768px) {
    .woocommerce-checkout #payment {
        padding: 15px;
    }
    
    .woocommerce-checkout #payment ul.payment_methods li.wc_payment_method label {
        padding: 15px;
        font-size: 15px;
    }
    
    .woocommerce-checkout #payment .payment_box {
        padding: 15px;
    }
    
    .woocommerce-checkout #payment #place_order {
        padding: 12px 25px;
        font-size: 15px;
    }
}

@media (max-width: 480px) {
    .woocommerce-checkout #payment {
        padding: 12px;
    }
    
    .woocommerce-checkout #payment ul.payment_methods li.wc_payment_method {
        margin-bottom: 12px;
    }
    
    .woocommerce-checkout #payment ul.payment_methods li.wc_payment_method label {
        padding: 12px;
        font-size: 14px;
    }
    
    .woocommerce-checkout #payment .payment_box {
        padding: 12px;
    }
    
    .woocommerce-checkout #payment #place_order {
        padding: 12px 20px;
        font-size: 14px;
    }
}

/* High contrast mode support */
@media (prefers-contrast: high) {
    .woocommerce-checkout #payment ul.payment_methods li.wc_payment_method {
        border-width: 3px;
    }
    
    .woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:hover {
        border-color: #000;
    }
    
    .woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:has(input[type="radio"]:checked) {
        border-color: #000;
        background: #fff;
    }
}

/* Focus states for accessibility */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method input[type="radio"]:focus {
    outline: 2px solid #007cba;
    outline-offset: 2px;
}

.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method label:focus-within {
    outline: 2px solid #007cba;
    outline-offset: 2px;
}

/* Animation for payment method selection */
@keyframes paymentSelect {
    0% { transform: scale(1); }
    50% { transform: scale(1.02); }
    100% { transform: scale(1); }
}

.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:has(input[type="radio"]:checked) {
    animation: paymentSelect 0.3s ease-out;
}