/* =========================================================
   WHMCS Six Template - Professional Blue Theme (Final Polished & Left Aligned)
   ========================================================= */

/* ==========================================
   1. Header & Top Navigation
   ========================================== */
section#header {
    background-color: #0b3c5d;
    border-bottom: 3px solid #328cc1;
}
section#header .logo-text {
    color: #ffffff;
}
ul.top-nav > li > a,
section#header ul.top-nav > li > a,
.top-bar ul.top-nav > li > a {
    color: #ffffff !important;
    font-weight: bold !important;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.5) !important;
}
ul.top-nav > li > a:hover,
section#header ul.top-nav > li > a:hover {
    color: #e3edf4 !important;
}
ul.top-nav > li > a .caret,
section#header ul.top-nav > li > a .caret {
    border-top-color: #ffffff !important;
    border-bottom-color: #ffffff !important;
}

/* ==========================================
   2. Main Navbar
   ========================================== */
#main-menu {
    background-color: #1d2731;
}
.navbar-main .navbar-nav > li > a {
    color: #ffffff;
    font-weight: 500;
}
.navbar-main .navbar-nav > li > a:hover,
.navbar-main .navbar-nav > li > a:focus,
.navbar-main .navbar-nav > li.active > a {
    background-color: #328cc1;
    color: #ffffff;
}

/* ==========================================
   3. General Elements & Footer
   ========================================== */
.btn-primary {
    background-color: #328cc1;
    border-color: #276d96;
    transition: all 0.3s ease;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
    background-color: #276d96;
    border-color: #1c506d;
}
a {
    color: #328cc1;
}
a:hover {
    color: #1c506d;
}
.panel-default > .panel-heading {
    background-color: #f4f8fb;
    color: #0b3c5d;
    border-bottom: 2px solid #e3edf4;
    border-radius: 8px 8px 0 0;
    font-weight: 600;
    padding: 15px 20px;
    font-size: 16px;
}
.panel-default {
    border-radius: 8px;
    border: none;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.panel-default:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 25px rgba(0,0,0,0.12);
}
section#footer {
    background-color: #0b3c5d;
    color: #d9e4eb;
    border-top: 4px solid #328cc1;
}
section#footer a {
    color: #87c3e8;
}
section#footer a:hover {
    color: #ffffff;
}

/* ==========================================
   4. Login Page
   ========================================== */
.logincontainer {
    max-width: 450px !important;
    margin: 60px auto;
    background: #ffffff;
    padding: 35px 30px;
    border-radius: 10px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
    border-top: 5px solid #328cc1;
}
.logincontainer .panel-default {
    border: none;
    box-shadow: none;
}
.logincontainer .panel-body {
    padding: 0;
}
.form-control {
    border-radius: 6px;
    border: 1px solid #ced4da;
    padding: 12px 15px;
    height: auto;
    box-shadow: none;
    transition: all 0.3s ease;
}
.form-control:focus {
    border-color: #328cc1;
    box-shadow: 0 0 8px rgba(50, 140, 193, 0.3);
}
.btn-primary.btn-lg, 
.logincontainer .btn-primary {
    padding: 12px 20px;
    font-size: 16px;
    font-weight: 600;
    border-radius: 6px;
    width: 100%;
}

/* ==========================================
   5. Homepage
   ========================================== */
section#home-banner {
    background: linear-gradient(135deg, #0b3c5d 0%, #172a3a 100%);
    padding: 70px 0;
    color: #ffffff;
    border-bottom: 3px solid #328cc1;
}
section#home-banner h2 {
    color: #ffffff;
    font-weight: 700;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.5);
}
section#home-banner p {
    color: #e3edf4;
    font-size: 18px;
}
.tiles .tile {
    border-radius: 8px;
    transition: all 0.3s ease;
}
.tiles .tile:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
    background-color: #f4f8fb;
}

/* ==========================================
   6. Registration Page
   ========================================== */
