:root {
    --ravi-primary: #2563eb;
    --ravi-primary-light: #3b82f6;
    --ravi-dark: #005ae0;
    --ravi-dark-light: #1e293b;
    --ravi-bg: #f8fafc;
    --ravi-text: #1e293b;
    --ravi-muted: #64748b;
    --ravi-border: #e2e8f0;
}

.ravi-account-layout {
    display: grid;
    grid-template-columns: 230px 1fr;
    gap: 20px;
    max-width: 1500px;
    margin: 30px auto;
    padding: 0px 20px;
    font-family: 'Inter', sans-serif;
}
h1.entry-title {
    display: none!important;
}

.ravi-sidebar {
    background: #F7F7F7;
    color: #fff;
    padding: 50px 20px;
    border-radius: 18px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.25);
}

.ravi-sidebar h3 {
    font-size: 32px;
    margin-bottom: 25px;
    text-align: center;
    font-family: sans-serif;
    font-weight: 700;
	color:#000;
}

.ravi-sidebar ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.ravi-sidebar li {
    margin-bottom: 6px;
}

.ravi-sidebar a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border-radius: 10px;
    color: #000;
    text-decoration: none;
    font-size: 14px;
    transition: 0.25s ease;
}

.ravi-sidebar a:hover {
    background: var(--ravi-dark-light);
    color: #fff;
}

.ravi-sidebar .active a {
    background: linear-gradient(135deg, var(--ravi-primary-light), var(--ravi-primary));
    color: #fff;
    font-weight: 500;
    box-shadow: 0 5px 15px rgba(37,99,235,0.3);
}

.ravi-content {
    background: #F7F7F7;
    padding: 30px;
    border-radius: 18px;
    box-shadow: 0 10px 35px rgba(0,0,0,0.08);
}

.ravi-content h2 {
    font-size: 24px;
    margin-bottom: 20px;
	   color: var(--e-a-color-circle-logo);
}

.ravi-content p {
    color: #000;
}

.ravi-profile-card {
    display: flex;
    align-items: center;
    gap: 15px;
    background: var(--ravi-bg);
    padding: 18px 20px;
    border-radius: 14px;
	margin-bottom: 10px;
}

.ravi-avatar img {
    border-radius: 50%;
    width: 60px;
}

.ravi-btn-sm {
    margin-left: auto;
    background: var(--ravi-primary);
    color: #fff;
    padding: 8px 14px;
    border-radius: 8px;
    text-decoration: none;
    font-size: 13px;
}
.ravi-btn-sm:hover {

    background: var(--ravi-dark-light);

    color: #fff;

}

.ravi-stats {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
	margin-bottom: 10px;
}

.ravi-stat {
    background: #fff;
    padding: 20px;
    border-radius: 14px;
    text-align: center;
    border: 1px solid var(--ravi-border);
    transition: 0.25s;
}

.ravi-stat:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.08);
}

.ravi-stat span {
    font-size: 22px;
    font-weight: 600;
}

.ravi-dashboard-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 20px;
}

.ravi-card {
    background: var(--ravi-bg);
    padding: 20px;
    border-radius: 14px;
    text-decoration: none;
    color: var(--ravi-text);
    border: 1px solid var(--ravi-border);
    transition: 0.25s;
    font-weight: 500;
}

.ravi-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.08);
}

.ravi-card.logout {
    background: #fee2e2;
    color: #991b1b;
}

.ravi-content table {
   /* width: 100%;*/
    border-collapse: collapse;
    /*border-radius: 12px;*/
    /*overflow: hidden;*/
}

.ravi-content th {
    background: var(--ravi-bg);
    padding: 12px;
    font-size: 12px;
}

.ravi-content td {
    padding: 12px;
    border-bottom: 1px solid var(--ravi-border);
}

.ravi-content input,
.ravi-content select {
    /*width: 100%;*/
    padding: 12px;
    border-radius: 10px;
    border: 1px solid var(--ravi-border);
}

.ravi-content input:focus {
    border-color: var(--ravi-primary);
    box-shadow: 0 0 0 2px rgba(37,99,235,0.15);
}

/*.ravi-content button,
.ravi-content .button {
    background: linear-gradient(135deg, var(--ravi-primary-light), var(--ravi-primary));
    color: #fff;
    border: none;
    /*padding: 4px 10px;
    border-radius: 10px;
}

.ravi-content button:hover {
    background: var(--ravi-dark-light);
    color: #fff;

}*/
.ravi-sidebar a,
.ravi-dashboard a,
.ravi-content a {
    text-decoration: none !important;
}
.ravi-account-layout ul,
.ravi-account-layout ol {
    list-style: none !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
}
.ravi-account-layout li::marker {
    content: "" !important;
}
.woocommerce form .form-row label, .woocommerce-page form .form-row label {
	    display: block;
    	color: #fff; !important;
}
legend {
	color: #000; !important;
}

.ravi-loader {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 415px;
}

.ravi-spinner {
    width: 40px;
    height: 40px;
    border: 4px solid #e2e8f0;
    border-top: 4px solid #2563eb;
    border-radius: 50%;
    animation: ravi-spin 0.8s linear infinite;
}

@keyframes ravi-spin {
    to {
        transform: rotate(360deg);
    }
}

.ravi-address-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 25px;
    height: 400px; 
}

