/* 인포코리아 공통 스타일 (Tailwind 보조) */
:root{--brand:#039855;--brand-d:#027a48;--ink:#0f1b2d;--line:#e2e8f0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{word-break:keep-all}
.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{scrollbar-width:none}
.bg-grid{background-image:linear-gradient(#fff 1px,transparent 1px),linear-gradient(90deg,#fff 1px,transparent 1px);background-size:44px 44px}

/* 버튼 */
.btn-primary,.btn-outline,.btn-dark,.btn-ghost{display:inline-flex;align-items:center;gap:.5rem;border-radius:.75rem;padding:.8rem 1.4rem;font-weight:700;line-height:1.2;transition:.15s}
.btn-primary{background:var(--brand);color:#fff;box-shadow:0 6px 16px -6px rgba(3,152,85,.55)}
.btn-primary:hover{background:var(--brand-d)}
.btn-outline{border:1px solid var(--line);background:#fff;color:var(--ink)}
.btn-outline:hover{border-color:#94a3b8}
.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{background:#1e293b}
.btn-ghost{color:#475569}.btn-ghost:hover{background:#f1f5f9}
.btn-sm{padding:.45rem .85rem;font-size:.85rem;border-radius:.6rem}

/* 폼 */
.f-label{display:block;margin-bottom:.4rem;font-size:.875rem;font-weight:600;color:#334155}
.f-label .req{color:#e11d48;margin-left:.15rem}
.f-input{width:100%;border-radius:.65rem;border:1px solid #cbd5e1;background:#fff;padding:.7rem .9rem;font-size:.95rem;color:var(--ink)}
.f-input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(3,152,85,.15)}
.f-help{margin-top:.35rem;font-size:.8rem;color:#64748b}
textarea.f-input{min-height:160px;resize:vertical}

/* 페이지네이션 */
.pg{display:grid;place-items:center;min-width:2.4rem;height:2.4rem;padding:0 .5rem;border-radius:.6rem;border:1px solid var(--line);font-size:.875rem;color:#475569;background:#fff}
.pg:hover{border-color:#94a3b8;color:var(--ink)}
.pg-on{background:var(--ink);border-color:var(--ink);color:#fff;font-weight:700}

/* 카드 */
.card{border:1px solid var(--line);border-radius:1.25rem;background:#fff}
.card-hover{transition:transform .2s,box-shadow .2s,border-color .2s}
.card-hover:hover{transform:translateY(-4px);box-shadow:0 18px 40px -18px rgba(15,27,45,.25);border-color:#cbd5e1}

/* 섹션 헤더 */
.eyebrow{display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--brand)}
.h-section{margin-top:.6rem;font-size:clamp(1.6rem,3vw,2.3rem);font-weight:800;letter-spacing:-.025em;line-height:1.25}

/* 표 */
.tbl{width:100%;border-collapse:collapse;font-size:.92rem}
.tbl th,.tbl td{padding:.85rem 1rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.tbl thead th{background:#f8fafc;font-weight:700;color:#334155;border-top:2px solid var(--ink)}

/* 본문(게시글) */
.prose-lite{line-height:1.85;color:#334155}
.prose-lite p{margin:.6em 0}

/* 퀵버튼 */
.quick-btn{display:grid;place-items:center;width:3rem;height:3rem;border-radius:9999px;box-shadow:0 8px 24px -8px rgba(15,27,45,.35);border:1px solid rgba(15,27,45,.06);transition:.2s}

/* 등장 애니메이션 */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

/* 썸네일 없는 경우 */
.thumb-ph{background:linear-gradient(135deg,#eef2f7,#dfe7f1);display:grid;place-items:center;color:#94a3b8}
