﻿@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700&family=Nunito:wght@400;600;700&display=swap');
:root { --primary:#1a1a2e; --accent:#c8902a; --accent2:#e8b84b; --light-bg:#fdf8f2; --card-shadow:0 4px 20px rgba(0,0,0,.08); --radius:12px; }
* { box-sizing:border-box; }
body { font-family:'Nunito',sans-serif; background:var(--light-bg); color:#333; margin:0; }
.admin-body { background:#f0f2f5; }
.rd-navbar { background:var(--primary) !important; padding:12px 0; box-shadow:0 2px 15px rgba(0,0,0,.3); }
.rd-navbar .navbar-brand { font-family:'Playfair Display',serif; font-size:1.5rem; color:var(--accent) !important; font-weight:700; }
.rd-navbar .nav-link { color:#ccc !important; font-weight:600; transition:color .2s; }
.rd-navbar .nav-link:hover { color:var(--accent) !important; }
.btn-gold { background:var(--accent); color:#fff !important; border:none; font-weight:700; border-radius:25px; padding:7px 20px; transition:background .2s; }
.btn-gold:hover { background:var(--accent2); }
.cart-icon-wrap { position:relative; font-size:1.2rem; }
.cart-count-badge { position:absolute; top:-8px; right:-10px; background:var(--accent); color:#fff; border-radius:50%; font-size:.6rem; font-weight:800; min-width:18px; height:18px; display:flex; align-items:center; justify-content:center; }
/*.hero-section { background:linear-gradient(135deg,#1a1a2e 0%,#16213e 60%,#0f3460 100%); color:#fff;*/ /*padding:90px 0 70px;*/ /*}*/
.hero-section h1 { font-family:'Playfair Display',serif; font-size:3rem; font-weight:700; line-height:1.2; }
.accent-text { color:var(--accent2); }
.hero-badge { background:rgba(200,144,42,.2); color:var(--accent2); padding:6px 16px; border-radius:20px; font-size:.85rem; font-weight:700; }
.hero-stat { font-size:1.8rem; font-weight:800; color:var(--accent2); }
.hero-stat-lbl { font-size:.8rem; opacity:.7; }
.btn-hero-primary { background:var(--accent); color:#fff !important; border:none; padding:13px 32px; border-radius:30px; font-size:1rem; font-weight:700; transition:all .25s; text-decoration:none; display:inline-block; }
.btn-hero-primary:hover { background:var(--accent2); transform:translateY(-2px); }
.btn-hero-outline { background:transparent; color:#fff !important; border:2px solid rgba(255,255,255,.4); padding:13px 32px; border-radius:30px; font-size:1rem; font-weight:700; transition:all .25s; text-decoration:none; display:inline-block; }
.btn-hero-outline:hover { border-color:var(--accent); color:var(--accent) !important; }
.section-title { font-family:'Playfair Display',serif; font-size:1.9rem; font-weight:700; color:var(--primary); }
.section-title::after { content:''; display:block; width:55px; height:3px; background:var(--accent); border-radius:2px; margin-top:6px; }
.product-card { background:#fff; border-radius:var(--radius); box-shadow:var(--card-shadow); overflow:hidden; transition:transform .25s,box-shadow .25s; height:100%; }
.product-card:hover { transform:translateY(-5px); box-shadow:0 12px 35px rgba(0,0,0,.12); }
.product-card .card-img-top { height:220px; object-fit:cover; width:100%; }
.product-card .card-body { padding:14px; }
.product-card .card-title { font-weight:700; font-size:.92rem; margin-bottom:2px; }
.category-badge { background:#f5ece0; color:var(--accent); font-size:.72rem; font-weight:700; padding:3px 10px; border-radius:20px; display:inline-block; }
.price { font-size:1.2rem; font-weight:800; color:var(--accent); }
.btn-add-cart { background:var(--primary); color:#fff; border:none; border-radius:8px; font-weight:700; font-size:.85rem; padding:8px 0; width:100%; cursor:pointer; transition:background .2s; }
.btn-add-cart:hover:not(:disabled) { background:var(--accent); }
.btn-add-cart:disabled { opacity:.6; cursor:not-allowed; }
.badge-featured { position:absolute; top:12px; left:12px; background:var(--accent); color:#fff; font-size:.7rem; font-weight:700; padding:4px 10px; border-radius:20px; z-index:1; }
.no-img-placeholder { width:100%; height:220px; background:linear-gradient(135deg,#f5ece0,#e8ddd0); display:flex; align-items:center; justify-content:center; font-size:3rem; color:var(--accent); }
.cat-card { background:var(--primary); color:#fff; border-radius:var(--radius); padding:28px 16px; text-align:center; cursor:pointer; transition:all .2s; text-decoration:none; display:block; }
.cat-card:hover { background:var(--accent); transform:translateY(-4px); color:#fff; }
.cat-icon { font-size:2.5rem; margin-bottom:8px; }
.why-card { padding:20px; background:#fff; border-radius:var(--radius); box-shadow:var(--card-shadow); height:100%; }
.detail-info-box { background:#f5ece0; border-radius:8px; padding:10px; }
.size-btn { min-width:50px; font-weight:700 !important; }
.cart-item-row { background:#fff; border-radius:10px; padding:14px; margin-bottom:12px; box-shadow:var(--card-shadow); }
.cart-item-img { width:80px; height:80px; object-fit:cover; border-radius:8px; flex-shrink:0; }
.filter-card { background:#fff; border-radius:var(--radius); padding:20px; box-shadow:var(--card-shadow); position:sticky; top:80px; }
.payment-option { border:2px solid #ddd; border-radius:10px; padding:16px; text-align:center; cursor:pointer; transition:all .2s; }
.payment-option.selected { border-color:var(--accent); background:#fdf8f2; }
.payment-option.disabled { opacity:.6; cursor:not-allowed; }
.admin-sidebar { background:var(--primary); min-height:100vh; width:240px; position:fixed; left:0; top:0; z-index:100; box-shadow:3px 0 15px rgba(0,0,0,.2); overflow-y:auto;overflow-x: hidden; }
.admin-sidebar .brand { font-family:'Playfair Display',serif; color:var(--accent); font-size:1.25rem; padding:20px 18px; border-bottom:1px solid rgba(255,255,255,.1); }
.admin-sidebar .nav-link { color:#bbb; font-weight:600; padding:11px 20px; display:flex; align-items:center; gap:10px; border-left:3px solid transparent; transition:all .2s; text-decoration:none; font-size:.92rem; }
.admin-sidebar .nav-link i { width:18px; text-align:center; }
.admin-sidebar .nav-link:hover,.admin-sidebar .nav-link.active { color:#fff; background:rgba(255,255,255,.07); border-left-color:var(--accent); }
.admin-content { margin-left:240px; padding:24px; min-height:100vh; }
.admin-topbar { background:#fff; border-radius:var(--radius); padding:14px 22px; margin-bottom:22px; box-shadow:var(--card-shadow); display:flex; align-items:center; justify-content:space-between; }
.stat-card { background:#fff; border-radius:var(--radius); padding:22px; box-shadow:var(--card-shadow); border-left:4px solid var(--accent); }
.stat-val { font-size:1.7rem; font-weight:800; color:var(--primary); }
.stat-lbl { color:#888; font-size:.82rem; margin-bottom:2px; }
.mini-stat { background:#fff; border-radius:10px; padding:14px; box-shadow:var(--card-shadow); text-align:center; }
.quick-action-card { color:#fff; border-radius:var(--radius); padding:20px; text-align:center; transition:transform .2s; }
.quick-action-card:hover { transform:translateY(-3px); }
.auth-card { background:#fff; border-radius:16px; padding:38px; max-width:440px; width:100%; box-shadow:0 20px 60px rgba(0,0,0,.3); }
.brand-text { font-family:'Playfair Display',serif; color:var(--accent); font-size:1.7rem; font-weight:700; }
.auth-tabs { display:flex; border-radius:10px; overflow:hidden; }
.tab-btn { flex:1; border:none; padding:10px; font-weight:700; background:#f0f0f0; color:#666; cursor:pointer; transition:all .2s; font-size:.95rem; }
.tab-btn.active { background:var(--primary); color:#fff; }
.btn-auth-primary { background:var(--primary); color:#fff; border:none; padding:12px; border-radius:8px; font-weight:700; width:100%; font-size:1rem; cursor:pointer; transition:background .2s; }
.btn-auth-primary:hover { background:var(--accent); }
.rd-footer { background:var(--primary); color:#aaa; padding:40px 0 20px; }
.rd-footer h5,.rd-footer h6 { color:var(--accent); font-family:'Playfair Display',serif; }
.rd-footer a { color:#aaa; text-decoration:none; }
.rd-footer a:hover { color:var(--accent2); }
.alert-floating { position:fixed; top:20px; right:20px; z-index:9999; padding:14px 20px; border-radius:10px; font-weight:600; box-shadow:0 4px 20px rgba(0,0,0,.15); max-width:340px; }
.alert-success-float { background:#d4edda; color:#155724; border-left:4px solid #28a745; }
.alert-error-float { background:#f8d7da; color:#721c24; border-left:4px solid #dc3545; }
#toast-container { position:fixed; top:20px; right:20px; z-index:9999; display:flex; flex-direction:column; gap:8px; }
.toast-msg { padding:12px 18px; border-radius:10px; font-weight:600; font-size:.9rem; box-shadow:0 4px 15px rgba(0,0,0,.15); max-width:320px; animation:slideIn .3s ease; }
.toast-success { background:#d4edda; color:#155724; border-left:4px solid #28a745; }
.toast-error { background:#f8d7da; color:#721c24; border-left:4px solid #dc3545; }
.toast-info { background:#d1ecf1; color:#0c5460; border-left:4px solid #17a2b8; }
/* Chrome, Edge, Safari */
.admin-sidebar::-webkit-scrollbar {
    width: 8px;
}

.admin-sidebar::-webkit-scrollbar-track {
    background: transparent;
}

.admin-sidebar::-webkit-scrollbar-thumb {
    background: #8a8a8a;
    border-radius: 10px;
}

    .admin-sidebar::-webkit-scrollbar-thumb:hover {
        background: #666;
    }
.hero-section {
    padding: 0!important;
    margin: 0!important;
    width: 100%!important;
    overflow: hidden;
}

.hero-banner {
    width: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}
.carousel-item {
    height: auto;
}

.carousel-inner {
    width: 100%;
}

.imglogo {
    height: 55px !important;
    width: auto !important;
    max-height: 55px !important;
    max-width: 180px !important;
    object-fit: contain;
    display: block;
}
.mrp-price {
    font-size: 13px;
    color: #777;
    display: block;
}

/*.price {
    font-size: 20px;
    font-weight: 700;
    color: #e53935;
}*/

.discount-badge {
    background: #198754;
    color: white;
    padding: 3px 8px;
    border-radius: 5px;
    font-size: 12px;
    margin-left: 8px;
    font-weight: 600;
}
.navbar-toggler{
    background-color:#ffff!important;
}
/*.category-img {
    width: 70px;
    height: 70px;
    object-fit: cover;
    border-radius: 50%;
}
.Imgcat {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 10px;
}*/
.cat-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
    gap: 14px;
}

.cat-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 20px 10px 16px;
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 14px;
    text-decoration: none;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    transition: border-color 0.25s, box-shadow 0.25s, transform 0.25s;
    animation: fadeSlideIn 0.4s ease both;
}

    .cat-card::before {
        content: '';
        position: absolute;
        inset: 0;
        background: linear-gradient(135deg, #f0f0ff 0%, #e8f5ff 100%);
        opacity: 0;
        transition: opacity 0.3s;
        z-index: 0;
    }

    .cat-card:hover::before {
        opacity: 1;
    }

    .cat-card:hover {
        border-color: #bbb;
        transform: translateY(-5px) scale(1.03);
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
    }

    .cat-card:nth-child(1) {
        animation-delay: 0.05s;
    }

    .cat-card:nth-child(2) {
        animation-delay: 0.10s;
    }

    .cat-card:nth-child(3) {
        animation-delay: 0.15s;
    }

    .cat-card:nth-child(4) {
        animation-delay: 0.20s;
    }

    .cat-card:nth-child(5) {
        animation-delay: 0.25s;
    }

    .cat-card:nth-child(6) {
        animation-delay: 0.30s;
    }

@keyframes fadeSlideIn {
    from {
        opacity: 0;
        transform: translateY(14px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.Imgcat {
    width: 90px;
    height: 90px;
    border-radius: 16px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f5f5f5;
    position: relative;
    z-index: 1;
    transition: transform 0.3s, border-radius 0.3s;
}

.cat-card:hover .Imgcat {
    transform: scale(1.12) rotate(-4deg);
    border-radius: 22px;
}

.category-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.cat-card h6 {
    font-size: 13px;
    font-weight: 500;
    color: #111;
    text-align: center;
    margin: 0;
    position: relative;
    z-index: 1;
    transition: color 0.2s;
}

.cat-card:hover h6 {
    color: #4a6cf7;
}
/*whatsapp*/
.whatsapp-float {
    position: fixed !important;
    right: 20px !important;
    bottom: 80px !important;
    width: 60px;
    height: 60px;
    background: #25D366;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 32px;
    text-decoration: none;
    z-index: 999999;
    box-shadow: 0 4px 12px rgba(0,0,0,0.3);
    animation: whatsapp-pulse 2s infinite;
    transition: transform 0.2s ease;
}

    .whatsapp-float:hover {
        transform: scale(1.1);
        color: #fff;
        text-decoration: none;
    }

@keyframes whatsapp-pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.6);
    }

    70% {
        box-shadow: 0 0 0 15px rgba(37, 211, 102, 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(37, 211, 102, 0);
    }
}

.mobile-bottom-nav {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #fff;
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding: 8px 0;
    box-shadow: 0 -2px 10px rgba(0,0,0,0.1);
    z-index: 99999;
}

.bottom-nav-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #666;
    text-decoration: none;
    font-size: 0.7rem;
    font-weight: 600;
    flex: 1;
    position: relative;
}

    .bottom-nav-item i {
        font-size: 1.3rem;
        margin-bottom: 3px;
        color: #666;
    }

    .bottom-nav-item:hover,
    .bottom-nav-item.active {
        color: var(--primary);
        text-decoration: none;
    }

        .bottom-nav-item.active i {
            color: var(--primary);
        }

.bottom-nav-badge {
    position: absolute;
    top: -4px;
    right: 22%;
    background: #dc3545;
    color: #fff;
    font-size: 0.65rem;
    font-weight: bold;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.btn.disabled {
    pointer-events: none;
    opacity: .5;
}
/* Mobile pe body ke bottom mein padding taaki content is bar ke peeche na chhup jaye */
@media (max-width: 991px) {
    body {
        padding-bottom: 60px;
    }
}
.reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.7s ease, transform 0.7s ease;
}
    .reveal.visible { opacity: 1; transform: none; }
@keyframes slideIn { from{transform:translateX(100%);opacity:0} to{transform:translateX(0);opacity:1} }
.form-control:focus,.form-select:focus { border-color:var(--accent); box-shadow:0 0 0 .2rem rgba(200,144,42,.2); }
@media (max-width:768px) {
    .admin-sidebar {
        width: 100%;
        min-height: auto;
        position: relative;
    }

    .admin-content {
        margin-left: 0;
        padding: 14px;
    }

    .hero-section h1 {
        font-size: 2rem;
    }

    .hero-section {
        padding: 60px 0 50px;
    }

    .discount-badge {
        margin-left: 55px;
    }
}
/* mobile */

/*@media(max-width:768px) {

    .hero-banner {
        height: 220px;
        object-fit: cover;
    }
}*/
@media (min-width: 1200px) {
    .hero-banner {
        height: 100%;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .hero-banner {
        height: 100%;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .hero-banner {
        height: 100%;
    }
}

@media (min-width: 576px) and (max-width: 767px) {
    .hero-banner {
        height: 100%;
    }
}

@media (max-width: 575px) {
    .hero-banner {
        height: 100%;
    }

    .carousel-control-prev,
    .carousel-control-next {
        width: 30px;
    }
}

@keyframes floatLogo {
    0% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-15px);
    }

    100% {
        transform: translateY(0px);
    }
}
@media (max-width: 991.98px) {
    .admin-sidebar {
        position: fixed;
        top: 0;
        left: 0;
        width: 280px;
        height: 100vh;
        overflow-y: auto;
        overflow-x: hidden;
        z-index: 1050;
        transform: translateX(-100%);
        transition: transform .3s ease;
    }
}
@media (min-width: 992px) {
    .admin-sidebar {
        position: fixed;
        top: 0;
        left: 0;
        width: 280px;
        height: 100vh;
        overflow-y: auto;
        overflow-x: hidden;
    }

    .admin-content {
        margin-left: 280px;
    }
}