.ravi-address-box {
    background: #ffffff;
    padding: 20px;
    border-radius: 14px;
    border: 1px solid #e2e8f0;
    box-shadow: 0 5px 20px rgba(0,0,0,0.05);
    max-height: 100%;
    overflow-y: auto;
}

.ravi-address-box::-webkit-scrollbar {
    width: 6px;
}
.ravi-address-box::-webkit-scrollbar-thumb {
    background: rgba(0,0,0,0.15);
}

.ravi-address-box::-webkit-scrollbar {
    display: none; 
}

/*.ravi-address-box .form-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.ravi-address-box .form-row label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    cursor: pointer;
}*/

.ravi-address-box .form-row input[type="radio"] {
    order: 2;
    margin-left: 10px;
}

.ravi-address-box .form-row label {
    gap: 10px;
}

.ravi-address-box h3 {
    margin-bottom: 15px;
    font-size: 16px;
}

.ravi-address-box .form-row {
    margin-bottom: 10px !important;
}

.ravi-address-box input,
.ravi-address-box select {
    padding: 10px !important;
    font-size: 13px !important;
}

.ravi-address-box .form-row-first,
.ravi-address-box .form-row-last {
    width: 48%;
    float: left;
}

.ravi-address-box .form-row-last {
    float: right;
}

.ravi-address-box .form-row-wide {
    clear: both;
}
.woocommerce form .form-row label, .woocommerce-page form .form-row label {
    display: block;
     color: #000; !important;
}

/*.ravi-reorder-btn {
    background: linear-gradient(135deg, var(--ravi-primary-light), var(--ravi-primary));
    color: #fff;
    border: none;
    padding: 4px 10px;
    border-radius: 10px;
    cursor: pointer;
}
*/
.ravi-btn-loader {
    width: 16px;
    height: 16px;
    border: 2px solid #fff;
    border-top: 2px solid transparent;
    border-radius: 50%;
    display: inline-block;
    animation: ravi-spin 0.6s linear infinite;
}

@keyframes ravi-spin {
    to { transform: rotate(360deg); }
}

/*.ravi-track-btn {
    background: linear-gradient(135deg, var(--ravi-primary-light), var(--ravi-primary));
    color: #fff;
    border: none;
    padding: 4px 10px;
    /*border-radius: 10px;
}

.ravi-track-btn:hover {

    background: var(--ravi-dark-light);

    color: #fff;

}*/

.woocommerce-js button.button {
    background: #f05455 ;
}

.ravi-btn,
.ravi-track-btn,
.ravi-reorder-btn,
.ravi-content button {
	display: inline-block;
	min-width: 120px; 
	text-align: center;
	padding: 10px 16px;
	border-radius: 12px;
	border: none;
	cursor: pointer;
	background: linear-gradient(135deg, var(--ravi-primary-light), var(--ravi-primary)) !important;
	color: #fff;
	font-weight: 500;
	text-decoration: none;

}

.ravi-btn:hover,
.ravi-track-btn:hover,
.ravi-reorder-btn:hover,
.ravi-content button:hover {
    background: var(--ravi-dark-light) !important;
    color: #fff !important;
}

.ravi-disabled {
    background: #495057 !important;
    cursor: not-allowed;
    position: relative;
    opacity: 0.7;
    z-index: 1;
}

.ravi-disabled::after {
    content: attr(data-tooltip);
    position: absolute;
    top: 90%; 
    left: 50%;
    transform: translateX(-50%);
    
    background: #333;
    color: #fff;
    padding: 6px 10px;
    border-radius: 6px;
    font-size: 12px;
    white-space: nowrap;

    opacity: 0;
    pointer-events: none;
    transition: 0.2s ease;

    z-index: 9999;
}

.ravi-disabled::before {
    content: '';
    position: absolute;
    top: 110%;
    left: 50%;
    transform: translateX(-50%);
    border-width: 5px;
    border-style: solid;
    border-color: transparent transparent #333 transparent;
	opacity: 0;
    transition: 0.2s ease;
	z-index: 9999;
}

.ravi-disabled:hover::after,
.ravi-disabled:hover::before {
    opacity: 1;
}

.ravi-table td {
	text-align: center;
	vertical-align: middle;
}

.ravi-track-na {
    color: #999;
}

.ravi-orders-scroll {
    max-height: 500px; 
    overflow-y: auto;
	overflow-x: visible;
    border: 1px solid #eee;
}

.ravi-orders-scroll table thead th {
    position: sticky;
    top: 0;
    background: #fff;
    z-index: 2;
}

.ravi-orders-scroll::-webkit-scrollbar {
    width: 0px;
}
.ravi-orders-scroll::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 10px;
}

.ravi-stat-download {
    display: none;
}

body.ravi-modal-open {
    overflow: hidden;
    height: 100vh;
}
.ravi-view-order {

    margin-left: 8px;
	cursor: pointer;
	color: var(--ravi-primary);
}

.ravi-view-order:hover {
color: var(--ravi-dark);
}
.ravi-modal {
	display: none;
	position: fixed;
	z-index: 99999;
	inset: 0;
	background: rgba(0,0,0,0.6);
	backdrop-filter: blur(4px);
}

