@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size: 12px;--rc-drag-handle-mobile-size: 24px;--rc-drag-handle-bg-colour: rgba(0, 0, 0, .2);--rc-drag-bar-size: 6px;--rc-border-color: rgba(255, 255, 255, .7);--rc-focus-color: #0088ff}.ReactCrop{position:relative;display:inline-block;cursor:crosshair;max-width:100%}.ReactCrop *,.ReactCrop *:before,.ReactCrop *:after{box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{overflow:hidden;max-height:inherit}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-width:100%;max-height:inherit}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video{touch-action:none}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{touch-action:none}.ReactCrop__crop-mask{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;width:calc(100% + .5px);height:calc(100% + .5px)}.ReactCrop__crop-selection{position:absolute;top:0;left:0;transform:translateZ(0);cursor:move}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{pointer-events:none;content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border:1px solid var(--rc-border-color);opacity:.3}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed white}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){animation:marching-ants 1s;background-image:linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%);background-size:10px 1px,10px 1px,1px 10px,1px 10px;background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;color:#fff;animation-play-state:running;animation-timing-function:linear;animation-iteration-count:infinite}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{content:"";display:block;position:absolute;background-color:#fff6}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after{width:1px;height:100%}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{width:100%;height:1px}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{position:absolute;width:var(--rc-drag-handle-size);height:var(--rc-drag-handle-size);background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color)}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{top:0;left:0;transform:translate(-50%,-50%);cursor:nw-resize}.ReactCrop .ord-n{top:0;left:50%;transform:translate(-50%,-50%);cursor:n-resize}.ReactCrop .ord-ne{top:0;right:0;transform:translate(50%,-50%);cursor:ne-resize}.ReactCrop .ord-e{top:50%;right:0;transform:translate(50%,-50%);cursor:e-resize}.ReactCrop .ord-se{bottom:0;right:0;transform:translate(50%,50%);cursor:se-resize}.ReactCrop .ord-s{bottom:0;left:50%;transform:translate(-50%,50%);cursor:s-resize}.ReactCrop .ord-sw{bottom:0;left:0;transform:translate(-50%,50%);cursor:sw-resize}.ReactCrop .ord-w{top:50%;left:0;transform:translate(-50%,-50%);cursor:w-resize}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{top:0;left:0;width:100%;height:var(--rc-drag-bar-size);transform:translateY(-50%)}.ReactCrop__drag-bar.ord-e{right:0;top:0;width:var(--rc-drag-bar-size);height:100%;transform:translate(50%)}.ReactCrop__drag-bar.ord-s{bottom:0;left:0;width:100%;height:var(--rc-drag-bar-size);transform:translateY(50%)}.ReactCrop__drag-bar.ord-w{top:0;left:0;width:var(--rc-drag-bar-size);height:100%;transform:translate(-50%)}.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle,.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w{display:none}@media(pointer:coarse){.ReactCrop .ord-n,.ReactCrop .ord-e,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{width:var(--rc-drag-handle-mobile-size);height:var(--rc-drag-handle-mobile-size)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-0: #080808;--bg-1: #0f0f0f;--bg-2: #161616;--bg-3: #1e1e1e;--bg-4: #262626;--red-950: #1a0505;--red-800: #4a1010;--red-600: #8b1a1a;--red-500: #a52020;--red-400: #c0392b;--text-0: #f0eeeb;--text-1: #c8c6c2;--text-2: #8a8884;--text-3: #4a4947;--border: rgba(255,255,255,.07);--border-md: rgba(255,255,255,.12);--border-red: rgba(139,26,26,.35);--radius: 8px;--radius-lg: 12px;--radius-xl: 16px;--shadow-sticky: rgba(0,0,0,.4);--font-display: "Syne", sans-serif;--font-body: "DM Sans", sans-serif}[data-theme=light]{--bg-0: #f5f5f5;--bg-1: #ffffff;--bg-2: #f9fafb;--bg-3: #f1f5f9;--bg-4: #e2e8f0;--red-950: #fef2f2;--red-800: #991b1b;--red-600: #dc2626;--red-500: #ef4444;--red-400: #dc2626;--text-0: #111827;--text-1: #374151;--text-2: #6b7280;--text-3: #9ca3af;--border: rgba(0,0,0,.08);--border-md: rgba(0,0,0,.15);--border-red: rgba(220,38,38,.25);--shadow-sticky: rgba(0,0,0,.1)}[data-theme=light] .badge-green{background:#dcfce7;color:#16a34a;border-color:#bbf7d0}[data-theme=light] .badge-red{background:#fef2f2;color:#dc2626;border-color:#fecaca}[data-theme=light] .badge-amber{background:#fefce8;color:#ca8a04;border-color:#fef08a}[data-theme=light] .badge-gray{background:#f3f4f6;color:#6b7280;border-color:#e5e7eb}[data-theme=light] .badge-blue{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}[data-theme=light] .modal-overlay{background:#00000080}[data-theme=light] .stat-card.accent{background:#fef2f2}[data-theme=light] ::-webkit-scrollbar-track{background:#f1f5f9}[data-theme=light] ::-webkit-scrollbar-thumb{background:#cbd5e1}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#dc2626}html{font-size:16px}body{font-family:var(--font-body);background:var(--bg-0);color:var(--text-0);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-1)}::-webkit-scrollbar-thumb{background:var(--bg-4);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--red-600)}.btn{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-body);font-size:14px;font-weight:500;border:none;border-radius:var(--radius);cursor:pointer;padding:8px 16px;transition:all .15s;text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--red-600);color:var(--text-0);border:1px solid var(--red-500)}.btn-primary:hover:not(:disabled){background:var(--red-500)}.btn-ghost{background:transparent;color:var(--text-1);border:1px solid var(--border-md)}.btn-ghost:hover:not(:disabled){background:var(--bg-3);color:var(--text-0);border-color:var(--border-red)}.btn-danger{background:transparent;color:#e55;border:1px solid rgba(220,50,50,.3)}.btn-danger:hover:not(:disabled){background:#dc32321a}.btn-sm{padding:5px 10px;font-size:13px}.btn-lg{padding:12px 24px;font-size:15px}.btn-icon{padding:8px}.input{width:100%;background:var(--bg-2);color:var(--text-0);border:1px solid var(--border-md);border-radius:var(--radius);padding:9px 12px;font-family:var(--font-body);font-size:14px;transition:border-color .15s;outline:none}.input::placeholder{color:var(--text-3)}.input:focus{border-color:var(--red-600)}select.input{cursor:pointer}textarea.input{resize:vertical;min-height:80px}.input-group{display:flex;flex-direction:column;gap:6px}.input-group label{font-size:13px;color:var(--text-2);font-weight:500}.card{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:20px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.badge-green{background:#22c55e1f;color:#4ade80;border:1px solid rgba(34,197,94,.2)}.badge-red{background:#dc26261f;color:#f87171;border:1px solid rgba(220,38,38,.2)}.badge-amber{background:#f59e0b1f;color:#fbbf24;border:1px solid rgba(245,158,11,.2)}.badge-gray{background:#ffffff0f;color:var(--text-2);border:1px solid var(--border)}.badge-blue{background:#3b82f61f;color:#93c5fd;border:1px solid rgba(59,130,246,.2)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px}thead th{text-align:left;padding:10px 12px;color:var(--text-2);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid var(--border-md)}tbody tr{border-bottom:1px solid var(--border);transition:background .1s}tbody tr:hover{background:var(--bg-3)}tbody tr.checked{background:#22c55e0d}tbody td{padding:10px 12px;color:var(--text-1);vertical-align:middle}tbody td strong{color:var(--text-0);font-weight:500}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#000000d9;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:var(--bg-2);border:1px solid var(--border-md);border-radius:var(--radius-xl);padding:28px;width:100%;max-width:560px;max-height:90vh;overflow-y:auto}.modal-title{font-family:var(--font-display);font-size:20px;font-weight:700;margin-bottom:20px}.stat-card{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px}.stat-card .stat-label{font-size:11px;color:var(--text-2);font-weight:500;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.stat-card .stat-value{font-family:var(--font-display);font-size:30px;font-weight:700;line-height:1}.stat-card .stat-sub{font-size:12px;color:var(--text-2);margin-top:4px}.stat-card.accent{border-color:var(--border-red);background:var(--red-950)}.stat-card.accent .stat-value{color:var(--red-400)}.progress-bar{height:4px;background:var(--bg-4);border-radius:2px;overflow:hidden;margin-top:8px}.progress-fill{height:100%;border-radius:2px;transition:width .5s ease;background:var(--red-600)}.progress-fill.green{background:#22c55e}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.fade-in{animation:fadeIn .2s ease forwards}@media(max-width:767px){html,body,#root{max-width:100%!important;width:100%!important;overflow-x:hidden!important;margin:0!important;padding:0!important;position:relative!important}*,*:before,*:after{box-sizing:border-box!important}main{max-width:100%!important;width:100%!important}main>div{max-width:100%!important}.modal-overlay{padding:0!important;align-items:stretch!important;z-index:9999!important;overscroll-behavior:contain!important;touch-action:pan-y!important}.modal{max-width:100vw!important;width:100vw!important;max-height:100vh!important;min-height:100vh!important;border-radius:0!important;border:none!important;padding:14px!important;box-sizing:border-box!important;overscroll-behavior:contain!important}.modal-title{font-size:17px!important;margin-bottom:14px!important}.input{font-size:16px!important;padding:10px 12px!important;max-width:100%!important}.btn{padding:10px 14px;font-size:14px}.btn-sm{padding:6px 10px;font-size:12px}.card{padding:14px!important;max-width:100%!important}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}table{font-size:12px}th,td{padding:6px 8px!important}h1{font-size:22px!important}h2{font-size:18px!important}table th[style*="position: sticky"],table td[style*="position: sticky"],table th[style*="position:sticky"],table td[style*="position:sticky"]{position:static!important;box-shadow:none!important}}