.client-registration,
form[name="register"] {
    background: #ffffff;
    padding: 35px 40px;
    border-radius: 10px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
    border-top: 5px solid #328cc1;
    margin-top: 30px;
    margin-bottom: 50px;
}
.client-registration .sub-heading,
form[name="register"] h3,
form[name="register"] .checkout-heading {
    color: #0b3c5d;
    font-size: 20px;
    font-weight: 600;
    border-bottom: 2px solid #e3edf4;
    padding-bottom: 10px;
    margin-top: 25px;
    margin-bottom: 20px;
}
form[name="register"] label.control-label {
    font-weight: 600;
    color: #1d2731;
    margin-bottom: 8px;
}
form[name="register"] .form-control {
    background-color: #fcfcfc;
}
#passwordStrengthTextLabel {
    font-size: 13px;
    font-weight: bold;
    margin-top: 5px;
    display: block;
}
.pwstrength_viewport .progress {
    height: 8px;
    border-radius: 4px;
    margin-top: 8px;
    background-color: #e9ecef;
    box-shadow: none;
}
.pwstrength_viewport .progress-bar {
    box-shadow: none;
    border-radius: 4px;
}
.capcha-container,
.form-group.accept-tos {
    background-color: #f4f8fb;
    padding: 15px 20px;
    border-radius: 6px;
    border: 1px solid #e3edf4;
    margin-top: 25px;
}
form[name="register"] .btn-primary {
    padding: 14px 30px;
    font-size: 18px;
    font-weight: bold;
    width: 100%;
    margin-top: 15px;
    text-transform: uppercase;
    letter-spacing: 1px;
}
form[name="register"] .btn-primary:hover {
    box-shadow: 0 6px 20px rgba(39, 109, 150, 0.4);
    transform: translateY(-2px);
}
.intl-tel-input .country-list {
    border-radius: 6px;
    border: 1px solid #328cc1;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

/* ==========================================
   7. Shopping Cart / Checkout (FINAL LEFT ALIGN)
   ========================================== */

#order-standard_cart .cart-steps {
    background: #ffffff;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
    margin-bottom: 30px;
    border: 1px solid #e3edf4;
}
#order-standard_cart .cart-steps .step {
    color: #0b3c5d;
    font-weight: 600;
    padding: 15px 10px;
}
#order-standard_cart .cart-steps .step.active {
    background-color: #328cc1;
    color: #ffffff;
    border-radius: 6px;
}

/* --- SIDEBAR FIXES --- */
#order-standard_cart .sidebar .panel-default {
    border-radius: 8px;
    border: none;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}

/* Sidebar Heading Fix */
#order-standard_cart .sidebar .panel-heading {
    background-color: #0b3c5d !important;
    border-radius: 8px 8px 0 0;
}
#order-standard_cart .sidebar .panel-heading .panel-title,
#order-standard_cart .sidebar .panel-heading h3,
#order-standard_cart .sidebar .panel-heading i,
#order-standard_cart .sidebar .panel-heading .pull-right {
    color: #ffffff !important;
}

/* Sidebar List Item Fix */
#order-standard_cart .sidebar .list-group-item {
    color: #333333 !important;
}
#order-standard_cart .sidebar .list-group-item i {
    color: #888888 !important;
}
#order-standard_cart .sidebar .list-group-item.active {
    background-color: #328cc1 !important;
    border-color: #328cc1 !important;
    color: #ffffff !important;
}
#order-standard_cart .sidebar .list-group-item.active i {
    color: #ffffff !important;
}

/* --- PRODUCT BOX --- */
#order-standard_cart .products .product {
    background: #ffffff;
    border-radius: 8px;
    border: 1px solid #e3edf4;
    box-shadow: 0 4px 15px rgba(0,0,0,0.04);
    margin-bottom: 30px;
    padding: 0 !important;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

#order-standard_cart .products .product:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 25px rgba(0,0,0,0.12);
    border-color: #328cc1;
}

