/* Trang chủ, đặt hàng nhanh, affiliate, liên hệ, blog — Kho Sỉ Sao Mai */

.ks-eyebrow { font-size: 15px; font-weight: 600; letter-spacing: .2em; color: var(--ks-brand-dark); margin: 0; }
.ks-eyebrow-light { color: var(--ks-brand); }
.ks-muted-sm { font-size: 14px; color: var(--ks-muted); }
.ks-ic-lg { width: 28px; height: 28px; }
.ks-ic-zalo { color: var(--ks-zalo); }
.ks-link { color: var(--ks-brand-dark); font-weight: 500; }

/* ---------- Hero ---------- */
.ks-hero { border-bottom: 1px solid var(--ks-line); }
.ks-hero-grid { display: grid; gap: 32px; padding-top: 40px; padding-bottom: 40px; }
@media (min-width: 768px) { .ks-hero-grid { grid-template-columns: 1.2fr 1fr; align-items: end; padding-top: 64px; padding-bottom: 64px; } }
.ks-hero-title { font-size: 44px; line-height: .95; margin: 12px 0 0; }
@media (min-width: 640px) { .ks-hero-title { font-size: 60px; } }
@media (min-width: 1024px) { .ks-hero-title { font-size: 72px; } }
.ks-hero-title span { color: var(--ks-brand); }
.ks-hero-text { max-width: 600px; margin: 20px 0 0; font-size: 15px; line-height: 1.65; color: var(--ks-ink-soft); }
@media (min-width: 640px) { .ks-hero-text { font-size: 16px; } }
.ks-hero-search { max-width: 600px; margin-top: 24px; }
.ks-hero-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.ks-hero-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; margin: 0; border-radius: 10px; overflow: hidden; }
@media (min-width: 768px) { .ks-hero-stats { grid-template-columns: 1fr; } }
.ks-hero-stats > div { display: flex; flex-direction: column; gap: 4px; background: rgb(255 255 255 / .7); padding: 16px; }
@media (min-width: 768px) { .ks-hero-stats > div { flex-direction: row; align-items: baseline; justify-content: space-between; padding: 20px 24px; } }
.ks-hero-stats dd { margin: 0; font-size: 36px; font-weight: 700; color: var(--ks-ink); }
@media (min-width: 768px) { .ks-hero-stats dd { font-size: 48px; } }
.ks-hero-stats dt { font-size: 12px; font-weight: 500; text-transform: uppercase; letter-spacing: .05em; color: var(--ks-kraft-ink); }
@media (min-width: 768px) { .ks-hero-stats dt { font-size: 14px; } }

/* ---------- Ngành hàng ---------- */
.ks-cat-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
@media (min-width: 640px) { .ks-cat-grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1024px) { .ks-cat-grid { grid-template-columns: repeat(5, 1fr); } }
.ks-cat-grid a { display: flex; flex-direction: column; justify-content: space-between; gap: 12px; height: 100%; padding: 16px; border: 1px solid var(--ks-line); border-radius: var(--ks-radius); transition: border-color .15s, box-shadow .15s; }
.ks-cat-grid a:hover { border-color: var(--ks-brand); box-shadow: var(--ks-shadow); }
.ks-cat-grid strong { display: block; font-weight: 600; line-height: 1.3; color: var(--ks-ink); }
.ks-cat-grid small { display: block; margin-top: 4px; font-size: 12px; color: var(--ks-muted); }

