/*
Theme Name: Chaeum Green Admin
Theme URI: https://gunro.freelove.pe.kr/
Author: JH Koh
Description: 그린 톤의 기업형 홈 + 근로장려금 안내 랜딩/가이드 템플릿 테마입니다.
Version: 2.0.0
License: GPLv2 or later
Text Domain: chaeum-green-admin
*/

:root{
  --brand:#16a34a;
  --brand-dark:#15803d;
  --brand-ink:#0b3d1c;

  --bg:#f6fbf7;
  --text:#0f172a;
  --muted:#475569;

  --card:#ffffff;
  --border:#e2e8f0;

  --radius:16px;
  --radius-lg:18px;

  --shadow:0 14px 34px rgba(15,23,42,.08);
  --shadow-soft:0 10px 20px rgba(15,23,42,.06);

  --max:1060px;
  --max-narrow:860px;

  --font:"Pretendard", system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;
  --ring: 0 0 0 4px rgba(22,163,74,.12);
}

*{ box-sizing:border-box; }
html,body{ height:100%; }
body{
  margin:0;
  font-family:var(--font);
  background:var(--bg);
  color:var(--text);
  line-height:1.75;
}

h1,h2,h3{
  margin:0 0 .65rem;
  line-height:1.22;
  letter-spacing:-.03em;
}
p{ margin:.55rem 0; }

a{ color:var(--brand); text-decoration:none; }
a:hover{ text-decoration:underline; }

.container{
  width:min(var(--max), calc(100% - 2rem));
  margin:0 auto;
}
.container.narrow{
  width:min(var(--max-narrow), calc(100% - 2rem));
  margin:0 auto;
}

/* Buttons */
a.button, .button, .wp-block-button__link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  background:var(--brand);
  color:#fff !important;
  padding:.95rem 1.25rem;
  border-radius:999px;
  font-weight:900;
  letter-spacing:-.02em;
  text-decoration:none !important;
  box-shadow:0 12px 18px rgba(22,163,74,.22);
  border:0;
  transition: transform .15s ease, background .15s ease, box-shadow .15s ease;
}
a.button:hover, .button:hover, .wp-block-button__link:hover{
  background:var(--brand-dark);
  text-decoration:none !important;
  transform: translateY(-1px);
}
a.button:focus-visible, .button:focus-visible, .wp-block-button__link:focus-visible{
  outline:none;
  box-shadow: var(--ring), 0 12px 18px rgba(22,163,74,.22);
}

a.button.secondary, .button.secondary{
  background:#fff;
  color:var(--brand) !important;
  border:1px solid rgba(22,163,74,.35);
  box-shadow:none;
}
a.button.secondary:hover, .button.secondary:hover{
  background:rgba(22,163,74,.08);
}

/* Home hero */
.home-hero{
  background:
    radial-gradient(1100px 520px at 10% 0%, rgba(22,163,74,.22), transparent 60%),
    radial-gradient(900px 480px at 92% 10%, rgba(134,239,172,.20), transparent 58%),
    linear-gradient(180deg, rgba(255,255,255,.70), rgba(246,251,247,1));
  padding:3.1rem 0 1.2rem;
}
.home-head{
  text-align:center;
  padding:0 1rem;
}
.badge{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.38rem .75rem;
  border-radius:999px;
  background:rgba(220,252,231,.75);
  border:1px solid rgba(22,163,74,.18);
  color:var(--brand-ink);
  font-weight:900;
  font-size:.95rem;
}
.title{
  font-size:2.35rem;
  margin:.9rem 0 .55rem;
}
.lead{
  max-width:44rem;
  margin:0 auto 1.2rem;
  color:var(--muted);
  font-size:1.06rem;
}
.cta{
  display:flex;
  justify-content:center;
  gap:.8rem;
  flex-wrap:wrap;
}

/* Top nav */
.anchor-nav{
  margin-top:1.25rem;
  background:rgba(255,255,255,.74);
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
  backdrop-filter: blur(10px);
  position:sticky;
  top:0;
  z-index:50;
}
.anchor-nav .inner{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:.4rem;
  padding:.65rem 0;
}
.anchor-nav a{
  color:var(--text);
  font-weight:900;
  padding:.45rem .7rem;
  border-radius:999px;
}
.anchor-nav a:hover{
  background:rgba(22,163,74,.09);
  color:var(--brand-dark);
  text-decoration:none;
}

/* Sections */
.section{ padding:1.7rem 0; }
.card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow);
  padding:1.55rem;
}
.card h2{ font-size:1.45rem; }
.muted{ color:var(--muted); }