/* --- FORCE LEFT ALIGN FOR HEADER --- */
#order-standard_cart .products .product header {
    background-color: #f4f8fb !important;
    border-bottom: 1px solid #e3edf4 !important;
    padding: 15px 25px !important;
    margin: 0;
}
#order-standard_cart .products .product header,
#order-standard_cart .products .product header * {
    color: #0b3c5d !important;
    font-size: 18px !important;
    font-weight: bold;
    text-align: left !important; /* লেখা বাম দিকে আনবে */
}

/* --- FORCE LEFT ALIGN FOR FEATURES/DESCRIPTION --- */
#order-standard_cart .products .product .product-desc {
    padding: 25px 25px !important;
}
/* ভেতরের সমস্ত ট্যাগ (ul, li, span, p) কে টার্গেট করে বামে নেওয়া হলো */
#order-standard_cart .products .product .product-desc,
#order-standard_cart .products .product .product-desc * {
    font-size: 14px;
    line-height: 1.8;
    color: #444;
    text-align: left !important; /* লেখা বাম দিকে আনবে */
}

/* লিস্ট আইটেমের জন্য একটু প্যাডিং (যাতে একদম বর্ডারে লেগে না যায়) */
#order-standard_cart .products .product .product-desc ul {
    padding-left: 15px !important;
    margin-bottom: 0 !important;
}


/* --- PRODUCT FOOTER (Price & Button Container) --- */
#order-standard_cart .products .product footer {
    padding: 25px 25px !important;
    background-color: #fcfcfc !important;
    border-top: 1px solid #e3edf4 !important;
    text-align: center !important;
    display: block !important; 
}

#order-standard_cart .products .product footer .product-pricing {
    float: none !important;
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    margin-bottom: 15px !important;
}

#order-standard_cart .products .product footer .price {
    color: #328cc1 !important;
    font-size: 26px !important;
    font-weight: bold !important;
}

/* FIXED BUTTON */
#order-standard_cart .products .product footer .btn {
    float: none !important;
    display: inline-block !important;
    margin: 0 auto !important;
    padding: 10px 15px !important;
    font-size: 14px !important;
    font-weight: bold !important;
    text-transform: uppercase;
    background-color: #328cc1 !important;
    border-color: #276d96 !important;
    color: #ffffff !important;
    border-radius: 6px;
    transition: all 0.3s ease;
    white-space: nowrap !important;
    overflow: visible !important;
    max-width: 100% !important;
}

#order-standard_cart .products .product footer .btn:hover {
    background-color: #276d96 !important;
    border-color: #1c506d !important;
}

/* Order Summary Sidebar */
#order-standard_cart #order-summary {
    background: #1d2731;
    color: #ffffff;
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.15);
    padding: 25px 20px;
    border-top: 5px solid #328cc1;
}
#order-standard_cart #order-summary h2 {
    color: #ffffff;
    border-bottom: 1px solid #328cc1;
    padding-bottom: 12px;
    margin-top: 0;
    font-size: 20px;
}
#order-standard_cart #order-summary .summary-container {
    color: #e3edf4;
}
#order-standard_cart #order-summary .total-due-today .amt {
    color: #87c3e8;
    font-size: 28px;
    font-weight: bold;
}
#order-standard_cart .btn-checkout,
#order-standard_cart .btn-order-now {
    background-color: #328cc1;
    border-color: #276d96;
    padding: 12px 25px;
    font-size: 16px;
    font-weight: bold;
    text-transform: uppercase;
    border-radius: 6px;
    transition: all 0.3s ease;
    width: 100%;
}
#order-standard_cart .btn-checkout:hover,
#order-standard_cart .btn-order-now:hover {
    background-color: #276d96;
    border-color: #1c506d;
    box-shadow: 0 6px 15px rgba(39, 109, 150, 0.4);
    transform: translateY(-2px);
}