/* ================================================
KARTBHARO — ACCOUNT.CSS
1. UNIVERSAL — cart product name
2. MY ACCOUNT — sidebar / dashboard / orders
3. MY ACCOUNT — content width / centering
4. MY ACCOUNT — orders show-more
5. MY ACCOUNT — addresses page
6. MY ACCOUNT — forms (login/register/edit-account/edit-address)
7. CART — Gutenberg block grid
8. CHECKOUT — WooCommerce Blocks
================================================ */

/* ================================================
1. UNIVERSAL — cart product name
================================================ */
.wc-block-components-product-name,
.wc-block-components-product-name a{
color:#222 !important;
text-decoration:none !important;
font-size:16px !important;
font-weight:600 !important;
line-height:1.5 !important;
}
@media(max-width:767px){
.wc-block-components-product-name,
.wc-block-components-product-name a{
font-size:14px !important;
}
}

/* ================================================
2. MY ACCOUNT — sidebar / dashboard / orders
================================================ */
.woocommerce-account .woocommerce::before,
.woocommerce-account .woocommerce::after{
display:none !important;
}
.woocommerce-account .woocommerce{
display:grid;
grid-template-columns:280px 1fr;
gap:30px;
align-items:start;
}
.woocommerce-account .woocommerce-MyAccount-content{
min-width:0;
}
@media(max-width:767px){
.woocommerce-account .woocommerce{
grid-template-columns:1fr;
gap:20px;
padding:15px;
}
}

.kb-account-sidebar{
background:#fff;
border:1px solid #eee;
border-radius:20px;
padding:20px;
box-shadow:0 5px 20px rgba(0,0,0,.04);
}
.kb-account-title{
margin-bottom:20px;
padding-bottom:15px;
border-bottom:1px solid #eee;
}
.kb-account-title h4{
margin:0;
font-size:22px;
font-weight:700;
color:#2f1d17;
}
.kb-account-menu{
list-style:none;
padding:0;
margin:0;
}
.kb-account-menu li{
margin-bottom:10px;
}
.kb-account-menu li a{
display:flex;
align-items:center;
gap:12px;
padding:14px 16px;
border-radius:12px;
text-decoration:none;
color:#2f1d17;
font-weight:500;
transition:.3s;
}
.kb-account-menu li a:hover{
background:#f8f3ea;
}
.kb-account-menu li.is-active a{
background:#2f1d17;
color:#fff;
}
.kb-account-menu li i{
width:20px;
text-align:center;
font-size:16px;
}

.kb-account-dashboard{
padding:10px;
}
.kb-dashboard-header{
margin-bottom:30px;
}
.kb-dashboard-header h2{
font-size:32px;
font-weight:700;
color:#2f1d17;
margin-bottom:10px;
}
.kb-dashboard-header p{
margin:0;
color:#777;
}
.kb-stat-card{
background:#fff;
border:1px solid #eee;
border-radius:20px;
padding:30px;
text-align:center;
height:100%;
transition:.3s;
}
.kb-stat-card:hover{
transform:translateY(-4px);
box-shadow:0 10px 30px rgba(0,0,0,.06);
}
.kb-stat-card h3{
font-size:42px;
font-weight:700;
color:#2f1d17;
margin-bottom:10px;
}
.kb-stat-card span{
font-size:15px;
color:#777;
}

.kb-orders-page{
padding:10px;
}
.kb-section-title{
margin-bottom:25px;
}
.kb-section-title h2{
font-size:30px;
font-weight:700;
color:#2f1d17;
margin:0;
}
.kb-orders-table{
background:#fff;
border-radius:20px;
overflow:hidden;
width:100%;
}
.kb-orders-table thead th{
background:#2f1d17;
color:#fff;
border:none;
padding:16px;
font-size:14px;
}
.kb-orders-table td{
padding:16px;
vertical-align:middle;
}
.kb-order-status{
background:#f8f3ea;
padding:8px 12px;
border-radius:30px;
font-size:13px;
font-weight:600;
display:inline-block;
}
.kb-orders-table .btn{
border-radius:10px;
padding:8px 16px;
}