/* Feature grid */
.grid{
  margin-top:1rem;
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:1rem;
}
.feature{
  display:flex;
  gap:.9rem;
  border:1px solid rgba(226,232,240,.9);
  border-radius:var(--radius);
  padding:1.1rem;
  background:#fff;
  box-shadow:var(--shadow-soft);
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.feature:hover{
  transform: translateY(-2px);
  border-color: rgba(22,163,74,.22);
  box-shadow: 0 14px 26px rgba(15,23,42,.08);
}
.icon{
  width:46px; height:46px;
  border-radius:14px;
  background:rgba(220,252,231,.75);
  border:1px solid rgba(22,163,74,.18);
  display:flex; align-items:center; justify-content:center;
  font-weight:900;
  color:var(--brand-ink);
}
.feature strong{ display:block; margin-bottom:.2rem; }

.highlight{
  background:rgba(220,252,231,.75);
  border-left:6px solid var(--brand);
  border-radius:14px;
  padding:1rem 1.05rem;
  margin:1.05rem 0;
  color:var(--brand-ink);
}

/* Forms */
.form-control{
  width:100%;
  padding:.95rem;
  margin-bottom:1rem;
  border:1px solid #cbd5e1;
  border-radius:14px;
  font-family:var(--font);
  font-size:1rem;
  background:#fff;
}
.form-control:focus{
  outline:none;
  border-color:rgba(22,163,74,.65);
  box-shadow:var(--ring);
}
.btn-submit{
  background:var(--brand);
  color:#fff;
  padding:1rem 2rem;
  border:none;
  border-radius:14px;
  font-size:1rem;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 12px 18px rgba(22,163,74,.22);
}
.btn-submit:hover{ background:var(--brand-dark); }
.btn-submit:focus-visible{ outline:none; box-shadow: var(--ring), 0 12px 18px rgba(22,163,74,.22); }

/* Landing / guide */
.page-hero{
  padding:2.7rem 0 1.2rem;
  background:
    radial-gradient(1100px 420px at 12% 0%, rgba(22,163,74,.22), transparent 60%),
    radial-gradient(900px 360px at 92% 14%, rgba(134,239,172,.18), transparent 58%);
}
.kicker{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  background:rgba(220,252,231,.72);
  border:1px solid rgba(22,163,74,.18);
  color:var(--brand-ink);
  padding:.35rem .7rem;
  border-radius:999px;
  font-weight:900;
  font-size:.92rem;
}
.page-hero h1{ font-size:2.15rem; margin:.75rem 0 .6rem; }
.hero-cta{ display:flex; gap:.65rem; flex-wrap:wrap; margin-top:1rem; }

.entry{ padding:1.6rem 0 2.4rem; }
.entry .content{
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow);
  padding:1.25rem;
}
.wp-block-heading{ margin:1.55rem 0 .7rem; }
.has-text-align-center{ text-align:center; }

/* Tables (Gutenberg + custom) */
.wp-block-table{
  border-radius:14px;
  border:1px solid var(--border);
  overflow:hidden;
  background:#fff;
}
.wp-block-table .table-scroll,
.entry-content .table-scroll{
  width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling: touch;
}
.wp-block-table table,
.entry-content .table-scroll table{
  width:100%;
  border-collapse:collapse;
  min-width:640px; /* 필요하면 720으로 올리셔도 됩니다 */
  background:#fff;
}
.wp-block-table th, .wp-block-table td,
.entry-content .table-scroll th, .entry-content .table-scroll td{
  padding:.78rem .85rem;
  border-bottom:1px solid var(--border);
  white-space:nowrap;
}
.wp-block-table thead th,
.entry-content .table-scroll thead th{
  background:#f0fdf4;
  font-weight:950;
}
.wp-block-table tbody tr:nth-child(odd),
.entry-content .table-scroll tbody tr:nth-child(odd){
  background:#f0fdf4;
}
.wp-block-table tbody tr:hover,
.entry-content .table-scroll tbody tr:hover{
  background:rgba(22,163,74,.08);
}

/* Two-column section */
.section-row{
  display:flex;
  gap:2rem;
  flex-wrap:wrap;
}
.section-row .column{
  flex:1 1 420px;
  min-width:0; /* 이게 있어야 가로 스크롤이 부모를 밀지 않습니다 */
}

/* Hide default theme header/footer */
.site-header, .site-footer{ display:none; }

/* Footer */
.site-foot{
  background:#eef6f0;
  border-top:1px solid var(--border);
  padding:1.6rem 1rem;
  text-align:center;
  color:#4b5563;
  font-size:.92rem;
}

/* Responsive */
@media (max-width: 980px){
  .grid{ grid-template-columns:1fr; }
  .title{ font-size:2.05rem; }
}

/* Motion accessibility */
@media (prefers-reduced-motion: reduce){
  *{ transition:none !important; scroll-behavior:auto !important; }
}