.ravi-modal-content {
	background: #fff;
	width: 95%;
	max-width: 700px;
	height: 90vh; 
	margin: 3vh auto;
	border-radius: 16px;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.ravi-modal-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
    padding: 18px 20px;
	border-bottom: 1px solid #eee;
	background: #fff;
	position: sticky;
	top: 0;
	z-index: 2;
}
.ravi-modal-header h3 {

    margin: 0;
	font-size: 20px;
}

.ravi-close {
	font-size: 22px;
	cursor: pointer;
}

.ravi-modal-body {
	padding: 20px;	
	overflow-y: auto;
	flex: 1;
}

.ravi-modal-body::-webkit-scrollbar {
	width: 6px;
}

.ravi-modal-body::-webkit-scrollbar-thumb {
	background: #ccc;
	border-radius: 10px;
}

.ravi-order-section {
	margin-bottom: 20px;
}

.ravi-order-section h4 {
	margin-bottom: 8px;
	font-size: 16px;
	color: var(--ravi-primary);
}

.ravi-order-items li {
	padding: 6px 0;
	border-bottom: 1px dashed #eee;
	font-size: 14px;
}
.ravi-address-box-modal {
	background: #f9fafb;
	padding: 12px;
	border-radius: 10px;
	font-size: 14px;
	line-height: 1.6;

}

.ravi-modal-content {
    max-width: 900px;
    width: 95%;
    border-radius: 16px;
    overflow: hidden;
    background: #fff;
}

.ravi-modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 18px 24px;
    border-bottom: 1px solid #eee;
}

.ravi-modal-header h3 {
    font-size: 20px;
    font-weight: 600;
}

.ravi-modal-body {
    padding: 24px;
    max-height: 70vh;
    overflow-y: auto;
}

.ravi-woo-modal table.shop_table {
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid #eee;
}

.ravi-woo-modal table th {
    background: #f8f9fb;
    font-weight: 600;
    font-size: 14px;
}

.ravi-woo-modal table td {
    font-size: 14px;
}

.ravi-woo-modal td.product-name a {
    color: #1e73be;
    font-weight: 500;
}

.ravi-woo-modal tfoot tr:last-child td {
    font-weight: 700;
    font-size: 16px;
}

.ravi-order-status {
    background: #f1f5ff;
    color: #3b5bdb;
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 12px;
}
.ravi-status-badge {
    margin-left: 10px;
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 12px;
    background: #eef2ff;
    color: #4338ca;
    font-weight: 500;
}
.ravi-order-actions {
    display: flex;
    gap: 10px;
    margin-top: 20px;
}

.ravi-btn {
    padding: 8px 14px;
    border-radius: 6px;
    background: #1e73be;
    color: #fff;
    font-size: 13px;
    text-decoration: none;
    border: none;
    cursor: pointer;
}

.ravi-btn:hover {
    opacity: 0.9;
}

.ravi-btn.outline {
    background: transparent;
    border: 1px solid #1e73be;
    color: #1e73be;
}

.ravi-btn.disabled {
    background: #ccc;
    cursor: not-allowed;
}
p.order-again {
    display: none !important;
}
p.view_invoice {
    display: none !important;
}
a.woocommerce-button.button.invoice.order-actions-button {
    background: linear-gradient(135deg, var(--ravi-primary-light), var(--ravi-primary)) !important;
}
section.woocommerce-columns.woocommerce-columns--2.woocommerce-columns--addresses.col2-set.addresses {
    display: none !important;
}
section.woocommerce-customer-details {
    display: none !important;
}

.woocommerce-table__line-item .wc-item-meta li {
    margin-bottom: 4px;
}
.woocommerce-table tfoot tr:last-child td {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.woocommerce-table tfoot tr:last-child .button {
    min-width: 150px;
    text-align: center;
}
.ravi-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
    margin-top: 10px;
}
.ravi-page-btn {
    padding: 8px 14px;
    border-radius: 8px;
    background: var(--ravi-primary);
    color: #fff;
    text-decoration: none;
    font-size: 13px;
}
.ravi-page-btn:hover {
    background: var(--ravi-dark-light);
	color:#fff
}

.ravi-page-current {
    font-size: 13px;
    color: #555;
}

.ravi-bulk-main-wrapper{
    display:flex;
    gap:32px;
    align-items:flex-start;
}

.ravi-bulk-left{
    flex:1;
    min-width:0;
}

.ravi-bulk-header{
    margin-bottom:18px;
}

.ravi-bulk-header h2{
    font-size:42px;
    line-height:1.1;
    font-weight:800;
    margin:0;
    color:#111827;
    letter-spacing:-1px;
}

.ravi-bulk-table-wrap{
    background:#fff;
    border-radius:20px;
    overflow:hidden;
    border:1px solid #e5e7eb;
    box-shadow:
        0 10px 30px rgba(15,23,42,.04),
        0 2px 8px rgba(15,23,42,.03);
}

.ravi-bulk-table{
    width:100%;
    border-collapse:separate;
    border-spacing:0;
}

.ravi-bulk-table thead th{
    background:#f8fafc;
    color:#475569;
    font-size:13px;
    font-weight:700;
    padding:18px 16px;
    border-bottom:1px solid #e5e7eb;
    text-transform:uppercase;
    letter-spacing:.03em;
    white-space:nowrap;
}

