@import url(https://fonts.com/css2?family=Inter:wght@400;500;600;700;800&display=swap);:root{--color-primary:#1e40af;--color-primary-light:#3b82f6;--color-primary-dark:#1e3a8a;--color-secondary:#06b6d4;--color-secondary-light:#22d3ee;--color-background-primary:#f8fafc;--color-background-secondary:#f1f5f9;--color-background-tertiary:#e2e8f0;--color-surface-card:#fff;--color-surface-elevated:#fefefe;--color-text-primary:#1e293b;--color-text-secondary:#64748b;--color-text-tertiary:#94a3b8;--color-border:#e2e8f0;--color-border-light:#f1f5f9;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--color-info:#3b82f6;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #000f000a;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:250ms cubic-bezier(0.4,0,0.2,1);--transition-slow:350ms cubic-bezier(0.4,0,0.2,1);--transition-accessibility:0ms;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--font-family-base:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-family-mono:"JetBrains Mono","Fira Code","Roboto Mono",monospace;--font-size-xs:clamp(0.7rem,0.8vw,0.75rem);--font-size-sm:clamp(0.8rem,0.9vw,0.875rem);--font-size-base:clamp(0.9rem,1vw,1rem);--font-size-lg:clamp(1rem,1.1vw,1.125rem);--font-size-xl:clamp(1.1rem,1.25vw,1.25rem);--font-size-2xl:clamp(1.3rem,1.5vw,1.5rem);--font-size-3xl:clamp(1.6rem,1.875vw,1.875rem);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800}html{-webkit-text-size-adjust:100%;font-size:100%;line-height:1.5;line-height:var(--line-height-base,1.5);text-rendering:optimizeLegibility}@media (prefers-reduced-motion:reduce){:root{--transition-fast:var(--transition-accessibility);--transition-base:var(--transition-accessibility);--transition-slow:var(--transition-accessibility)}*{animation:none!important;scroll-behavior:auto!important;transition:none!important}}body,html{height:100%;margin:0;padding:0;width:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8fafc;background-color:var(--color-background-primary);color:#1e293b;color:var(--color-text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-family-base);font-weight:400;font-weight:var(--font-weight-normal);letter-spacing:-.01em;line-height:1.6;margin:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain}#root{min-height:100%;width:100%}code{font-family:JetBrains Mono,Fira Code,Roboto Mono,monospace;font-family:var(--font-family-mono)}*,:after,:before{box-sizing:border-box}:focus-visible{border-color:var(--color-focus-ring);box-shadow:var(--color-focus-shadow);outline:none}:focus:not(:focus-visible){outline:none}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.home-container{background:linear-gradient(135deg,var(--color-background-primary) 0,var(--color-background-tertiary) 100%);color:var(--color-text-primary);display:flex;min-height:calc(100vh - 80px);overflow:hidden;position:relative;transition:all var(--transition-slow)}.home-container:before{background-image:radial-gradient(circle at 20% 50%,#1e40af08 0,#0000 50%),radial-gradient(circle at 80% 80%,#06b6d408 0,#0000 50%);content:"";inset:0;pointer-events:none;position:absolute}.home-sidebar{background:linear-gradient(180deg,var(--color-primary-dark) 0,var(--color-primary) 100%);border-right:1px solid #ffffff1a;box-shadow:var(--shadow-xl);color:#fff;display:flex;flex-direction:column;flex-shrink:0;justify-content:flex-start;overflow-y:auto;padding:2rem 1rem;position:relative;transition:width var(--transition-base);width:280px;z-index:5}.sidebar-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-extrabold);letter-spacing:.02em;margin-bottom:1.5rem;text-align:center;text-shadow:0 2px 4px #0003}.sidebar-menu{list-style:none;margin:0;padding:0}.sidebar-item{margin-bottom:.6rem}.sidebar-button{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1a;border:1px solid #fff3;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);overflow:hidden;padding:.8rem 1rem;position:relative;text-align:left;transition:all var(--transition-base);width:100%}.sidebar-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";inset:0;position:absolute;transform:translateX(-100%);transition:transform var(--transition-slow)}.sidebar-button:hover:before{transform:translateX(100%)}.sidebar-button:hover{background:#ffffff40;border-color:#fff6;box-shadow:var(--shadow-md);transform:translateX(6px)}.sidebar-button:active{background:#ffffff59;transform:translateX(4px)}.home-content{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;overflow-y:auto;padding:3rem 4rem;position:relative;transition:padding var(--transition-base);z-index:1}.home-content h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));-webkit-background-clip:text;background-clip:text;font-size:var(--font-size-3xl);font-weight:var(--font-weight-extrabold);letter-spacing:-.02em;margin-bottom:1.5rem;text-align:center}.home-description{color:var(--color-text-secondary);font-size:var(--font-size-lg);font-weight:var(--font-weight-normal);line-height:1.6;max-width:700px;text-align:center}@media (max-width:1024px){.home-container{flex-direction:column;min-height:auto}.home-logo{max-width:300px}.home-sidebar{border-radius:0;box-shadow:var(--shadow-lg);flex-direction:row;max-height:60vh;overflow-y:auto;padding:1.5rem .5rem;scrollbar-color:#fff6 #0000;scrollbar-width:thin}.home-sidebar,.sidebar-menu{flex-wrap:wrap;justify-content:center;width:100%}.sidebar-menu{gap:.5rem;padding:0 1rem}.sidebar-item{flex:1 1 45%;margin:0;min-width:180px;width:auto}.home-content{padding:2rem 1rem}.sidebar-title{margin-bottom:1rem;text-align:center;width:100%}.sidebar-button{flex:1 1 45%;margin:.4rem;text-align:center}.home-content{padding:2rem}}@media (max-width:600px){.sidebar-button{flex:1 1 100%}.home-sidebar{max-height:50vh;padding:1rem .5rem}.sidebar-button{font-size:var(--font-size-base)}.sidebar-menu{flex-direction:column;gap:.3rem;padding:0 .5rem}.home-content h1{font-size:1.8rem}.home-content{padding:1.5rem .5rem}.home-logo{max-width:250px}.sidebar-item{flex:1 1 100%;min-width:0;min-width:auto}.home-description{font-size:1rem;padding:0 1rem}}.logo-placeholder{margin-bottom:1rem;opacity:.95;transition:opacity var(--transition-base)}.logo-placeholder:hover{opacity:1}.home-logo{filter:drop-shadow(0 4px 8px rgba(0,0,0,.1));height:auto;max-width:500px;transition:transform var(--transition-base)}.home-logo:hover{transform:scale(1.02)}.home-subtext{color:var(--color-text-secondary);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);line-height:1.6;margin-top:2rem;max-width:600px;text-align:center}.confirm-overlay{align-items:center;background:#0009;display:flex;font-family:inherit;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:9999}.confirm-box{animation:fadeInModal .3s ease-out;background:var(--color-surface-card);border-radius:8px;box-shadow:0 8px 16px #00000040;color:var(--color-text-primary);max-width:400px;padding:1.5rem 2rem;text-align:center}.confirm-box h3{color:#d84315;font-size:1.25rem;font-weight:600;margin-bottom:1rem;margin-top:0}.confirm-box p{color:var(--color-text-secondary);font-size:1rem;line-height:1.5}.confirm-buttons{display:flex;gap:1rem;justify-content:space-around;margin-top:2rem}.accept-btn,.cancel-btn{border:none;border-radius:4px;cursor:pointer;font-size:.95rem;font-weight:500;min-width:100px;padding:.6rem 1.25rem;transition:background .2s ease,transform .1s ease}.cancel-btn{background:var(--color-border);color:var(--color-text-primary)}.cancel-btn:hover{background:#cfcfcf;transform:scale(1.05)}.accept-btn{background:var(--color-primary);color:#fff}.accept-btn:hover{background:#5c6bc0;transform:scale(1.05)}@keyframes fadeInModal{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.chart-card{animation:fadeInUp var(--transition-slow) ease-out;background:var(--color-surface-card);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);box-sizing:border-box;display:flex;flex-direction:column;height:100%;justify-content:flex-start;overflow:hidden;padding:clamp(.8rem,1vw,1.2rem);position:relative;transition:all var(--transition-base);width:100%}.chart-card:before{background:linear-gradient(90deg,var(--color-primary),var(--color-secondary));content:"";height:3px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity var(--transition-base)}.chart-card:hover{border-color:var(--color-primary-light);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.chart-card:hover:before{opacity:1}.chart-card h3{word-wrap:break-word;-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));-webkit-background-clip:text;background-clip:text;color:var(--color-text-primary);flex-shrink:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);-webkit-hyphens:auto;hyphens:auto;line-height:1.3;margin:0 0 clamp(.5rem,.8vw,.8rem);max-height:3.9em;overflow:visible;text-align:center;white-space:normal}.chart-card .metric-summary{align-items:center;color:var(--color-text-secondary);display:flex;flex-shrink:0;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);justify-content:space-around;margin-bottom:clamp(.3rem,.5vw,.5rem)}.chart-body{align-items:stretch;display:flex;flex-grow:1;justify-content:center;min-height:0}.chart-body>div{height:100%!important;width:100%!important}.chart-blue{background-color:#00bfff;color:#fff}.chart-orange{background-color:orange;color:#fff}.chart-table{background-color:#fff;border:1px solid #e0e0e0;border-collapse:collapse;border-radius:var(--radius-sm);font-size:clamp(.5rem,.65vw,.75rem);margin-top:.3rem;overflow:hidden;width:100%}.chart-table td,.chart-table th{background-color:#fff!important;border-bottom:1px solid #eee;color:var(--color-text-primary);padding:clamp(2px,.25vw,4px) clamp(2px,.3vw,5px);text-align:center}.chart-table th{background:#fff!important;border-bottom:2px solid #e0e0e0;color:var(--color-text-primary);font-weight:600}.table-responsive{overflow-x:auto;width:100%}.comparative-container{align-items:flex-start;box-sizing:border-box;display:flex;gap:20px;height:100%;justify-content:space-around;overflow-y:auto;padding:clamp(.5rem,.8vw,.8rem);width:100%}.comparative-table{background:#fff;border:1px solid #e0eeef;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);box-sizing:border-box;color:var(--color-text-primary);flex:1 1;min-width:280px;overflow-x:auto;padding:clamp(.8rem,1vw,1.2rem);transition:all var(--transition-base)}.comparative-table:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.comparative-table h3{-webkit-text-fill-color:unset;background:none;-webkit-background-clip:unset;background-clip:initial;color:var(--color-primary)!important;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);letter-spacing:.02em;margin-bottom:clamp(.8rem,1vw,1rem);text-align:center;text-shadow:none}.comparative-table table{border-collapse:collapse;border-radius:var(--radius-md);font-size:var(--font-size-xs);overflow:hidden;width:100%}.comparative-table td,.comparative-table th{background-color:#fff!important;border-bottom:1px solid #eee;color:var(--color-text-primary);padding:clamp(4px,.5vw,8px);text-align:center;transition:background var(--transition-fast);white-space:nowrap}.comparative-table th{background:#fff!important;border-bottom:2px solid #e0e0e0;color:var(--color-text-primary);font-size:clamp(.6rem,.65vw,.7rem);font-weight:var(--font-weight-semibold);letter-spacing:.05em}.comparative-table tr:hover td{background:#f5f5f5!important}.chart-card .recharts-wrapper{color:var(--color-text-primary);display:grid;font-size:.8rem;grid-template-rows:auto 1fr auto;width:100%}.chart-card .recharts-surface{overflow:visible!important}.chart-card .recharts-cartesian-axis-tick{max-width:100px;transform-origin:center!important;white-space:normal!important;word-break:break-word}.chart-card .recharts-cartesian-axis-tick tspan{font-size:clamp(5px,.45vw,7px)!important;word-break:break-word}.chart-card .recharts-label-list text{fill:var(--color-text-primary)!important;font-size:clamp(5px,.5vw,8px)!important;font-weight:600;pointer-events:none}.recharts-cartesian-axis-tick{white-space:normal!important;word-break:break-word}.multi-pie-container{align-items:flex-start;flex-wrap:wrap;gap:20px;height:100%;justify-content:space-around;overflow-y:auto;padding:.3rem;width:100%}.multi-pie-container,.pie-wrapper{box-sizing:border-box;display:flex}.pie-wrapper{background:#fff;border-radius:10px;box-shadow:0 4px 8px #00000014;flex:1 1 260px;flex-direction:column;height:250px;max-width:320px;min-height:250px;padding:.5rem;text-align:center;transition:transform .2s ease,box-shadow .2s ease}.pie-wrapper:hover{box-shadow:0 6px 12px #0000001f;transform:translateY(-2px)}.pie-title{color:#036;flex-shrink:0;font-size:.75rem;font-weight:600;margin-bottom:.5rem;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}@media (max-width:1200px){.comparative-container{flex-wrap:wrap;justify-content:center}.comparative-table{flex:1 1 45%;min-width:300px}.multi-pie-container{flex-wrap:wrap;justify-content:space-around}.pie-wrapper{flex:1 1 45%;max-width:45%}}@media (max-width:768px){.comparative-container{flex-direction:column;overflow-y:visible}.comparative-table{flex:1 1 100%;min-width:0;min-width:auto;width:100%}.multi-pie-container{align-items:center;flex-direction:column}.pie-wrapper{max-width:95%;width:100%}.chart-card .recharts-cartesian-axis-tick{text-anchor:end!important;max-width:120px;transform:rotate(-45deg)!important;transform-origin:right top!important}.chart-card .recharts-cartesian-axis-tick tspan{font-size:8px!important}.chart-card .recharts-wrapper{font-size:.65rem}.comparative-table table{display:block;overflow-x:auto}}.dashboard-container{box-sizing:border-box;color:var(--color-text-primary);height:100vh;max-height:85vh;min-height:0;min-width:1366px;overflow:hidden;overflow-x:auto;padding:.5rem;position:relative}.dashboard-container,.dashboard-grid{display:flex;flex-direction:column;width:100%}.dashboard-grid{flex:1 1;gap:.5rem;height:100%;overflow:hidden}.row{display:flex;flex-wrap:nowrap;gap:.5rem;min-height:0;width:100%}.row.top{flex:1 1;flex-shrink:0;min-height:0}.row.middle{flex:2 1;gap:.5rem;min-height:0}.column-right{display:flex;flex-direction:column;gap:.5rem;height:100%}.column-right,.column-right>.card,.column-right>.row.bottom{flex:1 1;min-height:0}.card{align-items:stretch;background:var(--color-surface-card);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;flex:1 1;flex-direction:column;height:100%;justify-content:flex-start;overflow:hidden;padding:.5rem;position:relative;transition:all var(--transition-base);width:100%}.card.scrollable{overflow:auto}.card:hover{box-shadow:var(--shadow-lg)}.card.medium,.card.small,.card.tall{flex:1 1}.card.wide{flex:2 1}.card.space{background:#0000;border:none;box-shadow:none;flex:0.2 1;min-height:0;padding:0}.tabs{align-items:center;background:var(--color-surface-card);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-shrink:0;flex-wrap:nowrap;gap:.5rem;justify-content:flex-start;margin-bottom:.5rem;padding:.25rem .5rem}.tab-button{background:#0000;border:none;border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:.4rem .8rem;position:relative;transition:all var(--transition-base);white-space:nowrap}.tab-button.active{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));box-shadow:var(--shadow-md);color:#fff}.mode-selector{align-items:center;background:var(--color-surface-card);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-shrink:0;gap:.5rem;justify-content:center;margin-bottom:.5rem;padding:.25rem}.mode-selector button{background:#0000;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);min-width:120px;padding:.4rem 1rem;transition:all var(--transition-base)}.mode-selector button.active{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-light) 100%);border-color:var(--color-primary);box-shadow:var(--shadow-lg);color:var(--color-surface-card)}@media (max-width:1024px){.dashboard-container{height:auto;min-height:100vh;min-width:0;overflow-x:hidden;overflow-y:auto;padding:.5rem}.dashboard-grid{display:flex;flex-direction:column;gap:1rem;height:auto;overflow:visible}.column-right,.column-right>.row.bottom,.row,.row.middle,.row.top{display:flex;flex:none;flex-direction:column;gap:1rem;height:auto;width:100%}.card,.card.medium,.card.small,.card.tall,.card.wide,.column-right>.card{flex:none;height:auto;min-height:350px;width:100%}.mode-selector,.tabs{flex-wrap:wrap;justify-content:center;width:100%}.mode-selector button,.tab-button{flex:1 1;min-width:auto;text-align:center}}.dashboard-header{align-items:center;background-color:var(--color-primary);border-radius:6px;box-shadow:0 4px 8px #00000026;color:#fff;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1rem;padding:.2rem 1rem;position:relative}.dashboard-title-date{font-size:1.1rem;font-weight:700;margin:0;white-space:nowrap}.validation-error-message{animation:slideIn .3s ease-out;background-color:#ff4d4f;border-radius:4px;bottom:-30px;box-shadow:0 2px 8px #0003;color:#fff;font-size:.85rem;font-weight:600;left:0;padding:5px 10px;position:absolute;z-index:100}@keyframes slideIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.date-range-container{align-items:center;background:#ffffff1a;border-radius:4px;box-shadow:inset 0 0 4px #ffffff26;display:flex;flex-wrap:wrap;gap:1rem;padding:.5rem 1rem}.date-range-container label{font-size:.9rem;font-weight:500;white-space:nowrap}.comparison-year-input,.date-range-inputs,.topn-inputs{align-items:center;display:flex;flex-wrap:nowrap;gap:.5rem}.comparison-year-input input[type=number],.date-range-container input[type=date],.topn-inputs input[type=number]{background:#fff3;border:1px solid #ffffff4d;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;min-width:120px;outline:none;padding:4px 8px;transition:all .3s ease}.date-range-container input[type=date]{min-width:140px}.topn-inputs input[type=number]{min-width:0;text-align:center;width:60px}.comparison-year-input input[type=number]{min-width:0;text-align:center;width:80px}.date-range-container input:focus,.date-range-container input:hover{background:#ffffff4d;border-color:#fff}.date-range-container input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert(1)}.date-range-inputs>span{color:#fff;font-weight:500}.apply-button{background:var(--color-secondary);border:none;border-radius:4px;box-shadow:0 2px 4px #0003;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:5px 14px;transition:all .25s ease;white-space:nowrap}.apply-button:hover{background:#00e5ff;box-shadow:0 4px 8px #00000040;transform:translateY(-1px)}.apply-button:active{background:#00acc1;box-shadow:0 2px 4px #0003;transform:translateY(0)}.apply-button:disabled{background:#ffffff4d;box-shadow:none;color:#ffffffb3;cursor:not-allowed}.feminicidios-toggle,.hurto-type-filter{align-items:center;display:flex;gap:.5rem}.feminicidios-toggle label,.hurto-type-filter label{font-size:.9rem;font-weight:500;white-space:nowrap}.toggle-select{background:#fff3;border:1px solid #ffffff4d;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:600;min-width:140px;outline:none;padding:4px 8px;transition:all .3s ease}.toggle-select:focus,.toggle-select:hover{background:#ffffff4d;border-color:#fff}.toggle-select:focus{box-shadow:0 0 0 2px #fff3}.toggle-select option{background:var(--color-primary);color:#fff;padding:.5rem}.hamburger-menu{cursor:pointer;display:flex;flex-direction:column;position:relative;z-index:9999}.bar{background-color:#fff;height:3px;margin:4px 0;transition:.4s;width:25px}.bar.open:first-child{transform:rotate(-45deg) translate(-5px,6px)}.bar.open:nth-child(2){opacity:0}.bar.open:nth-child(3){transform:rotate(45deg) translate(-5px,-6px)}.modal-overlay{-webkit-overflow-scrolling:touch;align-items:center;background:#00000080;bottom:0;display:flex;height:100vh;justify-content:center;left:0;overflow-y:auto;padding:2rem 1rem;position:fixed;right:0;top:0;z-index:9999}.modal-content{background:var(--color-surface-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);color:var(--color-text-primary);max-height:80vh;max-width:500px;overflow-y:auto;padding:2rem;position:relative;width:80vw;z-index:10000}.modal-close{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;font-size:1.5rem;position:absolute;right:10px;top:10px;transition:color var(--transition-fast);z-index:10001}.modal-close:hover{color:var(--color-text-primary)}@media (max-width:600px){.modal-overlay{align-items:flex-start}.modal-content{margin:auto;padding:1.5rem;width:90vw}}.mobile-nav-modal{max-width:500px;padding:1.5rem}.mobile-nav-modal h2{color:var(--color-primary);font-size:1.5rem;font-weight:var(--font-weight-bold);margin-bottom:1.5rem;text-align:center}.mobile-nav-section{margin-bottom:1.5rem}.mobile-nav-section label{display:block;font-weight:var(--font-weight-semibold);margin-bottom:.5rem}.mobile-nav-section label,.mobile-nav-select{color:var(--color-text-primary);font-size:1rem}.mobile-nav-select{background:var(--color-surface-card);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;padding:.75rem;transition:border-color var(--transition-base);width:100%}.mobile-nav-select:focus{border-color:var(--color-primary);outline:none}.mobile-nav-button{background:var(--color-primary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;font-size:1.1rem;font-weight:var(--font-weight-semibold);padding:1rem;transition:all var(--transition-base);width:100%}.mobile-nav-button:hover{background:var(--color-secondary);box-shadow:var(--shadow-md);transform:translateY(-1px)}.mobile-nav-button:active{transform:translateY(0)}.filters-modal{max-width:500px;padding:1.5rem}.filters-modal h2{color:var(--color-primary);font-size:1.5rem;font-weight:700;text-align:center}.filters-modal h2,.filters-section{margin-bottom:1.5rem}.filters-section>label{color:#333;display:block;font-size:1rem;font-weight:600;margin-bottom:.5rem}.filters-date-inputs{gap:1rem}.filters-date-input,.filters-date-inputs{display:flex;flex-direction:column}.filters-date-input label{color:#555;font-size:.9rem;font-weight:500;margin-bottom:.25rem}.filters-date-input input,.filters-section input,.filters-section select{background:#fff;border:2px solid #ddd;border-radius:8px;font-size:1rem;padding:.75rem;transition:border-color .2s;width:100%}.filters-date-input input:focus,.filters-section input:focus,.filters-section select:focus{border-color:var(--color-primary);outline:none}.filters-error{background:#ffe5e5;border-radius:8px;color:#ff6b6b;font-size:.9rem;font-weight:600;margin-bottom:1rem;padding:.75rem;text-align:center}.filters-apply-button{background:var(--color-primary);border:none;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem;transition:all .2s;width:100%}.filters-apply-button:hover{background:var(--color-secondary);box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.filters-apply-button:active{transform:translateY(0)}@media (max-width:600px){.filters-modal{padding:1rem}.filters-modal h2{font-size:1.3rem}}.navbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,var(--color-primary-dark) 0,var(--color-primary) 100%);border-bottom:1px solid #ffffff1a;box-shadow:var(--shadow-xl);color:#fff;flex-wrap:wrap;height:auto;justify-content:space-between;max-height:140px;min-height:90px;overflow:visible;padding:.8rem 1.5rem;position:relative;z-index:9997}.navbar,.navbar-brand{align-items:center;display:flex;flex-shrink:0;gap:1rem}.navbar-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-extrabold);letter-spacing:-.02em;text-shadow:0 2px 4px #0003;white-space:nowrap}.navbar-filters{align-items:center;display:flex;flex:1 1;justify-content:center;min-width:0}.navbar-filters .dashboard-header{background-color:initial;box-shadow:none;margin:0 auto;max-width:-webkit-fit-content;max-width:fit-content;padding:0;width:auto}.navbar-filters .dashboard-title-date{font-size:.9rem}.navbar-filters .date-range-container{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff26;border:1px solid #fff3;border-radius:var(--radius-md);gap:.75rem;padding:.4rem .8rem}.navbar-filters .date-range-container label{font-size:.85rem;font-weight:var(--font-weight-medium)}.navbar-filters .date-range-container input[type=date],.navbar-filters .topn-inputs input[type=number]{border-radius:var(--radius-sm);font-size:.75rem;min-width:110px;padding:3px 6px}.navbar-filters .topn-inputs input[type=number]{width:55px}.navbar-filters .apply-button{border-radius:var(--radius-sm);font-size:.85rem;font-weight:var(--font-weight-medium);padding:4px 12px;transition:all var(--transition-base)}.navbar-filters .apply-button:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.navbar-toggle{background:none;border:none;color:#fff;cursor:pointer;display:none;font-size:1.8rem;padding:.25rem;transition:transform var(--transition-base)}.navbar-toggle:hover{opacity:.9;transform:scale(1.1)}.navbar-center{display:flex;flex-shrink:0;justify-content:flex-end}.navbar-select{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #ffffff4d;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);min-width:200px;padding:.6rem 1.2rem;transition:all var(--transition-base)}.navbar-select:hover{background:#ffffff40;border-color:#ffffff80;box-shadow:var(--shadow-md);transform:translateY(-1px)}.navbar-select:focus{outline:2px solid #ffffff80;outline-offset:2px}.navbar-select option{background-color:#fff;color:var(--color-text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-normal)}.navbar.is-mobile{height:60px;max-height:60px;min-height:60px;padding:.5rem 1rem}.navbar.is-mobile .navbar-brand{align-items:center;display:flex;justify-content:space-between;width:100%}.navbar.is-mobile .navbar-title{font-size:1.2rem}.navbar.is-mobile .navbar-center,.navbar.is-mobile .navbar-filters{display:none!important}@media (max-width:768px){.navbar{height:60px;max-height:60px;min-height:60px;padding:.5rem 1rem}.navbar-brand{align-items:center;display:flex;justify-content:space-between;width:100%}.navbar-title{font-size:1.2rem}.navbar-center,.navbar-filters{display:none!important}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.footer{background-color:var(--color-primary);color:#fff;font-size:.3rem;padding:.1rem 0;text-align:center}.footer-content{align-items:center;display:flex;flex-direction:row;justify-content:space-between;margin:0 auto}.footer-logo{height:30px;margin:.5rem}.layout{display:flex;flex-direction:column;height:100vh;min-height:100vh;overflow:hidden}main{background-color:var(--color-background-primary);display:flex;flex:1 1;flex-direction:column;overflow:auto;padding:0;position:relative}@media (max-width:1024px){.layout{min-height:100vh}.layout,main{height:auto;overflow:visible}main{flex:none}}.App{text-align:center}.App,.charts-container{display:flex;width:100%}.charts-container{flex-direction:column}.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)}}.spinner-overlay{align-items:center;background:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:9999}.spinner{animation:spin 2s linear infinite;border:16px solid #f3f3f3;border-radius:50%;border-top-color:#3498db;height:120px;width:120px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.fc5aad75.css.map*/