.review-form{background:#fff;border-radius:12px;margin-bottom:2rem;padding:2rem;box-shadow:0 2px 12px #00000014}.review-form__title{color:#1a1a1a;margin-bottom:1.5rem;font-size:1.5rem;font-weight:700}.review-form__form{flex-direction:column;gap:1.25rem;display:flex}.review-form__field{flex-direction:column;gap:.5rem;display:flex}.review-form__field label{color:#333;font-size:.95rem;font-weight:600}.review-form__field input,.review-form__field select,.review-form__field textarea{border:2px solid #e0e0e0;border-radius:8px;padding:.75rem 1rem;font-family:inherit;font-size:1rem;transition:all .3s}.review-form__field input:focus,.review-form__field select:focus,.review-form__field textarea:focus{border-color:#6366f1;outline:none;box-shadow:0 0 0 3px #6366f11a}.review-form__field input:disabled,.review-form__field select:disabled,.review-form__field textarea:disabled{cursor:not-allowed;background:#f5f5f5}.review-form__field select{cursor:pointer;background:#fff}.review-form__field textarea{resize:vertical;min-height:120px}.review-form__message{border-radius:8px;padding:.75rem 1rem;font-size:.9rem;font-weight:500}.review-form__message.success{color:#155724;background:#d4edda;border:1px solid #c3e6cb}.review-form__message.error{color:#721c24;background:#f8d7da;border:1px solid #f5c6cb}.review-form__submit{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6366f1 0%,#8b5cf6 100%);border:none;border-radius:8px;padding:1rem 2rem;font-size:1rem;font-weight:600;transition:all .3s}.review-form__submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #6366f166}.review-form__submit:disabled{cursor:not-allowed;background:#ccc;transform:none}@media (max-width:768px){.review-form{padding:1.5rem}.review-form__title{font-size:1.25rem}}
.reviews-list{margin-top:3rem}.reviews-list__header{margin-bottom:2rem}.reviews-list__title{color:#1a1a1a;margin-bottom:1rem;font-size:1.75rem;font-weight:700}.reviews-list__stats{align-items:center;gap:1.5rem;display:flex}.reviews-list__rating{align-items:center;gap:.5rem;display:flex}.reviews-list__rating .rating-number{color:#fbbf24;font-size:2rem;font-weight:700}.reviews-list__rating .rating-stars{font-size:1.25rem}.reviews-list__count{color:#666;font-size:1rem}.reviews-list__items{flex-direction:column;gap:1.5rem;display:flex}.reviews-list__empty{text-align:center;color:#666;background:#f9fafb;border-radius:12px;padding:3rem 2rem;font-size:1rem}.review-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;transition:all .3s}.review-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.review-card__header{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.review-card__user{align-items:center;gap:1rem;display:flex}.review-card__avatar{color:#fff;background:linear-gradient(135deg,#6366f1 0%,#8b5cf6 100%);border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.25rem;font-weight:600;display:flex}.review-card__info{flex-direction:column;gap:.25rem;display:flex}.review-card__name{color:#1a1a1a;margin:0;font-size:1rem;font-weight:600}.review-card__date{color:#666;margin:0;font-size:.85rem}.review-card__rating{font-size:1.25rem;line-height:1}.review-card__comment{color:#333;margin:0;font-size:.95rem;line-height:1.6}@media (max-width:768px){.reviews-list__title{font-size:1.5rem}.reviews-list__stats{flex-direction:column;align-items:flex-start;gap:.5rem}.reviews-list__rating .rating-number{font-size:1.5rem}.review-card{padding:1.25rem}.review-card__header{flex-direction:column;gap:1rem}.review-card__avatar{width:40px;height:40px;font-size:1rem}}
.course-detail{background-color:#f8f9fa;min-height:100vh;padding:2rem 0}.course-detail__container{max-width:1200px;margin:0 auto;padding:0 1rem}.course-detail__header{background:#fff;border-radius:12px;margin-bottom:2rem;padding:2rem;box-shadow:0 2px 10px #0000001a}.course-detail__header .course-detail__ratings{margin-bottom:1rem}.course-detail__header .course-detail__ratings .rating-stars{gap:.25rem;display:flex}.course-detail__header .course-detail__ratings .rating-stars .star{color:#ddd}.course-detail__header .course-detail__ratings .rating-stars .star.filled{color:#ffc107}.course-detail__header .course-detail__title{color:#1a1a1a;margin:1rem 0;font-size:2.5rem;font-weight:700;line-height:1.3}@media (max-width:768px){.course-detail__header .course-detail__title{font-size:1.8rem}}.course-detail__header .course-detail__meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.course-detail__header .course-detail__meta .course-meta .category{color:#666;font-size:1rem}.course-detail__header .course-detail__meta .course-meta .category a{color:#007bff;font-weight:500;text-decoration:none}.course-detail__header .course-detail__meta .course-meta .category a:hover{text-decoration:underline}.course-detail__header .course-detail__meta .course-actions{gap:1rem;display:flex}.course-detail__content{grid-template-columns:1fr 400px;gap:2rem;display:grid}@media (max-width:1024px){.course-detail__content{grid-template-columns:1fr}}.course-detail__main{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 10px #0000001a}.course-detail__sidebar{flex-direction:column;gap:1.5rem;display:flex}.course-thumbnail{aspect-ratio:16/9;width:100%;overflow:hidden}.course-thumbnail img{object-fit:cover;width:100%;height:100%}.course-tabs .tabs-nav{background:#f8f9fa;border-bottom:1px solid #e9ecef;padding:0 2rem;display:flex}.course-tabs .tabs-nav .tab-link{color:#666;cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;padding:1rem 1.5rem;font-size:1rem;font-weight:500;transition:all .3s}.course-tabs .tabs-nav .tab-link:hover{color:#007bff;background:#007bff1a}.course-tabs .tabs-nav .tab-link.active{color:#007bff;background:#fff;border-bottom-color:#007bff}.course-tabs .tab-content{padding:2rem}.course-about{margin-bottom:3rem}.course-about h2{color:#1a1a1a;margin-bottom:1rem;font-size:1.75rem;font-weight:700}.course-about .course-description{color:#666;font-size:1rem;line-height:1.7}.course-about .course-description p{margin-bottom:1rem}.course-content h3{color:#1a1a1a;margin-bottom:1.5rem;font-size:1.5rem;font-weight:700}.accordion{border:1px solid #e9ecef;border-radius:8px;overflow:hidden}.accordion-item{border-bottom:1px solid #e9ecef}.accordion-item:last-child{border-bottom:none}.accordion-header{text-align:left;color:#1a1a1a;cursor:pointer;background:#f8f9fa;border:none;justify-content:space-between;align-items:center;width:100%;padding:1.25rem 1.5rem;font-size:1.125rem;font-weight:600;transition:background-color .3s;display:flex}.accordion-header:hover,.accordion-header.active{background:#e9ecef}.accordion-header .accordion-icon{font-size:1.25rem;font-weight:400;transition:transform .3s}.accordion-body{background:#fff;padding:1.5rem;animation:.3s slideDown}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.lesson-list{margin:0;padding:0;list-style:none}.lesson-list .lesson-item{border-bottom:1px solid #f1f3f4;align-items:center;gap:.75rem;padding:.75rem 0;display:flex}.lesson-list .lesson-item:last-child{border-bottom:none}.lesson-list .lesson-item .lesson-icon{color:#666;flex-shrink:0;font-size:1.25rem}.lesson-list .lesson-item .lesson-content{flex-direction:column;flex:1;gap:.25rem;display:flex}.lesson-list .lesson-item .lesson-content .lesson-title{color:#1a1a1a;margin:0;font-size:1rem;font-weight:500;line-height:1.4}.lesson-list .lesson-item .lesson-content .lesson-duration{color:#666;font-size:.875rem;font-weight:400}.lesson-list .lesson-item .lesson-lock{color:#999;flex-shrink:0;font-size:1rem}.reviews-section h3{color:#1a1a1a;margin-bottom:1.5rem;font-size:1.5rem;font-weight:700}.reviews-section .empty-state{text-align:center;padding:3rem 2rem}.reviews-section .empty-state img{opacity:.6;max-width:200px;margin-bottom:1rem}.reviews-section .empty-state p{color:#666;font-size:1.125rem}.sidebar-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 10px #0000001a}.sidebar-card .pricing-section{border-bottom:1px solid #e9ecef;padding:1.5rem}.sidebar-card .pricing-section .price-display{align-items:baseline;gap:.75rem;margin-bottom:1.5rem;display:flex}.sidebar-card .pricing-section .price-display .current-price{color:#1a1a1a;font-size:2rem;font-weight:700}.sidebar-card .pricing-section .price-display .original-price{color:#999;font-size:1rem}.sidebar-card .pricing-section .cart-message{text-align:center;border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem;font-weight:500}.sidebar-card .pricing-section .cart-message--success{color:#155724;background-color:#d4edda;border:1px solid #c3e6cb}.sidebar-card .pricing-section .cart-message--error{color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb}.sidebar-card .pricing-section .add-to-cart{justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;display:flex}.sidebar-card .pricing-section .add-to-cart .btn-icon{font-size:1.125rem}.sidebar-card .pricing-section .add-to-cart .btn-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:1s linear infinite spin}.sidebar-card .pricing-section .add-to-cart:disabled{opacity:.7;cursor:not-allowed}.sidebar-card .course-info{padding:1.5rem}.sidebar-card .course-info .info-list{margin:0;padding:0;list-style:none}.sidebar-card .course-info .info-list .info-item{color:#666;align-items:center;gap:.75rem;padding:.75rem 0;font-size:1rem;display:flex}.sidebar-card .course-info .info-list .info-item .info-icon{color:#1a1a1a;font-size:1.125rem}.sidebar-widget{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 10px #0000001a}.sidebar-widget h3{color:#1a1a1a;margin-bottom:1rem;font-size:1.25rem;font-weight:700}.sidebar-widget .widget-list{margin:0;padding:0;list-style:none}.sidebar-widget .widget-list li{color:#1a1a1a;align-items:flex-start;gap:.75rem;margin-bottom:.75rem;font-size:1rem;line-height:1.5;display:flex}.sidebar-widget .widget-list li:last-child{margin-bottom:0}.sidebar-widget .widget-list li .bullet-point{color:#999;flex-shrink:0;margin-top:.125rem;font-weight:700}.btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .3s;display:inline-flex}.btn--primary{color:#fff;background:#007bff}.btn--primary:hover{background:#0056b3;transform:translateY(-1px)}.btn--ghost{color:#666;background:0 0;border:1px solid #e9ecef}.btn--ghost:hover{color:#1a1a1a;background:#f8f9fa}.btn--block{justify-content:center;width:100%}.btn .icon{font-size:1rem}@media (max-width:768px){.course-detail{padding:1rem 0}.course-detail__container{padding:0 .5rem}.course-detail__header{padding:1.5rem}.course-detail__header .course-detail__meta{flex-direction:column;align-items:flex-start}.course-detail__header .course-detail__meta .course-actions{justify-content:center;width:100%}.course-detail__content{gap:1rem}.course-tabs .tabs-nav{padding:0 1rem}.course-tabs .tabs-nav .tab-link{padding:.75rem 1rem;font-size:.875rem}.course-tabs .tab-content{padding:1.5rem}.sidebar-card,.sidebar-widget{margin:0 .5rem}}.reviews-loading{text-align:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:8px;margin:1rem 0;padding:1.5rem;animation:1.5s ease-in-out infinite pulse}.reviews-loading p{color:#fff;margin:0;font-size:1rem;font-weight:600}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