.ravi-bulk-table tbody td{
    padding:18px 16px;
    border-bottom:1px solid #f1f5f9;
    vertical-align:middle;
    font-size:12px;
    color:#1e293b;
    background:#fff;
}

.ravi-bulk-table tbody tr:hover td{
    background:#f8fbff;
}

.ravi-bulk-table tbody tr:last-child td{
    border-bottom:none;
}

td.ravi-bulk-product-name{
   min-width: 150px;
    max-width: 160px;
    font-size: 12px !important;
}

td.ravi-bulk-product-name strong{
    display:block;
    font-size:12px;
    line-height:1.5;
    font-weight:500;
    color:#111827;
}

td.ravi-bulk-sku{
    width:120px;
    text-align:center;
    font-size:13px;
    color:#64748b;
    font-weight:600;
}

td.ravi-bulk-unit-size-name{
    width:100px;
    text-align:center;
    font-weight:600;
    color:#334155;
}

td.ravi-stock{
    width:140px;
    text-align:center;
}

.ravi-stock.in-stock{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:7px 12px;
    border-radius:999px;
    background:#dcfce7;
    color:#166534;
    font-size:12px;
    font-weight:700;
}

.ravi-stock.out-stock{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:7px 12px;
    border-radius:999px;
    background:#fee2e2;
    color:#991b1b;
    font-size:12px;
    font-weight:700;
}

.ravi-msrp{
    text-align:center;
    font-weight:700;
    color:#111827;
    white-space:nowrap;
}

.ravi-tier-price{
    text-align:center;
    font-weight:800;
    color:#2563eb;
    white-space:nowrap;
}

.ravi-bulk-qty{
    width:70px !important;
    height:48px;
    text-align:center;
    border:1px solid #cbd5e1 !important;
    border-radius:12px !important;
    font-size:12px !important;
    font-weight:700;
    background:#fff;
    padding:0 !important;
    margin:auto;
    display:block;
    transition:.2s ease;
}

.ravi-bulk-qty:focus{
    border-color:#2563eb !important;
    box-shadow:0 0 0 4px rgba(37,99,235,.12);
    outline:none;
}

.ravi-coa{
    text-align:center;
}

.ravi-coa-btn{
    width:54px;
    height:54px;
    border:none;
    border-radius:14px;
    background:linear-gradient(135deg,#3b82f6,#2563eb);
    color:#fff;
    font-size:18px;
    cursor:pointer;
    transition:.25s ease;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:auto;
    box-shadow:0 8px 20px rgba(37,99,235,.25);
}

.ravi-coa-btn:hover{
    transform:translateY(-2px);
    box-shadow:0 14px 24px rgba(37,99,235,.35);
}

.ravi-bulk-right{
    width:250px;
    position:sticky;
    top:20px;
}

.ravi-bulk-summary{
    background:#fff;
    border-radius:22px;
    overflow:hidden;
    border:1px solid #e5e7eb;
    box-shadow:
        0 10px 30px rgba(15,23,42,.04),
        0 2px 8px rgba(15,23,42,.03);
    margin-bottom:22px;
}

.ravi-summary-title{
    background:#f8fafc;
    padding:22px;
    font-size:18px;
    font-weight:900;
    letter-spacing:.02em;
    color:#111827;
    border-bottom:1px solid #e5e7eb;
}

.ravi-summary-body{
    padding:24px;
}

.ravi-summary-line{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:16px;
    font-size:15px;
    color:#334155;
}

.ravi-summary-line strong{
    color:#111827;
    font-weight:800;
}

.ravi-discount-line strong{
    color:#16a34a;
}

.ravi-summary-divider{
    height:1px;
    background:#e5e7eb;
    margin:20px 0;
}

.ravi-final-total{
    font-size:22px;
    font-weight:900;
    margin-bottom:0;
}

.ravi-final-total strong{
    font-size:28px;
    color:#111827;
}

.ravi-bulk-templates{
    background:#fff;
    border-radius:22px;
    overflow:hidden;
    border:1px solid #e5e7eb;
    box-shadow:
        0 10px 30px rgba(15,23,42,.04),
        0 2px 8px rgba(15,23,42,.03);
}

.ravi-template-header{
    background:#0f2f63;
    color:#fff;
    padding:20px 22px;
    font-size:16px;
    font-weight:800;
    letter-spacing:.02em;
}

.ravi-template-list{
    padding:18px;
}

.ravi-template-card{
    display:flex;
    align-items:center;
    justify-content:space-between;
    border:1px solid #e5e7eb;
    border-radius:16px;
    padding:18px;
    margin-bottom:14px;
    transition:.25s ease;
    cursor:pointer;
    background:#fff;
}

.ravi-template-card:hover{
    transform:translateY(-2px);
    border-color:#2563eb;
    box-shadow:0 10px 20px rgba(37,99,235,.08);
}

.ravi-template-content strong{
    display:block;
    font-size:18px;
    font-weight:800;
    color:#111827;
    margin-bottom:4px;
}

.ravi-template-content span{
    font-size:14px;
    color:#64748b;
}

.ravi-template-arrow{
    color:#0f172a;
    font-size:20px;
}

.ravi-bulk-checkout-btn{
    width:calc(100% - 36px);
    margin:0 18px 18px;
    height:58px;
    border:none;
    border-radius:16px;
    background: linear-gradient(135deg, var(--ravi-primary-light), var(--ravi-primary)) !important;
    color:#fff;
    font-size:11px;
    font-weight:900;
    letter-spacing:.02em;
    cursor:pointer;
    transition:.25s ease;
    box-shadow:0 10px 25px rgba(34,197,94,.25);
}

.ravi-bulk-checkout-btn:hover{
    transform:translateY(-2px);
    box-shadow:0 16px 28px rgba(34,197,94,.35);
}

.ravi-pagination{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:14px;
    margin-top:24px;
}

.ravi-page-btn{
    padding:12px 18px;
    border-radius:12px;
   background: linear-gradient(135deg, var(--ravi-primary-light), var(--ravi-primary)) !important;
    border:1px solid #dbe2ea;
    color:#fff;
    font-size:14px;
    font-weight:700;
    text-decoration:none;
    transition:.2s ease;
}

.ravi-page-btn:hover{
    background: var(--ravi-dark-light) !important;
    color: #fff !important;
}

.ravi-page-current{
    font-size:14px;
    font-weight:700;
    color:#64748b;
}

html,
body{
    overflow-x:hidden;
}

.ravi-account-layout{
    overflow:hidden;
}

.ravi-content{
    overflow:hidden;
}

.ravi-bulk-main-wrapper{
    width:100%;
    max-width:100%;
    overflow:hidden;
}

.ravi-bulk-left{
    width:calc(100% - 400px);
    min-width:0;
}

.ravi-bulk-table-wrap{
    width:100%;
    overflow-x:auto;
}

.ravi-bulk-table{
    width:100%;
    table-layout:auto;
}

td.ravi-bulk-sku {
    min-width: 86px;
    font-size: 12px !important;
}

td.ravi-bulk-unit-size-name{
    min-width:100px;
}

td.ravi-stock{
    min-width:140px;
}

td.ravi-msrp,
td.ravi-tier-price{
    min-width:75px;
    white-space:nowrap;
}

.ravi-bulk-table td:nth-child(7){
    min-width:110px;
}

.ravi-bulk-table td:nth-child(8){
    min-width:110px;
}

.ravi-bulk-product-name strong{
    word-break:break-word;
}

button.ravi-coa-btn {
    min-width: 70px !important;
}
.ravi-bulk-search-wrap{
    display:flex;
    align-items:center;
    gap:12px;
    margin-top:20px;
    margin-bottom:25px;
}

#ravi-bulk-search{
    flex:1;
    height:52px;
    border:1px solid #d8dee8;
    border-radius:14px;
    padding:0 18px;
    font-size:15px;
    font-weight:500;
    outline:none;
    transition:all .2s ease;
    background:#fff;
}

