html{scroll-behavior:smooth}.cnp-overlay{display:none;position:fixed;inset:0;background:#0000008c;z-index:9998;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;transition:opacity .28s ease}.cnp-overlay.cnp-visible{opacity:1}.cnp-card{position:fixed;z-index:2147483647;width:340px;background:var(--theme-bg-surface, #ffffff);border-radius:16px;overflow:hidden;box-shadow:0 24px 64px #00000047,0 4px 16px #00000024;pointer-events:auto;display:none;flex-direction:column}html.dark .cnp-card{background:var(--color-black-light, #27292E);box-shadow:0 24px 64px #0000008c,0 4px 16px #0000004d}@media(min-width:769px){.cnp-card{position:fixed;width:340px;transform-origin:center top;animation:cnp-pop-in .22s cubic-bezier(.34,1.56,.64,1) forwards}.cnp-card.cnp-closing{animation:cnp-pop-out .18s ease forwards}}.cnp-pop-in{animation:cnp-pop-in .22s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes cnp-pop-in{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@keyframes cnp-pop-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.88)}}.cnp-bottom{animation:cnp-slide-up .22s cubic-bezier(.34,1.56,.64,1) forwards}.cnp-top{animation:cnp-slide-down .22s cubic-bezier(.34,1.56,.64,1) forwards}.cnp-right{animation:cnp-slide-left .22s cubic-bezier(.34,1.56,.64,1) forwards}.cnp-left{animation:cnp-slide-right .22s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes cnp-slide-up{0%{opacity:0;transform:translateY(10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes cnp-slide-down{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes cnp-slide-left{0%{opacity:0;transform:translate(10px) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes cnp-slide-right{0%{opacity:0;transform:translate(-10px) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}@media(max-width:768px){.cnp-overlay{display:block}.cnp-overlay:not(.cnp-visible){display:none}.cnp-card{width:100%;max-width:480px;left:50%!important;top:auto!important;bottom:0!important;transform:translate(-50%) translateY(100%);border-radius:20px 20px 0 0;transition:transform .32s cubic-bezier(.32,.72,0,1);max-height:90dvh;overflow-y:auto}.cnp-card.cnp-sheet-open{transform:translate(-50%) translateY(0)}.cnp-card.cnp-sheet-closing{transform:translate(-50%) translateY(100%)}}.cnp-media{width:100%;aspect-ratio:16 / 9;position:relative;background:#000;flex-shrink:0}.cnp-media img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:opacity .3s}.cnp-media video,.cnp-media iframe{position:absolute;inset:0;width:100%;height:100%;border:none;-o-object-fit:cover;object-fit:cover}.cnp-media__play-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.cnp-media__play-icon svg{width:52px;height:52px;color:#ffffffe6;filter:drop-shadow(0 2px 8px rgba(0,0,0,.4))}.cnp-close{display:none;position:absolute;top:10px;right:10px;width:32px;height:32px;border-radius:50%;background:#00000080;border:none;color:#fff;cursor:pointer;align-items:center;justify-content:center;z-index:10;transition:background .2s;flex-shrink:0}.cnp-close:hover{background:#000000bf}@media(max-width:768px){.cnp-close{display:flex}}.cnp-body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:12px}.cnp-meta-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.cnp-price{font-family:var(--body-font, "Lato", sans-serif);font-size:18px;font-weight:800;color:var(--theme-text-primary, #1F2024)}html.dark .cnp-price{color:var(--color-white, #E7E7E7)}.cnp-level-badge{font-family:var(--body-font, "Lato", sans-serif);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:999px;background:var(--color-primary-100, #E5EBFF);color:var(--color-primary-600, #0C41FF)}html.dark .cnp-level-badge{background:#0c41ff33;color:var(--color-primary-300, #7BA3FF)}.cnp-title{font-family:var(--heading-font, "Merriweather", serif);font-size:16px;font-weight:700;color:var(--theme-text-primary, #1F2024);margin:0;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}html.dark .cnp-title{color:var(--color-white, #E7E7E7)}.cnp-author-row{display:flex;align-items:center;gap:8px}.cnp-author-avatar{width:26px;height:26px;border-radius:50%;-o-object-fit:cover;object-fit:cover;flex-shrink:0;background:var(--color-primary-100, #E5EBFF)}.cnp-author-avatar.hidden{display:none}.cnp-author-initial{display:inline-flex;width:26px;height:26px;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0;font-family:var(--heading-font, "Montserrat", sans-serif);font-size:12px;font-weight:700;color:var(--color-primary-600, #1A4DFF);background:var(--color-primary-100, #E5EBFF)}.cnp-author-initial.hidden{display:none}.cnp-author-name{font-family:var(--body-font, "Lato", sans-serif);font-size:12px;color:var(--theme-text-muted, #6C757D)}.cnp-desc{font-family:var(--body-font, "Lato", sans-serif);font-size:13px;line-height:1.55;color:var(--theme-text-secondary, #40424A);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}html.dark .cnp-desc{color:var(--color-white-medium, #CECECE)}.cnp-rating-row{display:flex;align-items:center;gap:6px}.cnp-stars{display:flex;gap:1px}.cnp-star{font-size:13px}.cnp-star--full{color:#f59e0b}.cnp-star--empty{color:var(--theme-border-color, #D1D5DB)}.cnp-rating-val{font-family:var(--body-font, "Lato", sans-serif);font-size:13px;font-weight:700;color:var(--theme-text-primary, #1F2024)}html.dark .cnp-rating-val{color:var(--color-white, #E7E7E7)}.cnp-rating-cnt{font-family:var(--body-font, "Lato", sans-serif);font-size:12px;color:var(--theme-text-muted, #6C757D)}.cnp-actions{display:flex;gap:8px;align-items:center;margin-top:4px}.cnp-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 14px;border-radius:8px;font-family:var(--body-font, "Lato", sans-serif);font-size:13px;font-weight:700;text-decoration:none;cursor:pointer;transition:background .2s,transform .15s;border:none;white-space:nowrap}.cnp-btn--primary{flex:1;background:var(--color-primary-600, #0C41FF);color:#fff}.cnp-btn--primary:hover{background:var(--color-primary-700, #002CCC);color:#fff;text-decoration:none;transform:translateY(-1px)}.cnp-btn--outline{background:transparent;color:var(--theme-text-primary, #1F2024);border:1.5px solid var(--theme-border-color, #E4E7EB)}.cnp-btn--outline:hover{background:var(--theme-bg-surface-hover, #F8F9FA);text-decoration:none;color:var(--theme-text-primary, #1F2024)}html.dark .cnp-btn--outline{border-color:var(--color-black-stroke, #40424A);color:var(--color-white, #E7E7E7)}html.dark .cnp-btn--outline:hover{background:var(--color-black-medium, #1F2024);color:var(--color-white, #E7E7E7)}.cnp-btn--enrolled{flex:1;background:#198754;color:#fff}.cnp-btn--enrolled:hover{background:#157347;color:#fff;text-decoration:none}.cnp-btn--in-cart{flex:1;background:#16a34a;color:#fff}.cnp-btn--in-cart:hover{background:#15803d;color:#fff;text-decoration:none}.cnp-wish-btn{width:38px;height:38px;border-radius:8px;background:transparent;border:1.5px solid var(--theme-border-color, #E4E7EB);color:var(--theme-text-muted, #6C757D);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s}.cnp-wish-btn:hover{border-color:var(--color-primary-600, #0C41FF);color:var(--color-primary-600, #0C41FF)}.cnp-wish-btn.cnp-wish-active{background:var(--color-primary-600, #0C41FF);border-color:var(--color-primary-600, #0C41FF);color:#fff}html.dark .cnp-wish-btn{border-color:var(--color-black-stroke, #40424A);color:var(--color-white-medium, #CECECE)}.cnp-view-link{display:flex;align-items:center;justify-content:center;gap:5px;font-family:var(--body-font, "Lato", sans-serif);font-size:13px;font-weight:600;color:var(--color-primary-600, #0C41FF);text-decoration:none;padding-top:2px;transition:opacity .15s}.cnp-view-link:hover{opacity:.75;text-decoration:none;color:var(--color-primary-600, #0C41FF)}html.dark .cnp-view-link{color:var(--color-primary-300, #7BA3FF)}