/* ---------- Vì sao ---------- */
.ks-why { list-style: none; margin: 24px 0 0; padding: 0; display: grid; gap: 16px; }
@media (min-width: 640px) { .ks-why { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .ks-why { grid-template-columns: repeat(4, 1fr); } }
.ks-why li { border: 1px solid var(--ks-line); border-radius: var(--ks-radius); padding: 20px; }
.ks-why h3 { font-size: 20px; margin: 16px 0 0; }
.ks-why p { margin: 8px 0 0; font-size: 14px; line-height: 1.6; color: var(--ks-ink-soft); }

/* ---------- Đăng ký đại lý ---------- */
.ks-signup { display: grid; overflow: hidden; border-radius: 16px; background: var(--ks-ink); color: #fff; margin: 40px 0 24px; }
@media (min-width: 768px) { .ks-signup { grid-template-columns: 1fr 1fr; } }
.ks-signup-left { padding: 24px; }
@media (min-width: 768px) { .ks-signup-left { padding: 40px; } }
.ks-signup-title { font-size: 36px; line-height: .95; margin: 12px 0 0; color: #fff; }
@media (min-width: 768px) { .ks-signup-title { font-size: 48px; } }
.ks-signup-left ul { list-style: none; margin: 24px 0 0; padding: 0; font-size: 14px; color: rgb(255 255 255 / .8); }
.ks-signup-left li { margin-bottom: 8px; }
.ks-signup-right { background: #fff; color: var(--ks-ink); padding: 24px; }
@media (min-width: 768px) { .ks-signup-right { padding: 40px; } }
.ks-signup-right h3, .ks-aff-form h2 { font-size: 24px; margin: 0 0 12px; }

/* ---------- Fluent Forms ---------- */
.fluentform .ff-el-form-control { height: 44px; border: 1px solid var(--ks-line); border-radius: 10px; font: inherit; font-size: 15px; }
.fluentform textarea.ff-el-form-control { height: auto; }
.fluentform .ff-el-form-control:focus { border-color: var(--ks-brand); box-shadow: none; }
.fluentform .ff-el-input--label label { font-size: 14px; font-weight: 500; }
.fluentform .ff-btn-submit { background: var(--ks-brand) !important; color: #fff !important; border: 0 !important; border-radius: 10px !important; height: 48px; padding: 0 32px !important; font-family: var(--ks-display) !important; text-transform: uppercase; font-size: 18px !important; font-weight: 700 !important; }
.fluentform .ff-btn-submit:hover { background: var(--ks-brand-dark) !important; }
.fluentform .ff-message-success { background: var(--ks-stock-soft); color: var(--ks-stock); border-radius: 10px; }

/* ---------- Đặt hàng nhanh ---------- */
.ks-quick { padding: 24px 16px 120px; }
.ks-quick-head p { max-width: 720px; margin: 8px 0 0; font-size: 14px; color: var(--ks-ink-soft); }
.ks-quick-tools { display: flex; flex-direction: column; gap: 8px; margin-top: 20px; }
@media (min-width: 640px) { .ks-quick-tools { flex-direction: row; } }
.ks-quick-tools input, .ks-quick-tools select { height: 44px; border: 1px solid var(--ks-line); border-radius: 10px; padding: 0 14px; font: inherit; font-size: 15px; background: var(--ks-surface); }
.ks-quick-tools input { flex: 1; }
.ks-quick-tools input:focus { border-color: var(--ks-brand); background: #fff; outline: none; }
.ks-quick-tools select { background: #fff; }
@media (min-width: 640px) { .ks-quick-tools select { width: 260px; } }
.ks-quick-status { margin: 8px 0 12px; font-size: 14px; color: var(--ks-muted); }
.ks-quick-status b { color: var(--ks-ink); }
.ks-quick-table-wrap { border: 1px solid var(--ks-line); border-radius: var(--ks-radius); overflow: hidden; }
.ks-quick-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.ks-quick-table thead { display: none; }
@media (min-width: 768px) { .ks-quick-table thead { display: table-header-group; } }
.ks-quick-table th { background: var(--ks-surface); text-align: left; padding: 10px 12px; font-size: 12px; text-transform: uppercase; letter-spacing: .05em; color: var(--ks-muted); font-weight: 600; }
.ks-quick-table th.r, .ks-quick-table td.r { text-align: right; }
.ks-quick-table tbody tr { border-top: 1px solid var(--ks-line); }
.ks-quick-table tbody tr[hidden] { display: none; }
.ks-quick-table tbody tr.is-selected { background: rgb(254 239 235 / .6); }
.ks-quick-table td { padding: 10px 12px; vertical-align: middle; }
.ks-q-prod { display: flex; align-items: center; gap: 12px; }
.ks-q-img img { width: 56px; height: 56px; object-fit: cover; border-radius: 8px; border: 1px solid var(--ks-line); display: block; }
.ks-q-prod > div a { font-weight: 500; color: var(--ks-ink); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ks-q-prod small { display: block; color: var(--ks-muted); font-variant-numeric: tabular-nums; }
.ks-q-price b { color: var(--ks-brand-dark); font-variant-numeric: tabular-nums; }
.ks-q-price b.is-ref { color: var(--ks-ink-soft); }
.ks-q-price small { color: var(--ks-muted); font-size: 12px; }
.ks-q-stock { font-size: 12px; font-weight: 600; }
.ks-q-stock.is-in { color: var(--ks-stock); } .ks-q-stock.is-low { color: var(--ks-low); } .ks-q-stock.is-out { color: var(--ks-out); }
.ks-quick-table input[type="number"] { width: 80px; height: 40px; border: 1px solid var(--ks-line); border-radius: 10px; text-align: center; font: inherit; font-weight: 600; font-size: 15px; }
.ks-quick-table input[type="number"]:focus { border-color: var(--ks-brand); outline: none; }
.ks-q-total { font-weight: 600; font-variant-numeric: tabular-nums; }
@media (max-width: 767px) {
  .ks-quick-table tbody tr { display: grid; grid-template-columns: 1fr auto; gap: 4px 12px; padding: 10px 12px; }
  .ks-quick-table td { padding: 0; }
  .ks-q-prod { grid-column: 1; grid-row: 1 / span 2; }
  .ks-q-pack { grid-column: 1; }
  .ks-q-price { grid-column: 1; text-align: left; }
  .ks-q-stock { grid-column: 1; text-align: left; }
  .ks-quick-table td:nth-child(5) { grid-column: 2; grid-row: 1 / span 2; align-self: center; text-align: right; }
  .ks-q-total { grid-column: 2; grid-row: 3 / span 2; align-self: center; }
}
.ks-quick-more { width: 100%; border: 0; border-top: 1px solid var(--ks-line); background: #fff; padding: 12px; font: inherit; font-size: 14px; font-weight: 500; color: var(--ks-brand-dark); cursor: pointer; }
.ks-quick-more:hover { background: var(--ks-surface); }
.ks-quick-more[hidden] { display: none; }
.ks-quick-bar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 30; background: rgb(255 255 255 / .96); backdrop-filter: blur(8px); border-top: 1px solid var(--ks-line); }
.ks-quick-bar-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-top: 12px; padding-bottom: 12px; }
.ks-quick-bar-meta { font-size: 14px; color: var(--ks-muted); }
.ks-quick-bar-meta b { color: var(--ks-ink); }
.ks-quick-bar-total { font-size: 26px; font-weight: 700; color: var(--ks-ink); font-variant-numeric: tabular-nums; }
.ks-quick-bar-actions { display: flex; gap: 8px; }
.ks-quick-bar-actions .ks-btn-outline[hidden] { display: none; }
.ks-quick-bar-actions .ks-btn:disabled { opacity: .5; cursor: not-allowed; }

/* ---------- Affiliate / Liên hệ ---------- */
.ks-aff { padding: 32px 16px 0; }
.ks-aff-grid { display: grid; gap: 40px; }
@media (min-width: 1024px) { .ks-aff-grid { grid-template-columns: 1.1fr 1fr; align-items: start; } }
.ks-steps { list-style: none; margin: 32px 0 0; padding: 0; display: grid; gap: 16px; }
.ks-steps li { display: flex; gap: 16px; }
.ks-step-no { display: grid; place-items: center; width: 40px; height: 40px; flex: none; border-radius: 10px; background: var(--ks-ink); color: #fff; font-size: 20px; }
.ks-steps h2 { font-size: 20px; margin: 0; }
.ks-steps p { margin: 4px 0 0; font-size: 14px; color: var(--ks-ink-soft); }
.ks-aff-perks { list-style: none; margin: 32px 0 0; padding: 0; display: grid; gap: 12px; }
@media (min-width: 640px) { .ks-aff-perks { grid-template-columns: repeat(3, 1fr); } }
.ks-aff-perks li { border: 1px solid var(--ks-line); border-radius: var(--ks-radius); padding: 16px; }
.ks-aff-perks strong { display: block; margin-top: 8px; }
.ks-aff-perks small { color: var(--ks-muted); font-size: 13px; }
.ks-aff-form { border: 1px solid var(--ks-line); border-radius: 16px; background: var(--ks-surface); padding: 24px; }
@media (min-width: 1024px) { .ks-aff-form { position: sticky; top: 96px; } }
.ks-contact { padding: 32px 16px 0; max-width: 900px; }
.ks-contact-grid { list-style: none; margin: 32px 0 0; padding: 0; display: grid; gap: 16px; }
@media (min-width: 640px) { .ks-contact-grid { grid-template-columns: 1fr 1fr; } }
.ks-contact-grid li { border: 1px solid var(--ks-line); border-radius: var(--ks-radius); padding: 20px; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }
.ks-contact-grid small { font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; color: var(--ks-muted); margin-top: 8px; }
.ks-contact-grid b { font-size: 30px; font-weight: 700; }
.ks-contact-grid .ks-btn, .ks-contact-grid .ks-btn-zalo { margin-top: 8px; }
.ks-contact-mail { font-weight: 500; word-break: break-all; }

/* ---------- Blog: danh sách ---------- */
.ks-blog { padding: 24px 16px 0; }
.ks-blog-title { font-size: 40px; margin: 8px 0 0; }
@media (min-width: 768px) { .ks-blog-title { font-size: 60px; } }
.ks-catbar { display: flex; gap: 8px; overflow-x: auto; margin: 24px -16px 0; padding: 0 16px 4px; scrollbar-width: none; }
.ks-catbar::-webkit-scrollbar { display: none; }
.ks-catbar a { flex: none; border: 1px solid var(--ks-line); border-radius: 999px; padding: 8px 16px; font-size: 14px; font-weight: 500; color: var(--ks-ink-soft); white-space: nowrap; }
.ks-catbar a:hover { border-color: var(--ks-ink); }
.ks-catbar a.is-active { background: var(--ks-ink); border-color: var(--ks-ink); color: #fff; }
.ks-blog-search { max-width: 440px; margin-top: 16px; }
.ks-post-featured { display: grid; overflow: hidden; border: 1px solid var(--ks-line); border-radius: 16px; background: #fff; margin: 24px 0; }
@media (min-width: 768px) { .ks-post-featured { grid-template-columns: 1.3fr 1fr; } }
.ks-post-featured-media { display: block; aspect-ratio: 16 / 9; background: var(--ks-surface); }
@media (min-width: 768px) { .ks-post-featured-media { aspect-ratio: auto; min-height: 320px; } }
.ks-post-featured-media img, .ks-post-card-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ks-post-featured-body { display: flex; flex-direction: column; justify-content: center; gap: 12px; padding: 20px; }
@media (min-width: 768px) { .ks-post-featured-body { padding: 32px; } }
.ks-post-featured h2 { font-size: 24px; line-height: 1.3; margin: 0; }
@media (min-width: 768px) { .ks-post-featured h2 { font-size: 30px; } }
.ks-post-cat { font-family: var(--ks-display); font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--ks-brand-dark); }
.ks-post-desc { margin: 0; font-size: 14px; color: var(--ks-ink-soft); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ks-post-featured .ks-post-desc { -webkit-line-clamp: 3; font-size: 15px; }
.ks-post-meta { margin: 0; display: flex; flex-wrap: wrap; gap: 8px; font-size: 12px; color: var(--ks-muted); }
.ks-post-grid { display: grid; gap: 16px; margin-top: 24px; }
@media (min-width: 640px) { .ks-post-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .ks-post-grid { grid-template-columns: repeat(3, 1fr); } }
.ks-post-grid:empty { display: none; }
.ks-post-card { display: flex; flex-direction: column; height: 100%; overflow: hidden; border: 1px solid var(--ks-line); border-radius: var(--ks-radius); background: #fff; transition: box-shadow .15s; }
.ks-post-card:hover { box-shadow: var(--ks-shadow); }
.ks-post-card-media { display: block; aspect-ratio: 16 / 10; background: var(--ks-surface); overflow: hidden; }
.ks-post-card-body { display: flex; flex: 1; flex-direction: column; gap: 8px; padding: 16px; }
.ks-post-card h3 { font-size: 17px; line-height: 1.3; margin: 0; }
.ks-post-card .ks-post-meta { margin-top: auto; padding-top: 4px; }
.ks-noimg { display: grid; place-items: center; height: 100%; min-height: 160px; font-size: 13px; color: var(--ks-muted); }
.ks-pagination { margin: 32px 0 0; text-align: center; }
.ks-pagination ul { display: inline-flex; flex-wrap: wrap; justify-content: center; gap: 6px; list-style: none; margin: 0; padding: 0; }
.ks-pagination a, .ks-pagination span { display: inline-grid; place-items: center; min-width: 36px; height: 36px; padding: 0 12px; border: 1px solid var(--ks-line); border-radius: 8px; font-size: 14px; }
.ks-pagination .current { background: var(--ks-brand); border-color: var(--ks-brand); color: #fff; }
.ks-empty { border: 1px dashed var(--ks-line); border-radius: var(--ks-radius); padding: 40px; text-align: center; color: var(--ks-muted); margin-top: 24px; }

/* ---------- Blog: bài viết ---------- */
.ks-article { padding: 24px 16px 0; }
.ks-article-grid { display: grid; gap: 32px; margin-top: 24px; }
@media (min-width: 1024px) { .ks-article-grid { grid-template-columns: minmax(0, 1fr) 280px; } }
.ks-article-main { min-width: 0; }
.ks-article-title { font-size: 30px; line-height: 1.2; margin: 8px 0 0; }
@media (min-width: 768px) { .ks-article-title { font-size: 40px; line-height: 1.15; } }
.ks-article-meta { margin-top: 12px; font-size: 14px; }
.ks-article-cover { margin: 20px 0 0; border: 1px solid var(--ks-line); border-radius: 16px; overflow: hidden; background: var(--ks-surface); }
.ks-article-cover img { width: 100%; height: auto; display: block; aspect-ratio: 16 / 9; object-fit: cover; }
.ks-article-cover figcaption { padding: 8px 16px; font-size: 12px; color: var(--ks-muted); }
.ks-summary { margin: 24px 0 0; border-radius: var(--ks-radius); padding: 16px 20px; }
.ks-summary .ks-display { font-size: 16px; letter-spacing: .05em; margin: 0; }
.ks-summary p:last-child { margin: 6px 0 0; font-size: 15px; line-height: 1.6; }
.ks-toc { border: 1px solid var(--ks-line); border-radius: var(--ks-radius); margin: 24px 0 0; }
.ks-toc-mobile summary { cursor: pointer; list-style: none; padding: 12px 16px; font-weight: 600; }
.ks-toc-mobile summary::-webkit-details-marker { display: none; }
.ks-toc-mobile .ks-toc-list { padding: 0 16px 16px 36px; }
.ks-toc-desktop { display: none; border: 0; padding: 0; }
.ks-toc-desktop .ks-display { font-size: 18px; margin: 0 0 12px; }
@media (min-width: 1024px) { .ks-toc-mobile { display: none; } .ks-toc-desktop { display: block; position: sticky; top: 96px; } }
.ks-toc-list { margin: 0; padding-left: 20px; font-size: 14px; }
.ks-toc-list li { margin-bottom: 6px; }
.ks-toc-list a { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ks-toc-mobile summary { display: flex; justify-content: space-between; align-items: center; }
.ks-toc-mobile summary::after { content: "+"; font-weight: 700; color: var(--ks-brand); }
.ks-toc-mobile[open] summary::after { content: "–"; }
.ks-toc-list a { color: var(--ks-ink-soft); }
.ks-toc-list a:hover { color: var(--ks-brand-dark); }
.ks-prose-blog { margin-top: 24px; font-size: 17px; line-height: 1.8; color: var(--ks-ink-soft); }
.ks-prose-blog > * + * { margin-top: 16px; }
.ks-prose-blog h2 { font-family: var(--ks-display); font-size: 28px; line-height: 1.1; text-transform: uppercase; color: var(--ks-ink); margin-top: 36px; scroll-margin-top: 96px; }
.ks-prose-blog h3 { font-size: 19px; font-weight: 600; color: var(--ks-ink); margin-top: 28px; scroll-margin-top: 96px; }
.ks-prose-blog h4 { font-weight: 600; color: var(--ks-ink); }
.ks-prose-blog p strong { color: var(--ks-ink); }
.ks-prose-blog a { color: var(--ks-brand-dark); text-decoration: underline; text-underline-offset: 2px; }
.ks-prose-blog ul, .ks-prose-blog ol { padding-left: 22px; }
.ks-prose-blog li + li { margin-top: 6px; }
.ks-prose-blog blockquote { margin: 16px 0; border-left: 3px solid var(--ks-brand); padding: 4px 0 4px 16px; background: var(--ks-brand-soft); border-radius: 0 8px 8px 0; color: var(--ks-ink); }
.ks-prose-blog img, .ks-prose-blog figure img { max-width: 100%; height: auto; border-radius: 12px; border: 1px solid var(--ks-line); }
.ks-prose-blog figure { margin: 24px 0; }
.ks-prose-blog figcaption { margin-top: 6px; font-size: 13px; color: var(--ks-muted); text-align: center; }
.ks-prose-blog table { width: 100%; min-width: 480px; border-collapse: collapse; font-size: 15px; }
.ks-prose-blog .wp-block-table, .ks-prose-blog .table-wrap { overflow-x: auto; border: 1px solid var(--ks-line); border-radius: 12px; }
.ks-prose-blog th, .ks-prose-blog td { padding: 9px 12px; border-bottom: 1px solid var(--ks-line); text-align: left; vertical-align: top; }
.ks-prose-blog thead th { background: var(--ks-surface); color: var(--ks-ink); font-weight: 600; }
.ks-prose-blog hr { border: 0; border-top: 1px solid var(--ks-line); margin: 32px 0; }
.ks-post-products { margin: 32px 0 0; border: 1px solid var(--ks-line); border-radius: 16px; background: var(--ks-surface); padding: 16px 20px; }
.ks-post-products > .ks-display { font-size: 20px; margin: 0 0 12px; }
.ks-post-products ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
@media (min-width: 640px) { .ks-post-products ul { grid-template-columns: 1fr 1fr; } }
.ks-post-products li { display: flex; gap: 12px; border: 1px solid var(--ks-line); border-radius: 12px; background: #fff; padding: 12px; }
.ks-pp-img img { width: 80px; height: 80px; object-fit: cover; border-radius: 8px; display: block; }
.ks-post-products li > div { min-width: 0; flex: 1; }
.ks-pp-name { font-size: 14px; font-weight: 500; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ks-pp-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; }
.ks-pp-row { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; margin-top: 6px; }
.ks-pp-price { font-size: 18px; color: var(--ks-brand-dark); }
.ks-pp-price.is-ref { color: var(--ks-ink-soft); }
.ks-pp-row a { font-size: 12px; font-weight: 600; color: var(--ks-brand-dark); }
.ks-faq { margin-top: 32px; }
.ks-faq h2 { font-size: 24px; margin: 0 0 12px; }
.ks-faq-list { border: 1px solid var(--ks-line); border-radius: var(--ks-radius); }
.ks-faq-list details { padding: 12px 16px; border-top: 1px solid var(--ks-line); }
.ks-faq-list details:first-child { border-top: 0; }
.ks-faq-list summary { display: flex; justify-content: space-between; gap: 12px; cursor: pointer; list-style: none; font-weight: 500; }
.ks-faq-list summary::-webkit-details-marker { display: none; }
.ks-faq-list summary span { color: var(--ks-muted); transition: transform .15s; }
.ks-faq-list details[open] summary span { transform: rotate(45deg); }
.ks-faq-list p { margin: 8px 0 0; font-size: 15px; line-height: 1.6; color: var(--ks-ink-soft); }
.ks-article-cta { display: grid; gap: 16px; margin-top: 32px; border-radius: 16px; background: var(--ks-ink); color: #fff; padding: 20px; }
@media (min-width: 768px) { .ks-article-cta { grid-template-columns: 1fr auto; align-items: center; padding: 28px; } }
.ks-article-cta-title { font-size: 24px; margin: 0; color: #fff; }
@media (min-width: 768px) { .ks-article-cta-title { font-size: 30px; } }
.ks-article-cta p:not(.ks-display) { margin: 8px 0 0; font-size: 14px; color: rgb(255 255 255 / .8); }
.ks-article-cta b { color: #fff; }
.ks-article-cta-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.ks-share { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 24px; font-size: 14px; }
.ks-share span { color: var(--ks-muted); }
.ks-share a, .ks-share button { display: inline-flex; align-items: center; height: 36px; padding: 0 12px; border: 1px solid var(--ks-line); border-radius: 10px; background: #fff; font: inherit; font-size: 14px; font-weight: 500; color: var(--ks-ink); cursor: pointer; }
.ks-share a:hover, .ks-share button:hover { background: var(--ks-surface); }
.ks-related-posts { margin-top: 48px; }

/* Ghi chú chỉ dành cho người soạn trang chủ */
.ks-admin-note { display: none; }