#ravi-bulk-search:focus{
    border-color:#163a7d;
    box-shadow:0 0 0 3px rgba(22,58,125,.08);
}

#ravi-bulk-search-btn{
    width:52px;
    height:52px;
    border:none;
    border-radius:14px;
    background:#163a7d;
    color:#fff;
    cursor:pointer;
    transition:all .2s ease;
    font-size:16px;
}

#ravi-bulk-search-btn:hover{
    transform:translateY(-1px);
    background:#0f2d63;
}
.ravi-no-results-row td{
    padding: 60px 20px;
}

.ravi-no-results{
    text-align: center;
}

.ravi-no-results i{
    font-size: 42px;
    color: #bdbdbd;
    margin-bottom: 15px;
}

.ravi-no-results h3{
    margin: 0 0 8px;
    font-size: 22px;
    font-weight: 600;
    color: #222;
}

.ravi-no-results p{
    margin: 0;
    color: #777;
    font-size: 14px;
}
.ravi-bulk-search-wrap{
    position: relative;
}

#ravi-bulk-search{
    padding-right: 75px;
}

#ravi-clear-search {
    position: absolute;
    right: 138px;
    top: 49%;
    transform: translateY(-50%);
    border: none;
    background: transparent;
    cursor: pointer;
    /* color: #999; */
    font-size: 14px;
    display: none;
    z-index: 2;
    min-width: 40px !important;
}
#ravi-clear-search:hover{
    color: #000;
}
button#ravi-save-template {
    width: calc(100% - 36px);
    margin: 0 18px 18px;
    height: 58px;
    /* border: none; */
    /* border-radius: 12px; */
    /* background: linear-gradient(135deg, var(--ravi-primary-light), var(--ravi-primary)) !important; */
    /* color: #fff; */
    font-size: 11px;
    /* font-weight: 900; */
    /* cursor: pointer; */
    transition: .25s ease;
    box-shadow: 0 10px 25px rgba(34, 197, 94, .25);
}

#ravi-save-template: hover{
   transform:translateY(-1px);
    background:#0f2d63;
}

#ravi-template-modal{

    position: fixed;
    inset: 0;

    display: none;
    align-items: center;
    justify-content: center;

    padding: 30px;

    background:
        rgba(15,23,42,.55);

    backdrop-filter: blur(10px);

    z-index: 999999;
}

.ravi-template-modal-box{

    position: relative;

    width: 100%;
    max-width: 520px;

    background: #ffffff;

    border-radius: 28px;

    padding: 38px;

    box-shadow:
        0 30px 80px rgba(0,0,0,.18),
        0 10px 30px rgba(0,0,0,.08);

    animation: raviModalPop .22s ease;

    overflow: hidden;
}