/* ================================================
3. MY ACCOUNT — content width / centering
================================================ */
.woocommerce-account .container.py-5{
max-width:1200px;
margin:0 auto;
padding-left:24px;
padding-right:24px;
box-sizing:border-box;
}
.woocommerce-EditAccountForm,
.woocommerce-form-login,
.woocommerce-form-register{
max-width:600px;
}
@media(max-width:767px){
.woocommerce-account .container.py-5{
padding-left:15px;
padding-right:15px;
}
}

/* ================================================
4. MY ACCOUNT — orders show-more
================================================ */
.kb-orders-table tbody tr:nth-child(n+6){
display:none;
}
.kb-orders-table.kb-show-all tbody tr:nth-child(n+6){
display:table-row;
}
.kb-show-more-btn{
display:block;
margin:20px auto 0;
background:#2f1d17;
color:#fff;
border:none;
padding:12px 30px;
border-radius:10px;
font-weight:600;
font-size:14px;
cursor:pointer;
transition:.3s;
}
.kb-show-more-btn:hover{
background:#4a2f24;
}
.kb-show-more-btn.kb-hidden{
display:none;
}

/* ================================================
5. MY ACCOUNT — addresses page
================================================ */
.woocommerce-account .col-1,
.woocommerce-account .col-2{
width:100% !important;
float:none !important;
}
.woocommerce-Addresses.addresses{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:20px;
}
.woocommerce-Address{
background:#fff;
border:1px solid #eee;
border-radius:20px;
padding:24px;
box-shadow:0 5px 20px rgba(0,0,0,.04);
}
.woocommerce-Address-title{
display:flex;
flex-wrap:wrap;
align-items:center;
justify-content:space-between;
gap:10px;
margin-bottom:16px;
padding-bottom:12px;
border-bottom:1px solid #f2f2f2;
}
.woocommerce-Address-title h2,
.woocommerce-Address-title h3{
margin:0;
font-size:18px;
font-weight:700;
color:#2f1d17;
flex:1 1 auto;
}
.woocommerce-Address-title a{
background:#2f1d17;
color:#fff !important;
text-decoration:none !important;
padding:6px 16px;
border-radius:10px;
font-size:13px;
font-weight:600;
flex-shrink:0;
}
.woocommerce-Address address{
font-style:normal;
color:#555;
line-height:1.8;
}

