 :root{--primary-color:#193c76;--secondary-color:#0077b6;--accent-color:#00b4d8;--success-color:#28a745;--danger-color:#dc3545;--warning-color:#ffc107;--dark-color:#212529;--light-color:#f8f9fa;--border-color:#dee2e6;--shadow:0 2px 8px rgba(0, 0, 0, 0.1);--shadow-lg:0 4px 16px rgba(0, 0, 0, 0.15);} .course-detail-page{min-height:100vh;background:linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);padding-top:80px;padding-bottom:60px;}  .course-header{padding:20px 0;background:white;margin-bottom:30px;} .breadcrumb{background:transparent;padding:0;margin:0;} .breadcrumb-item a{color:var(--primary-color);text-decoration:none;transition:color 0.3s;} .breadcrumb-item a:hover{color:var(--secondary-color);} .breadcrumb-item.active{color:#666;}  .course-main{background:white;border-radius:16px;padding:30px;box-shadow:var(--shadow);margin-bottom:30px;} .course-image-wrapper{position:relative;width:100%;padding-top:56.25%;overflow:hidden;border-radius:12px;background:var(--light-color);margin-bottom:30px;} .course-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;} .discount-badge-large{position:absolute;top:20px;right:20px;background:var(--danger-color);color:white;padding:12px 20px;border-radius:12px;font-size:20px;font-weight:700;z-index:2;box-shadow:0 4px 12px rgba(220, 53, 69, 0.4);} .course-title-section{margin-bottom:30px;} .course-category-badge{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg, var(--primary-color), var(--secondary-color));color:white;padding:6px 16px;border-radius:20px;font-size:14px;font-weight:600;margin-bottom:15px;} .course-title{font-size:32px;font-weight:700;color:var(--dark-color);margin-bottom:20px;line-height:1.3;} .course-meta{display:flex;flex-wrap:wrap;gap:24px;} .meta-item{display:flex;align-items:center;gap:8px;color:#666;font-size:14px;} .meta-item i{color:var(--primary-color);font-size:16px;} .course-description-section{margin-bottom:40px;padding-top:30px;border-top:2px solid var(--border-color);} .section-title{font-size:24px;font-weight:700;color:var(--dark-color);margin-bottom:20px;} .description-content{font-size:16px;line-height:1.8;color:#444;}  .course-modules-section{padding-top:30px;border-top:2px solid var(--border-color);} .modules-list{display:flex;flex-direction:column;gap:20px;} .module-item{background:var(--light-color);border-radius:12px;overflow:hidden;} .module-header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px;background:white;} .module-info{flex:1;} .module-title{font-size:18px;font-weight:600;color:var(--dark-color);margin:0 0 8px 0;display:flex;align-items:center;gap:10px;} .module-title i{color:var(--primary-color);} .module-description{font-size:14px;color:#666;margin:0;} .module-meta{display:flex;align-items:center;gap:10px;} .material-count{background:var(--primary-color);color:white;padding:6px 12px;border-radius:20px;font-size:13px;font-weight:600;} .materials-list{padding:0 20px 20px;} .material-item{display:flex;align-items:center;gap:12px;padding:12px;background:white;border-radius:8px;margin-bottom:8px;transition:all 0.3s ease;} .material-item:hover{background:#f8f9fa;transform:translateX(4px);} .material-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:var(--light-color);} .material-item.preview .material-icon{background:rgba(0, 119, 182, 0.1);color:var(--secondary-color);} .material-item.locked .material-icon{background:rgba(0, 0, 0, 0.05);color:#999;} .material-info{flex:1;display:flex;justify-content:space-between;align-items:center;} .material-title{font-size:14px;color:var(--dark-color);font-weight:500;} .material-duration{font-size:13px;color:#666;} .preview-badge{background:var(--success-color);color:white;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;display:flex;align-items:center;gap:4px;}  .pricing-sidebar{top:100px;} .pricing-card{background:white;border-radius:16px;padding:30px;box-shadow:var(--shadow-lg);border:2px solid var(--border-color);} .pricing-title{font-size:20px;font-weight:700;color:var(--dark-color);margin-bottom:20px;text-align:center;} .pricing-options{display:flex;flex-direction:column;gap:12px;margin-bottom:24px;} .pricing-option{border:2px solid var(--border-color);border-radius:12px;padding:16px;cursor:pointer;transition:all 0.3s ease;position:relative;} .pricing-option:hover{border-color:var(--primary-color);transform:translateY(-2px);box-shadow:0 4px 12px rgba(25, 60, 118, 0.15);} .pricing-option.selected{border-color:var(--primary-color);background:linear-gradient(135deg, rgba(25, 60, 118, 0.05), rgba(0, 119, 182, 0.05));box-shadow:0 4px 12px rgba(25, 60, 118, 0.2);} .pricing-option input[type="radio"]{display:none;} .pricing-option label{cursor:pointer;margin:0;} .option-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;} .option-info{display:flex;align-items:center;gap:10px;} .option-label{font-size:16px;font-weight:600;color:var(--dark-color);} .recommended-badge{background:linear-gradient(135deg, #f59e0b, #d97706);color:white;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:700;display:flex;align-items:center;gap:4px;} .option-check{width:24px;height:24px;border-radius:50%;border:2px solid var(--border-color);display:flex;align-items:center;justify-content:center;transition:all 0.3s ease;} .pricing-option.selected .option-check{background:var(--primary-color);border-color:var(--primary-color);} .option-check i{color:white;font-size:14px;display:none;} .pricing-option.selected .option-check i{display:block;} .option-pricing{display:flex;align-items:center;gap:10px;margin-bottom:8px;} .price-old{font-size:14px;color:#999;text-decoration:line-through;} .price-new{font-size:24px;font-weight:700;color:var(--primary-color);} .discount-info{font-size:13px;color:var(--success-color);font-weight:600;} .total-price-section{background:var(--light-color);padding:20px;border-radius:12px;margin-bottom:20px;} .total-label{font-size:14px;color:#666;margin-bottom:8px;} .total-price{font-size:32px;font-weight:700;color:var(--primary-color);} .action-buttons{display:flex;flex-direction:column;gap:12px;} .btn-buy-now, .btn-add-cart{width:100%;padding:14px 20px;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all 0.3s ease;display:flex;align-items:center;justify-content:center;gap:10px;} .btn-buy-now{background:linear-gradient(135deg, var(--primary-color), var(--secondary-color));color:white;} .btn-buy-now:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(25, 60, 118, 0.3);} .btn-add-cart{background:white;border:2px solid var(--primary-color);color:var(--primary-color);} .btn-add-cart:hover{background:var(--primary-color);color:white;} .features-list{margin-top:30px;padding-top:20px;border-top:1px solid var(--border-color);} .features-list h4{font-size:16px;font-weight:600;color:var(--dark-color);margin-bottom:15px;} .features-list ul{list-style:none;padding:0;margin:0;} .features-list li{display:flex;align-items:center;gap:10px;padding:8px 0;font-size:14px;color:#666;} .features-list li i{color:var(--success-color);font-size:16px;} .guarantee-badge{display:flex;align-items:center;gap:12px;background:linear-gradient(135deg, rgba(40, 167, 69, 0.1), rgba(32, 201, 151, 0.1));padding:16px;border-radius:12px;margin-top:20px;border:1px solid rgba(40, 167, 69, 0.2);} .guarantee-badge i{font-size:32px;color:var(--success-color);} .guarantee-badge strong{font-size:14px;color:var(--dark-color);display:block;margin-bottom:2px;} .guarantee-badge p{font-size:12px;color:#666;margin:0;} .no-pricing{text-align:center;padding:40px 20px;} .btn-back{display:inline-block;margin-top:20px;padding:12px 24px;background:var(--primary-color);color:white;text-decoration:none;border-radius:8px;font-weight:600;transition:all 0.3s ease;} .btn-back:hover{background:var(--secondary-color);transform:translateY(-2px);}  @media (max-width:991px){.pricing-sidebar{position:static !important;margin-top:30px;} .course-title{font-size:26px;}} @media (max-width:768px){.course-detail-page{padding-top:70px;} .course-main{padding:20px;} .course-title{font-size:22px;} .course-meta{gap:12px;} .meta-item{font-size:13px;} .pricing-card{padding:20px;} .total-price{font-size:28px;}} @media (max-width:576px){.course-title{font-size:20px;} .discount-badge-large{padding:8px 14px;font-size:16px;} .module-header{flex-direction:column;gap:12px;} .option-header{flex-direction:column;align-items:flex-start;gap:8px;} .price-new{font-size:20px;}}  .quantity-section{background:linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);padding:20px;border-radius:12px;margin-bottom:20px;border:2px solid var(--border-color);} .quantity-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--dark-color);margin-bottom:12px;} .quantity-label i{color:var(--primary-color);} .quantity-controls{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:12px;} .qty-btn{width:40px;height:40px;border:2px solid var(--primary-color);background:white;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.3s ease;font-size:16px;color:var(--primary-color);} .qty-btn:hover:not(:disabled){background:var(--primary-color);color:white;transform:scale(1.05);} .qty-btn:disabled{opacity:0.5;cursor:not-allowed;} .qty-display{display:flex;align-items:center;gap:8px;background:white;padding:10px 20px;border-radius:10px;border:2px solid var(--border-color);min-width:120px;justify-content:center;} .qty-display input{display:none;} .qty-display #quantityDisplay{font-size:24px;font-weight:700;color:var(--primary-color);min-width:30px;text-align:center;} .qty-display .qty-unit{font-size:16px;color:#666;font-weight:500;} .duration-info{display:flex;align-items:center;justify-content:center;gap:6px;font-size:13px;color:#666;padding:10px;background:white;border-radius:8px;} .duration-info i{color:var(--primary-color);} .duration-info strong{color:var(--primary-color);font-weight:700;}  .total-savings{text-align:center;font-size:14px;color:var(--success-color);font-weight:600;margin-top:8px;padding:8px;background:rgba(40, 167, 69, 0.1);border-radius:8px;}  .course-image{animation:fadeIn 0.5s ease-in;} @keyframes fadeIn{from{opacity:0;} to{opacity:1;}}  .course-image.loading{opacity:0.6;animation:pulse 1.5s ease-in-out infinite;} @keyframes pulse{0%, 100%{opacity:0.6;} 50%{opacity:0.3;}}  @media (max-width:768px){.quantity-section{padding:16px;} .quantity-label{font-size:13px;} .qty-btn{width:36px;height:36px;font-size:14px;} .qty-display{padding:8px 16px;min-width:100px;} .qty-display #quantityDisplay{font-size:20px;} .duration-info{font-size:12px;}} @media (max-width:576px){.quantity-controls{gap:8px;} .qty-btn{width:32px;height:32px;font-size:12px;} .qty-display{padding:6px 12px;min-width:80px;} .qty-display #quantityDisplay{font-size:18px;}}  .btn-buy-now:disabled{opacity:0.7;cursor:not-allowed;transform:none !important;} .btn-buy-now:disabled:hover{transform:none !important;}  .alert{animation:slideInRight 0.3s ease-out;} @keyframes slideInRight{from{transform:translateX(100%);opacity:0;} to{transform:translateX(0);opacity:1;}} .alert.fade-out{animation:slideOutRight 0.3s ease-out;} @keyframes slideOutRight{from{transform:translateX(0);opacity:1;} to{transform:translateX(100%);opacity:0;}}  .preview-badge-btn{background:linear-gradient(135deg, var(--success-color), #20c997);color:white;padding:6px 14px;border-radius:20px;font-size:13px;font-weight:600;display:flex;align-items:center;gap:6px;border:none;cursor:pointer;transition:all 0.3s ease;white-space:nowrap;} .preview-badge-btn:hover{transform:scale(1.05);box-shadow:0 4px 12px rgba(40, 167, 69, 0.3);} .preview-badge-btn i{font-size:14px;} .material-item.preview{background:rgba(40, 167, 69, 0.02);border-left:3px solid var(--success-color);} .material-item.preview:hover{background:rgba(40, 167, 69, 0.05);} .material-item.preview .material-icon{background:rgba(40, 167, 69, 0.1);color:var(--success-color);} @media (max-width:768px){.preview-badge-btn{padding:5px 12px;font-size:12px;} .preview-badge-btn i{font-size:13px;}} @media (max-width:576px){.material-item{flex-wrap:wrap;} .preview-badge-btn{margin-left:auto;margin-top:8px;}}