.ravi-template-modal-box::before{

    content: '';

    position: absolute;

    top: 0;
    left: 0;
    right: 0;
	display:none;
    height: 6px;

    background:
        linear-gradient(
            90deg,
            #3b82f6,
            #2563eb,
            #1d4ed8
        );
}

@keyframes raviModalPop{

    from{
        opacity: 0;
        transform:
            translateY(25px)
            scale(.96);
    }

    to{
        opacity: 1;
        transform:
            translateY(0)
            scale(1);
    }

}

.ravi-template-close{

    position: absolute;

    top: 18px;
    right: 18px;

    width: 42px;
    height: 42px;

    border: none;

    border-radius: 14px;

    background: #f3f4f6;

    color: #475569;

    cursor: pointer;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 15px;

    transition: .25s ease;
}

.ravi-template-close:hover{

    background: #e2e8f0;

    transform: rotate(90deg);

}

.ravi-template-modal-icon{

    width: 82px;
    height: 82px;

    border-radius: 24px;

    display: flex;
    align-items: center;
    justify-content: center;

    background:
        linear-gradient(
            135deg,
            #3b82f6,
            #2563eb
        );

    color: #fff;

    font-size: 30px;

    margin-bottom: 28px;

    box-shadow:
        0 15px 35px rgba(37,99,235,.25);
}

.ravi-template-modal-box h3{

    margin: 0 0 14px;

    font-size: 36px;

    line-height: 1.1;

    font-weight: 800;

    color: #0f172a;

    letter-spacing: -1px;
}

.ravi-template-modal-box p{

    margin: 0 0 28px;

    font-size: 16px;

    line-height: 1.7;

    color: #64748b;
}

#ravi-template-name{

    width: 100%;

    height: 64px;

    border-radius: 18px;

    border: 1px solid #dbe2ea;

    background: #f8fafc;

    padding: 0 20px;

    font-size: 16px;

    font-weight: 500;

    color: #0f172a;

    transition: .2s ease;

    margin-bottom: 20px;
}

#ravi-template-name:focus{

    outline: none;

    border-color: #2563eb;

    background: #fff;

    box-shadow:
        0 0 0 5px rgba(37,99,235,.10);
}

#ravi-confirm-save-template{

    width: 100%;

    height: 62px;

    border: none;

    border-radius: 18px;

    background:
        linear-gradient(
            135deg,
            #3b82f6,
            #2563eb
        );

    color: #fff;

    font-size: 15px;

    font-weight: 800;

    letter-spacing: .04em;

    cursor: pointer;

    transition: .25s ease;

    box-shadow:
        0 16px 35px rgba(37,99,235,.28);
}

#ravi-confirm-save-template:hover{

    transform: translateY(-2px);

    box-shadow:
        0 20px 40px rgba(37,99,235,.34);
}

#ravi-confirm-save-template:disabled{

    opacity: .7;

    cursor: not-allowed;
}
button.ravi-template-close {
    min-width: 50px !important;
}

.ravi-coa-active-col{
    text-align:center;
    vertical-align:middle;
}

.ravi-coa-active-toggle{
    position:relative;
    display:inline-block;
    width:52px;
    height:28px;
}

.ravi-coa-active-toggle input{
    position: absolute !important;
    opacity: 0 !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    pointer-events: none !important;
}
.ravi-coa-active-toggle{
    overflow:hidden;
}

.ravi-coa-slider{
    position:absolute;
    cursor:pointer;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background:#dcdcde;
    transition:.3s;
    border-radius:50px;
}

.ravi-coa-slider:before{
    position:absolute;
    content:"";
    height:22px;
    width:22px;
    left:3px;
    bottom:3px;
    background:white;
    transition:.3s;
    border-radius:50%;
    box-shadow:0 1px 3px rgba(0,0,0,.2);
}

.ravi-coa-active-toggle input:checked + .ravi-coa-slider{
    background:#2271b1;
}

.ravi-coa-active-toggle input:checked + .ravi-coa-slider:before{
    transform:translateX(24px);
}

.ravi-coa-status-text{
    margin-top:8px;
    font-size:13px;
    font-weight:500;
}

.ravi-coa-active-text{
    color:#008a20;
}

.ravi-coa-inactive-text{
    color:#777;
}
.ravi-coa-download {
    text-align: center;
}

.ravi-coa-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 6px 10px;
    border-radius: 6px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 600;
    transition: 0.2s ease;
    background: linear-gradient(135deg, var(--ravi-primary-light), var(--ravi-primary)) !important;
    color: #fff;
    min-width: 74px;
}

.ravi-coa-btn:hover {
    transform: translateY(-2px);
	box-shadow:
        0 20px 40px rgba(37,99,235,.34);
}

.ravi-coa-disabled {
    position: relative;
    background: #d1d5db;
    color: #6b7280;
    cursor: not-allowed;
    pointer-events: auto;
}

.ravi-coa-tooltip {
    position: absolute;
    bottom: 120%;
    left: 50%;
    transform: translateX(-50%);
    background: #111827;
    color: #fff;
    font-size: 12px;
    padding: 6px 10px;
    border-radius: 6px;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    transition: 0.15s ease;
    z-index: 999;
}

.ravi-coa-tooltip::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border-width: 5px;
    border-style: solid;
    border-color: #111827 transparent transparent transparent;
}

