.mobile-only{display:block}.desktop-only{display:none}@media (min-width:600px){.mobile-only{display:none}.desktop-only{display:block}}.mobile-scrollable{-webkit-overflow-scrolling:touch;overflow-x:auto}.touch-friendly{min-height:44px;min-width:44px;touch-action:manipulation}.mobile-table{font-size:.875rem}.mobile-table td,.mobile-table th{font-size:.8rem;padding:8px 4px}@media (max-width:600px){.mobile-table{font-size:.75rem}.mobile-table td,.mobile-table th{font-size:.7rem;padding:6px 2px}}.mobile-form .MuiFormControl-root,.mobile-form .MuiTextField-root{margin-bottom:16px}.mobile-card-list{display:flex;flex-direction:column;gap:12px;padding:16px}.mobile-card-item{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 1px 3px #0000001a;cursor:pointer;padding:16px;transition:transform .2s,box-shadow .2s}.mobile-card-item:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.fc-mobile{font-size:.8rem}.fc-mobile .fc-toolbar{flex-direction:column;gap:8px}.fc-mobile .fc-toolbar-chunk{justify-content:center}.fc-mobile .fc-button{font-size:.75rem;padding:4px 8px}.fc-mobile .fc-event{font-size:.75rem;line-height:1.2;min-height:20px;overflow:hidden;padding:2px 4px;text-overflow:ellipsis}@media (max-width:768px){.fc-timeGridDay-view .fc-event{font-size:.75rem!important;line-height:1.3!important;min-height:24px!important;padding:2px 4px!important}.fc-timeGridDay-view .fc-event,.fc-timeGridWeek-view .fc-event{display:block!important;opacity:1!important;visibility:visible!important}.fc-timeGridWeek-view .fc-event{font-size:.7rem!important;line-height:1.2!important;min-height:20px!important;padding:1px 2px!important}.fc-timeGridDay-view .fc-timegrid-slot{height:1.5rem!important;min-height:1.5rem!important}.fc-timeGridDay-view .fc-timegrid-slot-label{font-size:.7rem!important;padding:2px!important}.fc-toolbar-title{font-size:1rem!important}.fc-event-main,.fc-timegrid-event-harness,.fc-timegrid-events{display:block!important;visibility:visible!important}}@media (max-width:600px){.MuiDialog-paper{margin:16px;max-height:calc(100% - 32px)}.MuiDialog-paper,.MuiDialog-paperFullWidth{width:calc(100% - 32px)}}.mobile-nav{background:#fff;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 4px #0000001a;left:0;position:fixed;right:0;top:0;z-index:1300}@media (max-width:600px){.MuiContainer-root{padding-left:16px;padding-right:16px}.MuiGrid-container{margin-left:-8px;margin-top:-8px}.MuiGrid-item{padding-left:8px;padding-top:8px}h1{font-size:2rem!important}h2{font-size:1.75rem!important}h3{font-size:1.5rem!important}h4{font-size:1.25rem!important}h5{font-size:1.1rem!important}h6{font-size:1rem!important}.MuiFormControl-root,.MuiTextField-root{margin-bottom:12px}.MuiInputBase-input{font-size:16px}}.mobile-button-stack{display:flex;flex-direction:column;gap:8px;width:100%}@media (min-width:600px){.mobile-button-stack{flex-direction:row;justify-content:flex-end;width:auto}}.mobile-chip-container{display:flex;flex-wrap:wrap;gap:4px;max-height:120px;overflow-y:auto}.mobile-chip-container .MuiChip-root{font-size:.75rem;height:24px}.mobile-loading{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:200px}.safe-area-inset{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.no-select{-webkit-user-select:none;user-select:none}.smooth-scroll{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}.fc .fc-button{align-items:center!important;border:1px solid!important;border-radius:8px!important;box-shadow:none!important;display:inline-flex!important;font-size:.875rem!important;font-weight:500!important;height:32px!important;justify-content:center!important;line-height:1.2!important;max-height:32px!important;min-height:32px!important;padding:6px 12px!important;text-transform:none!important}.fc .fc-next-button,.fc .fc-prev-button{font-size:1rem!important;height:32px!important;min-height:32px!important;padding:6px!important;width:32px!important}.fc .fc-button-group{display:flex!important;gap:2px!important}.fc .fc-button-group .fc-button{height:32px!important;margin:0!important;min-height:32px!important}.fc .fc-today-button{background-color:initial!important;height:32px!important;min-height:32px!important;padding:6px 12px!important}.fc .fc-toolbar{gap:8px!important;margin-bottom:1rem!important}.fc .fc-toolbar-title{font-size:1.25rem!important;font-weight:600!important;margin:0 8px!important}.fc .fc-header-toolbar{gap:8px!important;padding-bottom:1rem!important}.fc .fc-toolbar-chunk{align-items:center!important;display:flex!important;gap:4px!important}.fc .fc-button-primary{background-color:#0a2463!important;border-color:#0a2463!important;color:#fff!important;height:32px!important;min-height:32px!important;padding:6px 12px!important}.fc .fc-button-primary:hover:not(:disabled){background-color:#061640!important;border-color:#061640!important;box-shadow:0 2px 6px #00000026!important}.fc .fc-button-primary:active:not(:disabled),.fc .fc-button-primary:focus:not(:disabled){background-color:#061640!important;border-color:#061640!important;box-shadow:none!important}.fc .fc-button:disabled{cursor:not-allowed!important;opacity:.6!important}.fc .fc-button:not(:disabled){cursor:pointer!important}.fc .fc-button:focus{box-shadow:0 0 0 2px #0a246333!important;outline:none!important}.performance-monitor{background:#f8f9fa;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;padding:20px}.monitor-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:30px;padding:20px}.monitor-header h2{color:#333;font-size:1.8rem;margin:0}.monitor-controls{display:flex;gap:10px}.monitor-toggle{background:#2196f3;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .3s ease}.monitor-toggle:hover{background:#1976d2;transform:translateY(-2px)}.monitor-toggle.active{background:#4caf50}.metrics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr 1fr 1fr;margin-bottom:30px}.metric-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:20px;transition:transform .3s ease}.metric-card:hover{transform:translateY(-4px)}.metric-card.overall-score{grid-column:span 1;text-align:center}.metric-card h3{align-items:center;color:#333;display:flex;font-size:1.1rem;gap:10px;margin:0 0 15px}.status-indicator{animation:pulse 2s infinite;border-radius:50%;height:12px;width:12px}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.score-display{margin:20px 0}.score-circle,.score-display{display:flex;justify-content:center}.score-circle{align-items:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border:4px solid;border-radius:50%;flex-direction:column;height:120px;position:relative;width:120px}.score-number{color:#333;font-size:2rem;font-weight:700}.score-grade{font-size:1rem;font-weight:600;margin-top:5px}.optimization-stats{margin:15px 0}.before-after{justify-content:space-between;margin-bottom:15px}.before-after,.stat{align-items:center;display:flex}.stat{flex-direction:column}.stat-label{color:#666;font-size:.8rem;margin-bottom:5px}.stat-value{font-size:1.1rem;font-weight:600}.stat-value.before{color:#f44336}.stat-value.after{color:#4caf50}.arrow{color:#2196f3;font-size:1.5rem;font-weight:700}.reduction{background:linear-gradient(135deg,#4caf50,#45a049);border-radius:8px;color:#fff;padding:10px;text-align:center}.reduction-label{font-size:.9rem;margin-right:10px}.reduction-value{font-size:1.2rem;font-weight:700}.optimization-description{border-top:1px solid #eee;margin-top:15px;padding-top:15px}.optimization-description p{color:#666;font-size:.9rem;line-height:1.4;margin:0}.metric-details{margin-top:15px}.detail-item{display:flex;justify-content:space-between;margin-bottom:8px}.detail-item .label{color:#666;font-size:.9rem}.detail-item .value{color:#333;font-weight:600}.detail-item .value.reduction{color:#4caf50}.api-call-log{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:20px}.api-call-log h3{color:#333;margin:0 0 20px}.log-header{grid-gap:15px;border-bottom:2px solid #eee;color:#333;display:grid;font-size:.9rem;font-weight:600;gap:15px;grid-template-columns:1fr 2fr 1fr 1fr 1fr;padding:10px 0}.log-entries{max-height:300px;overflow-y:auto}.log-entry{grid-gap:15px;align-items:center;border-bottom:1px solid #f0f0f0;display:grid;font-size:.85rem;gap:15px;grid-template-columns:1fr 2fr 1fr 1fr 1fr;padding:12px 0}.log-entry:hover{background:#f8f9fa}.timestamp{color:#666}.endpoint{color:#333;font-family:Courier New,monospace;font-weight:500}.method{background:#2196f3;border-radius:4px;color:#fff;font-size:.8rem;padding:2px 8px;text-align:center}.response-time{color:#333;font-weight:500}.cache-status{border-radius:4px;font-size:.8rem;padding:4px 8px;text-align:center}.cache-status.cached{background:#e8f5e8;color:#4caf50}.cache-status.fresh{background:#e3f2fd;color:#2196f3}.no-calls{color:#666;font-style:italic;padding:40px 0;text-align:center}.performance-tips{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:20px}.performance-tips h3{color:#333;margin:0 0 15px}.performance-tips ul{margin:0;padding-left:20px}.performance-tips li{color:#555;line-height:1.5;margin-bottom:12px}.performance-tips strong{color:#2196f3}.performance-summary{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:20px}.performance-summary h3{color:#333;margin:0 0 20px;text-align:center}.summary-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr)}.summary-item{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;padding:20px;text-align:center}.summary-value{font-size:2rem;font-weight:700;margin-bottom:10px}.summary-label{font-size:.9rem;opacity:.9}@media (max-width:1200px){.metrics-grid{grid-template-columns:1fr 1fr}.summary-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.metrics-grid,.summary-grid{grid-template-columns:1fr}.monitor-header{flex-direction:column;gap:15px;text-align:center}.log-entry,.log-header{gap:10px;grid-template-columns:1fr;text-align:left}.before-after{flex-direction:column;gap:15px}}
/*# sourceMappingURL=main.15cf08cd.css.map*/