:root{--font-sans: "Noto Sans KR", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "Space Grotesk", "SFMono-Regular", Consolas, monospace;--brand-blue: #0031ab;--brand-blue-hover: #001f75;--brand-blue-subtle: rgba(0, 49, 171, .08); --pen-crimson: #d92632;--pen-crimson-hover: #b91c1c;--pen-crimson-subtle: rgba(217, 38, 50, .08);--pen-crimson-border: rgba(217, 38, 50, .28);--bg-base: #fbf9f5;--bg-sidebar: #f3eee4;--bg-panel: #ffffff;--bg-card: #ffffff;--bg-card-hover: #faf7f0;--bg-input: #f4efe4;--border-color: #e2dcce;--border-strong: #cfc6b4;--text-primary: #1c2024;--text-muted: #646d78;--text-light: #8a939e;--primary: var(--brand-blue);--primary-hover: var(--brand-blue-hover);--success: #15803d;--warning: #b45309;--danger: var(--pen-crimson);--radius: 8px}*{box-sizing:border-box;margin:0;padding:0;font-family:var(--font-sans)}body{background:var(--bg-base);color:var(--text-primary);min-height:100vh;-webkit-font-smoothing:antialiased}.font-mono,.kpi-value,.mono,code,.table-mono{font-family:var(--font-mono)!important;letter-spacing:-.5px}.admin-wrapper{display:flex;min-height:100vh;background:var(--bg-base)}.sidebar{width:270px;background:var(--bg-sidebar);border-right:1px solid var(--border-color);display:flex;flex-direction:column;padding:20px 14px;gap:16px}.sidebar-brand{display:flex;align-items:center;gap:10px}.logo-badge{background:var(--pen-crimson);color:#fff;font-weight:800;padding:4px 8px;border-radius:6px;font-size:13px;box-shadow:0 2px 6px #d926324d}.sidebar-brand h2{font-size:16px;font-weight:700;color:var(--text-primary)}.sidebar-brand span{font-size:12px;color:var(--text-muted)}.academy-badge{background:#fff;border:1px solid var(--border-color);padding:12px 14px;border-radius:var(--radius);box-shadow:0 1px 3px #0000000a}.sidebar-menu{display:flex;flex-direction:column;gap:3px;flex:1;overflow-y:auto}.menu-item{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;border-radius:6px;border:none;background:transparent;color:var(--text-muted);font-size:13.5px;font-weight:500;cursor:pointer;text-align:left;transition:all .15s ease}.menu-item:hover{background:#0000000a;color:var(--text-primary)}.menu-item.active{background:var(--pen-crimson-subtle);color:var(--pen-crimson);font-weight:700;border-left:3px solid var(--pen-crimson)}.main-content{flex:1;display:flex;flex-direction:column;overflow-y:auto;background:var(--bg-base)}.content-header{padding:18px 30px;border-bottom:1px solid var(--border-color);background:#fff;display:flex;justify-content:space-between;align-items:center;box-shadow:0 1px 2px #00000005}.content-header h1{font-size:20px;font-weight:700;color:var(--text-primary);letter-spacing:-.5px}.kpi-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:24px}.kpi-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius);padding:16px 18px;display:flex;flex-direction:column;gap:5px;box-shadow:0 1px 3px #00000008;transition:transform .15s ease}.kpi-card:hover{transform:translateY(-2px);border-color:var(--border-strong)}.kpi-title{font-size:12.5px;color:var(--text-muted)}.kpi-value{font-size:24px;font-weight:700;color:var(--text-primary)}.kpi-value.crimson{color:var(--pen-crimson)}.kpi-sub{font-size:11.5px;color:var(--text-light)}.panel-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius);padding:20px;box-shadow:0 1px 4px #00000008}.panel-card.correction-alert{border-left:4px solid var(--pen-crimson)}.co-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius);overflow:hidden;font-size:13px}.co-table th{background:#f8f5ee;color:var(--text-muted);font-weight:600;text-align:left;padding:11px 14px;border-bottom:1px solid var(--border-color);font-size:12px}.co-table td{padding:12px 14px;border-bottom:1px solid var(--border-color);color:var(--text-primary)}.co-table tr:hover td{background:#faf8f2}.badge-pen{background:var(--pen-crimson-subtle);color:var(--pen-crimson);border:1px solid var(--pen-crimson-border);padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600}.btn-pen{background:var(--pen-crimson);color:#fff;border:none;padding:7px 14px;border-radius:6px;font-size:12.5px;font-weight:600;cursor:pointer;box-shadow:0 1px 3px #d9263240;transition:background .15s ease}.btn-pen:hover{background:var(--pen-crimson-hover)}@media (max-width: 768px){input:not([type=checkbox]):not([type=radio]),select,textarea{min-height:40px}}