.ravi-coa-disabled:hover .ravi-coa-tooltip {
    opacity: 1;
    visibility: visible;
}
.ravi-coa-radio-col{
    text-align:center;
    vertical-align:middle;
    width:70px;
}

.ravi-coa-radio-col input[type="radio"]{
    transform:scale(1.2);
    cursor:pointer;
}

.ravi-coa-status-col{
    text-align:center;
    font-weight:600;
}

.ravi-coa-active-text{
    color:#008a20;
}

.ravi-coa-inactive-text{
    color:#777;
}

.ravi-unbranded-notice{

    position: relative;

    display: flex;

    align-items: center;

    gap: 18px;

    background: #fff8e5;

    border: 1px solid #ffd978;

    border-left: 5px solid #f59e0b;

    padding: 18px 20px;

    border-radius: 14px;

    margin-bottom: 25px;

    box-shadow: 0 4px 15px rgba(0,0,0,.06);

    animation: raviFadeIn .3s ease;
}

.ravi-unbranded-icon{

    font-size: 34px;

    line-height: 1;
}

.ravi-unbranded-text strong{

    display: block;

    font-size: 18px;

    margin-bottom: 5px;

    color: #111827;
}

.ravi-unbranded-text p{

    margin: 0;

    color: #4b5563;

    font-size: 14px;
}

.ravi-close-notice{

    margin-left: auto;

    background: transparent;

    border: none;

    font-size: 26px;

    cursor: pointer;

    color: #666;

    line-height: 1;
}

.ravi-close-notice:hover{

    color: #000;
}

@keyframes raviFadeIn{

    from{

        opacity: 0;
        transform: translateY(-10px);

    }

    to{

        opacity: 1;
        transform: translateY(0);

    }

}
#ravi-template-edit-modal{
    position:fixed;
    inset:0;
    z-index:999999;
    background:rgba(15,23,42,.65);
    display:none;
    justify-content:flex-end;
}

.ravi-template-editor{
    width:480px;
    height:100vh;
    background:#fff;
    display:flex;
    flex-direction:column;
    animation:raviSlideIn .25s ease;
    box-shadow:-10px 0 30px rgba(0,0,0,.1);
}

@keyframes raviSlideIn{

    from{
        transform:translateX(100%);
    }

    to{
        transform:translateX(0);
    }

}

.ravi-template-editor-header{
    padding:24px;
    border-bottom:1px solid #e5e7eb;
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.ravi-template-editor-header h3{
    margin:0;
    font-size:24px;
    font-weight:700;
}

.ravi-template-editor-body{
    flex:1;
    overflow:auto;
    padding:24px;
}

.ravi-template-editor-body label{
    display:block;
    margin-bottom:8px;
    font-weight:600;
}

.ravi-template-editor-body input{
    width:100%;
    height:48px;
    border:1px solid #d1d5db;
    border-radius:12px;
    padding:0 16px;
    margin-bottom:24px;
}

.ravi-template-editor-footer{
    padding:24px;
    border-top:1px solid #e5e7eb;
    display:flex;
    gap:12px;
}

.ravi-template-edit-close{
    width:40px;
    height:40px;
    border:none;
    border-radius:10px;
    background:#f3f4f6;
    cursor:pointer;
}

.ravi-delete-template-btn,
.ravi-save-template-btn{
    flex:1;
    height:50px;
}

#ravi-open-update-template-modal{

   width: calc(100% - 36px);
    margin: 0 18px 18px;
    height: 58px;
    border: none;
    border-radius: 16px;
    background: linear-gradient(135deg, var(--ravi-primary-light), var(--ravi-primary)) !important;
    color: #fff;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: .02em;
    cursor: pointer;
    transition: .25s ease;
    box-shadow: 0 10px 25px rgba(34, 197, 94, .25);
}

#ravi-open-update-template-modal:hover{

    transform: translateY(-2px);

    box-shadow:
        0 14px 32px rgba(0,87,255,.28);

}

#ravi-open-update-template-modal:active{

    transform: scale(.98);

}

#ravi-open-update-template-modal::before{

    content: '';

    position: absolute;

    top: 0;
    left: -120%;

    width: 120%;
    height: 100%;

    background: linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,.18),
        transparent
    );

    transition: all .6s ease;

}

#ravi-open-update-template-modal:hover::before{

    left: 120%;

}
#ravi-global-loader{

    position: fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(255,255,255,.85);
    z-index:999999;

    display:none;

    align-items:center;
    justify-content:center;

    backdrop-filter:blur(3px);

}

.ravi-global-loader-inner{

    text-align:center;

}

.ravi-loader-text{

    margin-top:15px;
    font-size:16px;
    font-weight:600;
    color:#111;

}

.ravi-spinner{

    width:50px;
    height:50px;

    border:4px solid #ddd;
    border-top:4px solid #3b82f6;

    border-radius:50%;

    animation:raviSpin .7s linear infinite;

    margin:auto;

}

@keyframes raviSpin{

    100%{
        transform:rotate(360deg);
    }

}
button.ravi-template-edit-btn {
    min-width: 45px !important;
}

.ravi-template-actions{
    display:flex;
    align-items:center;
    gap:12px;
}