/* ================================================
6. MY ACCOUNT — forms (login/register/edit-account/edit-address)
================================================ */
.woocommerce-account .woocommerce-form,
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register{
background:#ffffff;
border:none !important;
border-radius:24px !important;
padding:22px !important;
box-shadow:0 10px 30px rgba(0,0,0,.08);
}
.woocommerce-account h2{
font-size:24px;
font-weight:700;
margin-bottom:20px;
color:#2f1d17;
}
.woocommerce-account label{
font-size:14px;
font-weight:600;
margin-bottom:8px;
display:inline-block;
}
.woocommerce-account input.input-text{
width:100% !important;
height:56px !important;
padding:0 18px !important;
font-size:15px !important;
border:2px solid #ececec !important;
border-radius:14px !important;
background:#fafafa !important;
box-sizing:border-box !important;
}
.woocommerce-account input:focus{
border-color:#fbd704 !important;
background:#fff !important;
box-shadow:none !important;
outline:none !important;
}
.woocommerce-account .woocommerce button,
.woocommerce-account .woocommerce .button{
height:52px;
border:none !important;
border-radius:14px !important;
background:linear-gradient(135deg,#fbd704,#ffd900) !important;
color:#000 !important;
font-weight:700 !important;
font-size:15px !important;
padding:0 24px !important;
}
.woocommerce-account .woocommerce-form__label{
display:flex;
align-items:center;
gap:8px;
}
.woocommerce-account .lost_password a{
color:#2f1d17;
font-weight:600;
text-decoration:none;
}
.password-input{
position:relative !important;
display:block !important;
width:100% !important;
}
.password-input .show-password-input{
position:absolute !important;
right:18px !important;
top:50% !important;
transform:translateY(-50%) !important;
width:auto !important;
height:auto !important;
background:none !important;
border:none !important;
padding:0 !important;
}

/* ---- forms — mobile-only layout tweaks ---- */
@media(max-width:767px){
.woocommerce-account .u-column1,
.woocommerce-account .u-column2{
width:100% !important;
margin-bottom:20px;
}
.woocommerce-account .u-columns{
display:flex;
flex-direction:column;
gap:20px;
}
.woocommerce-form-login .woocommerce-form-row:last-child{
display:flex !important;
align-items:center !important;
justify-content:space-between !important;
gap:15px;
flex-wrap:nowrap !important;
}
.woocommerce-form-login .woocommerce-form__label-for-checkbox{
display:flex !important;
align-items:center !important;
gap:8px !important;
margin:0 !important;
}
.woocommerce-form-login .woocommerce-form__label-for-checkbox input{
width:18px !important;
height:18px !important;
margin:0 !important;
}
.woocommerce-form-login button.button{
height:54px !important;
min-width:130px !important;
margin-left:auto !important;
}
}

/* ================================================
7. CART — Gutenberg block grid
================================================ */
.wc-block-cart__empty-cart__title{
font-size:26px;
font-weight:700;
color:#2f1d17;
}
.wc-block-grid.wp-block-product-new{
margin-top:20px;
}
.wp-block-product-new.wc-block-grid ul.wc-block-grid__products{
display:grid !important;
grid-template-columns:repeat(4,minmax(0,1fr)) !important;
gap:20px !important;
padding:0 !important;
margin:0 !important;
list-style:none !important;
align-items:stretch;
}
.wp-block-product-new.wc-block-grid ul.wc-block-grid__products li.wc-block-grid__product{
background:#fff;
border:1px solid #eee;
border-radius:18px;
overflow:hidden;
box-shadow:0 5px 18px rgba(0,0,0,.08);
position:relative;
flex:none !important;
width:100% !important;
max-width:100% !important;
min-width:0 !important;
margin:0 !important;
padding:0 !important;
display:flex !important;
flex-direction:column !important;
height:100%;
}
.wc-block-grid__product-image{
background:#f7f7f7;
padding:12px;
}
.wc-block-grid__product-image img{
width:100%;
height:auto;
display:block;
}
.wc-block-grid__product-title{
display:-webkit-box !important;
-webkit-line-clamp:2;
-webkit-box-orient:vertical;
overflow:hidden;
padding:0 12px;
margin-top:10px !important;
font-size:14px !important;
font-weight:600 !important;
color:#222 !important;
text-decoration:none !important;
line-height:1.4 !important;
min-height:40px;
}
.wc-block-grid__product-price{
padding:0 12px;
margin:8px 0 !important;
font-size:16px;
font-weight:700;
color:#111;
}
.wc-block-grid__product-onsale{
position:absolute;
top:12px;
right:12px;
background:#2f1d17 !important;
color:#fff !important;
border-radius:20px;
padding:4px 12px;
font-size:11px;
font-weight:700;
}
.wc-block-grid__product-add-to-cart{
padding:0 12px 14px;
margin-top:auto;
}
.wc-block-grid__product-add-to-cart .wp-block-button__link{
display:block;
width:100%;
background:#2f1d17 !important;
color:#fff !important;
border-radius:10px !important;
padding:10px !important;
font-size:13px !important;
font-weight:600 !important;
text-align:center;
box-sizing:border-box;
}
@media(max-width:767px){
.wp-block-product-new.wc-block-grid ul.wc-block-grid__products{
grid-template-columns:repeat(2,minmax(0,1fr)) !important;
gap:12px !important;
}
.wc-block-grid__product-title{
font-size:12px !important;
}
}

/* ================================================
8. CHECKOUT — WooCommerce Blocks
================================================ */
.wc-block-components-checkout-step__heading{
color:#2f1d17;
font-size:20px;
font-weight:700;
}
.wc-block-components-checkout-step__description{
color:#777;
font-size:14px;
}
.wc-block-components-text-input{
border:2px solid #ececec !important;
border-radius:14px !important;
background:#fafafa !important;
transition:border-color .25s ease, background .25s ease;
}
.wc-block-components-text-input:focus-within{
border-color:#fbd704 !important;
background:#fff !important;
}
.wc-block-components-text-input label{
color:#888;
transition:opacity .15s ease;
}
.wc-block-components-text-input.is-active label{
opacity:0;
}
.wc-block-components-radio-control__option{
border:2px solid #ececec !important;
border-radius:14px !important;
margin-bottom:10px !important;
transition:border-color .25s ease, background .25s ease;
}
.wc-block-components-radio-control__option--checked-option-highlighted{
border-color:#fbd704 !important;
background:#fffbe8 !important;
}
.wc-block-components-radio-control__input{
accent-color:#2f1d17;
}
.wc-block-components-radio-control-accordion-option{
border:2px solid #ececec !important;
border-radius:14px !important;
margin-bottom:10px !important;
overflow:hidden;
transition:border-color .25s ease, background .25s ease;
}
.wc-block-components-radio-control-accordion-option--checked-option-highlighted{
border-color:#fbd704 !important;
background:#fffbe8 !important;
}
.wc-block-components-radio-control-accordion-option .wc-block-components-radio-control__option{
border:none !important;
margin-bottom:0 !important;
}
.wp-block-woocommerce-checkout-order-summary-block{
background:#fff;
border:1px solid #eee;
border-radius:20px;
padding:24px !important;
box-shadow:0 5px 20px rgba(0,0,0,.05);
}
.wc-block-components-order-summary-item{
padding:14px 0 !important;
border-bottom:1px solid #f2f2f2;
}
.wc-block-components-order-summary-item__image img{
border-radius:12px;
}
.wc-block-components-order-summary-item__description .wc-block-components-product-name{
color:#222 !important;
font-weight:600 !important;
}
.wc-block-components-totals-wrapper{
border-top:1px solid #f2f2f2 !important;
padding-top:12px !important;
margin-top:12px !important;
}
.wc-block-components-formatted-money-amount{
color:#2f1d17;
font-weight:700;
}
.wc-block-components-checkout-coupon-form__toggle{
color:#2f1d17 !important;
font-weight:600 !important;
}
.wc-block-checkout__terms{
font-size:13px;
color:#777;
}
.wc-block-checkout__terms a{
color:#2f1d17;
font-weight:600;
}
.wc-block-components-button{
border-radius:14px !important;
font-weight:700 !important;
transition:transform .2s ease, box-shadow .2s ease;
}
.wc-block-components-checkout-place-order-button{
background:linear-gradient(135deg,#fbd704,#ffd900) !important;
color:#111 !important;
border:none !important;
height:54px !important;
font-size:16px !important;
box-shadow:0 8px 20px rgba(251,215,4,.35);
}
.wc-block-components-checkout-place-order-button:hover{
transform:translateY(-2px);
box-shadow:0 12px 25px rgba(251,215,4,.45);
}
@media(max-width:767px){
.wp-block-woocommerce-checkout-order-summary-block{
border-radius:16px;
padding:16px !important;
}
.wc-block-components-radio-control__option,
.wc-block-components-radio-control-accordion-option .wc-block-components-radio-control__option{
padding-left:44px !important;
}
}