@font-face{font-family:Pretendard;font-weight:900;font-display:swap;src:local(Pretendard Black),url(../fonts/Pretendard/static/woff2/Pretendard-Black.woff2)format("woff2")}@font-face{font-family:Pretendard;font-weight:800;font-display:swap;src:local(Pretendard ExtraBold),url(../fonts/Pretendard/static/woff2/Pretendard-ExtraBold.woff2)format("woff2")}@font-face{font-family:Pretendard;font-weight:700;font-display:swap;src:local(Pretendard Bold),url(../fonts/Pretendard/static/woff2/Pretendard-Bold.woff2)format("woff2")}@font-face{font-family:Pretendard;font-weight:600;font-display:swap;src:local(Pretendard SemiBold),url(../fonts/Pretendard/static/woff2/Pretendard-SemiBold.woff2)format("woff2")}@font-face{font-family:Pretendard;font-weight:500;font-display:swap;src:local(Pretendard Medium),url(../fonts/Pretendard/static/woff2/Pretendard-Medium.woff2)format("woff2")}@font-face{font-family:Pretendard;font-weight:400;font-display:swap;src:local(Pretendard Regular),url(../fonts/Pretendard/static/woff2/Pretendard-Regular.woff2)format("woff2")}@font-face{font-family:Pretendard;font-weight:300;font-display:swap;src:local(Pretendard Light),url(../fonts/Pretendard/static/woff2/Pretendard-Light.woff2)format("woff2")}@font-face{font-family:Pretendard;font-weight:200;font-display:swap;src:local(Pretendard ExtraLight),url(../fonts/Pretendard/static/woff2/Pretendard-ExtraLight.woff2)format("woff2")}@font-face{font-family:Pretendard;font-weight:100;font-display:swap;src:local(Pretendard Thin),url(../fonts/Pretendard/static/woff2/Pretendard-Thin.woff2)format("woff2")}:root{--bg-main:#f8fafc;--bg-card:#fff;--bg-header:#fff;--primary:#2563eb;--primary-hover:#1d4ed8;--primary-light:#eff6ff;--text-main:#0f172a;--text-muted:#64748b;--border-color:#e2e8f0;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008;--shadow-lg:0 10px 15px -3px #00000014,0 4px 6px -2px #0000000a;--radius-sm:6px;--radius-md:10px;--radius-lg:16px}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-main);color:var(--text-main);-webkit-font-smoothing:antialiased;font-family:Pretendard,-apple-system,BlinkMacSystemFont,system-ui,Roboto,Helvetica Neue,Segoe UI,Apple SD Gothic Neo,Noto Sans KR,Malgun Gothic,sans-serif;line-height:1.5}.keep-all{word-break:keep-all;overflow-wrap:break-word}.nowrap{white-space:nowrap}.btn,button,input,select,textarea{font-family:Pretendard,-apple-system,BlinkMacSystemFont,system-ui,Roboto,sans-serif}.btn,button{white-space:nowrap;word-break:keep-all;cursor:pointer;border-radius:var(--radius-md);border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover{background-color:var(--primary-hover);box-shadow:var(--shadow-md)}.btn-secondary{border-color:var(--border-color);color:var(--text-main);background-color:#fff}.btn-secondary:hover{background-color:#f1f5f9}.badge{white-space:nowrap;word-break:keep-all;border-radius:9999px;align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-all{color:#334155;background-color:#e2e8f0}.badge-skt{color:#dc2626;background-color:#fee2e2}.badge-kt{color:#0284c7;background-color:#e0f2fe}.badge-lgu{color:#db2777;background-color:#fce7f3}.badge-admin{color:#d97706;background-color:#fef3c7}.badge-user{color:#4f46e5;background-color:#e0e7ff}.table-container{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);width:100%;overflow-x:auto}table.custom-table{border-collapse:collapse;text-align:left;width:100%;font-size:.875rem}table.custom-table th{color:var(--text-muted);background:#f1f5f9;font-weight:600}table.custom-table td,table.custom-table th{white-space:nowrap;word-break:keep-all;border-bottom:1px solid var(--border-color);padding:.75rem 1rem}table.custom-table tr:last-child td{border-bottom:none}table.custom-table tr:hover{background-color:#f8fafc}.modal-overlay{z-index:300;background-color:#0f172a80;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.modal-card{background:#fff;border-radius:16px;flex-direction:column;gap:1.25rem;width:100%;max-width:440px;max-height:calc(100vh - 3rem);padding:1.75rem;display:flex;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-card.modal-sm{max-width:380px}.modal-card.modal-lg{max-width:720px}.logout-modal-header,.modal-header{align-items:center;gap:.625rem;display:flex}.modal-icon{color:var(--primary)}.modal-title{color:#0f172a;font-size:1.125rem;font-weight:700}.modal-message{color:#334155;font-size:.9375rem;line-height:1.6}.modal-form{flex-direction:column;gap:1rem;display:flex}.modal-actions{justify-content:flex-end;gap:.75rem;margin-top:.5rem;display:flex}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.page-title{color:var(--text-main);font-size:1.5rem;font-weight:700}.page-subtitle{color:var(--text-muted);margin-top:.25rem;font-size:.875rem}.header-actions{gap:.75rem;display:flex}.table-card{background:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:12px;padding:1.25rem}.btn-danger{color:#fff;background-color:#dc2626}.btn-danger:hover:not(:disabled){background-color:#b91c1c}.btn-xs{border-radius:var(--radius-sm);padding:.25rem .625rem;font-size:.75rem}.btn-lg{padding:.75rem 1.5rem;font-size:1rem}.form-input,.form-select{background-color:var(--bg-card);color:var(--text-main);border:1px solid #cbd5e1;border-radius:8px;padding:.5rem .75rem;font-size:.875rem}.form-input:focus,.form-select:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #2563eb1a}.text-primary{color:var(--primary)}.text-danger{color:#dc2626}.text-muted{color:var(--text-muted)}.text-center{text-align:center}.text-xs{font-size:.75rem}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.font-medium{font-weight:500}.font-semibold{font-weight:600}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.ms-1{margin-left:.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.flex-1{flex:1}