.ravi-template-edit-btn{
    width:36px;
    height:36px;
    border:none;
    border-radius:8px;
    background:#f3f4f6;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:all .2s ease;
}

.ravi-template-edit-btn:hover{
    background:#e5e7eb;
}

.ravi-template-edit-btn i{
    font-size:14px;
}
/* =====================================================
   FINAL MOBILE OPTIMIZATION
===================================================== */

@media (max-width: 768px){

   

    .ravi-account-layout{
        display:flex;
        flex-direction:column;
        gap:14px;
        padding:0 10px;
        margin:10px auto 30px;
    }

 

    .ravi-sidebar{
        padding:14px;
        border-radius:18px;
        overflow:hidden;
    }

    .ravi-sidebar h3{
        font-size:24px;
        margin-bottom:14px;
        text-align:center;
    }

    .ravi-sidebar ul{
        display:flex;
        flex-wrap:nowrap;
        overflow-x:auto;
        gap:8px;
        padding-bottom:4px;
        scrollbar-width:none;
    }

    .ravi-sidebar ul::-webkit-scrollbar{
        display:none;
    }

    .ravi-sidebar li{
        flex:0 0 auto;
        margin:0;
    }

    .ravi-sidebar a{
        padding:10px 14px;
        font-size:13px;
        border-radius:12px;
        white-space:nowrap;
    }



    .ravi-content{
        padding:14px;
        border-radius:18px;
        overflow:hidden;
    }

    .ravi-content h2{
        font-size:24px;
        line-height:1.3;
    }

  

    .ravi-profile-card{
        flex-direction:column;
        align-items:flex-start;
        padding:18px;
        gap:14px;
    }

    .ravi-avatar img{
        width:70px;
        height:70px;
    }

    .ravi-btn-sm{
        width:100%;
        text-align:center;
        margin:0;
    }

   

    .ravi-stats{
        grid-template-columns:1fr 1fr;
        gap:10px;
    }

    .ravi-stat{
        padding:16px 10px;
        border-radius:14px;
    }

    .ravi-stat span{
        font-size:20px;
    }

   

    .ravi-dashboard-cards{
        grid-template-columns:1fr;
        gap:10px;
    }

    .ravi-card{
        padding:16px;
        border-radius:14px;
        font-size:14px;
    }

   

    .ravi-btn,
    .ravi-track-btn,
    .ravi-reorder-btn,
    .ravi-content button,
    .woocommerce button.button,
    .woocommerce a.button{
        width:100%;
        min-width:unset !important;
        padding:12px !important;
        font-size:13px !important;
        border-radius:12px !important;
    }

   

    .ravi-content table{
        display:block;
        width:100%;
        overflow-x:auto;
        white-space:nowrap;
        border-radius:14px;
    }

    .ravi-content th,
    .ravi-content td{
        padding:10px;
        font-size:12px;
    }

  

    .ravi-modal-content{
        width:100%;
        height:100vh;
        max-width:none;
        margin:0;
        border-radius:0;
    }

    .ravi-modal-body{
        padding:16px;
    }

    .ravi-modal-header{
        padding:16px;
    }

    .ravi-modal-header h3{
        font-size:18px;
    }

 

    .ravi-address-wrapper{
        grid-template-columns:1fr;
        height:auto;
        gap:14px;
    }

    .ravi-address-box{
        padding:16px;
        max-height:none;
    }

    .ravi-address-box .form-row-first,
    .ravi-address-box .form-row-last{
        width:100%;
        float:none;
    }

   

    .ravi-bulk-main-wrapper{
        flex-direction:column;
        gap:18px;
    }

    .ravi-bulk-left,
    .ravi-bulk-right{
        width:100%;
    }

    .ravi-bulk-right{
        position:relative;
        top:auto;
    }

    .ravi-bulk-header h2{
        font-size:28px;
    }

    .ravi-bulk-table-wrap{
        overflow-x:auto;
        border-radius:18px;
    }

    .ravi-bulk-table{
        min-width:950px;
    }

  

    .ravi-bulk-search-wrap{
        gap:8px;
    }

    #ravi-bulk-search{
        height:48px;
        font-size:14px;
        padding-right:60px;
    }

    #ravi-bulk-search-btn{
        width:48px;
        height:48px;
        border-radius:12px;
    }

    #ravi-clear-search{
        right:58px;
    }

    

    .ravi-template-modal-box{
        width:100%;
        padding:24px 18px;
        border-radius:22px;
    }

    .ravi-template-modal-box h3{
        font-size:26px;
    }

    .ravi-template-modal-icon{
        width:68px;
        height:68px;
        font-size:24px;
    }

    #ravi-template-name{
        height:56px;
        font-size:14px;
    }

    #ravi-confirm-save-template{
        height:56px;
        font-size:14px;
    }

   

    .ravi-pagination{
        flex-wrap:wrap;
        gap:10px;
    }

    .ravi-page-btn{
        padding:10px 14px;
        font-size:12px;
    }



    html,
    body,
    .site,
    .site-content{
        overflow-x:hidden !important;
    }


    .woocommerce-MyAccount-content{
        width:100%;
        overflow:hidden;
    }

    .woocommerce table.shop_table{
        display:block;
        overflow-x:auto;
    }

    .woocommerce table.shop_table td,
    .woocommerce table.shop_table th{
        font-size:12px;
    }

}