:root{--font-sans:system-ui, -apple-system, "Segoe UI", "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, "D2Coding", monospace;--bg:#fff;--bg-soft:#f8fafc;--bg-muted:#f1f5f9;--text:#1e293b;--text-strong:#0f172a;--text-muted:#475569;--text-faint:#64748b;--border:#e2e8f0;--border-strong:#cbd5e1;--accent:#4f46e5;--accent-hover:#4338ca;--accent-soft:#eef2ff;--accent-soft-border:#c7d2fe;--accent-text:#3730a3;--link:#4338ca;--success:#10b981;--success-bg:#ecfdf5;--success-text:#065f46;--danger:#ef4444;--danger-text:#b91c1c;--insert-bg:#ecfdf5;--insert-strong:#d1fae5;--insert-text:#064e3b;--delete-bg:#fef2f2;--delete-strong:#fee2e2;--delete-text:#7f1d1d;--radius:12px;--radius-small:8px;--gap:16px;--page-width:1152px;color-scheme:light}html.dark{--bg:#020617;--bg-soft:#0f172a;--bg-muted:#1e293b;--text:#e2e8f0;--text-strong:#fff;--text-muted:#94a3b8;--text-faint:#94a3b8;--border:#1e293b;--border-strong:#334155;--accent-soft:#312e8166;--accent-soft-border:#312e81;--accent-text:#c7d2fe;--link:#a5b4fc;--success-bg:#022c22;--success-text:#6ee7b7;--danger-text:#f87171;--insert-bg:#064e3b73;--insert-strong:#065f46b3;--insert-text:#a7f3d0;--delete-bg:#7f1d1d73;--delete-strong:#991b1bb3;--delete-text:#fecaca;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;font-size:16px;line-height:1.5;display:flex}h1,h2,h3,p,ol,ul,dl,dd,fieldset{margin:0}ul,ol{padding:0}a{color:inherit}img,svg{display:block}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.icon{flex-shrink:0;width:16px;height:16px}.button{border:1px solid var(--border-strong);border-radius:var(--radius-small);background:var(--bg);min-height:40px;color:var(--text);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:14px;font-weight:500;text-decoration:none;transition:background-color .15s,border-color .15s;display:inline-flex}.button:hover{background:var(--bg-muted)}.button:disabled{cursor:not-allowed;opacity:.5}.button.primary{border-color:var(--accent);background:var(--accent);color:#fff}.button.primary:hover{background:var(--accent-hover)}.button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text)}.button.mono{font-family:var(--font-mono)}.field{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--bg);width:100%;color:var(--text-strong);padding:12px 14px;font-size:16px;line-height:1.6;display:block}.field::placeholder{color:var(--text-faint)}.field:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #4f46e540}.field.compact{padding-top:8px;padding-bottom:8px}.field.mono{font-family:var(--font-mono);font-size:14px}textarea.field{resize:vertical}.field[readonly]{background:var(--bg-soft)}.field-label{color:var(--text-muted);margin-bottom:6px;font-size:14px;font-weight:600;display:block}.checkbox{min-height:40px;color:var(--text-muted);cursor:pointer;align-items:center;gap:8px;font-size:14px;display:inline-flex}.checkbox input{width:16px;height:16px;accent-color:var(--accent);margin:0}.panel{border:1px solid var(--border);border-radius:var(--radius);padding:16px}.panel legend{color:var(--text-muted);padding:0 4px;font-size:14px;font-weight:600}.button-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.option-row{flex-wrap:wrap;column-gap:24px;display:flex}.option-grid{column-gap:24px;display:grid}@media (width>=640px){.option-grid{grid-template-columns:1fr 1fr}}.stack{flex-direction:column;gap:20px;display:flex}.stack.tight{gap:16px}.textarea-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px;min-height:40px;margin-bottom:6px;display:flex}.textarea-head .field-label{margin-bottom:0}.status-text{color:var(--text-muted);font-size:14px}.status-text.error{color:var(--danger-text);font-weight:500}.article{max-width:768px}.article h2{color:var(--text-strong);margin:40px 0 12px;font-size:20px;font-weight:700}.article h3{color:var(--text-strong);margin:24px 0 8px;font-size:16px;font-weight:600}.article p,.article li{color:var(--text-muted);line-height:1.75}.article p{margin-bottom:16px}.article ol{padding-left:24px}.article li+li{margin-top:6px}.article a{color:var(--link);text-underline-offset:2px;font-weight:500}.article code{background:var(--bg-muted);font-family:var(--font-mono);border-radius:4px;padding:1px 4px;font-size:.9em}.page-title{letter-spacing:-.02em;color:var(--text-strong);font-size:30px;font-weight:800;line-height:1.2}@media (width>=640px){.page-title{font-size:36px}}.skip-link[data-astro-cid-hkbrpulz]{z-index:50;border-radius:var(--radius-small);background:var(--bg);padding:8px 12px;font-size:14px;position:absolute;top:-100px;left:8px}.skip-link[data-astro-cid-hkbrpulz]:focus{top:8px}.site-header[data-astro-cid-hkbrpulz]{border-bottom:1px solid var(--border);background:var(--bg)}.header-bar[data-astro-cid-hkbrpulz],.page[data-astro-cid-hkbrpulz],.footer-bar[data-astro-cid-hkbrpulz]{width:100%;max-width:var(--page-width);margin:0 auto;padding-left:16px;padding-right:16px}.header-bar[data-astro-cid-hkbrpulz]{justify-content:space-between;align-items:center;gap:12px;padding-top:12px;padding-bottom:12px;display:flex}.brand[data-astro-cid-hkbrpulz]{color:var(--text-strong);align-items:center;gap:8px;font-size:18px;font-weight:700;text-decoration:none;display:flex}.header-actions[data-astro-cid-hkbrpulz]{gap:8px;display:flex}.theme-toggle[data-astro-cid-hkbrpulz]{padding:8px 10px}.theme-toggle[data-astro-cid-hkbrpulz] svg[data-astro-cid-hkbrpulz]{width:20px;height:20px}.icon-sun[data-astro-cid-hkbrpulz],html.dark .icon-moon[data-astro-cid-hkbrpulz]{display:none}html.dark .icon-sun[data-astro-cid-hkbrpulz]{display:block}.page[data-astro-cid-hkbrpulz]{flex:1;padding-top:32px;padding-bottom:48px}.site-footer[data-astro-cid-hkbrpulz]{border-top:1px solid var(--border);background:var(--bg-soft);font-size:14px}.footer-bar[data-astro-cid-hkbrpulz]{padding-top:32px;padding-bottom:32px}.footer-title[data-astro-cid-hkbrpulz]{color:var(--text-strong);font-weight:600}.footer-text[data-astro-cid-hkbrpulz]{color:var(--text-muted);margin-top:6px}
