/* Welcomeju – soft powder-blue theme layer on Twenty Twenty-Five */
:root{
  --wj-bg:#F4F8FB; --wj-surface:#FFFFFF; --wj-sky:#E6F0F8; --wj-sky-2:#EEF5FB;
  --wj-text:#2B3A4A; --wj-muted:#66788A; --wj-accent:#5B8DB8; --wj-accent-dark:#3F6E98;
  --wj-border:#D5E2ED; --wj-radius:16px; --wj-shadow:0 1px 2px rgba(43,58,74,.04),0 6px 20px rgba(63,110,152,.07);
}
body{ background:var(--wj-bg); word-break:keep-all; overflow-wrap:break-word; -webkit-font-smoothing:antialiased; }
::selection{ background:#CFE1F0; }

/* ---------- Header ---------- */
header.wp-block-template-part{ position:sticky; top:0; z-index:100; }
body.admin-bar header.wp-block-template-part{ top:32px; }
@media (max-width:782px){ body.admin-bar header.wp-block-template-part{ top:0; } }
.wj-header{ position:relative; isolation:auto; background:transparent; border-bottom:1px solid var(--wj-border); }
.wj-header::before{ content:''; position:absolute; inset:0; z-index:-1; background:rgba(255,255,255,.9); backdrop-filter:saturate(1.4) blur(10px); -webkit-backdrop-filter:saturate(1.4) blur(10px); }
.wj-nav .wp-block-navigation__responsive-container.is-menu-open{ position:fixed!important; inset:0!important; z-index:100000!important; }
.wj-nav .is-menu-open .wp-block-navigation-item__content{ font-size:1.15rem; padding:.35rem 0; }
.kboard-avatar img, img.avatar{ color:transparent; font-size:0; }
.wj-brand .wp-block-site-title a{ color:var(--wj-text); text-decoration:none; }
.wj-brand .wp-block-site-title a:hover{ color:var(--wj-accent-dark); }
.wj-brand .wp-block-site-tagline{ margin:0; line-height:1.4; }
.wj-nav .wp-block-navigation-item__content{ padding:.45rem .7rem; border-radius:999px; color:var(--wj-text); transition:background .15s,color .15s; }
.wj-nav .wp-block-navigation-item__content:hover,.wj-nav .current-menu-item>.wp-block-navigation-item__content{ background:var(--wj-sky); color:var(--wj-accent-dark); text-decoration:none; }
.wj-nav .wp-block-navigation__submenu-container{ border:1px solid var(--wj-border)!important; border-radius:14px; padding:.45rem!important; box-shadow:var(--wj-shadow); background:#fff!important; min-width:220px!important; }
.wj-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content{ border-radius:10px; font-weight:500; font-size:.94rem; padding:.5rem .8rem; }
.wj-nav .wp-block-navigation__responsive-container.is-menu-open{ background:var(--wj-bg)!important; padding:1.5rem; }
.wj-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container{ border:0!important; box-shadow:none; background:transparent!important; }
.wj-nav .wp-block-navigation__responsive-container-open{ background:var(--wj-sky); border-radius:12px; padding:.45rem; }

/* ---------- Page head ---------- */
.wj-main{ min-height:60vh; }
.wj-page-head{ text-align:center; margin-bottom:var(--wp--preset--spacing--50); }
.wj-page-head .wp-block-post-title{ margin-top:.2rem; }
.wj-eyebrow{ display:inline-block; font-size:.78rem; font-weight:700; letter-spacing:.18em; color:var(--wj-accent-dark); background:var(--wj-sky); padding:.25rem .8rem; border-radius:999px; }

/* ---------- Home ---------- */
.wj-hero{ position:relative; border-bottom:1px solid var(--wj-border); background:
  radial-gradient(1200px 400px at 85% -10%, rgba(91,141,184,.22), transparent 60%),
  radial-gradient(700px 300px at 0% 100%, rgba(140,185,220,.25), transparent 60%),
  linear-gradient(180deg,#EAF3FA 0%,#F4F8FB 100%); overflow:hidden; }
.wj-hero h1{ font-size:clamp(1.9rem,4.5vw,3.1rem); line-height:1.3; margin:.4rem 0 1rem; }
.wj-hero .wj-lead{ font-size:clamp(1rem,1.6vw,1.15rem); color:var(--wj-muted); max-width:640px; margin-left:auto; margin-right:auto; }
.wj-hero .wp-block-buttons{ gap:.6rem; }
.wj-hero .wp-block-button.is-style-outline .wp-block-button__link{ background:#fff; color:var(--wj-accent-dark); border:1px solid var(--wj-border); }
.wj-hero .wp-block-button.is-style-outline .wp-block-button__link:hover{ background:var(--wj-sky); }
.wj-block-title{ display:flex; align-items:baseline; justify-content:space-between; gap:1rem; margin-bottom:1.2rem!important; }
.wj-h2{ font-size:clamp(1.35rem,2.4vw,1.7rem)!important; margin:0!important; }
.wj-sub{ color:var(--wj-muted); font-size:.95rem; margin-top:.2rem!important; }
.wj-band{ background:var(--wj-surface); border-top:1px solid var(--wj-border); border-bottom:1px solid var(--wj-border); }

.wj-sections{ display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:1rem; }
.wj-section{ background:var(--wj-surface); border:1px solid var(--wj-border); border-radius:var(--wj-radius); padding:1.3rem 1.3rem 1.1rem; box-shadow:var(--wj-shadow); display:flex; flex-direction:column; gap:.5rem; transition:transform .2s, box-shadow .2s; }
.wj-section__head{ display:flex; flex-direction:column; color:var(--wj-text)!important; text-decoration:none!important; }
.wj-section__label{ font-size:.75rem; letter-spacing:.2em; font-weight:800; color:var(--wj-accent); }
.wj-section__head strong{ font-family:var(--wp--preset--font-family--gowun-batang); font-size:1.2rem; }
.wj-section p{ margin:0; font-size:.9rem; color:var(--wj-muted); line-height:1.6; }
.wj-section__links{ display:flex; flex-wrap:wrap; gap:.35rem; margin-top:.3rem; }
.wj-section__links a,.wj-chip{ font-size:.82rem; padding:.2rem .65rem; border-radius:999px; background:var(--wj-sky-2); color:var(--wj-accent-dark); border:1px solid var(--wj-border); text-decoration:none!important; }
.wj-section__links a:hover,.wj-chip:hover{ background:var(--wj-accent); color:#fff; border-color:var(--wj-accent); }
.wj-section__count{ margin-top:auto; font-size:.78rem; color:var(--wj-muted); }
.wj-chips{ display:flex; flex-wrap:wrap; gap:.45rem; justify-content:center; margin:0 0 1.5rem; }
.wj-chip{ font-size:.9rem; padding:.35rem .9rem; }

/* cards */
.wj-cards{ display:grid; gap:1.1rem; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); }
.wj-cards--gallery{ grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); }
.wj-card{ background:var(--wj-surface); border:1px solid var(--wj-border); border-radius:var(--wj-radius); overflow:hidden; box-shadow:var(--wj-shadow); transition:transform .2s, box-shadow .2s; }
.wj-card__link{ display:flex; flex-direction:column; height:100%; color:var(--wj-text)!important; text-decoration:none!important; }
.wj-card__media{ aspect-ratio:16/10; background:var(--wj-sky); overflow:hidden; }
.wj-cards--gallery .wj-card__media{ aspect-ratio:1/1; }
.wj-card__media img{ width:100%; height:100%; object-fit:cover; display:block; }
.wj-card__media--empty{ display:flex; align-items:center; justify-content:center; aspect-ratio:16/7; background:linear-gradient(135deg,#E6F0F8,#D8E7F3); }
.wj-card__media--empty span{ font-family:var(--wp--preset--font-family--gowun-batang); color:#7FA3C4; font-size:1.05rem; letter-spacing:.05em; }
.wj-card__body{ padding:1rem 1.1rem 1.1rem; display:flex; flex-direction:column; gap:.35rem; flex:1; }
.wj-card__board{ font-size:.75rem; font-weight:700; color:var(--wj-accent); letter-spacing:.03em; }
.wj-card__title{ font-family:var(--wp--preset--font-family--pretendard)!important; font-size:1.02rem!important; font-weight:700!important; line-height:1.45!important; margin:0!important; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.wj-card__excerpt{ font-size:.88rem; color:var(--wj-muted); line-height:1.65; margin:0; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.wj-card__meta{ margin-top:auto; padding-top:.4rem; font-size:.76rem; color:#8A9AAA; }
.wj-cards--gallery .wj-card__body{ padding:.7rem .85rem .8rem; }
.wj-cards--gallery .wj-card__title{ font-size:.9rem!important; }
.wj-more{ text-align:right; margin-top:.8rem; font-size:.92rem; }
.wj-more a{ font-weight:600; }
.wj-guest-cta{ background:linear-gradient(135deg,#5B8DB8,#7FA9CE); color:#fff; border-radius:24px; }
.wj-guest-cta h2,.wj-guest-cta p{ color:#fff!important; }
.wj-guest-cta .wp-block-button__link{ background:#fff!important; color:var(--wj-accent-dark)!important; }

/* ---------- Footer ---------- */
.wj-footer{ background:#EAF2F9; border-top:1px solid var(--wj-border); }
.wj-footer .wp-block-site-title{ font-size:1.15rem; }
.wj-footer .wp-block-site-title a{ color:var(--wj-text); text-decoration:none; }
.wj-copy{ font-size:.85rem; color:var(--wj-muted); margin:0; }
.wj-footer-links{ display:flex; flex-wrap:wrap; gap:.3rem .9rem; font-size:.9rem; font-weight:600; }
.wj-footer-links a{ color:var(--wj-accent-dark); }

@media (max-width:600px){

  .wj-cards{ grid-template-columns:1fr 1fr; gap:.7rem; }
  .wj-card__excerpt{ display:none; }
  .wj-card__body{ padding:.7rem .8rem .8rem; }
  .wj-card__title{ font-size:.92rem!important; }
  .wj-block-title{ flex-direction:column; gap:.2rem; }
}
.wj-home{ margin-top:0!important; }
.wj-home > .wj-hero:first-child,.wj-home .entry-content > .wj-hero:first-child,.wj-home .wp-block-post-content > .wj-hero:first-child{ margin-top:0!important; }
.wj-home .wp-block-post-content{ margin-top:0!important; }
.wj-h2 .wj-section__label{ font-family:var(--wp--preset--font-family--pretendard); font-size:.8rem; vertical-align:middle; margin-right:.35rem; background:var(--wj-sky); padding:.15rem .55rem; border-radius:999px; }
/* mobile overlay menu v2 */
.wj-nav .is-menu-open .wp-block-navigation__responsive-container-content{ align-items:flex-start!important; padding-top:2.5rem; }
.wj-nav .is-menu-open .wp-block-navigation__container,
.wj-nav .is-menu-open .wp-block-navigation-item{ align-items:flex-start!important; width:100%; }
.wj-nav .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item{ border-bottom:1px solid var(--wj-border); padding:.6rem 0; }
.wj-nav .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content{ font-weight:800; color:var(--wj-accent-dark)!important; letter-spacing:.04em; background:none!important; border:0!important; padding:0!important; }
.wj-nav .is-menu-open .wp-block-navigation__submenu-container{ padding:.2rem 0 0 .9rem!important; }
.wj-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content{ font-size:1rem!important; color:var(--wj-text)!important; padding:.3rem 0!important; }
.wj-nav .is-menu-open a:focus{ outline:none; }
/* SEO: board name shown as <p> on document views (post title is the H1) + intro text */
p.wp-block-post-title{ font-family:var(--wp--preset--font-family--gowun-batang); font-weight:700; line-height:1.35; letter-spacing:-0.02em; color:var(--wp--preset--color--contrast); margin-top:.2rem; margin-bottom:0; }
.wj-intro{ max-width:720px; margin:0 auto 1.6rem!important; text-align:center; color:var(--wj-muted); font-size:.98rem; line-height:1.8; word-break:keep-all; }
