#bzd-articles,
#bzd-articles *,
#bzd-articles *::before,
#bzd-articles *::after { box-sizing:border-box; }

#bzd-articles {
  --bza-surface:#fff;
  --bza-border:#dfe5fb;
  --bza-border-soft:#edf0fb;
  --bza-shadow:0 18px 48px rgba(64,84,150,.09);
  --bza-shadow-soft:0 10px 30px rgba(64,84,150,.06);
  width:100%;
  margin:0;
  padding:0;
  background:linear-gradient(180deg, var(--bza-bg) 0%, #fafbff 72%, #fff 100%);
  color:var(--bza-text);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
  line-height:1.7;
}
#bzd-articles :where(h1,h2,h3,p,ul,li,figure) { margin:0; padding:0; }
#bzd-articles :where(a) { color:inherit; text-decoration:none; }
#bzd-articles :where(img) { display:block; max-width:100%; height:auto; }
#bzd-articles .bza-heading-reset,
#bzd-articles .bza-heading-reset::before,
#bzd-articles .bza-heading-reset::after {
  background:none !important;
  background-image:none !important;
  border:0 !important;
  box-shadow:none !important;
  content:none !important;
  margin:0 !important;
  padding:0 !important;
}
#bzd-articles .bza-shell { width:min(100% - 40px, var(--bza-max)); margin:0 auto; padding:42px 0 86px; }

#bzd-articles .bza-hero {
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(360px,1.12fr);
  gap:34px;
  align-items:center;
  overflow:hidden;
  min-height:410px;
  padding:42px 44px;
  border:1px solid var(--bza-border);
  border-radius:32px;
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(244,246,255,.96));
  box-shadow:var(--bza-shadow-soft);
}
#bzd-articles .bza-eyebrow,
#bzd-articles .bza-library__label { color:var(--bza-primary); font-size:12px; font-weight:900; letter-spacing:.12em; }
#bzd-articles .bza-hero h1 { margin-top:14px !important; color:var(--bza-text) !important; font-size:clamp(36px,4.5vw,58px) !important; font-weight:900 !important; line-height:1.22 !important; letter-spacing:-.05em; }
#bzd-articles .bza-hero p { max-width:610px; margin-top:18px; color:var(--bza-muted); font-size:16px; }
#bzd-articles .bza-hero__actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:26px; }
#bzd-articles .bza-button { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:52px; padding:13px 24px; border:1px solid transparent; border-radius:999px; font-size:14px; font-weight:900; transition:transform .18s ease,box-shadow .18s ease; }
#bzd-articles .bza-button:hover { transform:translateY(-2px); }
#bzd-articles .bza-button--primary { background:linear-gradient(90deg,var(--bza-primary),var(--bza-accent)); color:#fff; box-shadow:0 14px 30px rgba(67,91,233,.22); }
#bzd-articles .bza-button--ghost { border-color:var(--bza-border); background:#fff; color:var(--bza-text); box-shadow:var(--bza-shadow-soft); }
#bzd-articles .bza-hero__visual { position:relative; height:320px; overflow:hidden; border-radius:26px; background:linear-gradient(135deg,#fff,#eef2ff); }
#bzd-articles .bza-hero__visual::after { content:""; position:absolute; inset:auto -70px -90px auto; width:230px; height:230px; border:38px solid rgba(129,122,245,.12); border-radius:50%; }
#bzd-articles .bza-hero__visual img { width:100%; height:100%; object-fit:cover; object-position:62% center; }

#bzd-articles .bza-library { margin-top:58px; }
#bzd-articles .bza-library__head { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; margin-bottom:26px; }
#bzd-articles .bza-library__head > div { display:flex; align-items:center; gap:15px; }
#bzd-articles .bza-library__line { width:9px; height:58px; border-radius:999px; background:linear-gradient(180deg,var(--bza-primary),var(--bza-accent)); }
#bzd-articles .bza-library h2 { margin-top:4px !important; color:var(--bza-text) !important; font-size:32px !important; font-weight:900 !important; line-height:1.35 !important; letter-spacing:-.035em; }
#bzd-articles .bza-library__head > p { color:var(--bza-muted); font-size:14px; text-align:right; }

#bzd-articles .bza-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
#bzd-articles .bza-card { overflow:hidden; min-width:0; border:1px solid var(--bza-border); border-radius:24px; background:#fff; box-shadow:var(--bza-shadow-soft); transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease; }
#bzd-articles .bza-card:hover { transform:translateY(-4px); border-color:rgba(50,111,237,.34); box-shadow:var(--bza-shadow); }
#bzd-articles .bza-card__link { display:grid; grid-template-columns:190px minmax(0,1fr); min-height:168px; }
#bzd-articles .bza-card__media { min-height:168px; overflow:hidden; background:linear-gradient(135deg,#edf2ff,#fafbff); }
#bzd-articles .bza-card__media img { width:100%; height:100%; object-fit:cover; transition:transform .3s ease; }
#bzd-articles .bza-card:hover .bza-card__media img { transform:scale(1.035); }
#bzd-articles .bza-card__placeholder { display:grid; place-items:center; width:100%; height:100%; min-height:168px; color:var(--bza-primary); font-size:52px; font-weight:900; }
#bzd-articles .bza-card__body { display:flex; min-width:0; flex-direction:column; padding:20px 22px; }
#bzd-articles .bza-card__meta { display:flex; align-items:center; justify-content:space-between; gap:12px; }
#bzd-articles .bza-card__category { display:inline-flex; max-width:70%; overflow:hidden; padding:5px 10px; border-radius:999px; background:linear-gradient(135deg,rgba(50,111,237,.10),rgba(129,122,245,.12)); color:var(--bza-primary); font-size:11px; font-weight:900; line-height:1.4; text-overflow:ellipsis; white-space:nowrap; }
#bzd-articles .bza-card time { flex:0 0 auto; color:#98a2b9; font-size:11px; font-weight:800; }
#bzd-articles .bza-card__title { display:-webkit-box; overflow:hidden; margin-top:12px !important; color:var(--bza-text) !important; font-size:16px !important; font-weight:900 !important; line-height:1.6 !important; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
#bzd-articles .bza-card__more { display:inline-flex; align-items:center; gap:8px; margin-top:auto; padding-top:12px; color:var(--bza-primary); font-size:12px; font-weight:900; }

