/* 이용약관 / 개인정보처리방침 공통 스타일 */
:root {
    --cream: #FBF7F1; --card: #FFFFFF; --ink: #17140F; --ink-soft: #4A463E;
    --line: #E7E1D6; --line-soft: #F0EBE0; --clay: #E0733C; --clay-soft: #FBE6D9;
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
    margin: 0; color: var(--ink); line-height: 1.75; font-size: 15px; word-break: keep-all;
    font-family: 'Pretendard', -apple-system, BlinkMacSystemFont, 'Apple SD Gothic Neo', sans-serif;
    background: var(--cream);
    background-image:
        radial-gradient(circle at 12% 4%, rgba(224,115,60,0.07), transparent 38%),
        radial-gradient(circle at 92% 96%, rgba(224,115,60,0.06), transparent 40%);
    background-attachment: fixed;
    -webkit-font-smoothing: antialiased;
}

/* 상단 바 */
.lg-bar {
    position: sticky; top: 0; z-index: 10;
    padding-top: env(safe-area-inset-top, 0px);
    background: rgba(251,247,241,0.86);
    -webkit-backdrop-filter: saturate(160%) blur(12px); backdrop-filter: saturate(160%) blur(12px);
    border-bottom: 1px solid var(--line);
}
.lg-bar-in { max-width: 720px; margin: 0 auto; height: 54px; padding: 0 12px; display: flex; align-items: center; gap: 4px; }
.lg-back {
    appearance: none; border: none; background: transparent; cursor: pointer; font-family: inherit;
    width: 40px; height: 40px; border-radius: 12px; color: var(--ink); font-size: 26px; line-height: 1;
    display: flex; align-items: center; justify-content: center; -webkit-tap-highlight-color: transparent;
}
.lg-back:hover { background: var(--line-soft); }
.lg-back:active { background: #E9E2D2; }
.lg-bar-title { flex: 1; text-align: center; font-size: 15px; font-weight: 700; letter-spacing: -0.01em; margin-right: 40px; }

/* 본문 카드 */
.lg { max-width: 720px; margin: 0 auto; padding: 20px 16px calc(56px + env(safe-area-inset-bottom, 0px)); }
.lg-card {
    background: var(--card); border: 1px solid var(--line); border-radius: 22px;
    padding: 32px 26px 36px;
    box-shadow: 0 1px 2px rgba(23,20,15,0.04), 0 18px 44px -24px rgba(23,20,15,0.2);
}
.lg-card h1 { font-size: 24px; line-height: 1.35; font-weight: 800; letter-spacing: -0.02em; margin: 0 0 10px; }
.meta {
    font-size: 12.5px; line-height: 1.6; color: #8A8372; margin: 0 0 8px; padding: 12px 14px;
    background: var(--line-soft); border-radius: 12px;
}
.lg-card h2 {
    position: relative; font-size: 17px; font-weight: 700; letter-spacing: -0.01em;
    margin: 34px 0 10px; padding-left: 12px;
}
.lg-card h2::before {
    content: ''; position: absolute; left: 0; top: 0.28em; bottom: 0.28em; width: 4px; border-radius: 4px; background: var(--clay);
}
.lg-card p, .lg-card li { color: var(--ink-soft); font-size: 14.5px; }
.lg-card p { margin: 8px 0; }
.lg-card ul, .lg-card ol { padding-left: 22px; margin: 8px 0; }
.lg-card li { margin: 5px 0; padding-left: 2px; }
.lg-card li::marker { color: var(--clay); font-weight: 700; }
.lg-card b, .lg-card strong { color: var(--ink); }
.lg-card a { color: var(--clay); font-weight: 600; }

/* 표 */
.lg-table { margin: 12px 0; border: 1px solid var(--line); border-radius: 14px; overflow: hidden; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.lg-card table { width: 100%; border-collapse: collapse; font-size: 13.5px; }
.lg-card table:not(.lg-wrapped) { margin: 12px 0; border: 1px solid var(--line); }
.lg-card th, .lg-card td { padding: 11px 13px; text-align: left; vertical-align: top; line-height: 1.55; border-bottom: 1px solid var(--line); border-right: 1px solid var(--line); }
.lg-card th:last-child, .lg-card td:last-child { border-right: none; }
.lg-card tr:last-child td { border-bottom: none; }
.lg-card th { background: var(--line-soft); color: var(--ink); font-weight: 700; font-size: 12.5px; white-space: nowrap; }
.lg-card td { color: var(--ink-soft); background: #fff; }

/* 시행일 등 채워야 할 자리 표시 */
.todo { background: var(--clay-soft); color: #B5532A; border-radius: 5px; padding: 1px 6px; font-weight: 600; }

@media (max-width: 420px) {
    .lg { padding: 14px 12px calc(48px + env(safe-area-inset-bottom, 0px)); }
    .lg-card { padding: 26px 18px 30px; border-radius: 18px; }
    .lg-card h1 { font-size: 22px; }
}