@import url(https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap);@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap);:root{--cpl-primary:#1a3d2b;--cpl-primary-dark:#122a1e;--cpl-primary-light:#2d6a4f;--cpl-primary-muted:#edf7f1;--cpl-bg:#f1f5f9;--cpl-surface:#fff;--cpl-surface-2:#f9fafb;--cpl-surface-3:#f3f4f6;--cpl-border:#e5e7eb;--cpl-border-strong:#d1d5db;--cpl-text-1:#111827;--cpl-text-2:#374151;--cpl-text-3:#6b7280;--cpl-text-4:#9ca3af;--cpl-success:#16a34a;--cpl-success-dark:#15803d;--cpl-success-bg:#f0fdf4;--cpl-success-border:#bbf7d0;--cpl-warning:#d97706;--cpl-warning-dark:#b45309;--cpl-warning-bg:#fffbeb;--cpl-warning-border:#fde68a;--cpl-danger:#dc2626;--cpl-danger-dark:#b91c1c;--cpl-danger-bg:#fef2f2;--cpl-danger-border:#fecaca;--cpl-info:#2563eb;--cpl-info-dark:#1d4ed8;--cpl-info-bg:#eff6ff;--cpl-info-border:#bfdbfe;--cpl-neutral:#6b7280;--cpl-neutral-bg:#f3f4f6;--cpl-neutral-border:#e5e7eb;--cpl-font:"Inter",system-ui,-apple-system,sans-serif;--cpl-text-xs:11px;--cpl-text-sm:13px;--cpl-text-base:15px;--cpl-text-lg:17px;--cpl-text-xl:20px;--cpl-text-2xl:24px;--cpl-text-3xl:30px;--cpl-weight-regular:400;--cpl-weight-medium:500;--cpl-weight-semibold:600;--cpl-leading-tight:1.25;--cpl-leading:1.5;--cpl-leading-loose:1.75;--cpl-space-1:4px;--cpl-space-2:8px;--cpl-space-3:12px;--cpl-space-4:16px;--cpl-space-5:20px;--cpl-space-6:24px;--cpl-space-8:32px;--cpl-space-10:40px;--cpl-space-12:48px;--cpl-radius-xs:6px;--cpl-radius-sm:8px;--cpl-radius:12px;--cpl-radius-lg:16px;--cpl-radius-xl:20px;--cpl-radius-full:9999px;--cpl-shadow-xs:0 1px 3px #0000000f;--cpl-shadow:0 2px 12px #00000012;--cpl-shadow-lg:0 4px 24px #00000017;--cpl-shadow-xl:0 8px 40px #0000001f;--cpl-transition:150ms ease;--cpl-transition-slow:250ms ease;--cpl-z-dropdown:100;--cpl-z-modal:200;--cpl-z-drawer:300;--cpl-z-toast:400;--cpl-sidebar-width:240px;--cpl-sidebar-width-collapsed:64px;--cpl-header-height:56px;--cpl-content-max-width:1280px}.cpl-btn{align-items:center;border:none;cursor:pointer;display:inline-flex;font-family:var(--cpl-font);font-weight:var(--cpl-weight-medium);gap:var(--cpl-space-2);justify-content:center;outline:none;transition:var(--cpl-transition);white-space:nowrap}.cpl-btn:disabled{cursor:not-allowed;opacity:.5;pointer-events:none}.cpl-btn:focus-visible{outline:2px solid var(--cpl-primary);outline-offset:2px}.cpl-btn-primary{background:var(--cpl-primary);color:#fff}.cpl-btn-primary:hover:not(:disabled){background:var(--cpl-primary-light)}.cpl-btn-primary:active:not(:disabled){background:var(--cpl-primary-dark)}.cpl-btn-secondary{background:var(--cpl-surface);border:1.5px solid var(--cpl-border)!important;color:var(--cpl-text-2)}.cpl-btn-secondary:hover:not(:disabled){background:var(--cpl-surface-3);border-color:var(--cpl-border-strong)!important}.cpl-btn-ghost{background:#0000;color:var(--cpl-text-2)}.cpl-btn-ghost:hover:not(:disabled){background:var(--cpl-surface-3)}.cpl-btn-danger{background:var(--cpl-danger);color:#fff}.cpl-btn-danger:hover:not(:disabled){background:var(--cpl-danger-dark)}.cpl-btn-success{background:var(--cpl-success);color:#fff}.cpl-btn-success:hover:not(:disabled){background:var(--cpl-success-dark)}.cpl-btn-warning{background:var(--cpl-warning);color:#fff}.cpl-btn-warning:hover:not(:disabled){background:var(--cpl-warning-dark)}.cpl-btn-sm{border-radius:var(--cpl-radius-sm);font-size:var(--cpl-text-xs);padding:6px 12px}.cpl-btn-md{font-size:var(--cpl-text-sm);padding:9px 16px}.cpl-btn-lg,.cpl-btn-md{border-radius:var(--cpl-radius)}.cpl-btn-lg{font-size:var(--cpl-text-base);padding:12px 22px}.cpl-btn-full{width:100%}.cpl-input,.cpl-select{background:var(--cpl-surface);border:1.5px solid var(--cpl-border);border-radius:var(--cpl-radius);box-sizing:border-box;color:var(--cpl-text-1);font-family:var(--cpl-font);font-size:var(--cpl-text-sm);outline:none;padding:9px 12px;transition:border-color var(--cpl-transition),box-shadow var(--cpl-transition);width:100%}.cpl-input:hover,.cpl-select:hover{border-color:var(--cpl-border-strong)}.cpl-input:focus,.cpl-select:focus{border-color:var(--cpl-primary);box-shadow:0 0 0 3px #1a3d2b14}.cpl-input:disabled,.cpl-select:disabled{background:var(--cpl-surface-3);color:var(--cpl-text-4);cursor:not-allowed}.cpl-input-error,.cpl-select-error{border-color:var(--cpl-danger)!important}.cpl-input-error:focus,.cpl-select-error:focus{box-shadow:0 0 0 3px #dc262614!important}.cpl-input-icon-left{padding-left:36px}.cpl-input-icon-right{padding-right:36px}.cpl-card{background:var(--cpl-surface);border-radius:var(--cpl-radius-lg);box-shadow:var(--cpl-shadow);overflow:hidden}.cpl-card-hoverable{cursor:pointer;transition:box-shadow var(--cpl-transition),transform var(--cpl-transition)}.cpl-card-hoverable:hover{box-shadow:var(--cpl-shadow-lg);transform:translateY(-1px)}.cpl-table{border-collapse:collapse;width:100%}.cpl-table th{background:var(--cpl-surface-2);border-bottom:1.5px solid var(--cpl-border);color:var(--cpl-text-3);font-size:var(--cpl-text-xs);font-weight:var(--cpl-weight-semibold);letter-spacing:.05em;padding:10px 14px;text-align:left;text-transform:uppercase}.cpl-table td{border-bottom:1px solid var(--cpl-surface-3);color:var(--cpl-text-2);font-size:var(--cpl-text-sm);padding:11px 14px}.cpl-table tr:last-child td{border-bottom:none}.cpl-table-clickable tbody tr{cursor:pointer;transition:background var(--cpl-transition)}.cpl-table-clickable tbody tr:hover{background:var(--cpl-surface-2)}.cpl-table-align-right{text-align:right}.cpl-table-align-center{text-align:center}.cpl-modal-overlay{align-items:center;background:#0006;display:flex;inset:0;justify-content:center;padding:var(--cpl-space-4);position:fixed;z-index:var(--cpl-z-modal)}.cpl-modal-box{background:var(--cpl-surface);border-radius:var(--cpl-radius-xl);box-shadow:var(--cpl-shadow-xl);display:flex;flex-direction:column;max-height:92vh;overflow:hidden;width:100%}.cpl-modal-sm{max-width:400px}.cpl-modal-md{max-width:560px}.cpl-modal-lg{max-width:760px}.cpl-modal-xl{max-width:1000px}.cpl-drawer-overlay{background:#00000059;inset:0;position:fixed;z-index:var(--cpl-z-drawer)}.cpl-drawer-bottom{border-radius:var(--cpl-radius-xl) var(--cpl-radius-xl) 0 0;left:0;max-height:90vh}.cpl-drawer-bottom,.cpl-drawer-right{background:var(--cpl-surface);bottom:0;box-shadow:var(--cpl-shadow-xl);display:flex;flex-direction:column;position:fixed;right:0;z-index:var(--cpl-z-drawer)}.cpl-drawer-right{top:0}.cpl-drawer-handle{background:var(--cpl-border-strong);border-radius:var(--cpl-radius-full);flex-shrink:0;height:4px;margin:10px auto 0;width:40px}.cpl-scroll{overflow-y:auto}.cpl-scroll::-webkit-scrollbar{width:6px}.cpl-scroll::-webkit-scrollbar-track{background:#0000}.cpl-scroll::-webkit-scrollbar-thumb{background:var(--cpl-border-strong);border-radius:3px}:root{--green-950:#0a1f12;--green-900:#122a1b;--green-800:#1a3d28;--green-700:#235234;--green-600:#2d6a42;--green-500:#3a8554;--green-400:#52a36e;--green-300:#74c491;--green-200:#a8dbb8;--green-100:#d4eedd;--green-50:#edf7f1;--orange-500:#e8632a;--orange-100:#fde8d8;--red-500:#dc3545;--red-100:#fde8ea;--gray-950:#0d0f0e;--gray-900:#111614;--gray-800:#1c211e;--gray-700:#2e3530;--gray-600:#445049;--gray-500:#637068;--gray-400:#8a9890;--gray-300:#b4bfb8;--gray-200:#d4dbd6;--gray-150:#e2e8e4;--gray-100:#eef2ef;--gray-50:#f5f7f5;--white:#fff;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:28px;--shadow-xs:0 1px 2px #0000000f;--shadow-sm:0 2px 8px #00000012;--shadow-md:0 4px 16px #00000014;--shadow-lg:0 8px 32px #0000001a;--font:"Plus Jakarta Sans",sans-serif;--font-mono:"JetBrains Mono",monospace;--transition:all 0.18s cubic-bezier(0.4,0,0.2,1)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}#root,body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f7f5;background:var(--gray-50);color:#111614;color:var(--gray-900);font-family:Plus Jakarta Sans,sans-serif;font-family:var(--font);height:100%}::-webkit-scrollbar{height:5px;width:5px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#d4dbd6;background:var(--gray-200);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#b4bfb8;background:var(--gray-300)}.btn{align-items:center;border:none;border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-family:Plus Jakarta Sans,sans-serif;font-family:var(--font);font-size:13.5px;font-weight:600;gap:7px;justify-content:center;letter-spacing:-.01em;padding:9px 18px;text-decoration:none;transition:all .18s cubic-bezier(.4,0,.2,1);transition:var(--transition);white-space:nowrap}.btn-primary{background:#1a3d28;background:var(--green-800);box-shadow:0 1px 3px #1a3d2840;color:#fff;color:var(--white)}.btn-primary:hover{background:#122a1b;background:var(--green-900);box-shadow:0 3px 10px #1a3d284d;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-danger{background:#dc3545;background:var(--red-500);color:#fff;color:var(--white)}.btn-danger:hover{background:#c0303a}.btn-secondary{background:#fff;background:var(--white);border:1.5px solid #d4dbd6;border:1.5px solid var(--gray-200);box-shadow:0 1px 2px #0000000f;box-shadow:var(--shadow-xs);color:#2e3530;color:var(--gray-700)}.btn-secondary:hover{background:#f5f7f5;background:var(--gray-50);border-color:#b4bfb8;border-color:var(--gray-300)}.btn-ghost{background:#0000;color:#637068;color:var(--gray-500)}.btn-ghost:hover{background:#eef2ef;background:var(--gray-100);color:#2e3530;color:var(--gray-700)}.btn-lg{border-radius:12px;border-radius:var(--radius-md);font-size:15px;padding:12px 24px}.btn-sm{border-radius:4px;border-radius:var(--radius-xs);font-size:12.5px;padding:6px 12px}.btn-icon{border-radius:8px;border-radius:var(--radius-sm);padding:8px}.btn:disabled{cursor:not-allowed;opacity:.45;transform:none!important}.card{background:#fff;background:var(--white);border:1px solid #e2e8e4;border:1px solid var(--gray-150);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 2px 8px #00000012;box-shadow:var(--shadow-sm)}.badge{align-items:center;border-radius:99px;display:inline-flex;font-size:11.5px;font-weight:600;gap:4px;letter-spacing:.01em;padding:3px 9px}.badge-green{background:#d4eedd;background:var(--green-100);color:#1a3d28;color:var(--green-800)}.badge-orange{background:#fde8d8;background:var(--orange-100);color:#9a3d0f}.badge-red{background:#fde8ea;background:var(--red-100);color:#dc3545;color:var(--red-500)}.badge-gray{background:#eef2ef;background:var(--gray-100);color:#445049;color:var(--gray-600)}input,select,textarea{background:#fff;background:var(--white);border:1.5px solid #d4dbd6;border:1.5px solid var(--gray-200);border-radius:8px;border-radius:var(--radius-sm);color:#111614;color:var(--gray-900);font-family:Plus Jakarta Sans,sans-serif;font-family:var(--font);font-size:13.5px;outline:none;padding:9px 13px;transition:all .18s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:100%}input:hover,select:hover,textarea:hover{border-color:#b4bfb8;border-color:var(--gray-300)}input:focus,select:focus,textarea:focus{border-color:#3a8554;border-color:var(--green-500);box-shadow:0 0 0 3px #3a85541f}input::placeholder,textarea::placeholder{color:#8a9890;color:var(--gray-400)}label{color:#445049;color:var(--gray-600);display:block;font-size:12.5px;font-weight:600;letter-spacing:.01em;margin-bottom:5px}.form-group{margin-bottom:16px}.modal-overlay{align-items:center;animation:fadeIn .15s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f14118c;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:10000}.modal{animation:slideUp .2s cubic-bezier(.34,1.56,.64,1);background:#fff;background:var(--white);border-radius:20px;border-radius:var(--radius-xl);box-shadow:0 8px 32px #0000001a;box-shadow:var(--shadow-lg);max-height:92vh;max-width:520px;overflow-y:auto;width:100%}.modal-header{align-items:center;display:flex;justify-content:space-between;padding:22px 24px 0}.modal-title{color:#111614;color:var(--gray-900);font-size:17px;font-weight:700;letter-spacing:-.02em}.modal-body{padding:18px 24px 24px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes cpl-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}.spin{animation:spin .8s linear infinite}.loading-screen{align-items:center;background:#f5f7f5;background:var(--gray-50);display:flex;height:100vh;justify-content:center}.spinner{animation:spin .7s linear infinite;border:2.5px solid #d4dbd6;border-radius:50%;border-top-color:#2d6a42;border:2.5px solid var(--gray-200);border-top-color:var(--green-600);height:32px;width:32px}@media (max-width:768px){.modal{border-radius:20px 20px 0 0;border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-width:100%}.modal-overlay{align-items:flex-end;padding:0}}.hide-mobile{display:inline;display:initial}.show-mobile{display:none}@media (max-width:768px){.hide-mobile{display:none!important}.show-mobile{display:inline!important;display:initial!important}.tbl-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto;width:100%}.btn-row{flex-wrap:wrap;gap:8px!important}.page-header{align-items:flex-start!important;flex-direction:column!important;gap:10px!important}.page-header-actions{flex-wrap:wrap;gap:6px!important}.stat-grid{gap:10px!important;grid-template-columns:repeat(2,1fr)!important}.filter-row{flex-direction:column!important;gap:8px!important}.filter-row>*{max-width:100%!important;width:100%!important}.card{max-width:100%}.form-grid-2,.form-grid-3{grid-template-columns:1fr!important}.btn-full-mobile{justify-content:center!important;width:100%!important}.p-mobile-sm{padding:12px!important}}@media (max-width:480px){.stat-grid{grid-template-columns:1fr!important}.text-dense{font-size:11px!important}.btn{font-size:13px;padding:8px 14px}.btn-sm{font-size:11.5px;padding:5px 10px}}.pac-container{z-index:10000!important}@media (max-width:640px){.cpl-dropdown{border-radius:16px!important;bottom:8px!important;box-shadow:0 -6px 30px #00000040!important;left:8px!important;max-height:72vh!important;max-width:none!important;min-width:0!important;overflow-y:auto!important;position:fixed!important;right:8px!important;top:auto!important;width:auto!important;z-index:10050!important}}[style*=grid-template-columns]>*{min-width:0}@media (max-width:640px){.cpl-content img,.cpl-content video{max-width:100%}}