#bzd-articles .bza-pagination {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  margin:40px 0 0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}
#bzd-articles .bza-pagination > .page-numbers,
#bzd-articles .bza-pagination ul.page-numbers {
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  justify-content:center !important;
  gap:9px !important;
  width:auto !important;
  max-width:100% !important;
  margin:0 auto !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  list-style:none !important;
}
#bzd-articles .bza-pagination li,
#bzd-articles .bza-pagination .page-numbers > li {
  display:block !important;
  flex:0 0 auto !important;
  float:none !important;
  width:auto !important;
  min-width:0 !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  list-style:none !important;
}
#bzd-articles .bza-pagination a,
#bzd-articles .bza-pagination span {
  display:grid !important;
  place-items:center !important;
  float:none !important;
  width:auto !important;
  min-width:44px !important;
  height:44px !important;
  margin:0 !important;
  padding:0 14px !important;
  border:1px solid var(--bza-border) !important;
  border-radius:14px !important;
  background:#fff !important;
  color:var(--bza-text) !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-align:center !important;
  box-shadow:var(--bza-shadow-soft) !important;
}
#bzd-articles .bza-pagination .current { border-color:transparent !important; background:linear-gradient(135deg,var(--bza-primary),var(--bza-accent)) !important; color:#fff !important; }
#bzd-articles .bza-pagination a:hover { border-color:rgba(50,111,237,.38) !important; color:var(--bza-primary) !important; }
#bzd-articles .bza-empty { padding:60px 24px; border:1px solid var(--bza-border); border-radius:24px; background:#fff; text-align:center; }
#bzd-articles .bza-empty h2 { color:var(--bza-text) !important; font-size:28px !important; font-weight:900 !important; }
#bzd-articles .bza-empty p { margin-top:10px; color:var(--bza-muted); }

body.bzd-articles-page .entry-title,
body.bzd-articles-page .entry-header,
body.bzd-articles-page #sidebar,
body.bzd-articles-page .sidebar,
body.bzd-articles-page .widget-area { display:none !important; }
body.bzd-articles-page main.main,
body.bzd-articles-page .main,
body.bzd-articles-page #main,
body.bzd-articles-page .content-in,
body.bzd-articles-page .content,
body.bzd-articles-page .container,
body.bzd-articles-page .wrap { width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; border:0 !important; background:transparent !important; }

@media (max-width:1040px) {
  #bzd-articles .bza-hero { grid-template-columns:1fr; }
  #bzd-articles .bza-hero__visual { height:350px; }
  #bzd-articles .bza-card__link { grid-template-columns:150px minmax(0,1fr); }
}
@media (max-width:780px) {
  #bzd-articles .bza-shell { width:min(100% - 24px,var(--bza-max)); padding:22px 0 62px; }
  #bzd-articles .bza-hero { min-height:0; padding:28px 22px; border-radius:26px; }
  #bzd-articles .bza-hero h1 { font-size:36px !important; }
  #bzd-articles .bza-hero__visual { height:260px; }
  #bzd-articles .bza-hero__actions { flex-direction:column; }
  #bzd-articles .bza-button { width:100%; }
  #bzd-articles .bza-library { margin-top:44px; }
  #bzd-articles .bza-library__head { display:block; }
  #bzd-articles .bza-library__head > p { margin-top:10px; text-align:left; }
  #bzd-articles .bza-library h2 { font-size:27px !important; }
  #bzd-articles .bza-grid { grid-template-columns:1fr; }
}
@media (max-width:520px) {
  #bzd-articles .bza-card__link { grid-template-columns:118px minmax(0,1fr); min-height:148px; }
  #bzd-articles .bza-card__media,
  #bzd-articles .bza-card__placeholder { min-height:148px; }
  #bzd-articles .bza-card__body { padding:15px 15px 14px; }
  #bzd-articles .bza-card__title { font-size:14px !important; line-height:1.55 !important; -webkit-line-clamp:3; }
  #bzd-articles .bza-card__category { max-width:62%; font-size:10px; }
  #bzd-articles .bza-card__more { display:none; }
  #bzd-articles .bza-pagination a,
  #bzd-articles .bza-pagination span { min-width:40px; height:40px; padding:0 12px; }
}
@media (prefers-reduced-motion:reduce) {
  #bzd-articles *,
  #bzd-articles *::before,
  #bzd-articles *::after { transition:none !important; }
}

/* Category archive uses the same article-library UI. */
#bzd-articles.bza-page--category .bza-hero {
  background:linear-gradient(135deg,rgba(255,255,255,.99),rgba(241,244,255,.98));
}
#bzd-articles.bza-page--category .bza-eyebrow {
  display:inline-flex;
  align-items:center;
  padding:7px 13px;
  border-radius:999px;
  background:rgba(50,111,237,.09);
}
body.bzd-category-library-page .archive-title,
body.bzd-category-library-page .archive-header,
body.bzd-category-library-page .list-title,
body.bzd-category-library-page .category-title,
body.bzd-category-library-page .breadcrumb,
body.bzd-category-library-page .list,
body.bzd-category-library-page .list-wrap,
body.bzd-category-library-page .pagination:not(.bza-pagination) {
  display:none !important;
}
