body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{background:#f8fafc;color:#1e293b;font-family:Apple SD Gothic Neo,Segoe UI,Malgun Gothic,Apple Color Emoji,Segoe UI Emoji,Arial,sans-serif;min-height:100vh;text-align:left}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.realtime-logs{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.logs-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;padding:15px 20px}.logs-header h3{color:#333;font-size:16px;margin:0}.logs-controls{align-items:center;display:flex;flex-wrap:wrap;gap:15px}.connection-status{align-items:center;display:flex;font-size:14px;gap:8px}.status-dot{animation:pulse 2s infinite;border-radius:50%;height:8px;width:8px}.status-dot.connected{background-color:#52c41a}.status-dot.disconnected{background-color:#f5222d}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.status-text{color:#666;font-weight:500}.test-connection-btn{background:#1890ff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:6px 12px;transition:background-color .2s}.test-connection-btn:hover{background:#40a9ff}.refresh-logs-btn{background:#1890ff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:6px 12px;transition:background-color .2s}.refresh-logs-btn:hover:not(:disabled){background:#40a9ff}.refresh-logs-btn:disabled{background:#d9d9d9;cursor:not-allowed}.auto-refresh-toggle{align-items:center;color:#666;cursor:pointer;display:flex;font-size:14px;gap:8px}.auto-refresh-toggle input[type=checkbox]{margin:0}.max-logs-select{background:#fff;border:1px solid #ddd;border-radius:4px;font-size:14px;padding:4px 8px}.clear-logs-btn{background:#ff4d4f;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:6px 12px;transition:background-color .2s}.clear-logs-btn:hover{background:#ff7875}.logs-container{max-height:400px;overflow-y:auto}.no-logs{align-items:center;background:#f8f9fa;color:#666;display:flex;font-size:14px;height:200px;justify-content:center}.logs-list{display:flex;flex-direction:column}.log-item{grid-gap:10px;align-items:center;border-bottom:1px solid #f0f0f0;display:grid;font-size:13px;gap:10px;grid-template-columns:80px 60px 1fr 60px 80px 120px;padding:10px 20px;transition:background-color .2s}.log-item:hover{background-color:#f8f9fa}.log-item:first-child{background-color:#e6f7ff;border-left:4px solid #1890ff}.log-time{color:#666;font-weight:500}.log-method{border-radius:3px;color:#fff;font-size:11px;font-weight:700;padding:2px 6px;text-align:center;text-transform:uppercase}.log-path{color:#333;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.log-status{font-weight:700;text-align:center}.log-latency{color:#666;font-weight:500;text-align:center}.log-ip{color:#888;font-size:12px;text-align:center}.logs-footer{align-items:center;background:#f8f9fa;border-top:1px solid #e9ecef;color:#666;display:flex;flex-wrap:wrap;font-size:14px;gap:10px;justify-content:space-between;padding:10px 20px}.last-update{color:#666;font-size:12px}.live-indicator{animation:blink 1s infinite;color:#52c41a;font-weight:700}@keyframes blink{0%{opacity:1}50%{opacity:.5}to{opacity:1}}@media (max-width:768px){.logs-header{align-items:stretch;flex-direction:column}.logs-controls{justify-content:space-between}.log-item{gap:5px;grid-template-columns:1fr;padding:15px}.log-item:before{color:#333;content:attr(data-label);font-weight:700;margin-bottom:2px}.log-time:before{content:"시간: "}.log-method:before{content:"메서드: "}.log-path:before{content:"경로: "}.log-status:before{content:"상태: "}.log-latency:before{content:"응답시간: "}.log-ip:before{content:"IP: "}.logs-footer{align-items:center;flex-direction:column;text-align:center}}.endpoint-detail{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px;padding:24px}.endpoint-detail h3{color:#1f2937;font-size:18px;font-weight:600;margin:0 0 20px}.endpoint-selection{margin-bottom:24px}.search-section{margin-bottom:16px}.search-input{border:1px solid #d1d5db;border-radius:6px;font-size:14px;outline:none;padding:12px 16px;transition:border-color .2s;width:100%}.search-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.endpoint-list-container{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px}.endpoint-list-container h4{color:#1f2937;font-size:14px;font-weight:600;margin:0 0 12px}.endpoint-list{background:#fff;border:1px solid #e2e8f0;border-radius:6px;max-height:300px;overflow-y:auto}.endpoint-item{align-items:center;border-bottom:1px solid #f1f5f9;cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px;transition:background-color .2s}.endpoint-item:last-child{border-bottom:none}.endpoint-item:hover{background:#f8fafc}.endpoint-item.selected{background:#dbeafe;border-left:4px solid #2563eb}.endpoint-path{color:#374151;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:13px;word-break:break-all}.loading-indicator{color:#6b7280;font-size:12px;font-style:italic}.loading,.no-endpoints{color:#6b7280;font-size:14px;padding:20px;text-align:center}.error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:4px;color:#dc2626;font-size:14px;margin-top:8px;padding:8px 12px}.endpoint-analysis{border-top:1px solid #e5e7eb;padding-top:24px}.endpoint-info h4{background:#f3f4f6;border-left:4px solid #2563eb;border-radius:6px;color:#1f2937;font-size:16px;font-weight:600;margin:0 0 20px;padding:12px 16px}.summary-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:32px}.stat-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:20px;text-align:center;transition:transform .2s,box-shadow .2s}.stat-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.stat-title{color:#64748b;font-size:14px;font-weight:500;margin-bottom:8px}.stat-value{color:#1f2937;font-size:24px;font-weight:700}.chart-section{margin-bottom:32px}.chart-section h4{color:#1f2937;font-size:16px;font-weight:600;margin:0 0 16px}.detailed-stats{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:20px}.detailed-stats h4{color:#1f2937;font-size:16px;font-weight:600;margin:0 0 16px}.stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.stat-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;display:flex;justify-content:space-between;padding:12px 16px}.stat-label{color:#64748b;font-size:14px;font-weight:500}.stat-item .stat-value{color:#1f2937;font-size:16px;font-weight:600}.endpoint-list::-webkit-scrollbar{width:6px}.endpoint-list::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.endpoint-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.endpoint-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width:768px){.endpoint-detail{padding:16px}.summary-stats{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:1fr}.endpoint-item,.stat-item{align-items:flex-start;flex-direction:column;gap:4px}}.ai-insights-container{width:100%}.ai-insights-title{color:#1f2937;font-size:24px;font-weight:600;margin:0 0 20px}.ai-insights-btn{background:#2563eb;border:none;border-radius:8px;box-shadow:0 1px 3px #1e293b12;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-bottom:20px;padding:10px 28px}.ai-insights-btn:disabled{background:#a5b4fc;cursor:not-allowed}.ai-insights-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:15px;margin-bottom:18px;padding:18px}.ai-insights-result{border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #1e293b12;margin-bottom:24px;padding:20px}.ai-insights-latest{background:#fff!important}.ai-insights-history-card{background:#f8fafc;transition:background .15s}.ai-insights-history-card.expanded,.ai-insights-history-card:hover{background:#f1f5f9}.ai-insights-result-title{color:#2563eb;margin-top:0}.ai-insights-result-pre{background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:15px;padding:14px;white-space:pre-wrap;word-break:break-all}.ai-insights-prompt{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;color:#374151;margin-bottom:18px;padding:18px}.ai-insights-prompt-title{color:#2563eb;margin:0 0 8px}.ai-insights-prompt-pre{background:none;border:none;font-size:14px;padding:0}.ai-insights-empty{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;font-size:15px;padding:18px}@media (max-width:1000px){.ai-insights-container{max-width:100%;padding:24px 8px}}.dashboard{background-color:#f8fafc;color:#1e293b;font-family:Apple SD Gothic Neo,Segoe UI,Malgun Gothic,Apple Color Emoji,Segoe UI Emoji,Arial,sans-serif;margin:0 auto;max-width:100%;min-height:100vh;padding:0}.dashboard-topbar{align-items:center;background:#1e293b;border-bottom:1.5px solid #111827;color:#fff;display:flex;font-size:18px;font-weight:700;height:48px;letter-spacing:2px;padding:0 0 0 32px;width:100%}.company-name{color:#fff;font-family:inherit;font-size:20px;font-weight:800;letter-spacing:2px}.dashboard-header{background:#fff;border:none;border-bottom:1px solid #e5e7eb;border-radius:0 0 12px 12px;box-shadow:0 1px 3px #00000012;margin-bottom:18px;padding:20px 32px}.dashboard-header h1{color:#1e293b;font-size:22px;font-weight:700;letter-spacing:1px;margin:0 0 10px}.date-controls{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.date-input-group label{color:#1e293b;font-size:13px;font-weight:500}.date-input-group input{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:13px;padding:6px 10px}.date-input-group input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.tab-navigation{align-items:flex-end;background:#fff;border:none;border-bottom:1.5px solid #e5e7eb;border-radius:0;box-shadow:none;display:flex;gap:4px;height:44px;margin-bottom:18px;padding:0 0 0 32px}.tab-button{background:#0000;border:none;border-bottom:2.5px solid #0000;border-radius:8px 8px 0 0;color:#1e293b;cursor:pointer;font-size:14px;font-weight:600;margin-bottom:-2px;padding:8px 24px;transition:all .2s}.tab-button.active{background:#1e293b;border-bottom:2.5px solid #1e293b;box-shadow:0 2px 4px #1e293b12;color:#fff}.tab-button:hover{background:#e0e7ef;color:#1e293b}.tab-content{min-height:600px;padding:0 32px 32px}.dashboard-grid{display:flex;flex-direction:column;gap:12px;margin-bottom:18px}.chart-container{box-sizing:border-box;min-width:0;overflow-x:auto;padding:10px 8px 8px;width:100%}.analysis-container,.chart-container,.realtime-container{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #00000012}.analysis-container,.realtime-container{padding:20px}@media (max-width:900px){.dashboard-header,.dashboard-topbar,.tab-content{padding-left:12px;padding-right:12px}.tab-navigation{padding-left:12px}}.refresh-btn{background:#1e293b;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:7px 14px;transition:background-color .2s}.refresh-btn:hover{background:#111827}.refresh-btn:disabled{background:#d9d9d9;cursor:not-allowed}.chart-container h3{color:#1e293b;font-size:15px;font-weight:600;margin:0 0 16px}.error,.loading{align-items:center;color:#6b7280;display:flex;font-size:13px;height:180px;justify-content:center}.recharts-cartesian-axis-tick-value,.recharts-legend-item-text,.recharts-tooltip-label,.recharts-wrapper{font-family:inherit!important;font-size:11px!important}
/*# sourceMappingURL=main.0b43527c.css.map*/