/* Education Platform v1.0 – Public CSS – dev.com.vn */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

:root{
  --green-600:#16a34a;--green-500:#22c55e;--green-400:#4ade80;
  --green-100:#dcfce7;--green-50:#f0fdf4;
  --teal-600:#0d9488;--teal-500:#14b8a6;--teal-100:#ccfbf1;
  --amber-600:#d97706;--amber-500:#f59e0b;--amber-100:#fef3c7;
  --blue-500:#3b82f6;--blue-100:#dbeafe;
  --violet-500:#8b5cf6;--rose-500:#f43f5e;
  --white:#fff;
  --g50:#f9fafb;--g100:#f3f4f6;--g200:#e5e7eb;--g300:#d1d5db;
  --g400:#9ca3af;--g500:#6b7280;--g600:#4b5563;--g700:#374151;--g800:#1f2937;--g900:#111827;
  --r-sm:6px;--r-md:10px;--r-lg:14px;--r-xl:18px;--r-2xl:22px;
  --sh-xs:0 1px 4px rgba(0,0,0,.05);
  --sh-sm:0 2px 10px rgba(22,163,74,.08);
  --sh-md:0 6px 24px rgba(22,163,74,.12);
  --sh-lg:0 14px 44px rgba(22,163,74,.15);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body.ep-site{font-family:'Inter',sans-serif;font-weight:400;color:var(--g900);background:var(--white);line-height:1.6;-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}
ul{list-style:none}
img{max-width:100%;height:auto;display:block}
input,select,textarea,button{font-family:'Inter',sans-serif}

/* ===== BUTTONS ===== */
.ep-btn{display:inline-flex;align-items:center;gap:6px;border-radius:var(--r-md);font-weight:600;cursor:pointer;border:2px solid transparent;transition:all .15s;text-decoration:none;white-space:nowrap}
.ep-btn--primary{background:linear-gradient(135deg,var(--green-500),var(--teal-500));color:#fff;box-shadow:0 4px 14px rgba(22,163,74,.28)}
.ep-btn--primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(22,163,74,.38)}
.ep-btn--outline{background:transparent;border-color:var(--green-400);color:var(--green-600)}
.ep-btn--outline:hover{background:var(--green-50)}
.ep-btn--ghost{background:var(--white);border-color:var(--g200);color:var(--g700)}
.ep-btn--ghost:hover{border-color:var(--green-400);color:var(--green-600)}
.ep-btn--sm{padding:8px 16px;font-size:.8rem}
.ep-btn--md{padding:11px 22px;font-size:.88rem}
.ep-btn--lg{padding:14px 28px;font-size:.95rem}
.ep-btn--full{width:100%;justify-content:center}

/* ===== SECTION HEADER ===== */
.ep-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;gap:16px}
.ep-section-title{font-size:1.3rem;font-weight:600;color:var(--g900);letter-spacing:-.3px}
.ep-section-title span{color:var(--green-600)}
.ep-see-all{font-size:.82rem;font-weight:600;color:var(--green-600);display:flex;align-items:center;gap:4px;flex-shrink:0}
.ep-see-all:hover{color:var(--teal-600)}

/* ===== GRID ===== */
.ep-grid{display:grid;gap:20px}
.ep-grid-4{grid-template-columns:repeat(4,1fr)}
.ep-grid-3{grid-template-columns:repeat(3,1fr)}
.ep-grid-2{grid-template-columns:repeat(2,1fr)}
@media(max-width:1100px){.ep-grid-4{grid-template-columns:repeat(3,1fr)}}
@media(max-width:768px){.ep-grid-4,.ep-grid-3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.ep-grid-4,.ep-grid-3,.ep-grid-2{grid-template-columns:1fr}}

