/* 统一申请表填写示范 (PO 2026-10-29) */
.fg-page [hidden] { display: none !important; }
.fg { max-width: 48rem; margin: 0 auto; padding: 1.25rem 16px 3rem; box-sizing: border-box; color: #0f172a; }
.fg-head { margin-bottom: 1rem; }
.fg-kicker { margin: 0 0 0.25rem; font-size: 0.8125rem; font-weight: 700; color: #2563eb; letter-spacing: 0.02em; }
.fg-title { margin: 0 0 0.5rem; font-size: 1.5rem; line-height: 1.3; }
.fg-intro { margin: 0 0 0.5rem; color: #334155; font-size: 0.9375rem; line-height: 1.65; }
.fg-meta { margin: 0; color: #64748b; font-size: 0.8125rem; line-height: 1.5; }
.fg-cards { display: block; margin: 0 0 1.25rem; padding: 0.8rem 1rem; border: 1px solid #bfdbfe; border-radius: 14px; background: #eff6ff; color: #1d4ed8; font-weight: 600; text-decoration: none; line-height: 1.45; }
.fg-cards:hover, .fg-cards:focus-visible { border-color: #2563eb; }
.fg-sec { margin: 0 0 1.75rem; }
.fg-h2 { margin: 0 0 0.75rem; font-size: 1.125rem; line-height: 1.35; }
.fg-text, .fg-note { margin: 0 0 0.75rem; font-size: 0.9375rem; line-height: 1.65; color: #334155; }
.fg-note { font-size: 0.8125rem; color: #64748b; }
.fg-list { margin: 0; padding-left: 1.25rem; display: grid; gap: 0.4rem; font-size: 0.9375rem; line-height: 1.6; color: #1e293b; }
.fg-list--num { list-style: decimal; }
.fg-link { color: #1d4ed8; text-decoration: none; font-weight: 600; }
.fg-link:hover { text-decoration: underline; }
.fg-types { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.5rem; }
@media (min-width: 40rem) { .fg-types { grid-template-columns: 1fr 1fr; } }
.fg-type { display: flex; flex-direction: column; gap: 0.15rem; padding: 0.7rem 0.85rem; border: 1px solid #e2e8f0; border-radius: 12px; background: #ffffff; }
.fg-type__ko { font-weight: 700; font-size: 0.9375rem; }
.fg-type__name { font-size: 0.875rem; color: #1e293b; }
.fg-type__when { font-size: 0.8125rem; color: #64748b; line-height: 1.45; }
.fg-fields { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.75rem; }
.fg-field { padding: 0.9rem 1rem; border: 1px solid #e2e8f0; border-radius: 14px; background: #ffffff; }
.fg-field__top { display: flex; align-items: center; gap: 0.6rem; margin-bottom: 0.35rem; }
.fg-field__no { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 1.6rem; height: 1.6rem; border-radius: 999px; background: #2563eb; color: #ffffff; font-size: 0.8125rem; font-weight: 700; }
.fg-field__name { font-weight: 700; font-size: 1rem; }
.fg-field__ko { display: inline-block; margin: 0 0 0.45rem; padding: 0.2rem 0.5rem; border: 1px solid #94a3b8; background: #f8fafc; font-size: 0.875rem; font-weight: 600; color: #334155; }
.fg-field__how { margin: 0 0 0.55rem; font-size: 0.9375rem; line-height: 1.6; color: #1e293b; }
.fg-field__ex { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.5rem; padding: 0.5rem 0.65rem; border: 1px dashed #93c5fd; border-radius: 10px; background: #f8fbff; }
.fg-field__exlabel { font-size: 0.75rem; font-weight: 700; color: #64748b; }
.fg-field__val { font-size: 0.9375rem; font-weight: 600; color: #1d4ed8; overflow-wrap: anywhere; }
.fg-field__tip { margin: 0.55rem 0 0; font-size: 0.875rem; line-height: 1.55; color: #9a3412; }
.fg-check { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.4rem; }
.fg-check li { position: relative; padding: 0.55rem 0.75rem 0.55rem 2.1rem; border-radius: 10px; background: #f1f5f9; font-size: 0.9375rem; line-height: 1.5; }
.fg-check li::before { content: "☐"; position: absolute; left: 0.75rem; top: 0.5rem; color: #2563eb; }
.fg-guides { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.4rem; }
