:root{--ink: #1A1A1A;--ink-light: #3D3D3D;--ink-muted: #6B7280;--ink-faint: #9CA3AF;--accent: #1B3A5C;--accent-hover: #244D75;--accent-subtle: #E8EEF4;--surface: #FFFFFF;--surface-warm: #FAFAF7;--surface-dim: #F5F5F0;--rule: #E0DED8;--rule-light: #EEEDEA;--success: #2D6A4F;--success-bg: #F0F7F4;--warning: #92400E;--warning-bg: #FEF9EF;--error: #991B1B;--error-bg: #FEF2F2}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:Noto Sans KR,Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--surface-warm);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"liga" 1,"calt" 1}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--rule);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--ink-faint)}code,pre,.mono{font-family:JetBrains Mono,Fira Code,SF Mono,Consolas,monospace}.diffRemoved{display:inline;background:#fde8e8;color:#991b1b;border-bottom:2px solid #E53E3E;text-decoration:line-through;text-decoration-thickness:1.5px;text-decoration-color:#c53030;padding:0 2px}.diffKept{color:var(--ink, #1A1A1A)}.diffAdded{display:inline;background:#e6f4ea;color:#1b5e3b;border-bottom:2px solid #38A169;padding:0 2px;font-weight:500}.editorial-rule{border:none;border-top:1px solid var(--rule, #E0DED8);margin:16px 0}.editorial-rule-thick{border:none;border-top:2px solid var(--ink, #1A1A1A);margin:16px 0}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes subtlePulse{0%,to{opacity:1}50%{opacity:.6}}.animate-fade-in{animation:fadeIn .3s ease-out}.skeleton{background:linear-gradient(90deg,#f5f5f0 25%,#eeedea,#f5f5f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.pre-wrap{white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.85}.stat-mono{font-family:JetBrains Mono,monospace;font-size:.8rem;font-weight:500;letter-spacing:-.02em}.section-label{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted, #6B7280)}