/* ===== CARDS ===== */
.ep-card{background:var(--white);border:1.5px solid var(--g100);border-radius:var(--r-xl);overflow:hidden;transition:all .2s;display:flex;flex-direction:column;position:relative}
.ep-card:hover{border-color:var(--green-200,#bbf7d0);box-shadow:var(--sh-md);transform:translateY(-3px)}
.ep-card--featured{border-color:var(--green-300,#86efac)}

.ep-card-badge{position:absolute;top:10px;left:10px;z-index:2;display:inline-flex;align-items:center;gap:4px;background:linear-gradient(135deg,var(--amber-500),var(--amber-600));color:#fff;font-size:.7rem;font-weight:600;padding:3px 10px;border-radius:999px}
.ep-card-cert{position:absolute;top:10px;right:10px;z-index:2;width:28px;height:28px;background:var(--green-100);color:var(--green-600);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem}

.ep-card-thumb{width:100%;aspect-ratio:16/9;overflow:hidden;background:var(--g100);display:flex;align-items:center;justify-content:center}
.ep-card-thumb img,.ep-card-img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.ep-card:hover .ep-card-img{transform:scale(1.04)}
.ep-card-thumb--initials{background:linear-gradient(135deg,var(--green-500),var(--teal-600))}
.ep-card-initials{font-size:2.2rem;font-weight:600;color:#fff;letter-spacing:2px}

.ep-card-body{padding:14px 16px;display:flex;flex-direction:column;gap:8px;flex:1}
.ep-card-meta-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.ep-meta-tag{display:inline-flex;align-items:center;gap:4px;font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:999px}
.ep-meta-tag--cat{background:var(--green-100);color:var(--green-700)}
.ep-meta-tag--level{background:var(--blue-100);color:var(--blue-700,#1d4ed8)}
.ep-meta-tag--green{background:var(--green-100);color:var(--green-700)}
.ep-meta-tag--teal{background:var(--teal-100);color:var(--teal-700,#0f766e)}
.ep-meta-tag--amber{background:var(--amber-100);color:var(--amber-700,#b45309)}

.ep-card-title{font-size:.92rem;font-weight:600;color:var(--g900);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ep-card-title a:hover{color:var(--green-600)}
.ep-card-instructor{font-size:.78rem;color:var(--g500);display:flex;align-items:center;gap:4px}
.ep-card-instructor i{color:var(--green-400);font-size:.7rem}
.ep-card-excerpt{font-size:.8rem;color:var(--g500);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ep-card-tagline{font-size:.8rem;color:var(--g600);font-style:italic}

.ep-card-stats{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ep-card-stats span{font-size:.75rem;font-weight:600;color:var(--g500);display:flex;align-items:center;gap:3px}
.ep-stat-rating i{color:var(--amber-500)}
.ep-stat-students i{color:var(--blue-500)}
.ep-stat-duration i{color:var(--teal-500)}

.ep-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:8px;border-top:1px solid var(--g100)}
.ep-card-price{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.ep-price-free{font-size:.8rem;font-weight:600;color:var(--green-600);display:flex;align-items:center;gap:3px}
.ep-price-free i{color:var(--green-500)}
.ep-price-current{font-size:.95rem;font-weight:600;color:var(--green-600)}
.ep-price-original{font-size:.78rem;color:var(--g400);text-decoration:line-through}
.ep-price-from{font-size:.82rem;font-weight:600;color:var(--amber-600)}
.ep-card-detail{font-size:.75rem;color:var(--g500);display:flex;align-items:center;gap:3px}

/* ===== SEARCH BOX ===== */
.ep-search-wrap{margin-bottom:16px}
.ep-search-form{width:100%}
.ep-search-inner{display:flex;align-items:center;gap:8px;background:var(--white);border:2px solid var(--g200);border-radius:var(--r-xl);padding:8px 8px 8px 16px;box-shadow:var(--sh-sm);transition:border-color .15s}
.ep-search-inner:focus-within{border-color:var(--green-400)}
.ep-search-inner i{color:var(--green-400);font-size:.9rem;flex-shrink:0}
.ep-search-inner input{flex:1;border:none;outline:none;font-size:.9rem;color:var(--g900);background:transparent}
.ep-search-inner input::placeholder{color:var(--g400)}
.ep-search-inner button{padding:10px 20px;background:linear-gradient(135deg,var(--green-500),var(--teal-500));color:#fff;border:none;border-radius:var(--r-lg);font-size:.85rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px;white-space:nowrap}
.ep-search-inner button:hover{opacity:.9}

/* ===== FILTER PILLS ===== */
.ep-filter-pills{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}
.ep-pill{display:inline-flex;align-items:center;gap:5px;padding:7px 16px;border:2px solid var(--g200);border-radius:999px;font-size:.8rem;font-weight:600;color:var(--g600);background:var(--white);cursor:pointer;transition:all .15s;text-decoration:none}
.ep-pill:hover,.ep-pill.active{background:var(--green-50);border-color:var(--green-400);color:var(--green-700)}
.ep-pill-count{font-size:.7rem;color:var(--g400);font-weight:400}

/* ===== CATEGORY BOXES ===== */
.ep-cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media(max-width:900px){.ep-cat-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.ep-cat-grid{grid-template-columns:repeat(2,1fr)}}
.ep-cat-box{display:flex;flex-direction:column;align-items:center;gap:8px;background:var(--white);border:2px solid var(--g100);border-radius:var(--r-xl);padding:20px 12px;text-align:center;transition:all .2s;cursor:pointer;text-decoration:none}
.ep-cat-box:hover{border-color:var(--green-400);background:var(--green-50);transform:translateY(-3px);box-shadow:var(--sh-sm)}
.ep-cat-icon{width:48px;height:48px;background:var(--green-100);color:var(--green-600);border-radius:var(--r-lg);display:flex;align-items:center;justify-content:center;font-size:1.2rem}
.ep-cat-box:hover .ep-cat-icon{background:var(--green-500);color:#fff}
.ep-cat-name{font-size:.85rem;font-weight:600;color:var(--g800)}
.ep-cat-count{font-size:.72rem;color:var(--g400)}

/* ===== STATS BAR ===== */
.ep-stats-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:24px 0}
@media(max-width:700px){.ep-stats-bar{grid-template-columns:repeat(2,1fr)}}
.ep-stat-item{background:var(--white);border:2px solid var(--g100);border-radius:var(--r-xl);padding:20px;text-align:center;transition:all .2s;position:relative;overflow:hidden}
.ep-stat-item:hover{box-shadow:var(--sh-md);transform:translateY(-2px)}
.ep-stat-item::before{content:'';position:absolute;top:0;left:0;right:0;height:3px}
.ep-stat--green::before{background:linear-gradient(90deg,var(--green-400),var(--teal-500))}
.ep-stat--teal::before{background:linear-gradient(90deg,var(--teal-500),var(--blue-500))}
.ep-stat--blue::before{background:linear-gradient(90deg,var(--blue-500),var(--violet-500))}
.ep-stat--amber::before{background:linear-gradient(90deg,var(--amber-500),var(--rose-500))}
.ep-stat-icon{font-size:1.4rem;margin-bottom:8px;color:var(--green-500)}
.ep-stat-number{font-size:1.6rem;font-weight:600;color:var(--g900);letter-spacing:-.5px}
.ep-stat-label{font-size:.78rem;color:var(--g500);font-weight:600}

/* ===== ARCHIVE LAYOUT ===== */
.ep-archive-layout{display:grid;grid-template-columns:260px 1fr;gap:28px;align-items:start}
@media(max-width:900px){.ep-archive-layout{grid-template-columns:1fr}}

/* ===== SIDEBAR ===== */
.ep-sidebar{background:var(--white);border:1.5px solid var(--g100);border-radius:var(--r-2xl);overflow:hidden}
.ep-sidebar--filter{position:sticky;top:80px}
.ep-sidebar--single{position:sticky;top:80px}
.ep-sidebar--sticky{position:sticky;top:80px}
.ep-sb-block{padding:16px;border-bottom:1px solid var(--g100)}
.ep-sb-block:last-child{border-bottom:none}
.ep-sb-title{font-size:.82rem;font-weight:600;color:var(--g700);display:flex;align-items:center;gap:6px;margin-bottom:10px;cursor:pointer}
.ep-sb-title i{font-size:.78rem;color:var(--green-500)}
.ep-toggle-icon{margin-left:auto;transition:transform .2s}
.ep-sb-block--collapsible.collapsed .ep-toggle-icon{transform:rotate(-90deg)}
.ep-sb-block--collapsible.collapsed .ep-sb-checklist{display:none}

.ep-sb-search{display:flex;gap:6px}
.ep-sb-search input{flex:1;border:1.5px solid var(--g200);border-radius:var(--r-md);padding:8px 12px;font-size:.82rem;color:var(--g900);transition:border-color .15s}
.ep-sb-search input:focus{border-color:var(--green-400);outline:none}
.ep-sb-search button{padding:8px 12px;background:var(--green-500);color:#fff;border:none;border-radius:var(--r-md);cursor:pointer}

.ep-sb-checklist{display:flex;flex-direction:column;gap:4px}
.ep-sb-check{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--g600);cursor:pointer;padding:4px 6px;border-radius:6px;transition:background .1s}
.ep-sb-check:hover,.ep-sb-check.active{background:var(--green-50);color:var(--green-700)}
.ep-sb-check input[type=checkbox]{accent-color:var(--green-500)}
.ep-sb-count{margin-left:auto;font-size:.68rem;color:var(--g400);background:var(--g100);padding:1px 6px;border-radius:999px}

.ep-sb-sort{width:100%;border:1.5px solid var(--g200);border-radius:var(--r-md);padding:8px 12px;font-size:.82rem;color:var(--g700);background:var(--white);outline:none;cursor:pointer}
.ep-sb-sort:focus{border-color:var(--green-400)}

/* sidebar contact */
.ep-sb-contact-info{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}
.ep-sb-contact-item{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:600;padding:7px 10px;border-radius:var(--r-md);transition:background .15s;text-decoration:none}
.ep-sb-contact-item--phone{color:var(--green-700);background:var(--green-50)}
.ep-sb-contact-item--phone:hover{background:var(--green-100)}
.ep-sb-contact-item--zalo{color:var(--blue-700,#1d4ed8);background:var(--blue-100)}
.ep-sb-contact-item--zalo:hover{background:#bfdbfe}
.ep-sb-contact-item--email{color:var(--g600);background:var(--g50)}
.ep-sb-contact-item--email:hover{background:var(--g100)}
.ep-sb-contact-item i{font-size:.85rem;flex-shrink:0}
.ep-sb-socials{display:flex;gap:8px;margin-top:4px}
.ep-sb-soc{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;color:#fff;cursor:pointer;transition:transform .15s;text-decoration:none}
.ep-sb-soc:hover{transform:scale(1.1)}
.ep-sb-soc--fb{background:#1877f2}
.ep-sb-soc--yt{background:#ff0000}
.ep-sb-soc--tt{background:#000}
.ep-sb-soc--li{background:#0a66c2}

/* sidebar pricing */
.ep-sb-pkg{border:1.5px solid var(--g100);border-radius:var(--r-lg);padding:12px;margin-bottom:8px;transition:border-color .15s}
.ep-sb-pkg--featured{border-color:var(--green-400);background:var(--green-50)}
.ep-sb-pkg:last-child{margin-bottom:0}
.ep-sb-pkg-name{font-size:.82rem;font-weight:600;color:var(--g800);display:flex;align-items:center;gap:6px;margin-bottom:4px}
.ep-sb-pkg-badge{font-size:.65rem;font-weight:600;background:var(--amber-500);color:#fff;padding:1px 6px;border-radius:999px}
.ep-sb-pkg-price{font-size:1.05rem;font-weight:600;color:var(--green-600);margin-bottom:4px}
.ep-sb-pkg-desc{font-size:.75rem;color:var(--g500);margin-bottom:8px}

/* sidebar quickinfo */
.ep-sb-qi-row{display:flex;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid var(--g100);font-size:.78rem}
.ep-sb-qi-row:last-child{border-bottom:none}
.ep-sb-qi-icon{width:22px;text-align:center;color:var(--green-500);flex-shrink:0}
.ep-sb-qi-label{color:var(--g500);flex:1}
.ep-sb-qi-value{font-weight:600;color:var(--g800);text-align:right}

/* sidebar blog mini cards */
.ep-sb-mini-card{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--g100);text-decoration:none;transition:opacity .15s}
.ep-sb-mini-card:last-child{border-bottom:none}
.ep-sb-mini-card:hover{opacity:.8}
.ep-sb-mini-info{flex:1;min-width:0}
.ep-sb-mini-title{font-size:.78rem;font-weight:600;color:var(--g800);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ep-sb-mini-price{font-size:.72rem;color:var(--green-600);font-weight:600;margin-top:2px}
.ep-sb-mini-sub{font-size:.72rem;color:var(--g400);margin-top:2px}
.ep-sb-about-text{font-size:.8rem;color:var(--g500);line-height:1.6;margin-bottom:10px}

/* mobile sidebar toggle */
.ep-filter-toggle-btn{display:none;position:fixed;bottom:80px;right:16px;z-index:900;width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--green-500),var(--teal-500));color:#fff;border:none;cursor:pointer;box-shadow:0 4px 16px rgba(22,163,74,.4);align-items:center;justify-content:center;font-size:1.1rem}
@media(max-width:900px){
  .ep-archive-layout{grid-template-columns:1fr}
  .ep-filter-toggle-btn{display:flex}
  .ep-sidebar--filter{position:fixed;top:0;left:-300px;width:280px;height:100vh;z-index:1000;border-radius:0;border:none;box-shadow:var(--sh-lg);overflow-y:auto;transition:left .3s}
  .ep-sidebar--filter.open{left:0}
  .ep-sidebar-close{display:flex;position:absolute;top:12px;right:12px;width:32px;height:32px;background:var(--g100);border:none;border-radius:50%;align-items:center;justify-content:center;cursor:pointer;font-size:.9rem;color:var(--g600)}
  .ep-sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:999}
  .ep-sidebar-overlay.open{display:block}
}
@media(min-width:901px){.ep-sidebar-close{display:none}}

/* ===== SINGLE PAGE ===== */
.ep-single-layout{display:grid;grid-template-columns:1fr 300px;gap:28px;align-items:start}
@media(max-width:900px){.ep-single-layout{grid-template-columns:1fr}}

.ep-single-section{background:var(--white);border:1.5px solid var(--g100);border-radius:var(--r-2xl);padding:24px;margin-bottom:20px;box-shadow:var(--sh-xs)}
.ep-single-section:last-child{margin-bottom:0}
.ep-section-head{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid var(--g100)}
.ep-section-head h2{font-size:1.05rem;font-weight:600;color:var(--g900)}
.ep-section-head .ep-section-icon{width:36px;height:36px;border-radius:var(--r-md);background:var(--green-100);color:var(--green-600);display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0}

/* Single hero */
.ep-single-hero{background:linear-gradient(155deg,var(--green-50),var(--white));border:1.5px solid var(--green-100);border-radius:var(--r-2xl);padding:28px;margin-bottom:20px}
.ep-single-hero-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.ep-single-hero h1{font-size:1.6rem;font-weight:600;color:var(--g900);line-height:1.2;margin-bottom:10px;letter-spacing:-.3px}
.ep-single-hero-desc{color:var(--g600);font-size:.9rem;line-height:1.6;margin-bottom:16px}
.ep-single-hero-stats{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:18px}
.ep-single-stat{display:flex;align-items:center;gap:6px;font-size:.82rem;font-weight:600;color:var(--g600)}
.ep-single-stat i{color:var(--green-500)}
.ep-single-actions{display:flex;gap:10px;flex-wrap:wrap}

/* video */
.ep-video-wrap{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:var(--r-xl)}
.ep-video-wrap iframe{position:absolute;top:0;left:0;width:100%;height:100%}

/* gallery */
.ep-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
@media(max-width:600px){.ep-gallery-grid{grid-template-columns:repeat(2,1fr)}}
.ep-gallery-img{aspect-ratio:16/9;object-fit:cover;border-radius:var(--r-md);cursor:pointer;transition:opacity .15s}
.ep-gallery-img:hover{opacity:.85}

/* syllabus */
.ep-syllabus-item{border:1.5px solid var(--g100);border-radius:var(--r-lg);overflow:hidden;margin-bottom:8px}
.ep-syllabus-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--g50);cursor:pointer;gap:10px}
.ep-syllabus-head h4{font-size:.85rem;font-weight:600;color:var(--g800);flex:1}
.ep-syllabus-meta{font-size:.75rem;color:var(--g500);display:flex;gap:10px;flex-shrink:0}
.ep-syllabus-body{padding:12px 16px;font-size:.82rem;color:var(--g600);display:none}
.ep-syllabus-item.open .ep-syllabus-body{display:block}

/* FAQ */
.ep-faq-item{border:1.5px solid var(--g100);border-radius:var(--r-lg);overflow:hidden;margin-bottom:8px}
.ep-faq-q{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;cursor:pointer;font-size:.88rem;font-weight:600;color:var(--g800);gap:10px}
.ep-faq-q i.ep-faq-icon{font-size:.75rem;color:var(--green-500);transition:transform .2s;flex-shrink:0}
.ep-faq-item.open .ep-faq-icon{transform:rotate(180deg)}
.ep-faq-a{padding:0 16px 14px;font-size:.85rem;color:var(--g600);line-height:1.65;display:none}
.ep-faq-item.open .ep-faq-a{display:block}

/* skills */
.ep-skill-row{margin-bottom:10px}
.ep-skill-label{display:flex;justify-content:space-between;font-size:.8rem;font-weight:600;color:var(--g700);margin-bottom:4px}
.ep-skill-bar{height:8px;background:var(--g100);border-radius:999px;overflow:hidden}
.ep-skill-fill{height:100%;background:linear-gradient(90deg,var(--green-500),var(--teal-500));border-radius:999px;transition:width .8s ease}

/* pros/cons */
.ep-pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:600px){.ep-pros-cons{grid-template-columns:1fr}}
.ep-pros-block,.ep-cons-block{padding:14px;border-radius:var(--r-lg)}
.ep-pros-block{background:var(--green-50);border:1.5px solid var(--green-100)}
.ep-cons-block{background:#fff1f2;border:1.5px solid #fecdd3}
.ep-pros-title,.ep-cons-title{font-size:.82rem;font-weight:600;margin-bottom:8px;display:flex;align-items:center;gap:5px}
.ep-pros-title{color:var(--green-700)}
.ep-cons-title{color:#be123c}
.ep-pros-block li,.ep-cons-block li{font-size:.8rem;color:var(--g600);padding:3px 0;display:flex;align-items:baseline;gap:6px}
.ep-pros-block li::before{content:'✓';color:var(--green-500);font-weight:600;flex-shrink:0}
.ep-cons-block li::before{content:'✗';color:#f43f5e;font-weight:600;flex-shrink:0}

/* ===== RELATED ===== */
.ep-related-section{margin-top:32px}
.ep-related-section .ep-section-title{font-size:1.1rem;margin-bottom:16px;padding-bottom:10px;border-bottom:2px solid var(--g100)}
.ep-related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media(max-width:1000px){.ep-related-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.ep-related-grid{grid-template-columns:repeat(2,1fr)}}

/* ===== CONTACT FORM ===== */
.ep-contact-form-wrap{background:linear-gradient(155deg,var(--green-50),var(--white));border:1.5px solid var(--green-100);border-radius:var(--r-2xl);padding:28px}
.ep-contact-form-header{margin-bottom:20px}
.ep-contact-form-header h3{font-size:1.15rem;font-weight:600;color:var(--g900);margin-bottom:4px}
.ep-contact-form-header p{font-size:.85rem;color:var(--g500)}
.ep-contact-form{display:flex;flex-direction:column;gap:14px}
.ep-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:600px){.ep-form-row{grid-template-columns:1fr}}
.ep-form-field{display:flex;flex-direction:column;gap:5px}
.ep-form-field label{font-size:.78rem;font-weight:600;color:var(--g700);display:flex;align-items:center;gap:5px}
.ep-form-field label i{color:var(--green-500);font-size:.72rem}
.ep-form-field input,.ep-form-field select,.ep-form-field textarea{border:2px solid var(--g200);border-radius:var(--r-md);padding:10px 14px;font-size:.85rem;color:var(--g900);background:var(--white);transition:border-color .15s;resize:vertical}
.ep-form-field input:focus,.ep-form-field select:focus,.ep-form-field textarea:focus{border-color:var(--green-400);outline:none;box-shadow:0 0 0 3px rgba(34,197,94,.1)}
.ep-form-field--full{grid-column:1/-1}
.ep-form-note{font-size:.75rem;color:var(--g400);text-align:center;display:flex;align-items:center;justify-content:center;gap:5px}
.ep-form-message{padding:10px 14px;border-radius:var(--r-md);font-size:.85rem;font-weight:600}
.ep-form-message.success{background:var(--green-100);color:var(--green-700)}
.ep-form-message.error{background:#ffe4e6;color:#be123c}

/* ===== BREADCRUMB ===== */
.ep-breadcrumb{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:.78rem;color:var(--g400);margin-bottom:20px}
.ep-breadcrumb a{color:var(--green-600);font-weight:600}
.ep-breadcrumb a:hover{text-decoration:underline}
.ep-breadcrumb .sep{font-size:.6rem;color:var(--g300)}
.ep-breadcrumb span{color:var(--g600)}

/* ===== NO RESULTS ===== */
.ep-no-results{text-align:center;padding:48px 24px;color:var(--g400)}
.ep-no-results i{font-size:2.5rem;margin-bottom:12px;display:block}
.ep-no-results p{font-size:.9rem}
.ep-no-posts{text-align:center;padding:32px;color:var(--g400);font-size:.88rem}

/* ===== PAGINATION ===== */
.ep-pagination{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:32px;flex-wrap:wrap}
.ep-page-btn{width:38px;height:38px;border-radius:var(--r-md);border:2px solid var(--g200);background:var(--white);color:var(--g600);font-size:.82rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;text-decoration:none}
.ep-page-btn:hover,.ep-page-btn.active{background:var(--green-500);border-color:var(--green-500);color:#fff}
.ep-page-btn:disabled{opacity:.4;cursor:default}
.ep-load-more{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 28px;background:linear-gradient(135deg,var(--green-500),var(--teal-500));color:#fff;border:none;border-radius:var(--r-xl);font-size:.88rem;font-weight:600;cursor:pointer;margin:24px auto 0;box-shadow:var(--sh-sm);transition:all .15s}
.ep-load-more:hover{transform:translateY(-1px);box-shadow:var(--sh-md)}
.ep-load-more:disabled{opacity:.6;transform:none}

/* ===== FLOATING ACTIONS ===== */
.ep-float-actions{position:fixed;bottom:90px;right:16px;z-index:800;display:flex;flex-direction:column;gap:8px}
.ep-float-btn{width:48px;height:48px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:#fff;box-shadow:0 4px 16px rgba(0,0,0,.2);transition:transform .15s;text-decoration:none}
.ep-float-btn:hover{transform:scale(1.1)}
.ep-float-btn--phone{background:#16a34a}
.ep-float-btn--zalo{background:#0068ff}
.ep-float-btn--chat{background:linear-gradient(135deg,var(--green-500),var(--teal-500))}

/* ===== MOBILE BOTTOM NAV ===== */
.ep-mobile-nav{display:none;position:fixed;bottom:0;left:0;right:0;z-index:950;background:var(--white);border-top:1px solid var(--g200);box-shadow:0 -4px 20px rgba(0,0,0,.08);padding:6px 0 env(safe-area-inset-bottom,6px)}
@media(max-width:768px){.ep-mobile-nav{display:flex}}
.ep-mobile-nav-items{display:flex;width:100%}
.ep-mobile-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;color:var(--g400);font-size:.6rem;font-weight:600;text-decoration:none;transition:color .15s;cursor:pointer}
.ep-mobile-nav-item i{font-size:1.1rem}
.ep-mobile-nav-item.active,.ep-mobile-nav-item:hover{color:var(--green-600)}

/* ===== BLOG SINGLE ===== */
.ep-blog-layout{display:grid;grid-template-columns:1fr 280px;gap:28px;align-items:start}
@media(max-width:900px){.ep-blog-layout{grid-template-columns:1fr}}
.ep-blog-content{background:var(--white);border:1.5px solid var(--g100);border-radius:var(--r-2xl);padding:28px}
.ep-blog-content h1{font-size:1.55rem;font-weight:600;color:var(--g900);line-height:1.25;margin-bottom:16px}
.ep-blog-content .ep-blog-meta{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--g100)}
.ep-blog-meta span{font-size:.78rem;color:var(--g400);display:flex;align-items:center;gap:5px}
.ep-blog-meta i{color:var(--green-400)}
.ep-blog-content .ep-blog-body{font-size:.92rem;line-height:1.75;color:var(--g700)}
.ep-blog-body h2{font-size:1.15rem;font-weight:600;margin:24px 0 10px;color:var(--g900)}
.ep-blog-body h3{font-size:1rem;font-weight:600;margin:18px 0 8px;color:var(--g800)}
.ep-blog-body p{margin-bottom:14px}
.ep-blog-body ul,.ep-blog-body ol{margin:0 0 14px 20px}
.ep-blog-related{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px}
@media(max-width:600px){.ep-blog-related{grid-template-columns:1fr}}

/* ===== LOADING ===== */
.ep-loading{text-align:center;padding:32px;color:var(--g400)}
.ep-spinner{width:32px;height:32px;border:3px solid var(--g200);border-top-color:var(--green-500);border-radius:50%;animation:spin .6s linear infinite;margin:0 auto 8px}
@keyframes spin{to{transform:rotate(360deg)}}

/* ===== REVEAL ANIMATION ===== */
.ep-reveal{opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease}
.ep-reveal.on{opacity:1;transform:none}

/* ===== NAV DROPDOWN – override any theme conflicts ===== */
.ep-nav-menu{position:relative}
.ep-nav-menu > li{position:relative;list-style:none}
.ep-nav-menu > li > a{padding:7px 12px;border-radius:8px;color:#4b5563;font-size:.83rem;font-weight:600;display:flex;align-items:center;gap:5px;text-decoration:none;white-space:nowrap;transition:all .15s}
.ep-nav-menu > li > a:hover,.ep-nav-menu > li.current-menu-item > a,.ep-nav-menu > li.current-menu-ancestor > a{background:#f0fdf4;color:#16a34a}
.ep-nav-menu .sub-menu{display:none!important;position:absolute;top:calc(100% + 6px);left:0;min-width:210px;background:#fff;border:1.5px solid #e5e7eb;border-radius:12px;box-shadow:0 8px 30px rgba(0,0,0,.12);padding:6px;z-index:9999;list-style:none;margin:0}
.ep-nav-menu li.menu-item-has-children:hover > .sub-menu{display:block!important}
.ep-nav-menu .sub-menu li{list-style:none}
.ep-nav-menu .sub-menu a{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:8px;color:#374151;font-size:.82rem;font-weight:600;text-decoration:none;transition:background .12s;white-space:nowrap}
.ep-nav-menu .sub-menu a:hover{background:#f0fdf4;color:#16a34a}
.ep-nav-menu .sub-menu .sub-menu{top:0;left:calc(100% + 4px);margin:0}
/* Chevron indicator */
.ep-nav-menu li.menu-item-has-children > a::after{content:'\f078';font-family:'Font Awesome 6 Free';font-weight:900;font-size:.5rem;color:#9ca3af;margin-left:2px;transition:transform .2s}
.ep-nav-menu li.menu-item-has-children:hover > a::after{transform:rotate(180deg)}
