web-mojo 2.1.977 → 2.1.979

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/dist/admin.cjs.js +1 -1
  2. package/dist/admin.cjs.js.map +1 -1
  3. package/dist/admin.es.js +50 -8
  4. package/dist/admin.es.js.map +1 -1
  5. package/dist/auth.cjs.js +1 -1
  6. package/dist/auth.cjs.js.map +1 -1
  7. package/dist/auth.es.js +2 -2
  8. package/dist/auth.es.js.map +1 -1
  9. package/dist/charts.cjs.js +1 -1
  10. package/dist/charts.es.js +2 -2
  11. package/dist/chunks/{ChatView-C1IPSfjo.js → ChatView-C1702ZPZ.js} +3 -3
  12. package/dist/chunks/{ChatView-C1IPSfjo.js.map → ChatView-C1702ZPZ.js.map} +1 -1
  13. package/dist/chunks/{ChatView-DFP_Gptr.js → ChatView-CVZScWPz.js} +2 -2
  14. package/dist/chunks/{ChatView-DFP_Gptr.js.map → ChatView-CVZScWPz.js.map} +1 -1
  15. package/dist/chunks/{Dialog-Dq_QZWO3.js → Dialog-Be1EkdvX.js} +3 -3
  16. package/dist/chunks/{Dialog-Dq_QZWO3.js.map → Dialog-Be1EkdvX.js.map} +1 -1
  17. package/dist/chunks/{Dialog-Cm8FBKBR.js → Dialog-YnhCC4C2.js} +2 -2
  18. package/dist/chunks/{Dialog-Cm8FBKBR.js.map → Dialog-YnhCC4C2.js.map} +1 -1
  19. package/dist/chunks/{FormView-B_nJKNfq.js → FormView-CQbR3S82.js} +284 -216
  20. package/dist/chunks/FormView-CQbR3S82.js.map +1 -0
  21. package/dist/chunks/{FormView-BPH70cm4.js → FormView-DHz1ydYg.js} +2 -2
  22. package/dist/chunks/FormView-DHz1ydYg.js.map +1 -0
  23. package/dist/chunks/{MetricsMiniChartWidget-Br4Hg74G.js → MetricsMiniChartWidget-CHsOuS2O.js} +2 -2
  24. package/dist/chunks/{MetricsMiniChartWidget-Br4Hg74G.js.map → MetricsMiniChartWidget-CHsOuS2O.js.map} +1 -1
  25. package/dist/chunks/{MetricsMiniChartWidget-C8BVRLtm.js → MetricsMiniChartWidget-DMGjpLSU.js} +2 -2
  26. package/dist/chunks/{MetricsMiniChartWidget-C8BVRLtm.js.map → MetricsMiniChartWidget-DMGjpLSU.js.map} +1 -1
  27. package/dist/chunks/{PDFViewer-XlOIcSxd.js → PDFViewer-BN200UnI.js} +2 -2
  28. package/dist/chunks/{PDFViewer-XlOIcSxd.js.map → PDFViewer-BN200UnI.js.map} +1 -1
  29. package/dist/chunks/{PDFViewer-DxCgaoOw.js → PDFViewer-BlWEqtY5.js} +2 -2
  30. package/dist/chunks/{PDFViewer-DxCgaoOw.js.map → PDFViewer-BlWEqtY5.js.map} +1 -1
  31. package/dist/chunks/{TopNav-D8hDsmyN.js → TopNav-DF8w5mgO.js} +2 -2
  32. package/dist/chunks/{TopNav-D8hDsmyN.js.map → TopNav-DF8w5mgO.js.map} +1 -1
  33. package/dist/chunks/{TopNav-CBSoNCFK.js → TopNav-ueVUoXcv.js} +2 -2
  34. package/dist/chunks/{TopNav-CBSoNCFK.js.map → TopNav-ueVUoXcv.js.map} +1 -1
  35. package/dist/chunks/{WebApp-DRvyOIDY.js → WebApp-gsWqZg8e.js} +13 -13
  36. package/dist/chunks/{WebApp-DRvyOIDY.js.map → WebApp-gsWqZg8e.js.map} +1 -1
  37. package/dist/chunks/{WebApp-yLQ-WHm0.js → WebApp-m17riaNV.js} +2 -2
  38. package/dist/chunks/{WebApp-yLQ-WHm0.js.map → WebApp-m17riaNV.js.map} +1 -1
  39. package/dist/core.css +138 -4
  40. package/dist/css/web-mojo.css +1 -1
  41. package/dist/docit.cjs.js +1 -1
  42. package/dist/docit.es.js +3 -3
  43. package/dist/index.cjs.js +1 -1
  44. package/dist/index.es.js +7 -7
  45. package/dist/lightbox.cjs.js +1 -1
  46. package/dist/lightbox.es.js +3 -3
  47. package/package.json +1 -1
  48. package/dist/chunks/FormView-BPH70cm4.js.map +0 -1
  49. package/dist/chunks/FormView-B_nJKNfq.js.map +0 -1
@@ -14,4 +14,4 @@
14
14
  *
15
15
  * Or import in CSS:
16
16
  * @import url('path/to/mojo/src/css/auth.css');
17
- */:root{--mojo-auth-bg: #f4f7f6;--mojo-auth-panel-bg: #ffffff;--mojo-auth-panel-border: rgba(0, 0, 0, .1);--mojo-auth-panel-shadow: 0 8px 32px rgba(0, 0, 0, .1);--mojo-auth-panel-text: var(--bs-body-color);--mojo-auth-panel-text-muted: var(--bs-secondary-color);--mojo-auth-panel-input-bg: var(--bs-body-bg);--mojo-auth-panel-input-border: var(--bs-border-color);--mojo-auth-panel-input-color: var(--bs-body-color);--mojo-auth-panel-hr-bg: var(--bs-body-bg);--mojo-auth-primary: #667eea;--mojo-auth-primary-dark: #5a6fd4;--mojo-auth-secondary: #764ba2;--mojo-auth-border-radius: var(--bs-border-radius-lg, 1rem);--mojo-auth-card-padding: 2rem;--mojo-auth-transition: all .2s ease}body.auth-bg-light{--mojo-auth-bg: #f4f7f6}body.auth-bg-dark{--mojo-auth-bg: #1a202c}body.auth-bg-gradient{--mojo-auth-bg: linear-gradient( 135deg, var(--mojo-auth-primary) 0%, var(--mojo-auth-secondary) 100% )}body.auth-panel-light{--mojo-auth-panel-bg: #ffffff;--mojo-auth-panel-border: rgba(0, 0, 0, .1);--mojo-auth-panel-shadow: 0 8px 32px rgba(0, 0, 0, .1);--mojo-auth-panel-text: var(--bs-body-color);--mojo-auth-panel-text-muted: var(--bs-secondary-color);--mojo-auth-panel-input-bg: var(--bs-body-bg);--mojo-auth-panel-input-border: var(--bs-border-color);--mojo-auth-panel-input-color: var(--bs-body-color);--mojo-auth-panel-hr-bg: var(--bs-body-bg)}body.auth-panel-dark{--mojo-auth-panel-bg: #2d3748;--mojo-auth-panel-border: rgba(255, 255, 255, .15);--mojo-auth-panel-shadow: 0 8px 32px rgba(0, 0, 0, .25);--mojo-auth-panel-text: #f7fafc;--mojo-auth-panel-text-muted: #a0aec0;--mojo-auth-panel-input-bg: #1a202c;--mojo-auth-panel-input-border: #4a5568;--mojo-auth-panel-input-color: #f7fafc;--mojo-auth-panel-hr-bg: #2d3748}body.auth-panel-translucent{--mojo-auth-panel-bg: rgba(255, 255, 255, .85);--mojo-auth-panel-border: rgba(255, 255, 255, .2);--mojo-auth-panel-shadow: 0 8px 32px rgba(0, 0, 0, .1);--mojo-auth-panel-text: #2d3748;--mojo-auth-panel-text-muted: #4a5568;--mojo-auth-panel-input-bg: rgba(255, 255, 255, .7);--mojo-auth-panel-input-border: rgba(0, 0, 0, .1);--mojo-auth-panel-input-color: #2d3748;--mojo-auth-panel-hr-bg: transparent}body.auth-bg-dark.auth-panel-translucent,body.auth-bg-gradient.auth-panel-translucent{--mojo-auth-panel-bg: rgba(45, 55, 72, .75);--mojo-auth-panel-border: rgba(255, 255, 255, .1);--mojo-auth-panel-text: #f7fafc;--mojo-auth-panel-text-muted: #a0aec0;--mojo-auth-panel-input-bg: rgba(26, 32, 44, .7);--mojo-auth-panel-input-border: rgba(255, 255, 255, .2);--mojo-auth-panel-input-color: #f7fafc;--mojo-auth-panel-hr-bg: transparent}.auth-page{background:var(--mojo-auth-bg);min-height:100vh;font-family:var(--bs-font-sans-serif);transition:background .3s ease-in-out}.auth-page .card{background:var(--mojo-auth-panel-bg)!important;border:1px solid var(--mojo-auth-panel-border);border-radius:var(--mojo-auth-border-radius);box-shadow:var(--mojo-auth-panel-shadow);color:var(--mojo-auth-panel-text);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .2s ease,box-shadow .2s ease,background .3s ease,border .3s ease}.auth-page .card:hover{transform:translateY(-2px);box-shadow:0 12px 40px #00000026}.auth-page .card-body{position:relative;padding:var(--mojo-auth-card-padding)}.auth-page .form-label{font-weight:500;color:var(--mojo-auth-panel-text)}.auth-page .form-text{color:var(--mojo-auth-panel-text-muted)}.auth-page .form-control{background-color:var(--mojo-auth-panel-input-bg);border:1px solid var(--mojo-auth-panel-input-border);color:var(--mojo-auth-panel-input-color);border-radius:var(--bs-border-radius);transition:var(--mojo-auth-transition)}.auth-page .form-control::placeholder{color:var(--mojo-auth-panel-text-muted);opacity:.7}.auth-page .form-control:focus,.auth-page .form-check-input:focus{border-color:var(--mojo-auth-primary);box-shadow:0 0 0 .25rem #667eea40;outline:none}.auth-page .text-muted{color:var(--mojo-auth-panel-text-muted)!important}.auth-page .position-relative hr{border-color:var(--mojo-auth-panel-border);opacity:.75}.auth-page .position-relative .position-absolute{background:var(--mojo-auth-panel-hr-bg);color:var(--mojo-auth-panel-text-muted);padding:0 1rem;font-size:.875rem;font-weight:500}.auth-page .btn-primary{background:linear-gradient(135deg,var(--mojo-auth-primary) 0%,var(--mojo-auth-secondary) 100%);border:none;border-radius:var(--bs-border-radius);font-weight:500;transition:var(--mojo-auth-transition)}.auth-page .btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--mojo-auth-primary-dark) 0%,var(--mojo-auth-secondary) 100%);transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.auth-page a{color:var(--mojo-auth-primary);text-decoration:none;transition:color .2s ease}.auth-page a:hover{color:var(--mojo-auth-primary-dark);text-decoration:underline}.auth-footer-links a{color:var(--mojo-auth-panel-text-muted);text-decoration:none;transition:all .2s ease}.auth-footer-links a:hover{color:var(--mojo-auth-primary);text-decoration:underline}body.auth-panel-dark .auth-footer-links a{opacity:.8}body.auth-panel-dark .auth-footer-links a:hover{opacity:1}body.auth-panel-dark .alert-danger{background-color:#dc354533;color:#f8d7da}body.auth-panel-dark .alert-success{background-color:#19875433;color:#d1e7dd}.auth-page .form-check-input:checked{background-color:var(--mojo-auth-primary);border-color:var(--mojo-auth-primary)}.auth-page .progress{background-color:#e9ecef;border-radius:2px;height:4px}.auth-page .alert{border-radius:var(--bs-border-radius);border:none;box-shadow:var(--bs-box-shadow-sm)}@media (max-width: 768px){.auth-page{padding:1rem 0}.auth-page .card{margin:0 1rem}}:root{--bs-primary: #1a73e8;--bs-secondary: #5f6368;--bs-success: #34a853;--bs-info: #4285f4;--bs-warning: #fbbc05;--bs-danger: #ea4335;--bs-light: #f1f3f4;--bs-dark: #202124;--bs-primary-bg-subtle: #e8f0fe;--bs-secondary-bg-subtle: #f1f3f4;--bs-success-bg-subtle: #e6f4ea;--bs-info-bg-subtle: #e8f0fe;--bs-warning-bg-subtle: #fef7e0;--bs-danger-bg-subtle: #fce8e6;--bs-primary-border-subtle: #aecbfa;--bs-secondary-border-subtle: #dadce0;--bs-success-border-subtle: #81c995;--bs-info-border-subtle: #aecbfa;--bs-warning-border-subtle: #fad2cf;--bs-danger-border-subtle: #f28b82;--bs-primary-text-emphasis: #174ea6;--bs-secondary-text-emphasis: #3c4043;--bs-success-text-emphasis: #0d652d;--bs-info-text-emphasis: #174ea6;--bs-warning-text-emphasis: #b06000;--bs-danger-text-emphasis: #a50e0e;--bs-btn-hover-bg: #e8f0fe}:root[data-bs-theme=ocean]{--bs-primary: #0077b6;--bs-secondary: #90e0ef;--bs-success: #00b4d8;--bs-info: #48cae4;--bs-warning: #ffd166;--bs-danger: #ef476f;--bs-light: #f1faff;--bs-dark: #03045e;--bs-primary-bg-subtle: #caf0f8;--bs-secondary-bg-subtle: #e0fbfc;--bs-success-bg-subtle: #ade8f4;--bs-info-bg-subtle: #caf0f8;--bs-warning-bg-subtle: #fff3cd;--bs-danger-bg-subtle: #fde2e4;--bs-primary-text-emphasis: #023e8a;--bs-success-text-emphasis: #0077b6;--bs-danger-text-emphasis: #9d0208}:root[data-bs-theme=sunrise]{--bs-primary: #ff6f00;--bs-secondary: #ffb703;--bs-success: #fb8500;--bs-info: #ffb4a2;--bs-warning: #ffd166;--bs-danger: #e63946;--bs-light: #fff3e6;--bs-dark: #432818;--bs-primary-bg-subtle: #fff4e1;--bs-secondary-bg-subtle: #fff8dc;--bs-success-bg-subtle: #ffe5b4;--bs-info-bg-subtle: #ffe0d9;--bs-warning-bg-subtle: #fff7d6;--bs-danger-bg-subtle: #fddede;--bs-primary-text-emphasis: #9d4b00;--bs-success-text-emphasis: #a85d00;--bs-danger-text-emphasis: #8d0000}:root[data-bs-theme=forest]{--bs-primary: #2b9348;--bs-secondary: #95d5b2;--bs-success: #55a630;--bs-info: #76c893;--bs-warning: #ffba08;--bs-danger: #d62828;--bs-light: #f0fdf4;--bs-dark: #081c15;--bs-primary-bg-subtle: #d8f3dc;--bs-secondary-bg-subtle: #e9f5eb;--bs-success-bg-subtle: #c7f9cc;--bs-info-bg-subtle: #e9fbee;--bs-warning-bg-subtle: #fff8e1;--bs-danger-bg-subtle: #ffe5e5;--bs-primary-text-emphasis: #1a472a;--bs-success-text-emphasis: #2f5233;--bs-danger-text-emphasis: #7a1a1a}:root[data-bs-theme=midnight]{--bs-primary: #5a189a;--bs-secondary: #7b2cbf;--bs-success: #06d6a0;--bs-info: #118ab2;--bs-warning: #ffd166;--bs-danger: #ef476f;--bs-light: #f8f9fa;--bs-dark: #03071e;--bs-primary-bg-subtle: #e0d4f7;--bs-secondary-bg-subtle: #f1e4ff;--bs-success-bg-subtle: #d0fdf2;--bs-info-bg-subtle: #d0ebff;--bs-warning-bg-subtle: #fff3cd;--bs-danger-bg-subtle: #fbdde2;--bs-primary-text-emphasis: #240046;--bs-success-text-emphasis: #056b53;--bs-danger-text-emphasis: #9d001f}:root[data-bs-theme=corporate]{--bs-primary: #2a5d9f;--bs-secondary: #6c757d;--bs-success: #4caf50;--bs-info: #17a2b8;--bs-warning: #f0ad4e;--bs-danger: #dc3545;--bs-light: #f8f9fa;--bs-dark: #212529;--bs-primary-bg-subtle: #e7f0fa;--bs-secondary-bg-subtle: #f1f3f5;--bs-success-bg-subtle: #eaf6ec;--bs-info-bg-subtle: #e6f7fa;--bs-warning-bg-subtle: #fff4e0;--bs-danger-bg-subtle: #fcebec;--bs-primary-border-subtle: #c2d7ed;--bs-secondary-border-subtle: #dee2e6;--bs-success-border-subtle: #c8e6c9;--bs-info-border-subtle: #bde3ea;--bs-warning-border-subtle: #ffe0b2;--bs-danger-border-subtle: #f5c2c7;--bs-primary-text-emphasis: #1d3f6e;--bs-secondary-text-emphasis: #495057;--bs-success-text-emphasis: #2e7d32;--bs-info-text-emphasis: #0d6673;--bs-warning-text-emphasis: #a46900;--bs-danger-text-emphasis: #8a1c24}:root{--mojo-primary: var(--bs-primary);--mojo-primary-rgb: var(--bs-primary-rgb);--mojo-secondary: var(--bs-secondary);--mojo-secondary-rgb: var(--bs-secondary-rgb);--mojo-success: var(--bs-success);--mojo-success-rgb: var(--bs-success-rgb);--mojo-info: var(--bs-info);--mojo-info-rgb: var(--bs-info-rgb);--mojo-warning: var(--bs-warning);--mojo-warning-rgb: var(--bs-warning-rgb);--mojo-danger: var(--bs-danger);--mojo-danger-rgb: var(--bs-danger-rgb);--mojo-light: var(--bs-light);--mojo-light-rgb: var(--bs-light-rgb);--mojo-dark: var(--bs-dark);--mojo-dark-rgb: var(--bs-dark-rgb);--mojo-body-bg: var(--bs-body-bg);--mojo-body-color: var(--bs-body-color);--mojo-emphasis-color: var(--bs-emphasis-color);--mojo-secondary-color: var(--bs-secondary-color);--mojo-tertiary-color: var(--bs-tertiary-color);--mojo-bg-primary: var(--bs-body-bg);--mojo-bg-secondary: var(--bs-secondary-bg);--mojo-bg-tertiary: var(--bs-tertiary-bg);--mojo-border-color: var(--bs-border-color);--mojo-border-color-translucent: var(--bs-border-color-translucent);--mojo-hover-bg: var(--bs-secondary-bg);--mojo-active-bg: var(--bs-primary);--mojo-focus-color: var(--bs-primary);--mojo-focus-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb), .25);--mojo-transition-fast: .15s ease-in-out;--mojo-transition-base: .2s ease-in-out;--mojo-transition-slow: .3s ease-in-out;--mojo-border-radius-sm: var(--bs-border-radius-sm);--mojo-border-radius: var(--bs-border-radius);--mojo-border-radius-lg: var(--bs-border-radius-lg);--mojo-border-radius-xl: var(--bs-border-radius-xl);--mojo-spacer-xs: calc(var(--bs-spacer) * .25);--mojo-spacer-sm: calc(var(--bs-spacer) * .5);--mojo-spacer: var(--bs-spacer);--mojo-spacer-lg: calc(var(--bs-spacer) * 1.5);--mojo-spacer-xl: calc(var(--bs-spacer) * 3);--mojo-font-sans-serif: var(--bs-font-sans-serif);--mojo-font-monospace: var(--bs-font-monospace);--mojo-box-shadow-sm: var(--bs-box-shadow-sm);--mojo-box-shadow: var(--bs-box-shadow);--mojo-box-shadow-lg: var(--bs-box-shadow-lg);--mojo-zindex-dropdown: var(--bs-zindex-dropdown, 1000);--mojo-zindex-sticky: var(--bs-zindex-sticky, 1020);--mojo-zindex-fixed: var(--bs-zindex-fixed, 1030);--mojo-zindex-modal-backdrop: var(--bs-zindex-modal-backdrop, 1040);--mojo-zindex-offcanvas: var(--bs-zindex-offcanvas, 1045);--mojo-zindex-modal: var(--bs-zindex-modal, 1050);--mojo-zindex-popover: var(--bs-zindex-popover, 1070);--mojo-zindex-tooltip: var(--bs-zindex-tooltip, 1080)}.btn-primary{--bs-btn-color: #fff;--bs-btn-bg: var(--bs-primary);--bs-btn-border-color: var(--bs-primary);--bs-btn-hover-color: #fff;--bs-btn-hover-bg: color-mix(in srgb, var(--bs-primary) 88%, #000 12%);--bs-btn-hover-border-color: color-mix(in srgb, var(--bs-primary) 82%, #000 18%);--bs-btn-active-color: #fff;--bs-btn-active-bg: color-mix(in srgb, var(--bs-primary) 75%, #000 25%);--bs-btn-active-border-color: color-mix(in srgb, var(--bs-primary) 72%, #000 28%);--bs-btn-focus-shadow-rgb: var(--bs-primary-rgb, 13, 110, 253)}.btn-success{--bs-btn-color: #fff;--bs-btn-bg: var(--bs-success);--bs-btn-border-color: var(--bs-success);--bs-btn-hover-color: #fff;--bs-btn-hover-bg: color-mix(in srgb, var(--bs-success) 88%, #000 12%);--bs-btn-hover-border-color: color-mix(in srgb, var(--bs-success) 82%, #000 18%);--bs-btn-active-color: #fff;--bs-btn-active-bg: color-mix(in srgb, var(--bs-success) 75%, #000 25%);--bs-btn-active-border-color: color-mix(in srgb, var(--bs-success) 72%, #000 28%);--bs-btn-focus-shadow-rgb: var(--bs-success-rgb, 25, 135, 84)}.btn-danger{--bs-btn-color: #fff;--bs-btn-bg: var(--bs-danger);--bs-btn-border-color: var(--bs-danger);--bs-btn-hover-color: #fff;--bs-btn-hover-bg: color-mix(in srgb, var(--bs-danger) 88%, #000 12%);--bs-btn-hover-border-color: color-mix(in srgb, var(--bs-danger) 82%, #000 18%);--bs-btn-active-color: #fff;--bs-btn-active-bg: color-mix(in srgb, var(--bs-danger) 75%, #000 25%);--bs-btn-active-border-color: color-mix(in srgb, var(--bs-danger) 72%, #000 28%);--bs-btn-focus-shadow-rgb: var(--bs-danger-rgb, 220, 53, 69)}.btn-warning{--bs-btn-color: #000;--bs-btn-bg: var(--bs-warning);--bs-btn-border-color: var(--bs-warning);--bs-btn-hover-color: #000;--bs-btn-hover-bg: color-mix(in srgb, var(--bs-warning) 88%, #000 12%);--bs-btn-hover-border-color: color-mix(in srgb, var(--bs-warning) 82%, #000 18%);--bs-btn-active-color: #000;--bs-btn-active-bg: color-mix(in srgb, var(--bs-warning) 75%, #000 25%);--bs-btn-active-border-color: color-mix(in srgb, var(--bs-warning) 72%, #000 28%);--bs-btn-focus-shadow-rgb: var(--bs-warning-rgb, 255, 193, 7)}.btn-info{--bs-btn-color: #000;--bs-btn-bg: var(--bs-info);--bs-btn-border-color: var(--bs-info);--bs-btn-hover-color: #000;--bs-btn-hover-bg: color-mix(in srgb, var(--bs-info) 88%, #000 12%);--bs-btn-hover-border-color: color-mix(in srgb, var(--bs-info) 82%, #000 18%);--bs-btn-active-color: #000;--bs-btn-active-bg: color-mix(in srgb, var(--bs-info) 75%, #000 25%);--bs-btn-active-border-color: color-mix(in srgb, var(--bs-info) 72%, #000 28%);--bs-btn-focus-shadow-rgb: var(--bs-info-rgb, 13, 202, 240)}.btn-secondary{--bs-btn-color: #fff;--bs-btn-bg: var(--bs-secondary);--bs-btn-border-color: var(--bs-secondary);--bs-btn-hover-color: #fff;--bs-btn-hover-bg: color-mix(in srgb, var(--bs-secondary) 88%, #000 12%);--bs-btn-hover-border-color: color-mix(in srgb, var(--bs-secondary) 82%, #000 18%);--bs-btn-active-color: #fff;--bs-btn-active-bg: color-mix(in srgb, var(--bs-secondary) 75%, #000 25%);--bs-btn-active-border-color: color-mix(in srgb, var(--bs-secondary) 72%, #000 28%);--bs-btn-focus-shadow-rgb: var(--bs-secondary-rgb, 108, 117, 125)}.btn-outline-primary{--bs-btn-color: var(--bs-primary);--bs-btn-border-color: var(--bs-primary);--bs-btn-hover-color: #fff;--bs-btn-hover-bg: var(--bs-primary);--bs-btn-hover-border-color: var(--bs-primary);--bs-btn-active-color: #fff;--bs-btn-active-bg: color-mix(in srgb, var(--bs-primary) 75%, #000 25%);--bs-btn-active-border-color: color-mix(in srgb, var(--bs-primary) 75%, #000 25%);--bs-btn-focus-shadow-rgb: var(--bs-primary-rgb, 13, 110, 253)}.pagination{--bs-pagination-color: var(--bs-primary);--bs-pagination-hover-color: color-mix(in srgb, var(--bs-primary) 85%, #000 15%);--bs-pagination-focus-color: var(--bs-primary);--bs-pagination-focus-box-shadow: 0 0 0 .25rem color-mix(in srgb, var(--bs-primary) 25%, transparent);--bs-pagination-active-color: #fff;--bs-pagination-active-bg: var(--bs-primary);--bs-pagination-active-border-color: var(--bs-primary);--bs-pagination-disabled-color: var(--bs-secondary, #6c757d)}.btn-link{text-decoration:none}.btn-link:hover{text-decoration:underline;background-color:transparent;border-color:none}.badge.bg-primary{--bs-badge-color: #fff;--bs-badge-bg: var(--bs-primary)}.nav-pills{--bs-nav-pills-link-active-bg: var(--bs-primary);--bs-nav-pills-link-active-color: #fff}.nav-tabs{--bs-nav-tabs-link-hover-border-color: color-mix(in srgb, var(--bs-primary) 35%, transparent);--bs-nav-tabs-link-active-color: var(--bs-primary);--bs-nav-tabs-link-active-border-color: var(--bs-primary)}.nav-tabs .nav-link{color:var(--bs-secondary)}.nav-tabs .nav-link.active{border-top-color:#1a73e8;border-right-color:#1a73e8;border-bottom-color:transparent;border-left-color:#1a73e8}.tab-view-select-style{display:inline-flex;align-items:center;padding:.375rem 2.25rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);background-color:var(--bs-body-bg);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border-top:1px solid var(--bs-border-color);border-right:1px solid var(--bs-border-color);border-left:1px solid var(--bs-border-color);border-top-left-radius:var(--bs-border-radius);border-top-right-radius:var(--bs-border-radius);border-bottom-left-radius:0;border-bottom-right-radius:0;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;-moz-appearance:none;appearance:none}.tab-view-select-style:after{display:none}.tab-view-select-style:hover{border-color:var(--bs-secondary-border-subtle)}.tab-view-select-style:focus{border-color:var(--bs-primary);outline:0;box-shadow:0 0 0 .25rem rgba(var(--bs-primary-rgb),.25)}.tab-view-select-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alert-primary{--bs-alert-color: var( --bs-primary-text-emphasis, color-mix(in srgb, var(--bs-primary) 35%, #000) );--bs-alert-bg: var(--bs-primary-bg-subtle, color-mix(in srgb, var(--bs-primary) 10%, #fff));--bs-alert-border-color: var( --bs-primary-border-subtle, color-mix(in srgb, var(--bs-primary) 25%, #fff) )}:root{--bs-link-color: var(--bs-primary);--bs-link-hover-color: color-mix(in srgb, var(--bs-primary) 85%, #000 15%)}.form-check{margin-top:.9rem}@keyframes mojo-fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes mojo-slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.mojo-fade-in{animation:mojo-fadeIn var(--mojo-transition-slow) ease-in-out}.mojo-slide-up{animation:mojo-slideUp .4s ease-out}.mojo-spin{animation:mojo-spin 1s linear infinite;display:inline-block}.mojo-pulse{animation:mojo-pulse 2s ease-in-out infinite}.mojo-bounce{animation:mojo-bounce .5s ease-in-out}.bi-spin{animation:mojo-spin 1s linear infinite;display:inline-block}.mojo-text-truncate-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.mojo-text-truncate-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.mojo-transition-fast{transition:all var(--mojo-transition-fast)}.mojo-transition{transition:all var(--mojo-transition-base)}.mojo-transition-slow{transition:all var(--mojo-transition-slow)}.mojo-transform-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mojo-transform-center-x{position:absolute;left:50%;transform:translate(-50%)}.mojo-transform-center-y{position:absolute;top:50%;transform:translateY(-50%)}.mojo-hover-lift:hover{transform:translateY(-2px);transition:transform var(--mojo-transition-fast)}.mojo-hover-shadow:hover{box-shadow:0 .5rem 1rem #00000026;transition:box-shadow var(--mojo-transition-fast)}.mojo-glass{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid rgba(255,255,255,.2)}[data-bs-theme=dark] .mojo-glass{background:#0003;border:1px solid rgba(255,255,255,.1)}.mojo-loading{pointer-events:none;opacity:.6;position:relative}.mojo-loading:after{content:"";position:absolute;top:50%;left:50%;width:1rem;height:1rem;margin:-.5rem 0 0 -.5rem;border:2px solid transparent;border-top:2px solid var(--mojo-primary);border-radius:50%;animation:mojo-spin 1s linear infinite;z-index:1}.mojo-focus-ring:focus{outline:none;box-shadow:var(--mojo-focus-shadow)}.mojo-focus-ring:focus-visible{outline:2px solid var(--mojo-focus-color);outline-offset:2px}.fs-7{font-size:.75rem!important}.fs-8{font-size:.6875rem!important}.fs-9{font-size:.625rem!important}.fs-10{font-size:.5625rem!important}@media print{.mojo-print-hide{display:none!important}.mojo-print-show{display:block!important}.mojo-no-print-shadow{box-shadow:none!important}.mojo-no-print-bg{background:#fff!important;color:#000!important}}.mojo-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.mojo-skip-link{position:absolute;top:-40px;left:6px;background:var(--mojo-emphasis-color);color:var(--mojo-body-bg);padding:8px;text-decoration:none;z-index:var(--mojo-zindex-tooltip);border-radius:var(--mojo-border-radius)}.mojo-skip-link:focus{top:6px}@media (prefers-reduced-motion: reduce){.mojo-fade-in,.mojo-slide-up,.mojo-spin,.mojo-pulse,.mojo-bounce,.bi-spin,.mojo-loading:after{animation-duration:.01ms!important;animation-iteration-count:1!important}.mojo-transition-fast,.mojo-transition,.mojo-transition-slow,.mojo-hover-lift:hover,.mojo-hover-shadow:hover{transition:none!important}}@media (prefers-contrast: high){.mojo-glass{background:var(--mojo-body-bg);border:2px solid var(--mojo-border-color);-webkit-backdrop-filter:none;backdrop-filter:none}.mojo-focus-ring:focus,.mojo-focus-ring:focus-visible{outline:3px solid var(--mojo-focus-color);outline-offset:2px;box-shadow:0 0 0 .5rem rgba(var(--mojo-primary-rgb),.5)}}.mojo-app{min-height:100vh;font-family:var(--mojo-font-sans-serif);background-color:var(--mojo-body-bg);color:var(--mojo-body-color)}.mojo-app.mojo-loading{opacity:0}.mojo-app.mojo-ready{opacity:1;transition:opacity var(--mojo-transition-slow)}.mojo-component{position:relative}.mojo-component.mojo-disabled{pointer-events:none;opacity:.6}.mojo-debug *{outline:1px solid red!important}.mojo-debug *:hover{background:#ff00001a!important}.drag-over{border-color:var(--bs-primary)!important;background-color:var(--bs-primary-bg-subtle)!important;transition:all .2s ease}.drag-active{border-style:dashed!important;border-width:2px!important;box-shadow:0 0 0 .25rem rgba(var(--bs-primary-rgb),.25)!important}.drag-over.drag-active{transform:scale(1.02);box-shadow:0 0 0 .25rem rgba(var(--bs-primary-rgb),.25),0 .5rem 1rem #00000026!important}[data-bs-theme=dark] .drag-over{background-color:rgba(var(--bs-primary-rgb),.15)!important}@media (prefers-reduced-motion: reduce){.drag-over,.drag-active{transition:none!important;transform:none!important}}@media (min-width: 1px){.mojo-debug{display:none}}.mojo-debug-enabled .mojo-debug{display:block!important}.image-field-container{position:relative;display:inline-block;border-radius:.375rem;overflow:hidden}.image-drop-zone{position:relative;border-radius:.375rem;transition:all .2s ease;overflow:hidden}.image-drop-zone.droppable{border:2px dashed var(--bs-border-color)}.image-drop-zone.droppable:hover{border-color:var(--bs-primary);background-color:var(--bs-primary-bg-subtle)}.image-drop-zone.drag-over{border-color:var(--bs-primary)!important;background-color:var(--bs-primary-bg-subtle)!important;transform:scale(1.02)}.image-drop-zone.drag-active{border-color:var(--bs-success)!important;background-color:var(--bs-success-bg-subtle)!important;box-shadow:0 0 0 3px rgba(var(--bs-success-rgb),.25)}.image-field-xs{width:48px;height:48px}.image-field-sm{width:96px;height:96px}.image-field-md{width:150px;height:150px}.image-field-lg{width:200px;height:200px}.image-field-xl{width:300px;height:300px}.image-field-container img{transition:transform .2s ease}.image-field-container:hover img{transform:scale(1.05)}.image-field-container .btn{transition:opacity .2s ease}.image-field-container:not(:hover) .btn{opacity:.6}[data-bs-theme=dark] .image-drop-zone.droppable{border-color:var(--bs-border-color-translucent)}[data-bs-theme=dark] .image-drop-zone.droppable:hover{border-color:var(--bs-primary);background-color:rgba(var(--bs-primary-rgb),.1)}@media (max-width: 576px){.image-field-xl{width:250px;height:250px}.image-field-lg{width:180px;height:180px}}.image-drop-zone:focus{outline:2px solid var(--bs-primary);outline-offset:2px}@media (prefers-reduced-motion: reduce){.image-drop-zone,.image-field-container img,.image-field-container .btn{transition:none}.image-drop-zone.drag-over,.image-field-container:hover img{transform:none}}.mojo-form-group{margin-bottom:1rem}.mojo-form-group .h6{color:var(--bs-secondary);font-weight:600;margin-bottom:.75rem;padding-bottom:.25rem;border-bottom:1px solid var(--bs-border-color)}@media (max-width: 767.98px){.mojo-form-group{padding:.75rem;margin-bottom:.75rem}}.mojo-form-control{margin-bottom:1rem;position:relative}.mojo-form-control .form-label{font-weight:500;margin-bottom:.5rem;color:var(--bs-body-color)}.mojo-form-control .form-text{margin-top:.25rem;font-size:.875rem;color:var(--bs-secondary)}.mojo-form-control .invalid-feedback{margin-top:.25rem}.mojo-form-control .form-check{margin-bottom:0}.mojo-form-control .form-check .form-check-label{font-weight:400}.mojo-form-control .image-field-container{margin-top:.5rem}.mojo-form-control input[type=range]{margin-top:.5rem;margin-bottom:.5rem}@media (max-width: 767.98px){.mojo-form-control{margin-bottom:.75rem}.mojo-form-control .form-label{margin-bottom:.375rem}}.mojo-modal-context-menu-btn{color:inherit!important;border:none;background:transparent;opacity:.7;transition:opacity .15s ease-in-out}.mojo-modal-context-menu-btn:hover,.mojo-modal-context-menu-btn:focus{color:inherit!important;background:rgba(var(--bs-emphasis-color-rgb),.1);opacity:1}.mojo-modal-context-menu-btn:active{background:rgba(var(--bs-emphasis-color-rgb),.2)}.modal.modal-info .mojo-modal-context-menu-btn,.modal.modal-success .mojo-modal-context-menu-btn{color:#fff!important}.modal.modal-warning .mojo-modal-context-menu-btn{color:#000!important}.modal.modal-error .mojo-modal-context-menu-btn,.modal.modal-dark .mojo-modal-context-menu-btn,[data-bs-theme=dark] .mojo-modal-context-menu-btn{color:#fff!important}.modal-header .mojo-modal-context-menu-btn{margin-left:auto;margin-right:0}.field-status{display:inline-block;margin-left:8px}.field-status-label-inline{display:inline-block;margin-left:8px;font-size:.875rem;vertical-align:middle}.field-status-overlay{position:absolute;top:50%;right:8px;transform:translateY(-50%);z-index:10;pointer-events:none}.field-status-full-overlay{position:absolute;inset:0;background-color:rgba(var(--bs-body-bg-rgb),.9);display:flex;align-items:center;justify-content:center;z-index:20;border-radius:var(--bs-border-radius)}.field-status-full-overlay .saving-indicator,.field-status-full-overlay .success-indicator,.field-status-full-overlay .error-indicator{display:flex;align-items:center;padding:8px 12px;background-color:var(--bs-body-bg);border:1px solid var(--bs-border-color);border-radius:var(--bs-border-radius);box-shadow:0 2px 4px #0000001a}.field-status [data-status]{display:none;font-size:1rem;transition:opacity .3s ease,transform .3s ease}.field-status .spinner-border{width:1rem;height:1rem;vertical-align:middle}.field-status [data-status=saved]{color:var(--bs-success)}.field-status [data-status=error]{color:var(--bs-danger);cursor:help}@keyframes mojo-status-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes mojo-status-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@media (max-width: 576px){.field-status{margin-left:4px}.field-status [data-status]{font-size:.875rem}}@media (prefers-contrast: high){.field-status [data-status=saving]{color:#06c}.field-status [data-status=saved]{color:#060}.field-status [data-status=error]{color:#c00}}@media (prefers-reduced-motion: reduce){.field-status [data-status]{transition:none}.field-status [data-status].show,.field-status [data-status].hide{animation:none}@keyframes mojo-status-fade-in{0%,to{opacity:1;transform:scale(1)}}@keyframes mojo-status-fade-out{0%,to{opacity:0;transform:scale(1)}}}.collection-multiselect-list .hover-bg:hover{background-color:#0d6efd14}[data-bs-theme=dark] .collection-multiselect-list .hover-bg:hover{background-color:#0d6efd26}.tooltip{--mojo-tooltip-bg: var(--bs-dark);--mojo-tooltip-color: #fff;--mojo-tooltip-opacity: .95;--mojo-tooltip-border-radius: .375rem;--mojo-tooltip-font-size: .875rem;--mojo-tooltip-padding-y: .5rem;--mojo-tooltip-padding-x: .75rem;--mojo-tooltip-max-width: 200px;--mojo-tooltip-box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15);font-size:var(--mojo-tooltip-font-size)}.tooltip .tooltip-inner{max-width:var(--mojo-tooltip-max-width);padding:var(--mojo-tooltip-padding-y) var(--mojo-tooltip-padding-x);background-color:var(--mojo-tooltip-bg);color:var(--mojo-tooltip-color);border-radius:var(--mojo-tooltip-border-radius);opacity:var(--mojo-tooltip-opacity);box-shadow:var(--mojo-tooltip-box-shadow);text-align:left;font-weight:500}[data-bs-theme=dark] .tooltip{--mojo-tooltip-bg: rgba(255, 255, 255, .95);--mojo-tooltip-color: var(--bs-dark);--mojo-tooltip-box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .3)}.tooltip .tooltip-arrow:before{border-color:transparent}.tooltip.bs-tooltip-top .tooltip-arrow:before,.tooltip.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before{border-top-color:var(--mojo-tooltip-bg)}.tooltip.bs-tooltip-bottom .tooltip-arrow:before,.tooltip.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before{border-bottom-color:var(--mojo-tooltip-bg)}.tooltip.bs-tooltip-start .tooltip-arrow:before,.tooltip.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before{border-left-color:var(--mojo-tooltip-bg)}.tooltip.bs-tooltip-end .tooltip-arrow:before,.tooltip.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before{border-right-color:var(--mojo-tooltip-bg)}.tooltip-primary .tooltip-inner{--mojo-tooltip-bg: var(--bs-primary);--mojo-tooltip-color: #fff}.tooltip-primary.bs-tooltip-top .tooltip-arrow:before,.tooltip-primary.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before{border-top-color:var(--bs-primary)}.tooltip-primary.bs-tooltip-bottom .tooltip-arrow:before,.tooltip-primary.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before{border-bottom-color:var(--bs-primary)}.tooltip-primary.bs-tooltip-start .tooltip-arrow:before,.tooltip-primary.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before{border-left-color:var(--bs-primary)}.tooltip-primary.bs-tooltip-end .tooltip-arrow:before,.tooltip-primary.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before{border-right-color:var(--bs-primary)}.tooltip-success .tooltip-inner{--mojo-tooltip-bg: var(--bs-success);--mojo-tooltip-color: #fff}.tooltip-success.bs-tooltip-top .tooltip-arrow:before,.tooltip-success.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before{border-top-color:var(--bs-success)}.tooltip-success.bs-tooltip-bottom .tooltip-arrow:before,.tooltip-success.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before{border-bottom-color:var(--bs-success)}.tooltip-success.bs-tooltip-start .tooltip-arrow:before,.tooltip-success.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before{border-left-color:var(--bs-success)}.tooltip-success.bs-tooltip-end .tooltip-arrow:before,.tooltip-success.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before{border-right-color:var(--bs-success)}.tooltip-warning .tooltip-inner{--mojo-tooltip-bg: var(--bs-warning);--mojo-tooltip-color: var(--bs-dark)}.tooltip-warning.bs-tooltip-top .tooltip-arrow:before,.tooltip-warning.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before{border-top-color:var(--bs-warning)}.tooltip-warning.bs-tooltip-bottom .tooltip-arrow:before,.tooltip-warning.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before{border-bottom-color:var(--bs-warning)}.tooltip-warning.bs-tooltip-start .tooltip-arrow:before,.tooltip-warning.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before{border-left-color:var(--bs-warning)}.tooltip-warning.bs-tooltip-end .tooltip-arrow:before,.tooltip-warning.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before{border-right-color:var(--bs-warning)}.tooltip-danger .tooltip-inner{--mojo-tooltip-bg: var(--bs-danger);--mojo-tooltip-color: #fff}.tooltip-danger.bs-tooltip-top .tooltip-arrow:before,.tooltip-danger.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before{border-top-color:var(--bs-danger)}.tooltip-danger.bs-tooltip-bottom .tooltip-arrow:before,.tooltip-danger.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before{border-bottom-color:var(--bs-danger)}.tooltip-danger.bs-tooltip-start .tooltip-arrow:before,.tooltip-danger.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before{border-left-color:var(--bs-danger)}.tooltip-danger.bs-tooltip-end .tooltip-arrow:before,.tooltip-danger.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before{border-right-color:var(--bs-danger)}.tooltip-info .tooltip-inner{--mojo-tooltip-bg: var(--bs-info);--mojo-tooltip-color: #fff}.tooltip-info.bs-tooltip-top .tooltip-arrow:before,.tooltip-info.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before{border-top-color:var(--bs-info)}.tooltip-info.bs-tooltip-bottom .tooltip-arrow:before,.tooltip-info.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before{border-bottom-color:var(--bs-info)}.tooltip-info.bs-tooltip-start .tooltip-arrow:before,.tooltip-info.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before{border-left-color:var(--bs-info)}.tooltip-info.bs-tooltip-end .tooltip-arrow:before,.tooltip-info.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before{border-right-color:var(--bs-info)}.tooltip-light .tooltip-inner{--mojo-tooltip-bg: var(--bs-light);--mojo-tooltip-color: var(--bs-dark);--mojo-tooltip-box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15), 0 0 0 1px rgba(0, 0, 0, .05)}.tooltip-light.bs-tooltip-top .tooltip-arrow:before,.tooltip-light.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before{border-top-color:var(--bs-light)}.tooltip-light.bs-tooltip-bottom .tooltip-arrow:before,.tooltip-light.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before{border-bottom-color:var(--bs-light)}.tooltip-light.bs-tooltip-start .tooltip-arrow:before,.tooltip-light.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before{border-left-color:var(--bs-light)}.tooltip-light.bs-tooltip-end .tooltip-arrow:before,.tooltip-light.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before{border-right-color:var(--bs-light)}.tooltip-sm .tooltip-inner{--mojo-tooltip-font-size: .75rem;--mojo-tooltip-padding-y: .25rem;--mojo-tooltip-padding-x: .5rem;--mojo-tooltip-max-width: 150px}.tooltip-lg .tooltip-inner{--mojo-tooltip-font-size: 1rem;--mojo-tooltip-padding-y: .75rem;--mojo-tooltip-padding-x: 1rem;--mojo-tooltip-max-width: 300px}@media (prefers-contrast: high){.tooltip .tooltip-inner{--mojo-tooltip-opacity: 1;border:2px solid currentColor}[data-bs-theme=dark] .tooltip .tooltip-inner{border-color:var(--mojo-tooltip-color)}}@media (prefers-reduced-motion: reduce){.tooltip{transition:none}}:root{--mojo-sidebar-width: 250px;--mojo-sidebar-collapsed-width: 40px;--mojo-portal-gap: 0;--mojo-portal-bg: var(--bs-body-bg);--mojo-topnav-bg: var(--bs-primary, #121620);--mojo-topnav-color: var(#fff);--mojo-portal-muted: var(--bs-secondary-color);--mojo-portal-border: var(--bs-border-color);--mojo-portal-text: var(--bs-body-color);--mojo-sidebar-dark-color: #fff;--mojo-sidebar-dark-color-hover: #5388d6;--mojo-sidebar-dark-bg: #343a40}.portal-layout{display:flex;min-height:100vh;height:100vh;background:var(--mojo-portal-bg)}#portal-sidebar{flex:0 0 var(--mojo-sidebar-width);max-width:var(--mojo-sidebar-width);inline-size:var(--mojo-sidebar-width);height:100%;overflow-y:hidden;z-index:1;transition:inline-size .3s cubic-bezier(.4,0,.2,1),max-width .3s cubic-bezier(.4,0,.2,1),flex-basis .3s cubic-bezier(.4,0,.2,1),margin-left .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);will-change:inline-size,max-width,flex-basis,transform}.portal-container.collapse-sidebar #portal-sidebar{inline-size:var(--mojo-sidebar-collapsed-width);max-width:var(--mojo-sidebar-collapsed-width);flex-basis:var(--mojo-sidebar-collapsed-width)}.portal-container.hide-sidebar #portal-sidebar{margin-left:calc(-1 * var(--mojo-sidebar-width));border-inline-end:0}#portal-sidebar{box-shadow:4px 0 15px -4px #0003}#portal-sidebar.sidebar-shadow{box-shadow:0 14px 28px #00000040,0 10px 10px #00000038!important}.portal-body{flex:1 1 auto;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}#portal-topnav{flex:0 0 auto;border-block-end:1px solid var(--mojo-portal-border)}nav.topnav-light{background-color:var(--bs-light);border-bottom:1px solid var(--bs-border-color);--bs-navbar-color: var(--bs-body-color);--bs-navbar-hover-color: var(--bs-primary)}nav.topnav-light .topnav-sidebar-toggle,nav.topnav-light .nav-link,nav.topnav-light .btn-link{color:var(--bs-navbar-color)}nav.topnav-light .topnav-sidebar-toggle:hover,nav.topnav-light .nav-link:hover,nav.topnav-light .btn-link:hover{color:var(--bs-navbar-hover-color)}nav.topnav-dark{background-color:var(--mojo-sidebar-dark-bg, var(--bs-dark));border-bottom:1px solid var(--bs-border-color-translucent);--bs-navbar-color: rgba(255, 255, 255, .75);--bs-navbar-hover-color: #fff;--bs-navbar-disabled-color: rgba(255, 255, 255, .25);--bs-navbar-brand-color: #fff;--bs-navbar-brand-hover-color: #fff}nav.topnav-dark .topnav-sidebar-toggle,nav.topnav-dark .nav-link,nav.topnav-dark .btn-link{color:var(--bs-navbar-color)}nav.topnav-dark .topnav-sidebar-toggle:hover,nav.topnav-dark .nav-link:hover,nav.topnav-dark .btn-link:hover{color:var(--bs-navbar-hover-color)}nav.topnav-dark .btn-close{filter:invert(1) grayscale(100%) brightness(200%)}nav.topnav-clean{background-color:var(--bs-body-bg);border-bottom:1px solid var(--bs-border-color);box-shadow:var(--bs-box-shadow-sm);--bs-navbar-color: var(--bs-body-color);--bs-navbar-hover-color: var(--bs-primary)}nav.topnav-clean .topnav-sidebar-toggle,nav.topnav-clean .nav-link,nav.topnav-clean .btn-link{color:var(--bs-navbar-color)}nav.topnav-clean .topnav-sidebar-toggle:hover,nav.topnav-clean .nav-link:hover,nav.topnav-clean .btn-link:hover{color:var(--bs-navbar-hover-color)}nav.topnav-gradient{background:linear-gradient(90deg,#2c3e50,#34495e);border-bottom:1px solid var(--bs-border-color-translucent);--bs-navbar-color: rgba(255, 255, 255, .75);--bs-navbar-hover-color: #fff;--bs-navbar-disabled-color: rgba(255, 255, 255, .25);--bs-navbar-brand-color: #fff;--bs-navbar-brand-hover-color: #fff}nav.topnav-gradient .topnav-sidebar-toggle,nav.topnav-gradient .nav-link,nav.topnav-gradient .btn-link{color:var(--bs-navbar-color)}nav.topnav-gradient .topnav-sidebar-toggle:hover,nav.topnav-gradient .nav-link:hover,nav.topnav-gradient .btn-link:hover{color:var(--bs-navbar-hover-color)}nav.topnav-gradient .btn-close{filter:invert(1) grayscale(100%) brightness(200%)}nav.topnav-shadow-light{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}nav.topnav-shadow-dark{box-shadow:0 4px 6px -1px #0006,0 2px 4px -2px #0000004d}.portal-content{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:16px;height:100%}.portal-content .muted{color:var(--mojo-portal-muted)}@media (prefers-reduced-motion: reduce){#portal-sidebar{transition:none}}.page-header{background-color:var(--bs-body-bg);border-bottom:1px solid var(--bs-border-color);padding:16px}.portal-content:has([data-container=page-header]){padding:0}[data-container=page-content]{padding:16px}.page-header-content{max-width:100%}.page-header-main{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.page-header-info{display:flex;align-items:center;gap:1rem;flex:1;min-width:0}.page-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;background-color:var(--bs-primary-bg-subtle);color:var(--bs-primary);border-radius:8px}.page-title-group{flex:1;min-width:0}.page-header .page-title{font-weight:600;margin:0;line-height:1.2;color:var(--bs-heading-color)}.page-header .page-description{margin:.5rem 0 0;line-height:1.5}.page-header-sm .page-icon{width:32px;height:32px;font-size:1rem}.page-header-sm .page-title-group .page-title{font-size:1.25rem}.page-header-sm .page-title-group .page-description{font-size:.875rem}.page-header-md .page-icon{width:40px;height:40px;font-size:1.25rem}.page-header-md .page-title-group .page-title{font-size:1.5rem}.page-header-md .page-title-group .page-description{font-size:.95rem}.page-header-lg .page-icon{width:48px;height:48px;font-size:1.5rem}.page-header-lg .page-title-group .page-title{font-size:1.75rem}.page-header-lg .page-title-group .page-description{font-size:1rem}.page-header-xl .page-icon{width:56px;height:56px;font-size:1.75rem}.page-header-xl .page-title-group .page-title{font-size:2rem}.page-header-xl .page-title-group .page-description{font-size:1.1rem}.page-actions{display:flex;gap:.5rem;flex-shrink:0}.page-header-minimal{padding:.75rem 0}.page-header-minimal .page-title-group .page-title{font-size:1.5rem;font-weight:500}.page-header-breadcrumb .breadcrumb{margin-bottom:.5rem;background-color:transparent;padding:0}@media (max-width: 768px){.page-header-main{flex-direction:column;gap:1rem}.page-actions{width:100%;justify-content:flex-start}.page-header-xl .page-title-group .page-title{font-size:1.75rem}.page-header-lg .page-title-group .page-title{font-size:1.5rem}.page-header-md .page-title-group .page-title{font-size:1.25rem}.page-header-sm .page-title-group .page-title{font-size:1.1rem}}[data-bs-theme=dark] .page-header{border-bottom-color:#ffffff1a}.sidebar{display:flex;flex-direction:column;height:100%;width:100%;min-height:0;transition:all .3s cubic-bezier(.4,0,.2,1)}#portal-sidebar .sidebar{position:static;top:auto;left:auto;height:100%;width:100%;z-index:auto;transform:none}.sidebar-dark{background-color:var(--mojo-sidebar-dark-bg, --bs-dark);color:var(--bs-light);border-inline-end:1px solid var(--bs-border-color-translucent)}.sidebar-light{background-color:var(--bs-light);color:var(--bs-body-color);border-right:1px solid var(--bs-border-color)}.sidebar-clean{background-color:var(--bs-body-bg);color:var(--bs-body-color);border-right:1px solid var(--bs-border-color);box-shadow:var(--bs-box-shadow)}.sidebar-admin{border-left:3px solid #b14545}.sidebar-admin .sidebar-header{color:#b14545}.sidebar-light.sidebar-admin .sidebar-nav .nav-link.active{background-color:#b14545}.sidebar-light.sidebar-admin .nav-link.active.has-children{color:#b14545;background-color:var(--bs-secondary-bg);animation:none}.sidebar-global{border-left:3px solid #457bb1}.sidebar-global .sidebar-header{color:#457bb1}.sidebar-light.sidebar-global .sidebar-nav .nav-link.active{background-color:#457bb1}.sidebar-light.sidebar-global .nav-link.active.has-children{color:#457bb1;background-color:var(--bs-secondary-bg);animation:none}.sidebar-gradient{background:linear-gradient(180deg,#2c3e50,#34495e);color:var(--bs-light);border-inline-end:1px solid var(--bs-border-color-translucent)}.sidebar-clean{--mojo-sidebar-width: 220px}.sidebar-container{display:flex;flex-direction:column;height:100%;min-height:0;flex:1}.sidebar-body{flex:1;overflow-y:auto;min-height:0}.sidebar-brand{height:56px;text-align:center;padding-top:14px}.sidebar-dark .sidebar-brand{border-bottom:1px solid var(--bs-border-color-translucent)}.sidebar-light .sidebar-brand{border-bottom:1px solid var(--bs-border-color)}.sidebar-clean .sidebar-brand{border-bottom:1px solid var(--bs-border-color);background-color:var(--bs-secondary-bg)}.sidebar-gradient .sidebar-brand{border-bottom:1px solid var(--bs-border-color-translucent)}.sidebar-brand.clickable{cursor:pointer;transition:background-color .2s ease}.sidebar-brand.clickable:hover{background-color:#ffffff1a}.sidebar-toggle{position:absolute;width:30px;height:30px;font-size:.875rem;background:none;top:.75rem;right:5px;border:none;border-radius:var(--bs-border-radius);color:var(--bs-body-color);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1),transform .15s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10}.sidebar-toggle:hover{background:var(--bs-secondary-bg);transform:scale(1.1);box-shadow:0 4px 12px #00000026}.sidebar-toggle:active{transform:scale(.95);transition-duration:.1s}.sidebar-toggle .toggle-icon{transition:all .3s cubic-bezier(.4,0,.2,1)}.sidebar-toggle .bi-chevron-left{display:block}.sidebar-toggle .bi-chevron-right,.portal-container.collapse-sidebar .sidebar-toggle .bi-chevron-left{display:none}.portal-container.collapse-sidebar .sidebar-toggle .bi-chevron-right{display:block}.portal-container.hide-sidebar .sidebar-toggle{opacity:0;visibility:hidden;pointer-events:none}.sidebar-dark .sidebar-toggle,.sidebar-gradient .sidebar-toggle{background:var(--bs-border-color-translucent);color:var(--bs-secondary-color);border-color:var(--bs-border-color-translucent)}.sidebar-dark .sidebar-toggle:hover,.sidebar-gradient .sidebar-toggle:hover{background:var(--bs-secondary-bg);color:var(--bs-light)}.sidebar-light .sidebar-toggle{background:var(--bs-secondary-bg);color:var(--bs-body-color);border-color:var(--bs-border-color)}.sidebar-light .sidebar-toggle:hover{background:var(--bs-tertiary-bg);color:var(--bs-emphasis-color)}.sidebar-clean .sidebar-toggle{background:var(--bs-light);color:var(--bs-primary);border-color:var(--bs-primary-border-subtle);box-shadow:var(--bs-box-shadow-sm)}.sidebar-clean .sidebar-toggle:hover{background:var(--bs-primary);color:#fff;box-shadow:0 4px 12px rgba(var(--bs-primary-rgb),.3)}.sidebar-toggle .toggle-icon{transform:rotate(0)}.topnav-sidebar-toggle{background:none!important;border:none!important;color:#ffffffe6;padding:.5rem;border-radius:.375rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.topnav-sidebar-toggle:hover{background:none!important;color:var(--bs-light);transform:scale(1.1)}.topnav-sidebar-toggle:focus{outline:none;box-shadow:none}.topnav-sidebar-toggle .toggle-chevron{font-size:1.1rem;transition:transform .3s cubic-bezier(.4,0,.2,1);transform:rotate(180deg)}.portal-container.collapse-sidebar .topnav-sidebar-toggle .toggle-chevron,.portal-container.hide-sidebar .topnav-sidebar-toggle .toggle-chevron{transform:rotate(0)}.navbar-dark .topnav-sidebar-toggle{color:#ccc}.navbar-dark .topnav-sidebar-toggle:hover{color:#fff;background:none!important}.navbar-light .topnav-sidebar-toggle{color:var(--bs-navbar-light-color)}.navbar-light .topnav-sidebar-toggle:hover{color:var(--bs-navbar-light-hover-color);background:var(--bs-secondary-bg)!important}@keyframes sidebar-toggle-pulse{0%{box-shadow:0 0 rgba(var(--bs-primary-rgb),.4)}70%{box-shadow:0 0 0 8px rgba(var(--bs-primary-rgb),0)}to{box-shadow:0 0 rgba(var(--bs-primary-rgb),0)}}.sidebar-toggle.pulse{animation:sidebar-toggle-pulse 2s infinite}.sidebar-toggle:focus{outline:none;box-shadow:0 0 0 .25rem rgba(var(--bs-primary-rgb),.25)}.sidebar-toggle:focus-visible{outline:2px solid var(--bs-primary);outline-offset:2px}[data-bs-theme=dark] .sidebar-toggle{background:#ffffff1a;color:var(--bs-light);border-color:#ffffff26}[data-bs-theme=dark] .sidebar-toggle:hover{background:#fff3;color:var(--bs-white);box-shadow:0 4px 12px #ffffff1a}[data-bs-theme=dark] .sidebar-clean .sidebar-toggle{background:var(--bs-primary);color:#fff;border-color:var(--bs-primary)}[data-bs-theme=dark] .sidebar-clean .sidebar-toggle:hover{background:var(--bs-primary);filter:brightness(1.1)}.brand-content{display:flex;flex-direction:column;align-items:center}.brand-logo{max-height:32px;width:auto;margin-bottom:.5rem}.brand-subtext{font-size:.75rem}.sidebar-group-header{cursor:pointer;border-bottom:1px solid rgba(0,0,0,.1)}.sidebar-dark .sidebar-group-header{background-color:var(--bs-dark)}.sidebar-light .sidebar-group-header{background-color:#dfe5ea}.sidebar-group-header:hover{cursor:pointer;color:var(--mojo-primary);background-color:#1414641a}.sidebar-nav{display:flex;flex-direction:column;padding:.5rem 0;min-height:100%}.sidebar-nav .nav-link{display:flex;align-items:center;position:relative;padding:.75rem 1rem;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1),transform .15s ease-out;cursor:pointer;transform:translate(0);border-radius:8px 0 0 8px;margin-left:.2rem}.sidebar-nav .nav-link:hover{margin-left:.4rem!important}.sidebar-nav .nav-link i{width:20px;text-align:center;transition:transform .2s ease-out,color .2s ease-out}.sidebar-nav .nav-link:hover i{transform:scale(1.1)}.portal-container.collapse-sidebar .sidebar-nav .nav-link:hover i{transform:scale(1.2)}.sidebar-nav .collapse .nav-link{padding:.5rem 1rem;font-size:.9rem}.sidebar-nav .bi-chevron-down{transition:transform .3s}.sidebar-nav .nav-link[aria-expanded=true] .bi-chevron-down{transform:rotate(180deg)}.sidebar-dark .sidebar-nav .nav-link{color:var(--mojo-sidebar-dark-color, #fff)}.sidebar-dark .sidebar-nav .nav-link:hover{color:var(--mojo-sidebar-dark-color-hover, #5388d6);background-color:var(--bs-secondary-bg)}.sidebar-dark .sidebar-nav .nav-link.active{color:var(--bs-light);background-color:var(--bs-primary)}.sidebar-light .sidebar-nav .nav-link{color:var(--bs-body-color)}.sidebar-light .sidebar-nav .nav-link:hover{color:var(--bs-emphasis-color);background-color:var(--bs-secondary-bg)}.sidebar-light .sidebar-nav .nav-link.active{color:var(--bs-light);background-color:var(--bs-primary)}.sidebar-clean .sidebar-nav .nav-link{color:var(--bs-secondary-color)}.sidebar-clean .sidebar-nav .nav-link:hover{color:var(--bs-body-color);background-color:var(--bs-secondary-bg)}.sidebar-clean .sidebar-nav .nav-link.active{color:var(--bs-primary);background-color:var(--bs-primary-bg-subtle);font-weight:500}.sidebar-gradient .sidebar-nav .nav-link{color:var(--bs-light)}.sidebar-gradient .sidebar-nav .nav-link:hover{color:var(--bs-white);background-color:#ffffff1a}.sidebar-gradient .sidebar-nav .nav-link.active{color:var(--bs-white);background-color:var(--bs-primary)}.sidebar-nav .nav-link.has-children{border-top-left-radius:0;border-bottom-left-radius:0}.sidebar-nav .nav-link.has-children:hover{transform:none}.sidebar-nav .nav-link.has-children.collapsed{border-left:none}.sidebar-light .nav-link.active.has-children,.sidebar-clean .nav-link.active.has-children{color:var(--bs-body-color);background-color:var(--bs-secondary-bg);animation:none}.sidebar-dark .nav-link.active.has-children,.sidebar-gradient .nav-link.active.has-children{color:var(--bs-light);background-color:#0003;animation:none}.nav-text{flex:1;white-space:nowrap;transition:opacity .3s cubic-bezier(.4,0,.2,1),width .3s cubic-bezier(.4,0,.2,1),margin .3s cubic-bezier(.4,0,.2,1)}.nav-arrow{transition:transform .2s ease,opacity .3s cubic-bezier(.4,0,.2,1),margin .3s cubic-bezier(.4,0,.2,1);margin-left:auto}.nav-link[aria-expanded=true] .nav-arrow{transform:rotate(180deg)}.portal-container.collapse-sidebar .nav-text,.portal-container.collapse-sidebar .sidebar-collapse-hide{opacity:0;width:0;margin-right:0;overflow:hidden}.portal-container.collapse-sidebar .collapsed-hidden{opacity:0;width:0;overflow:hidden;display:none}.portal-container.collapse-sidebar .sidebar-nav .nav-link{justify-content:center;padding-left:.5rem;padding-right:.5rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.portal-container.collapse-sidebar .sidebar-nav .nav-link i{margin-right:0!important}.portal-container.collapse-sidebar .nav-submenu{display:none!important}.portal-container.collapse-sidebar .sidebar-header{text-align:center;overflow:hidden}.portal-container.collapse-sidebar .nav-arrow{opacity:0;margin-left:0}.portal-container.collapse-sidebar .sidebar .nav-link{position:relative;overflow:visible;width:var(--mojo-sidebar-collapsed-width, 48px)}@keyframes tooltip-slide-in{0%{opacity:0;visibility:hidden;transform:translateY(-50%) translate(-10px) scale(.9)}to{opacity:1;visibility:visible;transform:translateY(-50%) translate(0) scale(1)}}@keyframes tooltip-arrow-slide-in{0%{opacity:0;transform:translateY(-50%) translate(-3px)}to{opacity:1;transform:translateY(-50%) translate(0)}}[data-bs-theme=dark] .portal-container.collapse-sidebar .sidebar .nav-link:hover:after{background:var(--bs-light);color:var(--bs-dark)}[data-bs-theme=dark] .portal-container.collapse-sidebar .sidebar .nav-link:hover:before{border-right-color:var(--bs-light)}.portal-container.mobile-layout .nav-link:hover:after,.portal-container.mobile-layout .nav-link:hover:before{display:none!important}.portal-container.collapse-sidebar .sidebar .nav-link:hover{background-color:rgba(var(--bs-primary-rgb),.1);border-radius:var(--mojo-border-radius);transform:translate(0) scale(1.05);box-shadow:0 2px 8px #0000001a}.portal-container.collapse-sidebar .sidebar-light .nav-link:hover{background-color:rgba(var(--bs-primary-rgb),.08);box-shadow:0 2px 8px rgba(var(--bs-primary-rgb),.2)}.portal-container.collapse-sidebar .sidebar-dark .nav-link:hover{background-color:#ffffff1a;box-shadow:0 2px 8px #ffffff1a}.portal-container.collapse-sidebar .sidebar-clean .nav-link:hover{background-color:var(--bs-light);box-shadow:0 2px 8px rgba(var(--bs-primary-rgb),.15)}.nav-submenu .nav-link{padding-left:2.5rem;font-size:.9rem}.nav-submenu{margin-left:1.8rem}.sidebar-dark .nav-submenu,.sidebar-gradient .nav-submenu{border-left:4px solid rgba(255,255,255,.2)}.sidebar-light .nav-submenu{border-left:4px solid #cdcdcd}.sidebar-clean .nav-submenu{border-left:4px solid var(--bs-border-color)}.nav-divider{margin:.75rem 0;padding:0 1rem}.nav-divider-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.25rem 0;display:block}.sidebar-dark .nav-divider-label,.sidebar-gradient .nav-divider-label{color:var(--bs-secondary-color);border-bottom:1px solid var(--bs-border-color-translucent)}.sidebar-light .nav-divider-label{color:var(--bs-secondary-color);border-bottom:1px solid var(--bs-border-color)}.sidebar-clean .nav-divider-label{color:var(--bs-secondary-color);border-bottom:1px solid var(--bs-border-color);margin:0 .5rem}.nav-divider-item{margin:.25rem 0;padding:0;list-style:none}.nav-divider-line{margin:0 1rem;border:0;border-top:1px solid;opacity:.25}.sidebar-dark .nav-divider-line,.sidebar-gradient .nav-divider-line,.sidebar-light .nav-divider-line{border-color:var(--bs-secondary-color)}.sidebar-clean .nav-divider-line{border-color:var(--bs-border-color);margin:0 1.5rem}.nav-spacer-item{flex:1;list-style:none}.nav-section{margin-bottom:.5rem}.nav-section-header{padding:.5rem 1rem;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.nav-section-header.collapsible{cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:color .2s ease}.sidebar-dark .nav-section-header,.sidebar-gradient .nav-section-header{color:var(--bs-secondary-color)}.sidebar-dark .nav-section-header.collapsible:hover,.sidebar-gradient .nav-section-header.collapsible:hover{color:var(--bs-light)}.sidebar-light .nav-section-header{color:var(--bs-secondary-color)}.sidebar-light .nav-section-header.collapsible:hover{color:var(--bs-body-color)}.sidebar-clean .nav-section-header{color:var(--bs-secondary-color);margin:0 .5rem}.sidebar-clean .nav-section-header.collapsible:hover{color:var(--bs-body-color)}.nav-section-items{padding-left:0}.sidebar-nav .badge{font-size:.7rem;padding:.25rem .5rem}.sidebar-footer{flex-shrink:0;margin-top:auto}.footer-content{padding:1rem;font-size:.85rem}.sidebar-dark .sidebar-footer,.sidebar-gradient .sidebar-footer{border-top:1px solid var(--bs-border-color-translucent)}.sidebar-dark .footer-content,.sidebar-gradient .footer-content{color:var(--bs-secondary-color)}.sidebar-light .sidebar-footer{border-top:1px solid var(--bs-border-color)}.sidebar-light .footer-content{color:var(--bs-secondary-color)}.sidebar-clean .sidebar-footer{border-top:1px solid var(--bs-border-color);background-color:var(--bs-secondary-bg)}.sidebar-clean .footer-content{color:var(--bs-secondary-color)}.config-switcher{position:absolute;top:8px;right:8px}.config-menu{position:absolute;inset:0;background-color:rgba(var(--bs-dark-rgb),.95);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1050;padding:1rem}.config-menu-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--bs-border-color-translucent)}.config-menu-body{display:flex;flex-direction:column;gap:.5rem}.config-option{padding:.75rem;border:1px solid var(--bs-border-color-translucent);border-radius:var(--bs-border-radius);background-color:var(--bs-secondary-bg);cursor:pointer;transition:all .2s ease}.config-option:hover{background-color:var(--bs-tertiary-bg);border-color:var(--bs-border-color)}.config-option.active{background-color:var(--bs-primary-bg-subtle);border-color:var(--bs-primary)}.config-name{font-weight:500;color:var(--bs-body-color)}.group-selector-container{padding:.75rem}.group-selector-wrapper{position:relative;width:100%}.group-selector{position:relative}.group-selector.disabled{opacity:.6;pointer-events:none}.group-selector .input-group-text{background-color:var(--bs-secondary-bg);border-color:var(--bs-border-color);color:var(--bs-secondary-color)}.group-selector .form-control{background-color:var(--bs-tertiary-bg);border-color:var(--bs-border-color);color:var(--bs-body-color)}.group-selector .form-control:focus{background-color:var(--bs-tertiary-bg);border-color:var(--bs-primary);color:var(--bs-body-color);box-shadow:0 0 0 .2rem rgba(var(--bs-primary-rgb),.25)}.group-selector .form-control::placeholder{color:var(--bs-secondary-color)}.group-selector .dropdown-toggle{background-color:var(--bs-secondary-bg);border-color:var(--bs-border-color);color:var(--bs-secondary-color)}.group-selector .dropdown-toggle:hover,.group-selector .dropdown-toggle:focus{background-color:var(--bs-tertiary-bg);border-color:var(--bs-border-color);color:var(--bs-body-color)}.dropdown-arrow{transition:transform .2s ease}.group-selector .dropdown-toggle[aria-expanded=true] .dropdown-arrow{transform:rotate(180deg)}.group-dropdown{position:absolute;top:100%;left:0;right:0;background-color:var(--bs-body-bg);border:1px solid var(--bs-border-color);border-top:none;border-radius:0 0 var(--bs-border-radius) var(--bs-border-radius);max-height:400px;overflow-y:auto;z-index:1050;box-shadow:var(--bs-box-shadow-lg);opacity:0;transform:translateY(-10px);transition:opacity .2s ease,transform .2s ease;display:none}.group-dropdown.show{display:block;opacity:1;transform:translateY(0)}.group-dropdown .dropdown-header{padding:.75rem 1rem;background-color:var(--bs-secondary-bg);border-bottom:1px solid var(--bs-border-color);color:var(--bs-secondary-color);font-size:.875rem}.group-results{max-height:300px;overflow-y:auto}.group-item{padding:0;border-bottom:1px solid var(--bs-border-color-translucent);cursor:pointer;transition:background-color .2s ease}.group-item:hover,.group-item.focused{background-color:var(--bs-secondary-bg)}.group-item.selected{background-color:var(--bs-primary-bg-subtle);border-left:3px solid var(--bs-primary)}.group-item.selected:hover{background-color:var(--bs-primary-bg-subtle)}.group-content{padding:.75rem 1rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.group-main{flex:1;min-width:0}.group-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.group-name{display:flex;align-items:center;flex-wrap:wrap;gap:.25rem;margin-bottom:.25rem}.group-hierarchy{color:var(--bs-secondary-color);font-size:.85rem;font-weight:400}.group-name-text{color:var(--bs-body-color);font-weight:500}.group-type{font-size:.7rem;padding:.25rem .5rem}.group-description{color:var(--bs-secondary-color);font-size:.85rem;line-height:1.3;margin-top:.25rem}.group-item mark{background-color:var(--bs-warning-bg-subtle);color:var(--bs-body-color);padding:0;border-radius:var(--bs-border-radius-sm)}.group-member-count{display:flex;align-items:center;color:var(--bs-secondary-color);font-size:.8rem}.group-status{display:flex;align-items:center}.status-indicator{width:8px;height:8px;border-radius:50%;display:inline-block}.status-indicator.status-active{background-color:var(--bs-success)}.status-indicator.status-inactive{background-color:var(--bs-secondary)}.status-indicator.status-archived{background-color:var(--bs-danger)}.status-indicator.status-pending{background-color:var(--bs-warning)}.group-dropdown .dropdown-item-text{color:var(--bs-secondary-color);padding:1rem}.group-dropdown .dropdown-divider{border-top:1px solid var(--bs-border-color);margin:.5rem 0}.selected-group-display{animation:fadeInUp .3s ease}.selected-group-card{background-color:var(--bs-primary-bg-subtle);border:1px solid var(--bs-primary-border-subtle);border-radius:var(--bs-border-radius);padding:.75rem}.selected-group-icon{flex-shrink:0}.selected-group-info{min-width:0}.selected-group-name{color:var(--bs-body-color);margin-bottom:.25rem}.selected-group-desc{color:var(--bs-secondary-color);line-height:1.3}.selected-group-actions{flex-shrink:0}.group-dropdown::-webkit-scrollbar,.group-results::-webkit-scrollbar{width:6px}.group-dropdown::-webkit-scrollbar-track,.group-results::-webkit-scrollbar-track{background:var(--bs-secondary-bg)}.group-dropdown::-webkit-scrollbar-thumb,.group-results::-webkit-scrollbar-thumb{background:var(--bs-border-color);border-radius:var(--bs-border-radius-sm)}.group-dropdown::-webkit-scrollbar-thumb:hover,.group-results::-webkit-scrollbar-thumb:hover{background:var(--bs-secondary-color)}.context-menu-view.header-menu{margin-top:-.6rem}.context-menu-view.header-menu-absolute{top:1rem;right:1rem}.portal-container.mobile-layout #portal-sidebar{position:fixed!important;inset:0;width:100vw;height:100vh;z-index:var(--mojo-zindex-modal);transform:translate(0);transition:transform .35s cubic-bezier(.4,0,.2,1);box-shadow:0 0 20px #0000004d}.portal-container.mobile-layout #portal-sidebar .sidebar{height:100vh;width:100%}.portal-container.mobile-layout #portal-sidebar .sidebar-container{height:100%}.portal-container.mobile-layout.hide-sidebar #portal-sidebar{transform:translate(-100%);box-shadow:0 0 20px #0000}.portal-container.mobile-layout #portal-sidebar,.portal-container.mobile-layout.collapse-sidebar #portal-sidebar{inline-size:100vw!important;max-width:100vw!important;flex-basis:100vw!important}.portal-container.mobile-layout .nav-text,.portal-container.mobile-layout.collapse-sidebar .nav-text{opacity:1!important;width:auto!important;overflow:visible!important}.portal-container.mobile-layout .nav-arrow,.portal-container.mobile-layout.collapse-sidebar .nav-arrow{opacity:1!important}.portal-container.mobile-layout .sidebar-nav .nav-link,.portal-container.mobile-layout.collapse-sidebar .sidebar-nav .nav-link{justify-content:flex-start!important;padding:1rem!important;font-size:1rem}.portal-container.mobile-layout .nav-submenu,.portal-container.mobile-layout.collapse-sidebar .nav-submenu{display:block!important}.portal-container.mobile-layout .sidebar-toggle{display:none}.portal-container.mobile-layout .group-selector-container,.portal-container.mobile-layout .config-menu{padding:.5rem}.portal-container.mobile-layout .selected-group-card{padding:1rem}.portal-container.mobile-layout .group-dropdown{max-height:300px;left:-5px;right:-5px;border-radius:.5rem;border:1px solid #495057;box-shadow:0 1rem 3rem #0000004d}.portal-container.mobile-layout .group-content{padding:1rem .75rem;flex-direction:column;align-items:stretch;gap:.5rem}.portal-container.mobile-layout .group-meta{flex-direction:row;justify-content:space-between;align-items:center}.portal-sidebar-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;z-index:calc(var(--mojo-zindex-modal) - 1);opacity:0;visibility:hidden;transition:opacity .35s cubic-bezier(.4,0,.2,1),visibility .35s cubic-bezier(.4,0,.2,1),backdrop-filter .35s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}.portal-container.mobile-layout:not(.hide-sidebar) .portal-sidebar-backdrop{opacity:1;visibility:visible;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.portal-container #portal-sidebar,.sidebar-nav .nav-link,.nav-text,.nav-arrow,.sidebar-header,.sidebar-footer,.sidebar-header .fs-5{transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.sidebar-nav .nav-item:nth-child(1) .nav-link{transition-delay:0ms}.sidebar-nav .nav-item:nth-child(2) .nav-link{transition-delay:20ms}.sidebar-nav .nav-item:nth-child(3) .nav-link{transition-delay:40ms}.sidebar-nav .nav-item:nth-child(4) .nav-link{transition-delay:60ms}.sidebar-nav .nav-item:nth-child(5) .nav-link{transition-delay:80ms}.sidebar-nav .nav-item:nth-child(6) .nav-link{transition-delay:.1s}.sidebar-nav .nav-item:nth-child(7) .nav-link{transition-delay:.12s}.sidebar-nav .nav-item:nth-child(8) .nav-link{transition-delay:.14s}[data-bs-theme=dark] .group-dropdown{background-color:var(--bs-body-bg);border-color:var(--bs-border-color)}[data-bs-theme=dark] .config-menu{background-color:rgba(var(--bs-dark-rgb),.95)}[data-bs-theme=dark] .config-option{background-color:var(--bs-secondary-bg);border-color:var(--bs-border-color)}[data-bs-theme=dark] .group-selector .form-control{background-color:var(--bs-tertiary-bg);border-color:var(--bs-border-color);color:var(--bs-body-color)}[data-bs-theme=dark] .group-selector .input-group-text{background-color:var(--bs-secondary-bg);border-color:var(--bs-border-color);color:var(--bs-secondary-color)}[data-bs-theme=dark] .group-item:hover,[data-bs-theme=dark] .group-item.focused{background-color:var(--bs-secondary-bg)}[data-bs-theme=dark] .selected-group-card{background-color:var(--bs-primary-bg-subtle);border-color:var(--bs-primary-border-subtle)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.group-item:focus{outline:2px solid #0d6efd;outline-offset:-2px}@media (prefers-contrast: high){.group-dropdown{border-width:2px;border-color:#fff}.group-item.selected{border-left-width:4px}.status-indicator{border:1px solid #fff}}@media (prefers-reduced-motion: reduce){.group-dropdown,.dropdown-arrow{transition:none}.selected-group-display{animation:none}.portal-container #portal-sidebar,.sidebar-nav .nav-link,.nav-text,.nav-arrow,.sidebar-header,.sidebar-footer,.sidebar-header .fs-5{transition:none!important;animation:none!important}.sidebar-nav .nav-link i{transition:none!important}.sidebar-nav .nav-link:hover,.portal-container.collapse-sidebar .sidebar .nav-link:hover{transform:none!important;box-shadow:none!important}.portal-sidebar-backdrop{transition:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.sidebar-nav .nav-item:nth-child(n) .nav-link{transition-delay:0ms!important}.portal-container:not(.collapse-sidebar) #portal-sidebar{animation:none!important}.sidebar-nav .nav-link.active{animation:none!important}.nav-link[data-bs-toggle=collapse] .bi-chevron-down{transition:none!important}.nav-link[aria-expanded=true] .bi-chevron-down{transform:rotate(180deg)!important}.portal-container.collapse-sidebar .sidebar .nav-link:hover:after,[data-bs-theme=dark] .portal-container.collapse-sidebar .sidebar .nav-link:hover:after,.portal-container.collapse-sidebar .sidebar .nav-link:hover:before{animation:none!important;transition:none!important;opacity:1!important;visibility:visible!important;transform:translateY(-50%) translate(0)!important}.sidebar-toggle,.sidebar-toggle .toggle-icon{transition:none!important;animation:none!important}.sidebar-toggle:hover{transform:none!important}}.mojo-sidebar-force-open .portal-container{--mojo-sidebar-width: 250px !important}.mojo-sidebar-force-open #portal-sidebar{inline-size:var(--mojo-sidebar-width)!important;max-width:var(--mojo-sidebar-width)!important;flex-basis:var(--mojo-sidebar-width)!important}.mojo-sidebar-force-collapsed .portal-container{--mojo-sidebar-width: var(--mojo-sidebar-collapsed-width) !important}.mojo-sidebar-force-collapsed #portal-sidebar{inline-size:var(--mojo-sidebar-collapsed-width)!important;max-width:var(--mojo-sidebar-collapsed-width)!important;flex-basis:var(--mojo-sidebar-collapsed-width)!important}.mojo-sidebar-force-hidden #portal-sidebar{inline-size:0!important;max-width:0!important;flex-basis:0!important;overflow:hidden!important}.mojo-sidebar-no-transition #portal-sidebar,.mojo-sidebar-no-transition .sidebar-nav .nav-link,.mojo-sidebar-no-transition .nav-text,.mojo-sidebar-no-transition .nav-arrow{transition:none!important}.portal-container.sidebar-opening #portal-sidebar{transition-duration:.35s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.portal-container.sidebar-closing #portal-sidebar{transition-duration:.25s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.portal-container:not(.collapse-sidebar) #portal-sidebar{animation:sidebar-expand .4s cubic-bezier(.34,1.56,.64,1)}@keyframes sidebar-expand{0%{transform:scale(.98) translate(-2px);opacity:.9}60%{transform:scale(1.01) translate(1px)}to{transform:scale(1) translate(0);opacity:1}}@keyframes nav-pulse{0%{box-shadow:0 0 rgba(var(--bs-primary-rgb),.4)}70%{box-shadow:0 0 0 6px rgba(var(--bs-primary-rgb),0)}to{box-shadow:0 0 rgba(var(--bs-primary-rgb),0)}}.sidebar-nav .nav-link.active{animation:nav-pulse 2s infinite}.nav-link[data-bs-toggle=collapse] .bi-chevron-down{transition:transform .25s cubic-bezier(.4,0,.2,1)}.nav-link[aria-expanded=true] .bi-chevron-down{transform:rotate(180deg) scale(1.1)}.mojo-sidebar-theme-auto .sidebar{background-color:var(--bs-body-bg);color:var(--bs-body-color);border-right:1px solid var(--bs-border-color)}.mojo-sidebar-theme-auto .sidebar-nav .nav-link{color:var(--bs-body-color)}.mojo-sidebar-theme-auto .sidebar-nav .nav-link:hover{background-color:var(--bs-secondary-bg)}.mojo-sidebar-theme-auto .sidebar-nav .nav-link.active{background-color:var(--bs-primary);color:var(--bs-white)}.mojo-sidebar-collapsed .nav-text,.mojo-sidebar-collapsed .nav-arrow{opacity:0;width:0;overflow:hidden}.mojo-sidebar-collapsed .sidebar-nav .nav-link{justify-content:center;padding-left:.5rem;padding-right:.5rem}.mojo-sidebar-collapsed .nav-submenu{display:none!important}.mojo-portal-fixed .portal-layout{position:fixed;inset:0;z-index:var(--mojo-zindex-fixed)}.mojo-portal-sticky-sidebar #portal-sidebar{position:sticky;top:0;height:100vh}.mojo-portal-content-padded .portal-content{padding:var(--mojo-spacer-lg)}.mojo-portal-content-flush .portal-content,.mobile-layout .portal-content{padding:0}.mojo-sidebar-slide #portal-sidebar{transition:transform var(--mojo-transition-base) ease-in-out}.mojo-sidebar-fade #portal-sidebar{transition:opacity var(--mojo-transition-base) ease-in-out}.mojo-sidebar-scale #portal-sidebar{transition:transform var(--mojo-transition-base) cubic-bezier(.34,1.56,.64,1)}.js-sidebar-transitioning *{pointer-events:none}.js-sidebar-ready{transition:all var(--mojo-transition-base)}@media (prefers-color-scheme: dark){.mojo-sidebar-theme-auto .sidebar{background-color:var(--bs-dark);color:var(--bs-light);border-right:1px solid var(--bs-gray-800)}.mojo-sidebar-theme-auto .sidebar-nav .nav-link{color:var(--bs-gray-300)}.mojo-sidebar-theme-auto .sidebar-nav .nav-link:hover{background-color:#ffffff1a;color:var(--bs-white)}}.mojo-sidebar-collapsed .nav-link:focus-visible{outline:2px solid var(--bs-primary);outline-offset:-2px;z-index:1}.mojo-skip-to-content{position:absolute;top:-40px;left:6px;background:var(--bs-primary);color:#fff;padding:8px;text-decoration:none;z-index:var(--mojo-zindex-tooltip);border-radius:var(--mojo-border-radius);font-size:.875rem}.mojo-skip-to-content:focus{top:6px}.portal-container.mobile-layout:not(.hide-sidebar){overflow:hidden}.portal-container.mobile-layout:not(.hide-sidebar) .portal-body{pointer-events:none}.group-selection-sidebar{background:#fff;border-right:1px solid var(--bs-border-color)}.group-selection-sidebar .form-control-sm{font-size:.875rem}.group-item{cursor:pointer;transition:all .2s ease;border-bottom:1px solid rgba(0,0,0,.05);position:relative}.group-item:last-child{border-bottom:none}.group-item:hover{background-color:#f8f9fa!important;border-left:3px solid var(--bs-primary)}.group-item:active{background-color:#e9ecef!important;transform:translate(1px)}.group-item .bi-chevron-right{opacity:0;transition:opacity .2s ease}.group-item:hover .bi-chevron-right{opacity:1}.group-header{margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(0,0,0,.1)}.group-header .cursor-pointer{cursor:pointer;padding:.5rem;border-radius:.375rem;transition:all .2s ease}.group-header .cursor-pointer:hover{background-color:#f8f9fa!important}.group-header .bi-chevron-down{transition:transform .2s ease}.group-header .cursor-pointer:hover .bi-chevron-down{transform:rotate(180deg)}.sidebar-dark .group-selection-sidebar{background:#2c3e50;border-right-color:#34495e}.sidebar-dark .group-item{border-bottom-color:#ffffff0d}.sidebar-dark .group-item:hover{background-color:#34495e!important}.sidebar-dark .group-item:active{background-color:#3d566e!important}.sidebar-dark .group-header{border-bottom-color:#ffffff1a}.sidebar-dark .group-header .cursor-pointer:hover{background-color:#34495e!important}.sidebar-dark .text-muted{color:#a9d0f6bf!important}.group-selection-sidebar .spinner-border-sm{width:1rem;height:1rem}.group-selection-sidebar .text-center{color:var(--bs-secondary)}.group-selection-sidebar .form-control:focus{border-color:var(--bs-primary);box-shadow:0 0 0 .2rem rgba(var(--bs-primary-rgb),.25)}.group-selection-sidebar .bi-inbox,.group-selection-sidebar .bi-search{color:var(--bs-secondary)}.group-selection-sidebar .bg-light{background-color:#00000005!important}.sidebar-dark .group-selection-sidebar .bg-light{background-color:#ffffff05!important}.group-selection-sidebar .text-decoration-none:hover{color:var(--bs-primary)!important}.simple-search-view{background-color:var(--bs-body-bg);color:var(--bs-body-color);border-right:1px solid var(--bs-border-color);box-shadow:var(--bs-box-shadow)}.modal-body .simple-search-view>div:first-child{position:sticky;top:0;z-index:10;background-color:var(--bs-body-bg)}[data-bs-theme=dark] .modal-body .simple-search-view>div:first-child{background-color:var(--bs-body-bg)}.collapse-sidebar .simple-search-view{background-color:var(--mojo-topnav-bg)!important}.collapse-sidebar .simple-search-view>*{display:none!important}.simple-search-item{cursor:pointer;transition:background-color .15s ease-in-out,transform .15s ease-in-out;border-radius:.25rem}.simple-search-item:hover{background-color:#0000320d;transform:translateY(-1px)}[data-bs-theme=dark] .simple-search-item:hover{background-color:#ffffff1a}.simple-search-exit-btn{width:20px;height:20px;margin-top:-5px}.simple-search-clear-btn{width:24px;height:24px;border-radius:50%}.navbar-nav .nav-item button[data-action=show-selector]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:250px;display:inline-flex;align-items:center}.navbar-nav .nav-item button[data-action=show-selector] .group-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 768px){.navbar-nav .nav-item button[data-action=show-selector]{max-width:150px}}.timeline{position:relative;padding-left:2rem}.timeline:before{content:"";position:absolute;left:.75rem;top:0;bottom:0;width:2px;background-color:#dee2e6}.timeline-item{position:relative;margin-bottom:1.5rem}.timeline-marker{position:absolute;left:-2rem;top:.125rem;width:1.5rem;height:1.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;color:#fff;border:2px solid white;box-shadow:0 2px 4px #0000001a}.timeline-marker-info{background-color:#0dcaf0}.timeline-marker-primary{background-color:#0d6efd}.timeline-marker-success{background-color:#198754}.timeline-marker-danger{background-color:#dc3545}.timeline-marker-warning{background-color:#ffc107;color:#000}.timeline-marker-secondary{background-color:#6c757d}.timeline-content{background-color:#f8f9fa;padding:1rem;border-radius:.375rem;border:1px solid #dee2e6}.job-status-indicator{display:inline-flex;align-items:center;gap:.5rem}.job-health-indicator{width:12px;height:12px;border-radius:50%;display:inline-block}.health-healthy{background-color:#198754}.health-warning{background-color:#ffc107}.health-critical{background-color:#dc3545}.health-unknown{background-color:#6c757d}.job-stats-header .card{transition:transform .2s ease,box-shadow .2s ease}.job-stats-header .card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026!important}.job-health-header .health-indicator{animation:pulse 2s infinite}@keyframes pulse{0%{opacity:1}50%{opacity:.7}to{opacity:1}}.logs-container{background-color:#1e1e1e!important;color:#d4d4d4!important}.logs-container .text-info{color:#9cdcfe!important}.logs-container .text-warning{color:#dcdcaa!important}.logs-container .text-danger{color:#f14c4c!important}.logs-container .text-success{color:#4ec9b0!important}.job-details-view pre code{font-size:.875rem;line-height:1.4}@media (max-width: 768px){.timeline{padding-left:1.5rem}.timeline-marker{left:-1.75rem;width:1.25rem;height:1.25rem;font-size:.625rem}.timeline-content{padding:.75rem}}.channel-status-badge{font-size:.75rem;padding:.25rem .5rem}.runner-utilization{height:4px;background-color:#e9ecef;border-radius:2px;overflow:hidden}.runner-utilization-fill{height:100%;transition:width .3s ease}.runner-utilization-low{background-color:#198754}.runner-utilization-medium{background-color:#ffc107}.runner-utilization-high{background-color:#fd7e14}.runner-utilization-critical{background-color:#dc3545}.mojo-select-cell,.mojo-select-all-cell{background-color:transparent;cursor:pointer;transition:background-color .2s ease;text-align:center;vertical-align:middle;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.mojo-select-cell.selected,.mojo-select-all-cell.selected{background-color:transparent}.mojo-checkbox{height:20px;width:20px;border-radius:6px;border:2px solid var(--bs-border-color);background-color:var(--bs-body-bg);display:flex;align-items:center;justify-content:center;transition:all .2s ease}.mojo-checkbok:focused,.mojo-checkbok:hover{box-shadow:0 0 0 .25rem #3874ff40}.mojo-select-cell:hover .mojo-checkbox{box-shadow:0 0 0 .25rem #3874ff40}.mojo-select-cell.selected .mojo-checkbox,.mojo-select-all-cell.selected .mojo-checkbox{color:#fff;background-color:var(--bs-primary);border-color:var(--bs-primary)}.mojo-checkbox i{font-size:1rem;opacity:0;transition:opacity .2s ease}.mojo-select-cell.selected .mojo-checkbox i,.mojo-select-all-cell.selected .mojo-checkbox i{opacity:1}.mojo-select-all-cell.indeterminate .mojo-checkbox{border-color:var(--bs-primary);background-color:var(--bs-primary)}.mojo-select-all-cell.indeterminate .mojo-checkbox i{opacity:1;color:#fff}.table-page-container{position:relative}.mojo-table-wrapper{padding:1rem}.mojo-table-loading{position:absolute;top:0;left:0;right:0;background-color:var(--bs-body-bg);opacity:.8;height:100%}.table-page-header{border-bottom:1px solid var(--bs-border-color);padding-bottom:1rem;margin-bottom:1.5rem}.table-container{position:relative;transition:opacity .3s ease}.table-container.is-loading{opacity:.7;pointer-events:none}.table-status-bar.table-status-top{border-top:none;border-bottom:1px solid var(--bs-border-color);padding-top:0;padding-bottom:.75rem;margin-bottom:1rem}.status-info{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.table-loading-overlay{position:absolute;inset:0;background:var(--bs-body-bg);opacity:.9;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.loading-content{padding:2rem;text-align:center}.loading-message{margin-top:1rem;color:var(--bs-secondary-color);font-size:.95rem}.loading-indicator{display:inline-flex;align-items:center;gap:.5rem}.error-indicator{animation:mojo-pulse 2s ease-in-out infinite;display:inline-flex;align-items:center;gap:.25rem}.table-actions-bottom{border-bottom:none;border-top:1px solid var(--bs-border-color);padding-top:1rem;padding-bottom:0;margin-top:1rem;margin-bottom:0}.batch-actions-panel{position:sticky;bottom:10px;box-shadow:0 1rem 3rem #0006;background-color:var(--bs-body-bg);height:60px;z-index:20;margin:0 8px}div.batch-select-count{font-size:1.5rem!important;background-color:var(--bs-primary);color:var(--bs-white);min-width:50px;text-align:center;height:60px;line-height:60px}div.batch-select-title{font-size:1.5rem!important;line-height:60px;height:60px}div.batch-select-action{cursor:pointer;color:var(--bs-primary-text-emphasis);transition:color .2s ease}div.batch-select-action:hover{color:var(--bs-primary)}div.batch-select-end{border-radius:0 4px 4px 0;background-color:var(--bs-primary);height:60px;width:10px}.batch-actions-panel-top{border-left:4px solid var(--bs-primary);border-color:var(--bs-info-border-subtle);margin:0!important;padding:.4rem;animation:slideDown .3s ease-out}.batch-actions-panel-top .batch-select-count{font-weight:700;color:var(--bs-primary);font-size:1.1rem}.batch-actions-panel-top button{transition:transform .2s ease,box-shadow .2s ease}.batch-actions-panel-top button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.btn-refresh:not(:disabled):hover .bi-arrow-clockwise{animation:mojo-spin .5s ease-in-out}.btn-add:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 .25rem .5rem #0000001a}.btn-export:not(:disabled):hover .bi-download,.btn-import:not(:disabled):hover .bi-upload{animation:mojo-bounce .5s ease-in-out}.collection-select-view{position:relative}.collection-select-view .form-control.is-invalid{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath d='m5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.collection-select-view .dropdown-item:has(.spinner-border){justify-content:center;align-items:center;min-height:3rem}.collection-select-view .dropdown-item:focus-visible{outline:2px solid var(--bs-primary);outline-offset:-2px}.collection-select-view .dropdown-menu::-webkit-scrollbar{width:6px}.collection-select-view .dropdown-menu::-webkit-scrollbar-track{background:var(--bs-secondary-bg);border-radius:var(--bs-border-radius-sm)}.collection-select-view .dropdown-menu::-webkit-scrollbar-thumb{background:var(--bs-border-color);border-radius:var(--bs-border-radius-sm)}.collection-select-view .dropdown-menu::-webkit-scrollbar-thumb:hover{background:var(--bs-secondary)}.collection-select-view .btn[data-action=clear-selection]{width:1.5rem;height:1.5rem;padding:0;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--bs-secondary);transition:color .15s ease-in-out}.collection-select-view .btn[data-action=clear-selection]:hover{color:var(--bs-danger)}.collection-select-view .btn[data-action=clear-selection]:focus{box-shadow:none;outline:2px solid var(--bs-primary);outline-offset:2px}.collection-select-view .btn[data-action=clear-selection] i{font-size:1rem}.collection-select-view .form-control.pe-5{padding-right:2.5rem!important}.text-truncate-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.data-view-item .data-view-label{font-size:.6rem}.table-container::-webkit-scrollbar{height:8px;width:8px}.table-container::-webkit-scrollbar-track{background:var(--bs-secondary-bg);border-radius:var(--bs-border-radius-sm)}.table-container::-webkit-scrollbar-thumb{background:var(--bs-border-color);border-radius:var(--bs-border-radius-sm)}.table-container::-webkit-scrollbar-thumb:hover{background:var(--bs-secondary-color)}@keyframes mojo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes mojo-pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes mojo-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@media (max-width: 768px){.table-page-header{padding-bottom:.75rem;margin-bottom:1rem}.batch-actions-panel-top{padding:.75rem!important}.batch-actions-panel-top .d-flex{flex-direction:column;gap:.75rem}.batch-actions-panel-top .batch-select-count{font-size:1rem}.page-title{font-size:1.5rem}.page-description{font-size:.9rem}.table-status-bar{padding:.5rem .75rem}.status-info{flex-direction:column;align-items:flex-start;gap:.5rem}.collection-select-view .dropdown-menu{max-height:200px}.collection-select-view .dropdown-item{padding:.75rem 1rem;font-size:1rem}}@media (max-width: 576px){.table-container{overflow-x:auto}.page-title{font-size:1.25rem}.loading-content{padding:1rem}.batch-actions-panel-top button{font-size:.875rem;padding:.25rem .5rem}.batch-actions-panel-top .btn-group{flex-wrap:wrap}}[data-bs-theme=dark] .table-loading-overlay{background:var(--bs-dark);opacity:.9}[data-bs-theme=dark] .batch-actions-panel{background-color:var(--bs-dark)}[data-bs-theme=dark] .batch-actions-panel-top{background-color:#0d6efd1a;border-color:#0d6efd4d}[data-bs-theme=dark] .collection-select-view .dropdown-menu::-webkit-scrollbar-track{background:var(--bs-secondary-bg)}[data-bs-theme=dark] .collection-select-view .dropdown-menu::-webkit-scrollbar-thumb{background:var(--bs-border-color)}[data-bs-theme=dark] .collection-select-view .dropdown-menu::-webkit-scrollbar-thumb:hover{background:var(--bs-secondary-color)}[data-bs-theme=dark] .collection-select-view .btn[data-action=clear-selection]{color:var(--bs-secondary)}[data-bs-theme=dark] .collection-select-view .btn[data-action=clear-selection]:hover{color:var(--bs-danger)}[data-bs-theme=dark] .collection-select-view .btn[data-action=clear-selection]:focus{outline-color:var(--bs-primary)}[data-bs-theme=dark] .table-container::-webkit-scrollbar-track{background:var(--bs-secondary-bg)}[data-bs-theme=dark] .table-container::-webkit-scrollbar-thumb{background:var(--bs-border-color)}[data-bs-theme=dark] .table-container::-webkit-scrollbar-thumb:hover{background:var(--bs-secondary-color)}.table-fullscreen{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;z-index:9999!important;background:var(--bs-body-bg)!important;padding:1rem!important;overflow:auto!important}.table-fullscreen .mojo-table-wrapper{height:100%;display:flex;flex-direction:column;padding:0}.table-fullscreen .table-container{flex:1;overflow:auto;margin-bottom:1rem}.table-fullscreen .table{margin-bottom:0}.table-fullscreen .table-status-bar{flex-shrink:0;margin-top:auto;border-top:1px solid var(--bs-border-color);padding-top:1rem;background:var(--bs-body-bg)}.btn-fullscreen{transition:transform .2s ease,box-shadow .2s ease}.btn-fullscreen:hover{transform:scale(1.05)}.table-fullscreen .btn-fullscreen{background-color:var(--bs-primary);color:var(--bs-white);border-color:var(--bs-primary)}.table-fullscreen .btn-fullscreen:hover{background-color:var(--bs-primary);border-color:var(--bs-primary);opacity:.9}.table-fullscreen .table-container::-webkit-scrollbar{width:12px;height:12px}.table-fullscreen .table-container::-webkit-scrollbar-track{background:var(--bs-secondary-bg)}.table-fullscreen .table-container::-webkit-scrollbar-thumb{background:var(--bs-secondary);border-radius:6px}.table-fullscreen .table-container::-webkit-scrollbar-thumb:hover{background:var(--bs-secondary-color)}[data-bs-theme=dark] .table-fullscreen{background:var(--bs-dark)!important}[data-bs-theme=dark] .table-fullscreen .table-status-bar{background:var(--bs-dark)}.table-totals-row{background-color:var(--bs-light);border-top:2px solid var(--bs-primary);font-weight:500}.table-footer-label{color:var(--bs-emphasis-color);font-weight:600}.table-footer-total{color:var(--bs-primary);font-weight:600;text-align:right}[data-bs-theme=dark] .table-totals-row{background-color:var(--bs-dark);border-top-color:var(--bs-primary)}[data-bs-theme=dark] .table-footer-label{color:var(--bs-light)}[data-bs-theme=dark] .table-footer-total{color:var(--bs-primary)}.editable-cell{cursor:pointer;position:relative}.editable-cell:hover{background-color:#0d6efd0d}.editable-cell.editing{background-color:#0d6efd1a}.cell-editor{width:100%;max-width:100%}.cell-editor .form-control,.cell-editor .form-select{flex:1;min-width:0}.cell-editor .btn{white-space:nowrap;flex-shrink:0;min-width:auto;width:2rem;height:2rem;padding:0;display:flex;align-items:center;justify-content:center}.cell-editor .form-check{margin-bottom:0}.cell-editor .form-control:focus,.cell-editor .form-select:focus{border-color:#0d6efd;box-shadow:0 0 0 .25rem #0d6efd40}.cell-editor .d-flex.gap-1>*{flex-shrink:0}.cell-editor .form-switch .form-check-input{margin-left:0}.editable-cell .cell-content{padding:2px 4px;border-radius:3px;transition:background-color .15s ease-in-out}.editable-cell:hover .cell-content{background-color:#0d6efd1a}.editable-cell:after{content:"";position:absolute;top:4px;right:4px;width:0;height:0;border-left:4px solid transparent;border-top:4px solid rgba(108,117,125,.3);opacity:0;transition:opacity .15s ease-in-out}.editable-cell:hover:after{opacity:1}.cell-editor.saving{opacity:.7;pointer-events:none}.cell-editor.saving .btn{disabled:true}.cell-editor.saving-error{border-left:3px solid var(--bs-danger);background-color:#dc35451a}.cell-editor.saving-error .form-control,.cell-editor.saving-error .form-select{border-color:var(--bs-danger)}[data-bs-theme=dark] .editable-cell:hover{background-color:#0d6efd1a}[data-bs-theme=dark] .editable-cell.editing,[data-bs-theme=dark] .editable-cell:hover .cell-content{background-color:#0d6efd26}[data-bs-theme=dark] .editable-cell:after{border-top-color:#ffffff4d}@media (prefers-contrast: high){.collection-select-view .dropdown-item.active{background-color:var(--bs-emphasis-color);color:var(--bs-body-bg)}.mojo-checkbox{border-width:2px}}@media (prefers-reduced-motion: reduce){.table-container,.mojo-checkbox,.batch-select-action,.batch-actions-panel-top,.batch-actions-panel-top button{transition:none}@keyframes slideDown{0%,to{opacity:1;transform:none}}.btn-refresh:not(:disabled):hover .bi-arrow-clockwise,.btn-export:not(:disabled):hover .bi-download,.btn-import:not(:disabled):hover .bi-upload{animation:none}}.toast-service-success{--bs-toast-bg: rgba(248, 249, 250, .98);--bs-toast-border-color: rgba(25, 135, 84, .3);color:var(--bs-body-color);border-left:4px solid rgba(25,135,84,.8)}.toast-service-error{--bs-toast-bg: rgba(248, 249, 250, .98);--bs-toast-border-color: rgba(220, 53, 69, .3);color:var(--bs-body-color);border-left:4px solid rgba(220,53,69,.8)}.toast-service-warning{--bs-toast-bg: rgba(248, 249, 250, .98);--bs-toast-border-color: rgba(255, 193, 7, .3);color:var(--bs-body-color);border-left:4px solid rgba(255,193,7,.9)}.toast-service-info{--bs-toast-bg: rgba(248, 249, 250, .98);--bs-toast-border-color: rgba(13, 110, 253, .3);color:var(--bs-body-color);border-left:4px solid rgba(13,110,253,.8)}.toast-service-plain{--bs-toast-bg: rgba(248, 249, 250, .98);--bs-toast-border-color: rgba(0, 0, 0, .08);color:var(--bs-body-color)}.toast-service-icon{width:20px;height:20px;flex-shrink:0}.toast-service-success .toast-service-icon{color:#198754e6}.toast-service-error .toast-service-icon{color:#dc3545e6}.toast-service-warning .toast-service-icon{color:#ffc107}.toast-service-info .toast-service-icon{color:#0d6efde6}.toast-service-plain .toast-service-icon{color:#6c757dcc}.toast-service-close{filter:none;opacity:.6}.toast-service-close:hover{opacity:1}.toast-container{max-width:400px}.toast{transition:all .3s ease-in-out}.toast.showing{opacity:0;transform:translate(100%)}.toast.show{opacity:1;transform:translate(0)}.toast.hide{opacity:0;transform:translate(100%)}@media (max-width: 576px){.toast-container{max-width:calc(100vw - 20px);left:10px!important;right:10px!important;transform:none!important}.toast-container.position-fixed.top-0.start-50.translate-middle-x,.toast-container.position-fixed.bottom-0.start-50.translate-middle-x{left:10px!important;right:10px!important;transform:none!important;width:calc(100% - 20px)}}.toast-header{padding:.5rem .75rem;border-bottom:1px solid rgba(0,0,0,.1)}.toast-service-success .toast-header,.toast-service-error .toast-header,.toast-service-info .toast-header,.toast-service-warning .toast-header{border-bottom-color:#0000000f}.toast-body{padding:.75rem;word-wrap:break-word}.toast-body .toast-message{line-height:1.4}.toast-container .toast+.toast{margin-top:.5rem}@media (prefers-color-scheme: dark){.toast-service-plain{--bs-toast-bg: rgba(33, 37, 41, .95);--bs-toast-border-color: rgba(255, 255, 255, .1);color:var(--bs-body-color)}}.toast-progress{position:absolute;bottom:0;left:0;height:3px;background-color:#ffffff4d;border-radius:0 0 .375rem .375rem;transition:width linear}.toast-actions{padding:.25rem .75rem .75rem;display:flex;gap:.5rem}.toast-actions .btn{font-size:.875rem;padding:.25rem .75rem}.chat-view{display:flex;flex-direction:column;height:100%}.chat-container{display:flex;flex-direction:column;height:100%;width:100%;border:1px solid #dee2e6;border-radius:8px;overflow:hidden;background:#fff}.chat-messages{flex:1;overflow-y:auto;overflow-x:hidden;padding:20px;background:#fff}.chat-input-wrapper{flex-shrink:0}.chat-theme-compact .message-item{display:flex;padding:12px;border-bottom:1px solid #f1f3f5;transition:background-color .15s ease}.chat-theme-compact .message-item:hover{background:#f8f9fa}.chat-theme-compact .message-item:last-child{border-bottom:none}.chat-theme-compact .message-avatar{width:36px;height:36px;border-radius:50%;background:#6c757d;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600;margin-right:12px;flex-shrink:0;overflow:hidden}.chat-theme-compact .message-content{flex:1;min-width:0}.chat-theme-compact .message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;gap:8px}.chat-theme-compact .message-author{font-weight:600;font-size:.9rem;color:#212529}.chat-theme-compact .message-time{font-size:.75rem;color:#6c757d;white-space:nowrap}.chat-theme-compact .message-text{font-size:.9rem;color:#212529;line-height:1.5;word-wrap:break-word;white-space:pre-wrap}.chat-theme-compact .chat-message-system{background:#f8f9fa;border-left:3px solid #0d6efd;margin:8px 0;padding:8px 12px}.chat-theme-bubbles .chat-message{margin-bottom:12px}.chat-theme-bubbles .message-bubble-wrapper{display:flex;flex-direction:column;max-width:70%}.chat-theme-bubbles .message-left .message-bubble-wrapper{align-items:flex-start}.chat-theme-bubbles .message-right .message-bubble-wrapper{align-items:flex-end;margin-left:auto}.chat-theme-bubbles .message-meta{font-size:.75rem;color:#6c757d;margin-bottom:4px;padding:0 4px}.chat-theme-bubbles .message-right .message-meta{text-align:right}.chat-theme-bubbles .message-bubble{padding:10px 14px;border-radius:18px;word-wrap:break-word;max-width:100%}.chat-theme-bubbles .message-left .message-bubble{background:#e9ecef;color:#212529}.chat-theme-bubbles .message-right .message-bubble{background:#0d6efd;color:#fff}.chat-theme-bubbles .message-text{font-size:.9rem;line-height:1.5;white-space:pre-wrap}.chat-theme-bubbles .chat-message-system{max-width:100%;margin:16px auto}.chat-input-view{border-top:1px solid #dee2e6;background:#f8f9fa;width:100%}.chat-input-container{padding:15px;position:relative;width:100%}.chat-input-container.drag-over{background:#e7f3ff;border-color:#0d6efd}.chat-input-container.drag-active:before{content:"Drop files here";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.2rem;color:#0d6efd;font-weight:600;pointer-events:none;z-index:10}.chat-input-wrapper{position:relative;display:flex;align-items:flex-end;gap:8px}.chat-input{flex:1;border:1px solid #ced4da;border-radius:20px;padding:10px 15px;resize:none;max-height:150px;font-size:.9rem;transition:border-color .15s ease}.chat-input:focus{outline:none;border-color:#0d6efd;box-shadow:0 0 0 .2rem #0d6efd40}.chat-send-btn{width:40px;height:40px;border-radius:50%;padding:0;display:flex;align-items:center;justify-content:center;flex-shrink:0}.chat-send-btn i{font-size:1rem}.chat-input-footer{margin-top:8px;font-size:.85rem}.chat-input-attachments{margin-bottom:10px}.attachment-preview{display:inline-flex;align-items:center;gap:8px;background:#e9ecef;padding:8px 12px;border-radius:8px;margin-right:8px;margin-bottom:8px;font-size:.85rem}.attachment-preview.upload-complete{background:#d1e7dd}.attachment-preview.upload-error{background:#f8d7da}.attachment-info{display:flex;align-items:center;gap:6px}.attachment-name{font-weight:500;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-size{color:#6c757d;font-size:.75rem}.attachment-progress{min-width:100px}.attachment-remove{padding:0;margin:0;line-height:1}.message-text .file-attachment,[data-container=attachments] .file-attachment{display:inline-block;margin-top:8px;padding:8px 12px;background:#0000000d;border:1px solid rgba(0,0,0,.1);border-radius:8px;font-size:.85rem;transition:background-color .15s ease}.message-text .file-attachment:hover,[data-container=attachments] .file-attachment:hover{background:#0000001a}.message-text .file-attachment i,[data-container=attachments] .file-attachment i{margin-right:6px}.chat-theme-bubbles .message-right .file-attachment{background:#fff3;border-color:#ffffff4d;color:#fff}.chat-message-system{text-align:center;padding:8px 12px;margin:12px 0}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{background:#f1f3f5}.chat-messages::-webkit-scrollbar-thumb{background:#adb5bd;border-radius:4px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#6c757d}@media (max-width: 768px){.chat-theme-bubbles .message-bubble-wrapper{max-width:85%}.chat-theme-compact .message-avatar{width:32px;height:32px;font-size:.75rem}.attachment-name{max-width:150px}}.badge-sm{font-size:.7rem;padding:2px 6px}.mojo-task-management-page{padding:0}.mojo-task-management-container{max-width:100%;margin:0}.mojo-task-stats-header .card{transition:all .2s ease-in-out;border:1px solid var(--bs-border-color)}.mojo-task-stats-header .card:hover{transform:translateY(-2px);box-shadow:0 .25rem .75rem #0000001a!important}.mojo-task-stats-header .card-body{padding:1.5rem}.mojo-task-stats-header h3{font-size:2rem;font-weight:700;color:var(--bs-dark)}.mojo-task-stats-header .badge{font-size:.75rem;padding:.375rem .5rem;border-radius:.375rem}.mojo-task-stats-header .fs-2{opacity:.6;font-size:2.5rem!important}.task-runners-section .mojo-task-runner-list{max-height:400px;overflow-y:auto}.task-runners-section .mojo-task-runner-item{border:1px solid var(--bs-gray-200);transition:all .2s ease-in-out}.task-runners-section .mojo-task-runner-item:hover{border-color:var(--bs-primary);background-color:var(--bs-gray-50)!important}.task-runners-section .mojo-task-runner-info{min-width:0;flex:1}.task-runners-section .mojo-task-runner-name{font-size:.95rem;margin-bottom:.25rem}.task-runners-section .mojo-task-runner-channels{word-break:break-all;line-height:1.3}.task-runners-section .mojo-task-runner-list::-webkit-scrollbar{width:6px}.task-runners-section .mojo-task-runner-list::-webkit-scrollbar-track{background:var(--bs-gray-100);border-radius:3px}.task-runners-section .mojo-task-runner-list::-webkit-scrollbar-thumb{background:var(--bs-gray-400);border-radius:3px}.task-runners-section .mojo-task-runner-list::-webkit-scrollbar-thumb:hover{background:var(--bs-gray-500)}.task-runners-section .mojo-task-runner-status .badge{font-size:.8rem;padding:.5rem .75rem;border-radius:.5rem;font-weight:500}.task-runners-section .mojo-task-runner-actions{display:flex;align-items:center;gap:.5rem}.task-runners-section .dropdown-toggle{border:1px solid var(--bs-border-color);background:#fff;transition:all .2s ease}.task-runners-section .dropdown-toggle:hover{background:var(--bs-gray-50);border-color:var(--bs-primary)}.task-runners-section .dropdown-menu{box-shadow:0 .5rem 1rem #00000026;border:1px solid var(--bs-border-color);border-radius:.5rem;min-width:160px}.task-runners-section .dropdown-item{padding:.5rem 1rem;transition:all .2s ease}.task-runners-section .dropdown-item:hover{background-color:var(--bs-gray-100)}.task-runners-section .dropdown-item i{width:1rem;text-align:center}.mojo-task-charts-section .card{border:1px solid var(--bs-border-color);transition:all .2s ease-in-out}.mojo-task-charts-section .card:hover{box-shadow:0 .25rem .75rem #00000014!important}.mojo-task-charts-section .card-body{padding:1.5rem}.mojo-task-management-page .tab-view .nav-tabs{border-bottom:2px solid var(--bs-gray-200);margin-bottom:1.5rem}.mojo-task-management-page .tab-view .nav-link{color:var(--bs-gray-600);border:none;padding:.75rem 1.5rem;margin-right:.5rem;border-radius:.5rem .5rem 0 0;transition:all .2s ease;font-weight:500}.mojo-task-management-page .tab-view .nav-link:hover{color:var(--bs-primary);background-color:var(--bs-gray-50)}.mojo-task-management-page .tab-view .nav-link.active{color:var(--bs-primary);background-color:#fff;border-bottom:2px solid var(--bs-primary);transform:translateY(1px)}.mojo-task-management-page .tab-content{min-height:400px}.mojo-task-management-page .table-container{background:#fff;border-radius:.5rem}.badge.mojo-task-status-pending{background-color:var(--bs-primary)!important;color:#fff}.badge.mojo-task-status-running{background-color:var(--bs-success)!important;color:#fff}.badge.mojo-task-status-completed{background-color:var(--bs-info)!important;color:#fff}.badge.mojo-task-status-error{background-color:var(--bs-danger)!important;color:#fff}.mojo-task-management-page .btn-group .btn{transition:all .2s ease}.mojo-task-management-page .btn-group .btn:hover{transform:translateY(-1px)}.mojo-task-management-page .btn-sm{padding:.375rem .75rem;font-size:.875rem;border-radius:.375rem}.mojo-task-management-page .bi-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinning{animation:spin 1s linear infinite}@media (max-width: 768px){.mojo-task-stats-header .card-body{padding:1rem}.mojo-task-stats-header h3{font-size:1.5rem}.task-runners-section .mojo-task-runner-item .row{margin:0}.task-runners-section .mojo-task-runner-item .col-md-8,.task-runners-section .mojo-task-runner-item .col-md-4{padding-left:0;padding-right:0}.task-runners-section .mojo-task-runner-channels small{font-size:.75rem}.mojo-task-management-page .btn-group{flex-direction:column;width:100%}.mojo-task-management-page .btn-group .btn{margin-bottom:.25rem}}@media (max-width: 576px){.mojo-task-management-container{padding:.5rem}.mojo-task-stats-header .col-12{margin-bottom:.5rem!important}.mojo-task-charts-section .col-xl-6{margin-bottom:1rem!important}.mojo-task-management-page .tab-view .nav-link{padding:.5rem 1rem;margin-right:.25rem;font-size:.875rem}.task-runners-section .mojo-task-runner-item{padding:1rem!important}.task-runners-section .mojo-task-runner-name{font-size:.9rem}.task-runners-section .mojo-task-runner-channels small{font-size:.7rem;display:block;margin-top:.25rem}}.admin-dashboard-page,.admin-page{background-color:var(--bs-gray-50);min-height:100vh}.admin-page .card{border:1px solid var(--bs-border-color);box-shadow:0 .125rem .25rem #00000013;transition:all .2s ease-in-out}.admin-page .card:hover{box-shadow:0 .25rem .5rem #0000001a}.admin-page .card-header{background-color:#fff;border-bottom:1px solid var(--bs-border-color);padding:1rem 1.5rem}.admin-page .card-body{padding:1.5rem}.admin-page h1,.admin-page .h3{color:var(--bs-dark);font-weight:600}.admin-page .text-muted{color:var(--bs-gray-600)!important}.admin-page .alert{border:none;border-radius:.5rem;padding:1rem 1.5rem}.admin-page .alert-success{background-color:#1987541a;color:var(--bs-success-text-emphasis)}.admin-page .alert-info{background-color:#0dcaf01a;color:var(--bs-info-text-emphasis)}.admin-page .alert-warning{background-color:#ffc1071a;color:var(--bs-warning-text-emphasis)}.admin-page .alert-danger{background-color:#dc35451a;color:var(--bs-danger-text-emphasis)}.admin-page .text-truncate{max-width:200px}.admin-page .small-text{font-size:.875rem}.admin-page .micro-text{font-size:.75rem}.admin-page .breadcrumb{background-color:transparent;padding:0;margin-bottom:1rem}.admin-page .breadcrumb-item+.breadcrumb-item:before{color:var(--bs-gray-500)}.admin-page .breadcrumb-item a{color:var(--bs-primary);text-decoration:none}.admin-page .breadcrumb-item a:hover{text-decoration:underline}.mojo-task-details-modal .modal-dialog{max-width:800px}.mojo-task-details-modal .fw-mono{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9rem}.mojo-task-details-modal .log-entry{border-left:3px solid var(--bs-gray-300);transition:all .2s ease}.mojo-task-details-modal .log-entry:hover{border-left-color:var(--bs-primary);background-color:var(--bs-gray-50)!important}.mojo-task-details-modal pre code{font-size:.85rem;line-height:1.4}.mojo-task-details-modal .badge{font-weight:500}.mojo-runner-details-modal .modal-dialog{max-width:1200px}.mojo-runner-details-modal .performance-metric{transition:all .3s ease}.mojo-runner-details-modal .performance-metric:hover{transform:translateY(-2px);box-shadow:0 .25rem .5rem #0000001a}.runner-detailsPrint Styles */ .mojo-task-details-view,.mojo-runner-details-view{max-height:70vh;overflow-y:auto}.mojo-task-details-view .card,.mojo-runner-details-view .card{border:1px solid var(--bs-border-color)}.mojo-task-details-view .card-header,.mojo-runner-details-view .card-header{background-color:var(--bs-gray-50);font-weight:500}.mojo-task-details-view .log-entry,.mojo-runner-details-view .log-entry{transition:background-color .2s ease}.mojo-task-details-view .log-entry:hover,.mojo-runner-details-view .log-entry:hover{background-color:var(--bs-gray-50)!important}.mojo-task-details-view .progress,.mojo-runner-details-view .progress{border-radius:10px;overflow:hidden}.mojo-task-details-view .progress-bar,.mojo-runner-details-view .progress-bar{transition:width .3s ease}.mojo-task-details-view .badge,.mojo-runner-details-view .badge{font-weight:500}.mojo-task-details-view pre{font-size:.875rem;line-height:1.4;border:1px solid var(--bs-border-color)}.mojo-task-details-view pre code,.mojo-runner-details-view pre code{color:var(--bs-gray-800)}.mojo-runner-details-view .progress{background-color:var(--bs-gray-200)}.mojo-runner-details-view .progress-bar{font-size:.875rem;font-weight:500}.mojo-task-details-view .table,.mojo-runner-details-view .table{font-size:.875rem}.mojo-task-details-view .table th,.mojo-runner-details-view .table th{font-weight:600;color:var(--bs-gray-700);font-size:.8rem;text-transform:uppercase;letter-spacing:.5px}.mojo-task-details-view .table td,.mojo-runner-details-view .table td{vertical-align:middle}.mojo-task-details-view .btn-group-sm .btn,.mojo-runner-details-view .btn-group-sm .btn{padding:.25rem .5rem;font-size:.8rem}.mojo-runner-details-view .btn-group .btn.active{background-color:var(--bs-primary);border-color:var(--bs-primary);color:#fff}.mojo-task-logs-container,.mojo-runner-logs-container{border:1px solid var(--bs-border-color);border-radius:.375rem}.mojo-task-logs-container::-webkit-scrollbar,.mojo-runner-logs-container::-webkit-scrollbar{width:6px}.mojo-task-logs-container::-webkit-scrollbar-track,.mojo-runner-logs-container::-webkit-scrollbar-track{background:var(--bs-gray-100);border-radius:3px}.mojo-task-logs-container::-webkit-scrollbar-thumb,.mojo-runner-logs-container::-webkit-scrollbar-thumb{background:var(--bs-gray-400);border-radius:3px}.mojo-task-logs-container::-webkit-scrollbar-thumb:hover,.mojo-runner-logs-container::-webkit-scrollbar-thumb:hover{background:var(--bs-gray-500)}@media print{.admin-page .btn,.admin-page .dropdown,.admin-page .card-header .btn-group{display:none!important}.admin-page .card{border:1px solid #000!important;box-shadow:none!important}.admin-page{background-color:#fff!important}.mojo-task-details-view,.mojo-runner-details-view{max-height:none;overflow:visible}}
17
+ */:root{--mojo-auth-bg: #f4f7f6;--mojo-auth-panel-bg: #ffffff;--mojo-auth-panel-border: rgba(0, 0, 0, .1);--mojo-auth-panel-shadow: 0 8px 32px rgba(0, 0, 0, .1);--mojo-auth-panel-text: var(--bs-body-color);--mojo-auth-panel-text-muted: var(--bs-secondary-color);--mojo-auth-panel-input-bg: var(--bs-body-bg);--mojo-auth-panel-input-border: var(--bs-border-color);--mojo-auth-panel-input-color: var(--bs-body-color);--mojo-auth-panel-hr-bg: var(--bs-body-bg);--mojo-auth-primary: #667eea;--mojo-auth-primary-dark: #5a6fd4;--mojo-auth-secondary: #764ba2;--mojo-auth-border-radius: var(--bs-border-radius-lg, 1rem);--mojo-auth-card-padding: 2rem;--mojo-auth-transition: all .2s ease}body.auth-bg-light{--mojo-auth-bg: #f4f7f6}body.auth-bg-dark{--mojo-auth-bg: #1a202c}body.auth-bg-gradient{--mojo-auth-bg: linear-gradient( 135deg, var(--mojo-auth-primary) 0%, var(--mojo-auth-secondary) 100% )}body.auth-panel-light{--mojo-auth-panel-bg: #ffffff;--mojo-auth-panel-border: rgba(0, 0, 0, .1);--mojo-auth-panel-shadow: 0 8px 32px rgba(0, 0, 0, .1);--mojo-auth-panel-text: var(--bs-body-color);--mojo-auth-panel-text-muted: var(--bs-secondary-color);--mojo-auth-panel-input-bg: var(--bs-body-bg);--mojo-auth-panel-input-border: var(--bs-border-color);--mojo-auth-panel-input-color: var(--bs-body-color);--mojo-auth-panel-hr-bg: var(--bs-body-bg)}body.auth-panel-dark{--mojo-auth-panel-bg: #2d3748;--mojo-auth-panel-border: rgba(255, 255, 255, .15);--mojo-auth-panel-shadow: 0 8px 32px rgba(0, 0, 0, .25);--mojo-auth-panel-text: #f7fafc;--mojo-auth-panel-text-muted: #a0aec0;--mojo-auth-panel-input-bg: #1a202c;--mojo-auth-panel-input-border: #4a5568;--mojo-auth-panel-input-color: #f7fafc;--mojo-auth-panel-hr-bg: #2d3748}body.auth-panel-translucent{--mojo-auth-panel-bg: rgba(255, 255, 255, .85);--mojo-auth-panel-border: rgba(255, 255, 255, .2);--mojo-auth-panel-shadow: 0 8px 32px rgba(0, 0, 0, .1);--mojo-auth-panel-text: #2d3748;--mojo-auth-panel-text-muted: #4a5568;--mojo-auth-panel-input-bg: rgba(255, 255, 255, .7);--mojo-auth-panel-input-border: rgba(0, 0, 0, .1);--mojo-auth-panel-input-color: #2d3748;--mojo-auth-panel-hr-bg: transparent}body.auth-bg-dark.auth-panel-translucent,body.auth-bg-gradient.auth-panel-translucent{--mojo-auth-panel-bg: rgba(45, 55, 72, .75);--mojo-auth-panel-border: rgba(255, 255, 255, .1);--mojo-auth-panel-text: #f7fafc;--mojo-auth-panel-text-muted: #a0aec0;--mojo-auth-panel-input-bg: rgba(26, 32, 44, .7);--mojo-auth-panel-input-border: rgba(255, 255, 255, .2);--mojo-auth-panel-input-color: #f7fafc;--mojo-auth-panel-hr-bg: transparent}.auth-page{background:var(--mojo-auth-bg);min-height:100vh;font-family:var(--bs-font-sans-serif);transition:background .3s ease-in-out}.auth-page .card{background:var(--mojo-auth-panel-bg)!important;border:1px solid var(--mojo-auth-panel-border);border-radius:var(--mojo-auth-border-radius);box-shadow:var(--mojo-auth-panel-shadow);color:var(--mojo-auth-panel-text);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .2s ease,box-shadow .2s ease,background .3s ease,border .3s ease}.auth-page .card:hover{transform:translateY(-2px);box-shadow:0 12px 40px #00000026}.auth-page .card-body{position:relative;padding:var(--mojo-auth-card-padding)}.auth-page .form-label{font-weight:500;color:var(--mojo-auth-panel-text)}.auth-page .form-text{color:var(--mojo-auth-panel-text-muted)}.auth-page .form-control{background-color:var(--mojo-auth-panel-input-bg);border:1px solid var(--mojo-auth-panel-input-border);color:var(--mojo-auth-panel-input-color);border-radius:var(--bs-border-radius);transition:var(--mojo-auth-transition)}.auth-page .form-control::placeholder{color:var(--mojo-auth-panel-text-muted);opacity:.7}.auth-page .form-control:focus,.auth-page .form-check-input:focus{border-color:var(--mojo-auth-primary);box-shadow:0 0 0 .25rem #667eea40;outline:none}.auth-page .text-muted{color:var(--mojo-auth-panel-text-muted)!important}.auth-page .position-relative hr{border-color:var(--mojo-auth-panel-border);opacity:.75}.auth-page .position-relative .position-absolute{background:var(--mojo-auth-panel-hr-bg);color:var(--mojo-auth-panel-text-muted);padding:0 1rem;font-size:.875rem;font-weight:500}.auth-page .btn-primary{background:linear-gradient(135deg,var(--mojo-auth-primary) 0%,var(--mojo-auth-secondary) 100%);border:none;border-radius:var(--bs-border-radius);font-weight:500;transition:var(--mojo-auth-transition)}.auth-page .btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--mojo-auth-primary-dark) 0%,var(--mojo-auth-secondary) 100%);transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.auth-page a{color:var(--mojo-auth-primary);text-decoration:none;transition:color .2s ease}.auth-page a:hover{color:var(--mojo-auth-primary-dark);text-decoration:underline}.auth-footer-links a{color:var(--mojo-auth-panel-text-muted);text-decoration:none;transition:all .2s ease}.auth-footer-links a:hover{color:var(--mojo-auth-primary);text-decoration:underline}body.auth-panel-dark .auth-footer-links a{opacity:.8}body.auth-panel-dark .auth-footer-links a:hover{opacity:1}body.auth-panel-dark .alert-danger{background-color:#dc354533;color:#f8d7da}body.auth-panel-dark .alert-success{background-color:#19875433;color:#d1e7dd}.auth-page .form-check-input:checked{background-color:var(--mojo-auth-primary);border-color:var(--mojo-auth-primary)}.auth-page .progress{background-color:#e9ecef;border-radius:2px;height:4px}.auth-page .alert{border-radius:var(--bs-border-radius);border:none;box-shadow:var(--bs-box-shadow-sm)}@media (max-width: 768px){.auth-page{padding:1rem 0}.auth-page .card{margin:0 1rem}}:root{--bs-primary: #1a73e8;--bs-secondary: #5f6368;--bs-success: #34a853;--bs-info: #4285f4;--bs-warning: #fbbc05;--bs-danger: #ea4335;--bs-light: #f1f3f4;--bs-dark: #202124;--bs-primary-bg-subtle: #e8f0fe;--bs-secondary-bg-subtle: #f1f3f4;--bs-success-bg-subtle: #e6f4ea;--bs-info-bg-subtle: #e8f0fe;--bs-warning-bg-subtle: #fef7e0;--bs-danger-bg-subtle: #fce8e6;--bs-primary-border-subtle: #aecbfa;--bs-secondary-border-subtle: #dadce0;--bs-success-border-subtle: #81c995;--bs-info-border-subtle: #aecbfa;--bs-warning-border-subtle: #fad2cf;--bs-danger-border-subtle: #f28b82;--bs-primary-text-emphasis: #174ea6;--bs-secondary-text-emphasis: #3c4043;--bs-success-text-emphasis: #0d652d;--bs-info-text-emphasis: #174ea6;--bs-warning-text-emphasis: #b06000;--bs-danger-text-emphasis: #a50e0e;--bs-btn-hover-bg: #e8f0fe}:root[data-bs-theme=ocean]{--bs-primary: #0077b6;--bs-secondary: #90e0ef;--bs-success: #00b4d8;--bs-info: #48cae4;--bs-warning: #ffd166;--bs-danger: #ef476f;--bs-light: #f1faff;--bs-dark: #03045e;--bs-primary-bg-subtle: #caf0f8;--bs-secondary-bg-subtle: #e0fbfc;--bs-success-bg-subtle: #ade8f4;--bs-info-bg-subtle: #caf0f8;--bs-warning-bg-subtle: #fff3cd;--bs-danger-bg-subtle: #fde2e4;--bs-primary-text-emphasis: #023e8a;--bs-success-text-emphasis: #0077b6;--bs-danger-text-emphasis: #9d0208}:root[data-bs-theme=sunrise]{--bs-primary: #ff6f00;--bs-secondary: #ffb703;--bs-success: #fb8500;--bs-info: #ffb4a2;--bs-warning: #ffd166;--bs-danger: #e63946;--bs-light: #fff3e6;--bs-dark: #432818;--bs-primary-bg-subtle: #fff4e1;--bs-secondary-bg-subtle: #fff8dc;--bs-success-bg-subtle: #ffe5b4;--bs-info-bg-subtle: #ffe0d9;--bs-warning-bg-subtle: #fff7d6;--bs-danger-bg-subtle: #fddede;--bs-primary-text-emphasis: #9d4b00;--bs-success-text-emphasis: #a85d00;--bs-danger-text-emphasis: #8d0000}:root[data-bs-theme=forest]{--bs-primary: #2b9348;--bs-secondary: #95d5b2;--bs-success: #55a630;--bs-info: #76c893;--bs-warning: #ffba08;--bs-danger: #d62828;--bs-light: #f0fdf4;--bs-dark: #081c15;--bs-primary-bg-subtle: #d8f3dc;--bs-secondary-bg-subtle: #e9f5eb;--bs-success-bg-subtle: #c7f9cc;--bs-info-bg-subtle: #e9fbee;--bs-warning-bg-subtle: #fff8e1;--bs-danger-bg-subtle: #ffe5e5;--bs-primary-text-emphasis: #1a472a;--bs-success-text-emphasis: #2f5233;--bs-danger-text-emphasis: #7a1a1a}:root[data-bs-theme=midnight]{--bs-primary: #5a189a;--bs-secondary: #7b2cbf;--bs-success: #06d6a0;--bs-info: #118ab2;--bs-warning: #ffd166;--bs-danger: #ef476f;--bs-light: #f8f9fa;--bs-dark: #03071e;--bs-primary-bg-subtle: #e0d4f7;--bs-secondary-bg-subtle: #f1e4ff;--bs-success-bg-subtle: #d0fdf2;--bs-info-bg-subtle: #d0ebff;--bs-warning-bg-subtle: #fff3cd;--bs-danger-bg-subtle: #fbdde2;--bs-primary-text-emphasis: #240046;--bs-success-text-emphasis: #056b53;--bs-danger-text-emphasis: #9d001f}:root[data-bs-theme=corporate]{--bs-primary: #2a5d9f;--bs-secondary: #6c757d;--bs-success: #4caf50;--bs-info: #17a2b8;--bs-warning: #f0ad4e;--bs-danger: #dc3545;--bs-light: #f8f9fa;--bs-dark: #212529;--bs-primary-bg-subtle: #e7f0fa;--bs-secondary-bg-subtle: #f1f3f5;--bs-success-bg-subtle: #eaf6ec;--bs-info-bg-subtle: #e6f7fa;--bs-warning-bg-subtle: #fff4e0;--bs-danger-bg-subtle: #fcebec;--bs-primary-border-subtle: #c2d7ed;--bs-secondary-border-subtle: #dee2e6;--bs-success-border-subtle: #c8e6c9;--bs-info-border-subtle: #bde3ea;--bs-warning-border-subtle: #ffe0b2;--bs-danger-border-subtle: #f5c2c7;--bs-primary-text-emphasis: #1d3f6e;--bs-secondary-text-emphasis: #495057;--bs-success-text-emphasis: #2e7d32;--bs-info-text-emphasis: #0d6673;--bs-warning-text-emphasis: #a46900;--bs-danger-text-emphasis: #8a1c24}:root{--mojo-primary: var(--bs-primary);--mojo-primary-rgb: var(--bs-primary-rgb);--mojo-secondary: var(--bs-secondary);--mojo-secondary-rgb: var(--bs-secondary-rgb);--mojo-success: var(--bs-success);--mojo-success-rgb: var(--bs-success-rgb);--mojo-info: var(--bs-info);--mojo-info-rgb: var(--bs-info-rgb);--mojo-warning: var(--bs-warning);--mojo-warning-rgb: var(--bs-warning-rgb);--mojo-danger: var(--bs-danger);--mojo-danger-rgb: var(--bs-danger-rgb);--mojo-light: var(--bs-light);--mojo-light-rgb: var(--bs-light-rgb);--mojo-dark: var(--bs-dark);--mojo-dark-rgb: var(--bs-dark-rgb);--mojo-body-bg: var(--bs-body-bg);--mojo-body-color: var(--bs-body-color);--mojo-emphasis-color: var(--bs-emphasis-color);--mojo-secondary-color: var(--bs-secondary-color);--mojo-tertiary-color: var(--bs-tertiary-color);--mojo-bg-primary: var(--bs-body-bg);--mojo-bg-secondary: var(--bs-secondary-bg);--mojo-bg-tertiary: var(--bs-tertiary-bg);--mojo-border-color: var(--bs-border-color);--mojo-border-color-translucent: var(--bs-border-color-translucent);--mojo-hover-bg: var(--bs-secondary-bg);--mojo-active-bg: var(--bs-primary);--mojo-focus-color: var(--bs-primary);--mojo-focus-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb), .25);--mojo-transition-fast: .15s ease-in-out;--mojo-transition-base: .2s ease-in-out;--mojo-transition-slow: .3s ease-in-out;--mojo-border-radius-sm: var(--bs-border-radius-sm);--mojo-border-radius: var(--bs-border-radius);--mojo-border-radius-lg: var(--bs-border-radius-lg);--mojo-border-radius-xl: var(--bs-border-radius-xl);--mojo-spacer-xs: calc(var(--bs-spacer) * .25);--mojo-spacer-sm: calc(var(--bs-spacer) * .5);--mojo-spacer: var(--bs-spacer);--mojo-spacer-lg: calc(var(--bs-spacer) * 1.5);--mojo-spacer-xl: calc(var(--bs-spacer) * 3);--mojo-font-sans-serif: var(--bs-font-sans-serif);--mojo-font-monospace: var(--bs-font-monospace);--mojo-box-shadow-sm: var(--bs-box-shadow-sm);--mojo-box-shadow: var(--bs-box-shadow);--mojo-box-shadow-lg: var(--bs-box-shadow-lg);--mojo-zindex-dropdown: var(--bs-zindex-dropdown, 1000);--mojo-zindex-sticky: var(--bs-zindex-sticky, 1020);--mojo-zindex-fixed: var(--bs-zindex-fixed, 1030);--mojo-zindex-modal-backdrop: var(--bs-zindex-modal-backdrop, 1040);--mojo-zindex-offcanvas: var(--bs-zindex-offcanvas, 1045);--mojo-zindex-modal: var(--bs-zindex-modal, 1050);--mojo-zindex-popover: var(--bs-zindex-popover, 1070);--mojo-zindex-tooltip: var(--bs-zindex-tooltip, 1080)}.btn-primary{--bs-btn-color: #fff;--bs-btn-bg: var(--bs-primary);--bs-btn-border-color: var(--bs-primary);--bs-btn-hover-color: #fff;--bs-btn-hover-bg: color-mix(in srgb, var(--bs-primary) 88%, #000 12%);--bs-btn-hover-border-color: color-mix(in srgb, var(--bs-primary) 82%, #000 18%);--bs-btn-active-color: #fff;--bs-btn-active-bg: color-mix(in srgb, var(--bs-primary) 75%, #000 25%);--bs-btn-active-border-color: color-mix(in srgb, var(--bs-primary) 72%, #000 28%);--bs-btn-focus-shadow-rgb: var(--bs-primary-rgb, 13, 110, 253)}.btn-success{--bs-btn-color: #fff;--bs-btn-bg: var(--bs-success);--bs-btn-border-color: var(--bs-success);--bs-btn-hover-color: #fff;--bs-btn-hover-bg: color-mix(in srgb, var(--bs-success) 88%, #000 12%);--bs-btn-hover-border-color: color-mix(in srgb, var(--bs-success) 82%, #000 18%);--bs-btn-active-color: #fff;--bs-btn-active-bg: color-mix(in srgb, var(--bs-success) 75%, #000 25%);--bs-btn-active-border-color: color-mix(in srgb, var(--bs-success) 72%, #000 28%);--bs-btn-focus-shadow-rgb: var(--bs-success-rgb, 25, 135, 84)}.btn-danger{--bs-btn-color: #fff;--bs-btn-bg: var(--bs-danger);--bs-btn-border-color: var(--bs-danger);--bs-btn-hover-color: #fff;--bs-btn-hover-bg: color-mix(in srgb, var(--bs-danger) 88%, #000 12%);--bs-btn-hover-border-color: color-mix(in srgb, var(--bs-danger) 82%, #000 18%);--bs-btn-active-color: #fff;--bs-btn-active-bg: color-mix(in srgb, var(--bs-danger) 75%, #000 25%);--bs-btn-active-border-color: color-mix(in srgb, var(--bs-danger) 72%, #000 28%);--bs-btn-focus-shadow-rgb: var(--bs-danger-rgb, 220, 53, 69)}.btn-warning{--bs-btn-color: #000;--bs-btn-bg: var(--bs-warning);--bs-btn-border-color: var(--bs-warning);--bs-btn-hover-color: #000;--bs-btn-hover-bg: color-mix(in srgb, var(--bs-warning) 88%, #000 12%);--bs-btn-hover-border-color: color-mix(in srgb, var(--bs-warning) 82%, #000 18%);--bs-btn-active-color: #000;--bs-btn-active-bg: color-mix(in srgb, var(--bs-warning) 75%, #000 25%);--bs-btn-active-border-color: color-mix(in srgb, var(--bs-warning) 72%, #000 28%);--bs-btn-focus-shadow-rgb: var(--bs-warning-rgb, 255, 193, 7)}.btn-info{--bs-btn-color: #000;--bs-btn-bg: var(--bs-info);--bs-btn-border-color: var(--bs-info);--bs-btn-hover-color: #000;--bs-btn-hover-bg: color-mix(in srgb, var(--bs-info) 88%, #000 12%);--bs-btn-hover-border-color: color-mix(in srgb, var(--bs-info) 82%, #000 18%);--bs-btn-active-color: #000;--bs-btn-active-bg: color-mix(in srgb, var(--bs-info) 75%, #000 25%);--bs-btn-active-border-color: color-mix(in srgb, var(--bs-info) 72%, #000 28%);--bs-btn-focus-shadow-rgb: var(--bs-info-rgb, 13, 202, 240)}.btn-secondary{--bs-btn-color: #fff;--bs-btn-bg: var(--bs-secondary);--bs-btn-border-color: var(--bs-secondary);--bs-btn-hover-color: #fff;--bs-btn-hover-bg: color-mix(in srgb, var(--bs-secondary) 88%, #000 12%);--bs-btn-hover-border-color: color-mix(in srgb, var(--bs-secondary) 82%, #000 18%);--bs-btn-active-color: #fff;--bs-btn-active-bg: color-mix(in srgb, var(--bs-secondary) 75%, #000 25%);--bs-btn-active-border-color: color-mix(in srgb, var(--bs-secondary) 72%, #000 28%);--bs-btn-focus-shadow-rgb: var(--bs-secondary-rgb, 108, 117, 125)}.btn-outline-primary{--bs-btn-color: var(--bs-primary);--bs-btn-border-color: var(--bs-primary);--bs-btn-hover-color: #fff;--bs-btn-hover-bg: var(--bs-primary);--bs-btn-hover-border-color: var(--bs-primary);--bs-btn-active-color: #fff;--bs-btn-active-bg: color-mix(in srgb, var(--bs-primary) 75%, #000 25%);--bs-btn-active-border-color: color-mix(in srgb, var(--bs-primary) 75%, #000 25%);--bs-btn-focus-shadow-rgb: var(--bs-primary-rgb, 13, 110, 253)}.pagination{--bs-pagination-color: var(--bs-primary);--bs-pagination-hover-color: color-mix(in srgb, var(--bs-primary) 85%, #000 15%);--bs-pagination-focus-color: var(--bs-primary);--bs-pagination-focus-box-shadow: 0 0 0 .25rem color-mix(in srgb, var(--bs-primary) 25%, transparent);--bs-pagination-active-color: #fff;--bs-pagination-active-bg: var(--bs-primary);--bs-pagination-active-border-color: var(--bs-primary);--bs-pagination-disabled-color: var(--bs-secondary, #6c757d)}.btn-link{text-decoration:none}.btn-link:hover{text-decoration:underline;background-color:transparent;border-color:none}.badge.bg-primary{--bs-badge-color: #fff;--bs-badge-bg: var(--bs-primary)}.nav-pills{--bs-nav-pills-link-active-bg: var(--bs-primary);--bs-nav-pills-link-active-color: #fff}.nav-tabs{--bs-nav-tabs-link-hover-border-color: color-mix(in srgb, var(--bs-primary) 35%, transparent);--bs-nav-tabs-link-active-color: var(--bs-primary);--bs-nav-tabs-link-active-border-color: var(--bs-primary)}.nav-tabs .nav-link{color:var(--bs-secondary)}.nav-tabs .nav-link.active{border-top-color:#1a73e8;border-right-color:#1a73e8;border-bottom-color:transparent;border-left-color:#1a73e8}.tab-view-select-style{display:inline-flex;align-items:center;padding:.375rem 2.25rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);background-color:var(--bs-body-bg);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border-top:1px solid var(--bs-border-color);border-right:1px solid var(--bs-border-color);border-left:1px solid var(--bs-border-color);border-top-left-radius:var(--bs-border-radius);border-top-right-radius:var(--bs-border-radius);border-bottom-left-radius:0;border-bottom-right-radius:0;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;-moz-appearance:none;appearance:none}.tab-view-select-style:after{display:none}.tab-view-select-style:hover{border-color:var(--bs-secondary-border-subtle)}.tab-view-select-style:focus{border-color:var(--bs-primary);outline:0;box-shadow:0 0 0 .25rem rgba(var(--bs-primary-rgb),.25)}.tab-view-select-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alert-primary{--bs-alert-color: var( --bs-primary-text-emphasis, color-mix(in srgb, var(--bs-primary) 35%, #000) );--bs-alert-bg: var(--bs-primary-bg-subtle, color-mix(in srgb, var(--bs-primary) 10%, #fff));--bs-alert-border-color: var( --bs-primary-border-subtle, color-mix(in srgb, var(--bs-primary) 25%, #fff) )}:root{--bs-link-color: var(--bs-primary);--bs-link-hover-color: color-mix(in srgb, var(--bs-primary) 85%, #000 15%)}.form-check{margin-top:.9rem}@keyframes mojo-fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes mojo-slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.mojo-fade-in{animation:mojo-fadeIn var(--mojo-transition-slow) ease-in-out}.mojo-slide-up{animation:mojo-slideUp .4s ease-out}.mojo-spin{animation:mojo-spin 1s linear infinite;display:inline-block}.mojo-pulse{animation:mojo-pulse 2s ease-in-out infinite}.mojo-bounce{animation:mojo-bounce .5s ease-in-out}.bi-spin{animation:mojo-spin 1s linear infinite;display:inline-block}.mojo-text-truncate-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.mojo-text-truncate-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.mojo-transition-fast{transition:all var(--mojo-transition-fast)}.mojo-transition{transition:all var(--mojo-transition-base)}.mojo-transition-slow{transition:all var(--mojo-transition-slow)}.mojo-transform-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mojo-transform-center-x{position:absolute;left:50%;transform:translate(-50%)}.mojo-transform-center-y{position:absolute;top:50%;transform:translateY(-50%)}.mojo-hover-lift:hover{transform:translateY(-2px);transition:transform var(--mojo-transition-fast)}.mojo-hover-shadow:hover{box-shadow:0 .5rem 1rem #00000026;transition:box-shadow var(--mojo-transition-fast)}.mojo-glass{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid rgba(255,255,255,.2)}[data-bs-theme=dark] .mojo-glass{background:#0003;border:1px solid rgba(255,255,255,.1)}.mojo-loading{pointer-events:none;opacity:.6;position:relative}.mojo-loading:after{content:"";position:absolute;top:50%;left:50%;width:1rem;height:1rem;margin:-.5rem 0 0 -.5rem;border:2px solid transparent;border-top:2px solid var(--mojo-primary);border-radius:50%;animation:mojo-spin 1s linear infinite;z-index:1}.mojo-focus-ring:focus{outline:none;box-shadow:var(--mojo-focus-shadow)}.mojo-focus-ring:focus-visible{outline:2px solid var(--mojo-focus-color);outline-offset:2px}.fs-7{font-size:.75rem!important}.fs-8{font-size:.6875rem!important}.fs-9{font-size:.625rem!important}.fs-10{font-size:.5625rem!important}@media print{.mojo-print-hide{display:none!important}.mojo-print-show{display:block!important}.mojo-no-print-shadow{box-shadow:none!important}.mojo-no-print-bg{background:#fff!important;color:#000!important}}.mojo-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.mojo-skip-link{position:absolute;top:-40px;left:6px;background:var(--mojo-emphasis-color);color:var(--mojo-body-bg);padding:8px;text-decoration:none;z-index:var(--mojo-zindex-tooltip);border-radius:var(--mojo-border-radius)}.mojo-skip-link:focus{top:6px}@media (prefers-reduced-motion: reduce){.mojo-fade-in,.mojo-slide-up,.mojo-spin,.mojo-pulse,.mojo-bounce,.bi-spin,.mojo-loading:after{animation-duration:.01ms!important;animation-iteration-count:1!important}.mojo-transition-fast,.mojo-transition,.mojo-transition-slow,.mojo-hover-lift:hover,.mojo-hover-shadow:hover{transition:none!important}}@media (prefers-contrast: high){.mojo-glass{background:var(--mojo-body-bg);border:2px solid var(--mojo-border-color);-webkit-backdrop-filter:none;backdrop-filter:none}.mojo-focus-ring:focus,.mojo-focus-ring:focus-visible{outline:3px solid var(--mojo-focus-color);outline-offset:2px;box-shadow:0 0 0 .5rem rgba(var(--mojo-primary-rgb),.5)}}.mojo-app{min-height:100vh;font-family:var(--mojo-font-sans-serif);background-color:var(--mojo-body-bg);color:var(--mojo-body-color)}.mojo-app.mojo-loading{opacity:0}.mojo-app.mojo-ready{opacity:1;transition:opacity var(--mojo-transition-slow)}.mojo-component{position:relative}.mojo-component.mojo-disabled{pointer-events:none;opacity:.6}.mojo-debug *{outline:1px solid red!important}.mojo-debug *:hover{background:#ff00001a!important}.drag-over{border-color:var(--bs-primary)!important;background-color:var(--bs-primary-bg-subtle)!important;transition:all .2s ease}.drag-active{border-style:dashed!important;border-width:2px!important;box-shadow:0 0 0 .25rem rgba(var(--bs-primary-rgb),.25)!important}.drag-over.drag-active{transform:scale(1.02);box-shadow:0 0 0 .25rem rgba(var(--bs-primary-rgb),.25),0 .5rem 1rem #00000026!important}[data-bs-theme=dark] .drag-over{background-color:rgba(var(--bs-primary-rgb),.15)!important}@media (prefers-reduced-motion: reduce){.drag-over,.drag-active{transition:none!important;transform:none!important}}@media (min-width: 1px){.mojo-debug{display:none}}.mojo-debug-enabled .mojo-debug{display:block!important}.image-field-container{position:relative;display:inline-block;border-radius:.375rem;overflow:hidden}.image-drop-zone{position:relative;border-radius:.375rem;transition:all .2s ease;overflow:hidden}.image-drop-zone.droppable{border:2px dashed var(--bs-border-color)}.image-drop-zone.droppable:hover{border-color:var(--bs-primary);background-color:var(--bs-primary-bg-subtle)}.image-drop-zone.drag-over{border-color:var(--bs-primary)!important;background-color:var(--bs-primary-bg-subtle)!important;transform:scale(1.02)}.image-drop-zone.drag-active{border-color:var(--bs-success)!important;background-color:var(--bs-success-bg-subtle)!important;box-shadow:0 0 0 3px rgba(var(--bs-success-rgb),.25)}.image-field-xs{width:48px;height:48px}.image-field-sm{width:96px;height:96px}.image-field-md{width:150px;height:150px}.image-field-lg{width:200px;height:200px}.image-field-xl{width:300px;height:300px}.image-field-container img{transition:transform .2s ease}.image-field-container:hover img{transform:scale(1.05)}.image-field-container .btn{transition:opacity .2s ease}.image-field-container:not(:hover) .btn{opacity:.6}[data-bs-theme=dark] .image-drop-zone.droppable{border-color:var(--bs-border-color-translucent)}[data-bs-theme=dark] .image-drop-zone.droppable:hover{border-color:var(--bs-primary);background-color:rgba(var(--bs-primary-rgb),.1)}@media (max-width: 576px){.image-field-xl{width:250px;height:250px}.image-field-lg{width:180px;height:180px}}.image-drop-zone:focus{outline:2px solid var(--bs-primary);outline-offset:2px}@media (prefers-reduced-motion: reduce){.image-drop-zone,.image-field-container img,.image-field-container .btn{transition:none}.image-drop-zone.drag-over,.image-field-container:hover img{transform:none}}.mojo-form-group{margin-bottom:1rem}.mojo-form-group .h6{color:var(--bs-secondary);font-weight:600;margin-bottom:.75rem;padding-bottom:.25rem;border-bottom:1px solid var(--bs-border-color)}@media (max-width: 767.98px){.mojo-form-group{padding:.75rem;margin-bottom:.75rem}}.mojo-form-control{margin-bottom:1rem;position:relative}.mojo-form-control .form-label{font-weight:500;margin-bottom:.5rem;color:var(--bs-body-color)}.mojo-form-control .form-text{margin-top:.25rem;font-size:.875rem;color:var(--bs-secondary)}.mojo-form-control .invalid-feedback{margin-top:.25rem}.mojo-form-control .form-check{margin-bottom:0}.mojo-form-control .form-check .form-check-label{font-weight:400}.mojo-form-control .image-field-container{margin-top:.5rem}.mojo-form-control input[type=range]{margin-top:.5rem;margin-bottom:.5rem}@media (max-width: 767.98px){.mojo-form-control{margin-bottom:.75rem}.mojo-form-control .form-label{margin-bottom:.375rem}}.mojo-modal-context-menu-btn{color:inherit!important;border:none;background:transparent;opacity:.7;transition:opacity .15s ease-in-out}.mojo-modal-context-menu-btn:hover,.mojo-modal-context-menu-btn:focus{color:inherit!important;background:rgba(var(--bs-emphasis-color-rgb),.1);opacity:1}.mojo-modal-context-menu-btn:active{background:rgba(var(--bs-emphasis-color-rgb),.2)}.modal.modal-info .mojo-modal-context-menu-btn,.modal.modal-success .mojo-modal-context-menu-btn{color:#fff!important}.modal.modal-warning .mojo-modal-context-menu-btn{color:#000!important}.modal.modal-error .mojo-modal-context-menu-btn,.modal.modal-dark .mojo-modal-context-menu-btn,[data-bs-theme=dark] .mojo-modal-context-menu-btn{color:#fff!important}.modal-header .mojo-modal-context-menu-btn{margin-left:auto;margin-right:0}.field-status{display:inline-block;margin-left:8px}.field-status-label-inline{display:inline-block;margin-left:8px;font-size:.875rem;vertical-align:middle}.field-status-overlay{position:absolute;top:50%;right:8px;transform:translateY(-50%);z-index:10;pointer-events:none}.field-status-full-overlay{position:absolute;inset:0;background-color:rgba(var(--bs-body-bg-rgb),.9);display:flex;align-items:center;justify-content:center;z-index:20;border-radius:var(--bs-border-radius)}.field-status-full-overlay .saving-indicator,.field-status-full-overlay .success-indicator,.field-status-full-overlay .error-indicator{display:flex;align-items:center;padding:8px 12px;background-color:var(--bs-body-bg);border:1px solid var(--bs-border-color);border-radius:var(--bs-border-radius);box-shadow:0 2px 4px #0000001a}.field-status [data-status]{display:none;font-size:1rem;transition:opacity .3s ease,transform .3s ease}.field-status .spinner-border{width:1rem;height:1rem;vertical-align:middle}.field-status [data-status=saved]{color:var(--bs-success)}.field-status [data-status=error]{color:var(--bs-danger);cursor:help}@keyframes mojo-status-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes mojo-status-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@media (max-width: 576px){.field-status{margin-left:4px}.field-status [data-status]{font-size:.875rem}}@media (prefers-contrast: high){.field-status [data-status=saving]{color:#06c}.field-status [data-status=saved]{color:#060}.field-status [data-status=error]{color:#c00}}@media (prefers-reduced-motion: reduce){.field-status [data-status]{transition:none}.field-status [data-status].show,.field-status [data-status].hide{animation:none}@keyframes mojo-status-fade-in{0%,to{opacity:1;transform:scale(1)}}@keyframes mojo-status-fade-out{0%,to{opacity:0;transform:scale(1)}}}.collection-multiselect-view{width:100%}.collection-multiselect-actions{font-size:.8125rem;font-weight:500;letter-spacing:.025em}.collection-multiselect-actions .btn-link{color:var(--bs-primary);transition:all .2s ease}.collection-multiselect-actions .btn-link:hover:not(:disabled){color:var(--bs-primary);transform:translateY(-1px)}.collection-multiselect-actions .btn-link:active:not(:disabled){transform:translateY(0)}.collection-multiselect-actions .btn-link:disabled{opacity:.5;cursor:not-allowed}.collection-multiselect-list{background:var(--bs-body-bg)}.collection-multiselect-item{-webkit-user-select:none;user-select:none;transition:background-color .15s ease-in-out;border-bottom:1px solid transparent}.collection-multiselect-item:not(:last-child){border-bottom-color:var(--bs-border-color)}.collection-multiselect-item.clickable{cursor:pointer}.collection-multiselect-item.clickable:hover{background-color:rgba(var(--bs-primary-rgb),.06)}.collection-multiselect-item.clickable:active{background-color:rgba(var(--bs-primary-rgb),.1)}.collection-multiselect-item i{flex-shrink:0;transition:transform .15s ease}.collection-multiselect-item.clickable:hover i{transform:scale(1.1)}[data-bs-theme=dark] .collection-multiselect-item.clickable:hover{background-color:rgba(var(--bs-primary-rgb),.12)}[data-bs-theme=dark] .collection-multiselect-item.clickable:active{background-color:rgba(var(--bs-primary-rgb),.18)}.collection-multiselect-empty{background:var(--bs-light);border-style:dashed!important}[data-bs-theme=dark] .collection-multiselect-empty{background:var(--bs-gray-900)}.collection-multiselect-list::-webkit-scrollbar{width:6px}.collection-multiselect-list::-webkit-scrollbar-track{background:transparent}.collection-multiselect-list::-webkit-scrollbar-thumb{background:var(--bs-gray-400);border-radius:3px}.collection-multiselect-list::-webkit-scrollbar-thumb:hover{background:var(--bs-gray-500)}[data-bs-theme=dark] .collection-multiselect-list::-webkit-scrollbar-thumb{background:var(--bs-gray-600)}[data-bs-theme=dark] .collection-multiselect-list::-webkit-scrollbar-thumb:hover{background:var(--bs-gray-500)}@keyframes multiselect-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.collection-multiselect-item{animation:multiselect-fade-in .2s ease}@media (prefers-reduced-motion: reduce){.collection-multiselect-item,.collection-multiselect-item i,.collection-multiselect-actions .btn-link{transition:none;animation:none}.collection-multiselect-actions .btn-link:hover:not(:disabled){transform:none}}.tooltip{--mojo-tooltip-bg: var(--bs-dark);--mojo-tooltip-color: #fff;--mojo-tooltip-opacity: .95;--mojo-tooltip-border-radius: .375rem;--mojo-tooltip-font-size: .875rem;--mojo-tooltip-padding-y: .5rem;--mojo-tooltip-padding-x: .75rem;--mojo-tooltip-max-width: 200px;--mojo-tooltip-box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15);font-size:var(--mojo-tooltip-font-size)}.tooltip .tooltip-inner{max-width:var(--mojo-tooltip-max-width);padding:var(--mojo-tooltip-padding-y) var(--mojo-tooltip-padding-x);background-color:var(--mojo-tooltip-bg);color:var(--mojo-tooltip-color);border-radius:var(--mojo-tooltip-border-radius);opacity:var(--mojo-tooltip-opacity);box-shadow:var(--mojo-tooltip-box-shadow);text-align:left;font-weight:500}[data-bs-theme=dark] .tooltip{--mojo-tooltip-bg: rgba(255, 255, 255, .95);--mojo-tooltip-color: var(--bs-dark);--mojo-tooltip-box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .3)}.tooltip .tooltip-arrow:before{border-color:transparent}.tooltip.bs-tooltip-top .tooltip-arrow:before,.tooltip.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before{border-top-color:var(--mojo-tooltip-bg)}.tooltip.bs-tooltip-bottom .tooltip-arrow:before,.tooltip.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before{border-bottom-color:var(--mojo-tooltip-bg)}.tooltip.bs-tooltip-start .tooltip-arrow:before,.tooltip.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before{border-left-color:var(--mojo-tooltip-bg)}.tooltip.bs-tooltip-end .tooltip-arrow:before,.tooltip.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before{border-right-color:var(--mojo-tooltip-bg)}.tooltip-primary .tooltip-inner{--mojo-tooltip-bg: var(--bs-primary);--mojo-tooltip-color: #fff}.tooltip-primary.bs-tooltip-top .tooltip-arrow:before,.tooltip-primary.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before{border-top-color:var(--bs-primary)}.tooltip-primary.bs-tooltip-bottom .tooltip-arrow:before,.tooltip-primary.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before{border-bottom-color:var(--bs-primary)}.tooltip-primary.bs-tooltip-start .tooltip-arrow:before,.tooltip-primary.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before{border-left-color:var(--bs-primary)}.tooltip-primary.bs-tooltip-end .tooltip-arrow:before,.tooltip-primary.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before{border-right-color:var(--bs-primary)}.tooltip-success .tooltip-inner{--mojo-tooltip-bg: var(--bs-success);--mojo-tooltip-color: #fff}.tooltip-success.bs-tooltip-top .tooltip-arrow:before,.tooltip-success.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before{border-top-color:var(--bs-success)}.tooltip-success.bs-tooltip-bottom .tooltip-arrow:before,.tooltip-success.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before{border-bottom-color:var(--bs-success)}.tooltip-success.bs-tooltip-start .tooltip-arrow:before,.tooltip-success.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before{border-left-color:var(--bs-success)}.tooltip-success.bs-tooltip-end .tooltip-arrow:before,.tooltip-success.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before{border-right-color:var(--bs-success)}.tooltip-warning .tooltip-inner{--mojo-tooltip-bg: var(--bs-warning);--mojo-tooltip-color: var(--bs-dark)}.tooltip-warning.bs-tooltip-top .tooltip-arrow:before,.tooltip-warning.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before{border-top-color:var(--bs-warning)}.tooltip-warning.bs-tooltip-bottom .tooltip-arrow:before,.tooltip-warning.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before{border-bottom-color:var(--bs-warning)}.tooltip-warning.bs-tooltip-start .tooltip-arrow:before,.tooltip-warning.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before{border-left-color:var(--bs-warning)}.tooltip-warning.bs-tooltip-end .tooltip-arrow:before,.tooltip-warning.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before{border-right-color:var(--bs-warning)}.tooltip-danger .tooltip-inner{--mojo-tooltip-bg: var(--bs-danger);--mojo-tooltip-color: #fff}.tooltip-danger.bs-tooltip-top .tooltip-arrow:before,.tooltip-danger.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before{border-top-color:var(--bs-danger)}.tooltip-danger.bs-tooltip-bottom .tooltip-arrow:before,.tooltip-danger.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before{border-bottom-color:var(--bs-danger)}.tooltip-danger.bs-tooltip-start .tooltip-arrow:before,.tooltip-danger.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before{border-left-color:var(--bs-danger)}.tooltip-danger.bs-tooltip-end .tooltip-arrow:before,.tooltip-danger.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before{border-right-color:var(--bs-danger)}.tooltip-info .tooltip-inner{--mojo-tooltip-bg: var(--bs-info);--mojo-tooltip-color: #fff}.tooltip-info.bs-tooltip-top .tooltip-arrow:before,.tooltip-info.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before{border-top-color:var(--bs-info)}.tooltip-info.bs-tooltip-bottom .tooltip-arrow:before,.tooltip-info.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before{border-bottom-color:var(--bs-info)}.tooltip-info.bs-tooltip-start .tooltip-arrow:before,.tooltip-info.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before{border-left-color:var(--bs-info)}.tooltip-info.bs-tooltip-end .tooltip-arrow:before,.tooltip-info.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before{border-right-color:var(--bs-info)}.tooltip-light .tooltip-inner{--mojo-tooltip-bg: var(--bs-light);--mojo-tooltip-color: var(--bs-dark);--mojo-tooltip-box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15), 0 0 0 1px rgba(0, 0, 0, .05)}.tooltip-light.bs-tooltip-top .tooltip-arrow:before,.tooltip-light.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before{border-top-color:var(--bs-light)}.tooltip-light.bs-tooltip-bottom .tooltip-arrow:before,.tooltip-light.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before{border-bottom-color:var(--bs-light)}.tooltip-light.bs-tooltip-start .tooltip-arrow:before,.tooltip-light.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before{border-left-color:var(--bs-light)}.tooltip-light.bs-tooltip-end .tooltip-arrow:before,.tooltip-light.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before{border-right-color:var(--bs-light)}.tooltip-sm .tooltip-inner{--mojo-tooltip-font-size: .75rem;--mojo-tooltip-padding-y: .25rem;--mojo-tooltip-padding-x: .5rem;--mojo-tooltip-max-width: 150px}.tooltip-lg .tooltip-inner{--mojo-tooltip-font-size: 1rem;--mojo-tooltip-padding-y: .75rem;--mojo-tooltip-padding-x: 1rem;--mojo-tooltip-max-width: 300px}@media (prefers-contrast: high){.tooltip .tooltip-inner{--mojo-tooltip-opacity: 1;border:2px solid currentColor}[data-bs-theme=dark] .tooltip .tooltip-inner{border-color:var(--mojo-tooltip-color)}}@media (prefers-reduced-motion: reduce){.tooltip{transition:none}}:root{--mojo-sidebar-width: 250px;--mojo-sidebar-collapsed-width: 40px;--mojo-portal-gap: 0;--mojo-portal-bg: var(--bs-body-bg);--mojo-topnav-bg: var(--bs-primary, #121620);--mojo-topnav-color: var(#fff);--mojo-portal-muted: var(--bs-secondary-color);--mojo-portal-border: var(--bs-border-color);--mojo-portal-text: var(--bs-body-color);--mojo-sidebar-dark-color: #fff;--mojo-sidebar-dark-color-hover: #5388d6;--mojo-sidebar-dark-bg: #343a40}.portal-layout{display:flex;min-height:100vh;height:100vh;background:var(--mojo-portal-bg)}#portal-sidebar{flex:0 0 var(--mojo-sidebar-width);max-width:var(--mojo-sidebar-width);inline-size:var(--mojo-sidebar-width);height:100%;overflow-y:hidden;z-index:1;transition:inline-size .3s cubic-bezier(.4,0,.2,1),max-width .3s cubic-bezier(.4,0,.2,1),flex-basis .3s cubic-bezier(.4,0,.2,1),margin-left .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);will-change:inline-size,max-width,flex-basis,transform}.portal-container.collapse-sidebar #portal-sidebar{inline-size:var(--mojo-sidebar-collapsed-width);max-width:var(--mojo-sidebar-collapsed-width);flex-basis:var(--mojo-sidebar-collapsed-width)}.portal-container.hide-sidebar #portal-sidebar{margin-left:calc(-1 * var(--mojo-sidebar-width));border-inline-end:0}#portal-sidebar{box-shadow:4px 0 15px -4px #0003}#portal-sidebar.sidebar-shadow{box-shadow:0 14px 28px #00000040,0 10px 10px #00000038!important}.portal-body{flex:1 1 auto;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}#portal-topnav{flex:0 0 auto;border-block-end:1px solid var(--mojo-portal-border)}nav.topnav-light{background-color:var(--bs-light);border-bottom:1px solid var(--bs-border-color);--bs-navbar-color: var(--bs-body-color);--bs-navbar-hover-color: var(--bs-primary)}nav.topnav-light .topnav-sidebar-toggle,nav.topnav-light .nav-link,nav.topnav-light .btn-link{color:var(--bs-navbar-color)}nav.topnav-light .topnav-sidebar-toggle:hover,nav.topnav-light .nav-link:hover,nav.topnav-light .btn-link:hover{color:var(--bs-navbar-hover-color)}nav.topnav-dark{background-color:var(--mojo-sidebar-dark-bg, var(--bs-dark));border-bottom:1px solid var(--bs-border-color-translucent);--bs-navbar-color: rgba(255, 255, 255, .75);--bs-navbar-hover-color: #fff;--bs-navbar-disabled-color: rgba(255, 255, 255, .25);--bs-navbar-brand-color: #fff;--bs-navbar-brand-hover-color: #fff}nav.topnav-dark .topnav-sidebar-toggle,nav.topnav-dark .nav-link,nav.topnav-dark .btn-link{color:var(--bs-navbar-color)}nav.topnav-dark .topnav-sidebar-toggle:hover,nav.topnav-dark .nav-link:hover,nav.topnav-dark .btn-link:hover{color:var(--bs-navbar-hover-color)}nav.topnav-dark .btn-close{filter:invert(1) grayscale(100%) brightness(200%)}nav.topnav-clean{background-color:var(--bs-body-bg);border-bottom:1px solid var(--bs-border-color);box-shadow:var(--bs-box-shadow-sm);--bs-navbar-color: var(--bs-body-color);--bs-navbar-hover-color: var(--bs-primary)}nav.topnav-clean .topnav-sidebar-toggle,nav.topnav-clean .nav-link,nav.topnav-clean .btn-link{color:var(--bs-navbar-color)}nav.topnav-clean .topnav-sidebar-toggle:hover,nav.topnav-clean .nav-link:hover,nav.topnav-clean .btn-link:hover{color:var(--bs-navbar-hover-color)}nav.topnav-gradient{background:linear-gradient(90deg,#2c3e50,#34495e);border-bottom:1px solid var(--bs-border-color-translucent);--bs-navbar-color: rgba(255, 255, 255, .75);--bs-navbar-hover-color: #fff;--bs-navbar-disabled-color: rgba(255, 255, 255, .25);--bs-navbar-brand-color: #fff;--bs-navbar-brand-hover-color: #fff}nav.topnav-gradient .topnav-sidebar-toggle,nav.topnav-gradient .nav-link,nav.topnav-gradient .btn-link{color:var(--bs-navbar-color)}nav.topnav-gradient .topnav-sidebar-toggle:hover,nav.topnav-gradient .nav-link:hover,nav.topnav-gradient .btn-link:hover{color:var(--bs-navbar-hover-color)}nav.topnav-gradient .btn-close{filter:invert(1) grayscale(100%) brightness(200%)}nav.topnav-shadow-light{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}nav.topnav-shadow-dark{box-shadow:0 4px 6px -1px #0006,0 2px 4px -2px #0000004d}.portal-content{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:16px;height:100%}.portal-content .muted{color:var(--mojo-portal-muted)}@media (prefers-reduced-motion: reduce){#portal-sidebar{transition:none}}.page-header{background-color:var(--bs-body-bg);border-bottom:1px solid var(--bs-border-color);padding:16px}.portal-content:has([data-container=page-header]){padding:0}[data-container=page-content]{padding:16px}.page-header-content{max-width:100%}.page-header-main{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.page-header-info{display:flex;align-items:center;gap:1rem;flex:1;min-width:0}.page-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;background-color:var(--bs-primary-bg-subtle);color:var(--bs-primary);border-radius:8px}.page-title-group{flex:1;min-width:0}.page-header .page-title{font-weight:600;margin:0;line-height:1.2;color:var(--bs-heading-color)}.page-header .page-description{margin:.5rem 0 0;line-height:1.5}.page-header-sm .page-icon{width:32px;height:32px;font-size:1rem}.page-header-sm .page-title-group .page-title{font-size:1.25rem}.page-header-sm .page-title-group .page-description{font-size:.875rem}.page-header-md .page-icon{width:40px;height:40px;font-size:1.25rem}.page-header-md .page-title-group .page-title{font-size:1.5rem}.page-header-md .page-title-group .page-description{font-size:.95rem}.page-header-lg .page-icon{width:48px;height:48px;font-size:1.5rem}.page-header-lg .page-title-group .page-title{font-size:1.75rem}.page-header-lg .page-title-group .page-description{font-size:1rem}.page-header-xl .page-icon{width:56px;height:56px;font-size:1.75rem}.page-header-xl .page-title-group .page-title{font-size:2rem}.page-header-xl .page-title-group .page-description{font-size:1.1rem}.page-actions{display:flex;gap:.5rem;flex-shrink:0}.page-header-minimal{padding:.75rem 0}.page-header-minimal .page-title-group .page-title{font-size:1.5rem;font-weight:500}.page-header-breadcrumb .breadcrumb{margin-bottom:.5rem;background-color:transparent;padding:0}@media (max-width: 768px){.page-header-main{flex-direction:column;gap:1rem}.page-actions{width:100%;justify-content:flex-start}.page-header-xl .page-title-group .page-title{font-size:1.75rem}.page-header-lg .page-title-group .page-title{font-size:1.5rem}.page-header-md .page-title-group .page-title{font-size:1.25rem}.page-header-sm .page-title-group .page-title{font-size:1.1rem}}[data-bs-theme=dark] .page-header{border-bottom-color:#ffffff1a}.sidebar{display:flex;flex-direction:column;height:100%;width:100%;min-height:0;transition:all .3s cubic-bezier(.4,0,.2,1)}#portal-sidebar .sidebar{position:static;top:auto;left:auto;height:100%;width:100%;z-index:auto;transform:none}.sidebar-dark{background-color:var(--mojo-sidebar-dark-bg, --bs-dark);color:var(--bs-light);border-inline-end:1px solid var(--bs-border-color-translucent)}.sidebar-light{background-color:var(--bs-light);color:var(--bs-body-color);border-right:1px solid var(--bs-border-color)}.sidebar-clean{background-color:var(--bs-body-bg);color:var(--bs-body-color);border-right:1px solid var(--bs-border-color);box-shadow:var(--bs-box-shadow)}.sidebar-admin{border-left:3px solid #b14545}.sidebar-admin .sidebar-header{color:#b14545}.sidebar-light.sidebar-admin .sidebar-nav .nav-link.active{background-color:#b14545}.sidebar-light.sidebar-admin .nav-link.active.has-children{color:#b14545;background-color:var(--bs-secondary-bg);animation:none}.sidebar-global{border-left:3px solid #457bb1}.sidebar-global .sidebar-header{color:#457bb1}.sidebar-light.sidebar-global .sidebar-nav .nav-link.active{background-color:#457bb1}.sidebar-light.sidebar-global .nav-link.active.has-children{color:#457bb1;background-color:var(--bs-secondary-bg);animation:none}.sidebar-gradient{background:linear-gradient(180deg,#2c3e50,#34495e);color:var(--bs-light);border-inline-end:1px solid var(--bs-border-color-translucent)}.sidebar-clean{--mojo-sidebar-width: 220px}.sidebar-container{display:flex;flex-direction:column;height:100%;min-height:0;flex:1}.sidebar-body{flex:1;overflow-y:auto;min-height:0}.sidebar-brand{height:56px;text-align:center;padding-top:14px}.sidebar-dark .sidebar-brand{border-bottom:1px solid var(--bs-border-color-translucent)}.sidebar-light .sidebar-brand{border-bottom:1px solid var(--bs-border-color)}.sidebar-clean .sidebar-brand{border-bottom:1px solid var(--bs-border-color);background-color:var(--bs-secondary-bg)}.sidebar-gradient .sidebar-brand{border-bottom:1px solid var(--bs-border-color-translucent)}.sidebar-brand.clickable{cursor:pointer;transition:background-color .2s ease}.sidebar-brand.clickable:hover{background-color:#ffffff1a}.sidebar-toggle{position:absolute;width:30px;height:30px;font-size:.875rem;background:none;top:.75rem;right:5px;border:none;border-radius:var(--bs-border-radius);color:var(--bs-body-color);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1),transform .15s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10}.sidebar-toggle:hover{background:var(--bs-secondary-bg);transform:scale(1.1);box-shadow:0 4px 12px #00000026}.sidebar-toggle:active{transform:scale(.95);transition-duration:.1s}.sidebar-toggle .toggle-icon{transition:all .3s cubic-bezier(.4,0,.2,1)}.sidebar-toggle .bi-chevron-left{display:block}.sidebar-toggle .bi-chevron-right,.portal-container.collapse-sidebar .sidebar-toggle .bi-chevron-left{display:none}.portal-container.collapse-sidebar .sidebar-toggle .bi-chevron-right{display:block}.portal-container.hide-sidebar .sidebar-toggle{opacity:0;visibility:hidden;pointer-events:none}.sidebar-dark .sidebar-toggle,.sidebar-gradient .sidebar-toggle{background:var(--bs-border-color-translucent);color:var(--bs-secondary-color);border-color:var(--bs-border-color-translucent)}.sidebar-dark .sidebar-toggle:hover,.sidebar-gradient .sidebar-toggle:hover{background:var(--bs-secondary-bg);color:var(--bs-light)}.sidebar-light .sidebar-toggle{background:var(--bs-secondary-bg);color:var(--bs-body-color);border-color:var(--bs-border-color)}.sidebar-light .sidebar-toggle:hover{background:var(--bs-tertiary-bg);color:var(--bs-emphasis-color)}.sidebar-clean .sidebar-toggle{background:var(--bs-light);color:var(--bs-primary);border-color:var(--bs-primary-border-subtle);box-shadow:var(--bs-box-shadow-sm)}.sidebar-clean .sidebar-toggle:hover{background:var(--bs-primary);color:#fff;box-shadow:0 4px 12px rgba(var(--bs-primary-rgb),.3)}.sidebar-toggle .toggle-icon{transform:rotate(0)}.topnav-sidebar-toggle{background:none!important;border:none!important;color:#ffffffe6;padding:.5rem;border-radius:.375rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.topnav-sidebar-toggle:hover{background:none!important;color:var(--bs-light);transform:scale(1.1)}.topnav-sidebar-toggle:focus{outline:none;box-shadow:none}.topnav-sidebar-toggle .toggle-chevron{font-size:1.1rem;transition:transform .3s cubic-bezier(.4,0,.2,1);transform:rotate(180deg)}.portal-container.collapse-sidebar .topnav-sidebar-toggle .toggle-chevron,.portal-container.hide-sidebar .topnav-sidebar-toggle .toggle-chevron{transform:rotate(0)}.navbar-dark .topnav-sidebar-toggle{color:#ccc}.navbar-dark .topnav-sidebar-toggle:hover{color:#fff;background:none!important}.navbar-light .topnav-sidebar-toggle{color:var(--bs-navbar-light-color)}.navbar-light .topnav-sidebar-toggle:hover{color:var(--bs-navbar-light-hover-color);background:var(--bs-secondary-bg)!important}@keyframes sidebar-toggle-pulse{0%{box-shadow:0 0 rgba(var(--bs-primary-rgb),.4)}70%{box-shadow:0 0 0 8px rgba(var(--bs-primary-rgb),0)}to{box-shadow:0 0 rgba(var(--bs-primary-rgb),0)}}.sidebar-toggle.pulse{animation:sidebar-toggle-pulse 2s infinite}.sidebar-toggle:focus{outline:none;box-shadow:0 0 0 .25rem rgba(var(--bs-primary-rgb),.25)}.sidebar-toggle:focus-visible{outline:2px solid var(--bs-primary);outline-offset:2px}[data-bs-theme=dark] .sidebar-toggle{background:#ffffff1a;color:var(--bs-light);border-color:#ffffff26}[data-bs-theme=dark] .sidebar-toggle:hover{background:#fff3;color:var(--bs-white);box-shadow:0 4px 12px #ffffff1a}[data-bs-theme=dark] .sidebar-clean .sidebar-toggle{background:var(--bs-primary);color:#fff;border-color:var(--bs-primary)}[data-bs-theme=dark] .sidebar-clean .sidebar-toggle:hover{background:var(--bs-primary);filter:brightness(1.1)}.brand-content{display:flex;flex-direction:column;align-items:center}.brand-logo{max-height:32px;width:auto;margin-bottom:.5rem}.brand-subtext{font-size:.75rem}.sidebar-group-header{cursor:pointer;border-bottom:1px solid rgba(0,0,0,.1)}.sidebar-dark .sidebar-group-header{background-color:var(--bs-dark)}.sidebar-light .sidebar-group-header{background-color:#dfe5ea}.sidebar-group-header:hover{cursor:pointer;color:var(--mojo-primary);background-color:#1414641a}.sidebar-nav{display:flex;flex-direction:column;padding:.5rem 0;min-height:100%}.sidebar-nav .nav-link{display:flex;align-items:center;position:relative;padding:.75rem 1rem;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1),transform .15s ease-out;cursor:pointer;transform:translate(0);border-radius:8px 0 0 8px;margin-left:.2rem}.sidebar-nav .nav-link:hover{margin-left:.4rem!important}.sidebar-nav .nav-link i{width:20px;text-align:center;transition:transform .2s ease-out,color .2s ease-out}.sidebar-nav .nav-link:hover i{transform:scale(1.1)}.portal-container.collapse-sidebar .sidebar-nav .nav-link:hover i{transform:scale(1.2)}.sidebar-nav .collapse .nav-link{padding:.5rem 1rem;font-size:.9rem}.sidebar-nav .bi-chevron-down{transition:transform .3s}.sidebar-nav .nav-link[aria-expanded=true] .bi-chevron-down{transform:rotate(180deg)}.sidebar-dark .sidebar-nav .nav-link{color:var(--mojo-sidebar-dark-color, #fff)}.sidebar-dark .sidebar-nav .nav-link:hover{color:var(--mojo-sidebar-dark-color-hover, #5388d6);background-color:var(--bs-secondary-bg)}.sidebar-dark .sidebar-nav .nav-link.active{color:var(--bs-light);background-color:var(--bs-primary)}.sidebar-light .sidebar-nav .nav-link{color:var(--bs-body-color)}.sidebar-light .sidebar-nav .nav-link:hover{color:var(--bs-emphasis-color);background-color:var(--bs-secondary-bg)}.sidebar-light .sidebar-nav .nav-link.active{color:var(--bs-light);background-color:var(--bs-primary)}.sidebar-clean .sidebar-nav .nav-link{color:var(--bs-secondary-color)}.sidebar-clean .sidebar-nav .nav-link:hover{color:var(--bs-body-color);background-color:var(--bs-secondary-bg)}.sidebar-clean .sidebar-nav .nav-link.active{color:var(--bs-primary);background-color:var(--bs-primary-bg-subtle);font-weight:500}.sidebar-gradient .sidebar-nav .nav-link{color:var(--bs-light)}.sidebar-gradient .sidebar-nav .nav-link:hover{color:var(--bs-white);background-color:#ffffff1a}.sidebar-gradient .sidebar-nav .nav-link.active{color:var(--bs-white);background-color:var(--bs-primary)}.sidebar-nav .nav-link.has-children{border-top-left-radius:0;border-bottom-left-radius:0}.sidebar-nav .nav-link.has-children:hover{transform:none}.sidebar-nav .nav-link.has-children.collapsed{border-left:none}.sidebar-light .nav-link.active.has-children,.sidebar-clean .nav-link.active.has-children{color:var(--bs-body-color);background-color:var(--bs-secondary-bg);animation:none}.sidebar-dark .nav-link.active.has-children,.sidebar-gradient .nav-link.active.has-children{color:var(--bs-light);background-color:#0003;animation:none}.nav-text{flex:1;white-space:nowrap;transition:opacity .3s cubic-bezier(.4,0,.2,1),width .3s cubic-bezier(.4,0,.2,1),margin .3s cubic-bezier(.4,0,.2,1)}.nav-arrow{transition:transform .2s ease,opacity .3s cubic-bezier(.4,0,.2,1),margin .3s cubic-bezier(.4,0,.2,1);margin-left:auto}.nav-link[aria-expanded=true] .nav-arrow{transform:rotate(180deg)}.portal-container.collapse-sidebar .nav-text,.portal-container.collapse-sidebar .sidebar-collapse-hide{opacity:0;width:0;margin-right:0;overflow:hidden}.portal-container.collapse-sidebar .collapsed-hidden{opacity:0;width:0;overflow:hidden;display:none}.portal-container.collapse-sidebar .sidebar-nav .nav-link{justify-content:center;padding-left:.5rem;padding-right:.5rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.portal-container.collapse-sidebar .sidebar-nav .nav-link i{margin-right:0!important}.portal-container.collapse-sidebar .nav-submenu{display:none!important}.portal-container.collapse-sidebar .sidebar-header{text-align:center;overflow:hidden}.portal-container.collapse-sidebar .nav-arrow{opacity:0;margin-left:0}.portal-container.collapse-sidebar .sidebar .nav-link{position:relative;overflow:visible;width:var(--mojo-sidebar-collapsed-width, 48px)}@keyframes tooltip-slide-in{0%{opacity:0;visibility:hidden;transform:translateY(-50%) translate(-10px) scale(.9)}to{opacity:1;visibility:visible;transform:translateY(-50%) translate(0) scale(1)}}@keyframes tooltip-arrow-slide-in{0%{opacity:0;transform:translateY(-50%) translate(-3px)}to{opacity:1;transform:translateY(-50%) translate(0)}}[data-bs-theme=dark] .portal-container.collapse-sidebar .sidebar .nav-link:hover:after{background:var(--bs-light);color:var(--bs-dark)}[data-bs-theme=dark] .portal-container.collapse-sidebar .sidebar .nav-link:hover:before{border-right-color:var(--bs-light)}.portal-container.mobile-layout .nav-link:hover:after,.portal-container.mobile-layout .nav-link:hover:before{display:none!important}.portal-container.collapse-sidebar .sidebar .nav-link:hover{background-color:rgba(var(--bs-primary-rgb),.1);border-radius:var(--mojo-border-radius);transform:translate(0) scale(1.05);box-shadow:0 2px 8px #0000001a}.portal-container.collapse-sidebar .sidebar-light .nav-link:hover{background-color:rgba(var(--bs-primary-rgb),.08);box-shadow:0 2px 8px rgba(var(--bs-primary-rgb),.2)}.portal-container.collapse-sidebar .sidebar-dark .nav-link:hover{background-color:#ffffff1a;box-shadow:0 2px 8px #ffffff1a}.portal-container.collapse-sidebar .sidebar-clean .nav-link:hover{background-color:var(--bs-light);box-shadow:0 2px 8px rgba(var(--bs-primary-rgb),.15)}.nav-submenu .nav-link{padding-left:2.5rem;font-size:.9rem}.nav-submenu{margin-left:1.8rem}.sidebar-dark .nav-submenu,.sidebar-gradient .nav-submenu{border-left:4px solid rgba(255,255,255,.2)}.sidebar-light .nav-submenu{border-left:4px solid #cdcdcd}.sidebar-clean .nav-submenu{border-left:4px solid var(--bs-border-color)}.nav-divider{margin:.75rem 0;padding:0 1rem}.nav-divider-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.25rem 0;display:block}.sidebar-dark .nav-divider-label,.sidebar-gradient .nav-divider-label{color:var(--bs-secondary-color);border-bottom:1px solid var(--bs-border-color-translucent)}.sidebar-light .nav-divider-label{color:var(--bs-secondary-color);border-bottom:1px solid var(--bs-border-color)}.sidebar-clean .nav-divider-label{color:var(--bs-secondary-color);border-bottom:1px solid var(--bs-border-color);margin:0 .5rem}.nav-divider-item{margin:.25rem 0;padding:0;list-style:none}.nav-divider-line{margin:0 1rem;border:0;border-top:1px solid;opacity:.25}.sidebar-dark .nav-divider-line,.sidebar-gradient .nav-divider-line,.sidebar-light .nav-divider-line{border-color:var(--bs-secondary-color)}.sidebar-clean .nav-divider-line{border-color:var(--bs-border-color);margin:0 1.5rem}.nav-spacer-item{flex:1;list-style:none}.nav-section{margin-bottom:.5rem}.nav-section-header{padding:.5rem 1rem;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.nav-section-header.collapsible{cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:color .2s ease}.sidebar-dark .nav-section-header,.sidebar-gradient .nav-section-header{color:var(--bs-secondary-color)}.sidebar-dark .nav-section-header.collapsible:hover,.sidebar-gradient .nav-section-header.collapsible:hover{color:var(--bs-light)}.sidebar-light .nav-section-header{color:var(--bs-secondary-color)}.sidebar-light .nav-section-header.collapsible:hover{color:var(--bs-body-color)}.sidebar-clean .nav-section-header{color:var(--bs-secondary-color);margin:0 .5rem}.sidebar-clean .nav-section-header.collapsible:hover{color:var(--bs-body-color)}.nav-section-items{padding-left:0}.sidebar-nav .badge{font-size:.7rem;padding:.25rem .5rem}.sidebar-footer{flex-shrink:0;margin-top:auto}.footer-content{padding:1rem;font-size:.85rem}.sidebar-dark .sidebar-footer,.sidebar-gradient .sidebar-footer{border-top:1px solid var(--bs-border-color-translucent)}.sidebar-dark .footer-content,.sidebar-gradient .footer-content{color:var(--bs-secondary-color)}.sidebar-light .sidebar-footer{border-top:1px solid var(--bs-border-color)}.sidebar-light .footer-content{color:var(--bs-secondary-color)}.sidebar-clean .sidebar-footer{border-top:1px solid var(--bs-border-color);background-color:var(--bs-secondary-bg)}.sidebar-clean .footer-content{color:var(--bs-secondary-color)}.config-switcher{position:absolute;top:8px;right:8px}.config-menu{position:absolute;inset:0;background-color:rgba(var(--bs-dark-rgb),.95);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1050;padding:1rem}.config-menu-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--bs-border-color-translucent)}.config-menu-body{display:flex;flex-direction:column;gap:.5rem}.config-option{padding:.75rem;border:1px solid var(--bs-border-color-translucent);border-radius:var(--bs-border-radius);background-color:var(--bs-secondary-bg);cursor:pointer;transition:all .2s ease}.config-option:hover{background-color:var(--bs-tertiary-bg);border-color:var(--bs-border-color)}.config-option.active{background-color:var(--bs-primary-bg-subtle);border-color:var(--bs-primary)}.config-name{font-weight:500;color:var(--bs-body-color)}.group-selector-container{padding:.75rem}.group-selector-wrapper{position:relative;width:100%}.group-selector{position:relative}.group-selector.disabled{opacity:.6;pointer-events:none}.group-selector .input-group-text{background-color:var(--bs-secondary-bg);border-color:var(--bs-border-color);color:var(--bs-secondary-color)}.group-selector .form-control{background-color:var(--bs-tertiary-bg);border-color:var(--bs-border-color);color:var(--bs-body-color)}.group-selector .form-control:focus{background-color:var(--bs-tertiary-bg);border-color:var(--bs-primary);color:var(--bs-body-color);box-shadow:0 0 0 .2rem rgba(var(--bs-primary-rgb),.25)}.group-selector .form-control::placeholder{color:var(--bs-secondary-color)}.group-selector .dropdown-toggle{background-color:var(--bs-secondary-bg);border-color:var(--bs-border-color);color:var(--bs-secondary-color)}.group-selector .dropdown-toggle:hover,.group-selector .dropdown-toggle:focus{background-color:var(--bs-tertiary-bg);border-color:var(--bs-border-color);color:var(--bs-body-color)}.dropdown-arrow{transition:transform .2s ease}.group-selector .dropdown-toggle[aria-expanded=true] .dropdown-arrow{transform:rotate(180deg)}.group-dropdown{position:absolute;top:100%;left:0;right:0;background-color:var(--bs-body-bg);border:1px solid var(--bs-border-color);border-top:none;border-radius:0 0 var(--bs-border-radius) var(--bs-border-radius);max-height:400px;overflow-y:auto;z-index:1050;box-shadow:var(--bs-box-shadow-lg);opacity:0;transform:translateY(-10px);transition:opacity .2s ease,transform .2s ease;display:none}.group-dropdown.show{display:block;opacity:1;transform:translateY(0)}.group-dropdown .dropdown-header{padding:.75rem 1rem;background-color:var(--bs-secondary-bg);border-bottom:1px solid var(--bs-border-color);color:var(--bs-secondary-color);font-size:.875rem}.group-results{max-height:300px;overflow-y:auto}.group-item{padding:0;border-bottom:1px solid var(--bs-border-color-translucent);cursor:pointer;transition:background-color .2s ease}.group-item:hover,.group-item.focused{background-color:var(--bs-secondary-bg)}.group-item.selected{background-color:var(--bs-primary-bg-subtle);border-left:3px solid var(--bs-primary)}.group-item.selected:hover{background-color:var(--bs-primary-bg-subtle)}.group-content{padding:.75rem 1rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.group-main{flex:1;min-width:0}.group-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.group-name{display:flex;align-items:center;flex-wrap:wrap;gap:.25rem;margin-bottom:.25rem}.group-hierarchy{color:var(--bs-secondary-color);font-size:.85rem;font-weight:400}.group-name-text{color:var(--bs-body-color);font-weight:500}.group-type{font-size:.7rem;padding:.25rem .5rem}.group-description{color:var(--bs-secondary-color);font-size:.85rem;line-height:1.3;margin-top:.25rem}.group-item mark{background-color:var(--bs-warning-bg-subtle);color:var(--bs-body-color);padding:0;border-radius:var(--bs-border-radius-sm)}.group-member-count{display:flex;align-items:center;color:var(--bs-secondary-color);font-size:.8rem}.group-status{display:flex;align-items:center}.status-indicator{width:8px;height:8px;border-radius:50%;display:inline-block}.status-indicator.status-active{background-color:var(--bs-success)}.status-indicator.status-inactive{background-color:var(--bs-secondary)}.status-indicator.status-archived{background-color:var(--bs-danger)}.status-indicator.status-pending{background-color:var(--bs-warning)}.group-dropdown .dropdown-item-text{color:var(--bs-secondary-color);padding:1rem}.group-dropdown .dropdown-divider{border-top:1px solid var(--bs-border-color);margin:.5rem 0}.selected-group-display{animation:fadeInUp .3s ease}.selected-group-card{background-color:var(--bs-primary-bg-subtle);border:1px solid var(--bs-primary-border-subtle);border-radius:var(--bs-border-radius);padding:.75rem}.selected-group-icon{flex-shrink:0}.selected-group-info{min-width:0}.selected-group-name{color:var(--bs-body-color);margin-bottom:.25rem}.selected-group-desc{color:var(--bs-secondary-color);line-height:1.3}.selected-group-actions{flex-shrink:0}.group-dropdown::-webkit-scrollbar,.group-results::-webkit-scrollbar{width:6px}.group-dropdown::-webkit-scrollbar-track,.group-results::-webkit-scrollbar-track{background:var(--bs-secondary-bg)}.group-dropdown::-webkit-scrollbar-thumb,.group-results::-webkit-scrollbar-thumb{background:var(--bs-border-color);border-radius:var(--bs-border-radius-sm)}.group-dropdown::-webkit-scrollbar-thumb:hover,.group-results::-webkit-scrollbar-thumb:hover{background:var(--bs-secondary-color)}.context-menu-view.header-menu{margin-top:-.6rem}.context-menu-view.header-menu-absolute{top:1rem;right:1rem}.portal-container.mobile-layout #portal-sidebar{position:fixed!important;inset:0;width:100vw;height:100vh;z-index:var(--mojo-zindex-modal);transform:translate(0);transition:transform .35s cubic-bezier(.4,0,.2,1);box-shadow:0 0 20px #0000004d}.portal-container.mobile-layout #portal-sidebar .sidebar{height:100vh;width:100%}.portal-container.mobile-layout #portal-sidebar .sidebar-container{height:100%}.portal-container.mobile-layout.hide-sidebar #portal-sidebar{transform:translate(-100%);box-shadow:0 0 20px #0000}.portal-container.mobile-layout #portal-sidebar,.portal-container.mobile-layout.collapse-sidebar #portal-sidebar{inline-size:100vw!important;max-width:100vw!important;flex-basis:100vw!important}.portal-container.mobile-layout .nav-text,.portal-container.mobile-layout.collapse-sidebar .nav-text{opacity:1!important;width:auto!important;overflow:visible!important}.portal-container.mobile-layout .nav-arrow,.portal-container.mobile-layout.collapse-sidebar .nav-arrow{opacity:1!important}.portal-container.mobile-layout .sidebar-nav .nav-link,.portal-container.mobile-layout.collapse-sidebar .sidebar-nav .nav-link{justify-content:flex-start!important;padding:1rem!important;font-size:1rem}.portal-container.mobile-layout .nav-submenu,.portal-container.mobile-layout.collapse-sidebar .nav-submenu{display:block!important}.portal-container.mobile-layout .sidebar-toggle{display:none}.portal-container.mobile-layout .group-selector-container,.portal-container.mobile-layout .config-menu{padding:.5rem}.portal-container.mobile-layout .selected-group-card{padding:1rem}.portal-container.mobile-layout .group-dropdown{max-height:300px;left:-5px;right:-5px;border-radius:.5rem;border:1px solid #495057;box-shadow:0 1rem 3rem #0000004d}.portal-container.mobile-layout .group-content{padding:1rem .75rem;flex-direction:column;align-items:stretch;gap:.5rem}.portal-container.mobile-layout .group-meta{flex-direction:row;justify-content:space-between;align-items:center}.portal-sidebar-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;z-index:calc(var(--mojo-zindex-modal) - 1);opacity:0;visibility:hidden;transition:opacity .35s cubic-bezier(.4,0,.2,1),visibility .35s cubic-bezier(.4,0,.2,1),backdrop-filter .35s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}.portal-container.mobile-layout:not(.hide-sidebar) .portal-sidebar-backdrop{opacity:1;visibility:visible;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.portal-container #portal-sidebar,.sidebar-nav .nav-link,.nav-text,.nav-arrow,.sidebar-header,.sidebar-footer,.sidebar-header .fs-5{transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.sidebar-nav .nav-item:nth-child(1) .nav-link{transition-delay:0ms}.sidebar-nav .nav-item:nth-child(2) .nav-link{transition-delay:20ms}.sidebar-nav .nav-item:nth-child(3) .nav-link{transition-delay:40ms}.sidebar-nav .nav-item:nth-child(4) .nav-link{transition-delay:60ms}.sidebar-nav .nav-item:nth-child(5) .nav-link{transition-delay:80ms}.sidebar-nav .nav-item:nth-child(6) .nav-link{transition-delay:.1s}.sidebar-nav .nav-item:nth-child(7) .nav-link{transition-delay:.12s}.sidebar-nav .nav-item:nth-child(8) .nav-link{transition-delay:.14s}[data-bs-theme=dark] .group-dropdown{background-color:var(--bs-body-bg);border-color:var(--bs-border-color)}[data-bs-theme=dark] .config-menu{background-color:rgba(var(--bs-dark-rgb),.95)}[data-bs-theme=dark] .config-option{background-color:var(--bs-secondary-bg);border-color:var(--bs-border-color)}[data-bs-theme=dark] .group-selector .form-control{background-color:var(--bs-tertiary-bg);border-color:var(--bs-border-color);color:var(--bs-body-color)}[data-bs-theme=dark] .group-selector .input-group-text{background-color:var(--bs-secondary-bg);border-color:var(--bs-border-color);color:var(--bs-secondary-color)}[data-bs-theme=dark] .group-item:hover,[data-bs-theme=dark] .group-item.focused{background-color:var(--bs-secondary-bg)}[data-bs-theme=dark] .selected-group-card{background-color:var(--bs-primary-bg-subtle);border-color:var(--bs-primary-border-subtle)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.group-item:focus{outline:2px solid #0d6efd;outline-offset:-2px}@media (prefers-contrast: high){.group-dropdown{border-width:2px;border-color:#fff}.group-item.selected{border-left-width:4px}.status-indicator{border:1px solid #fff}}@media (prefers-reduced-motion: reduce){.group-dropdown,.dropdown-arrow{transition:none}.selected-group-display{animation:none}.portal-container #portal-sidebar,.sidebar-nav .nav-link,.nav-text,.nav-arrow,.sidebar-header,.sidebar-footer,.sidebar-header .fs-5{transition:none!important;animation:none!important}.sidebar-nav .nav-link i{transition:none!important}.sidebar-nav .nav-link:hover,.portal-container.collapse-sidebar .sidebar .nav-link:hover{transform:none!important;box-shadow:none!important}.portal-sidebar-backdrop{transition:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.sidebar-nav .nav-item:nth-child(n) .nav-link{transition-delay:0ms!important}.portal-container:not(.collapse-sidebar) #portal-sidebar{animation:none!important}.sidebar-nav .nav-link.active{animation:none!important}.nav-link[data-bs-toggle=collapse] .bi-chevron-down{transition:none!important}.nav-link[aria-expanded=true] .bi-chevron-down{transform:rotate(180deg)!important}.portal-container.collapse-sidebar .sidebar .nav-link:hover:after,[data-bs-theme=dark] .portal-container.collapse-sidebar .sidebar .nav-link:hover:after,.portal-container.collapse-sidebar .sidebar .nav-link:hover:before{animation:none!important;transition:none!important;opacity:1!important;visibility:visible!important;transform:translateY(-50%) translate(0)!important}.sidebar-toggle,.sidebar-toggle .toggle-icon{transition:none!important;animation:none!important}.sidebar-toggle:hover{transform:none!important}}.mojo-sidebar-force-open .portal-container{--mojo-sidebar-width: 250px !important}.mojo-sidebar-force-open #portal-sidebar{inline-size:var(--mojo-sidebar-width)!important;max-width:var(--mojo-sidebar-width)!important;flex-basis:var(--mojo-sidebar-width)!important}.mojo-sidebar-force-collapsed .portal-container{--mojo-sidebar-width: var(--mojo-sidebar-collapsed-width) !important}.mojo-sidebar-force-collapsed #portal-sidebar{inline-size:var(--mojo-sidebar-collapsed-width)!important;max-width:var(--mojo-sidebar-collapsed-width)!important;flex-basis:var(--mojo-sidebar-collapsed-width)!important}.mojo-sidebar-force-hidden #portal-sidebar{inline-size:0!important;max-width:0!important;flex-basis:0!important;overflow:hidden!important}.mojo-sidebar-no-transition #portal-sidebar,.mojo-sidebar-no-transition .sidebar-nav .nav-link,.mojo-sidebar-no-transition .nav-text,.mojo-sidebar-no-transition .nav-arrow{transition:none!important}.portal-container.sidebar-opening #portal-sidebar{transition-duration:.35s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.portal-container.sidebar-closing #portal-sidebar{transition-duration:.25s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.portal-container:not(.collapse-sidebar) #portal-sidebar{animation:sidebar-expand .4s cubic-bezier(.34,1.56,.64,1)}@keyframes sidebar-expand{0%{transform:scale(.98) translate(-2px);opacity:.9}60%{transform:scale(1.01) translate(1px)}to{transform:scale(1) translate(0);opacity:1}}@keyframes nav-pulse{0%{box-shadow:0 0 rgba(var(--bs-primary-rgb),.4)}70%{box-shadow:0 0 0 6px rgba(var(--bs-primary-rgb),0)}to{box-shadow:0 0 rgba(var(--bs-primary-rgb),0)}}.sidebar-nav .nav-link.active{animation:nav-pulse 2s infinite}.nav-link[data-bs-toggle=collapse] .bi-chevron-down{transition:transform .25s cubic-bezier(.4,0,.2,1)}.nav-link[aria-expanded=true] .bi-chevron-down{transform:rotate(180deg) scale(1.1)}.mojo-sidebar-theme-auto .sidebar{background-color:var(--bs-body-bg);color:var(--bs-body-color);border-right:1px solid var(--bs-border-color)}.mojo-sidebar-theme-auto .sidebar-nav .nav-link{color:var(--bs-body-color)}.mojo-sidebar-theme-auto .sidebar-nav .nav-link:hover{background-color:var(--bs-secondary-bg)}.mojo-sidebar-theme-auto .sidebar-nav .nav-link.active{background-color:var(--bs-primary);color:var(--bs-white)}.mojo-sidebar-collapsed .nav-text,.mojo-sidebar-collapsed .nav-arrow{opacity:0;width:0;overflow:hidden}.mojo-sidebar-collapsed .sidebar-nav .nav-link{justify-content:center;padding-left:.5rem;padding-right:.5rem}.mojo-sidebar-collapsed .nav-submenu{display:none!important}.mojo-portal-fixed .portal-layout{position:fixed;inset:0;z-index:var(--mojo-zindex-fixed)}.mojo-portal-sticky-sidebar #portal-sidebar{position:sticky;top:0;height:100vh}.mojo-portal-content-padded .portal-content{padding:var(--mojo-spacer-lg)}.mojo-portal-content-flush .portal-content,.mobile-layout .portal-content{padding:0}.mojo-sidebar-slide #portal-sidebar{transition:transform var(--mojo-transition-base) ease-in-out}.mojo-sidebar-fade #portal-sidebar{transition:opacity var(--mojo-transition-base) ease-in-out}.mojo-sidebar-scale #portal-sidebar{transition:transform var(--mojo-transition-base) cubic-bezier(.34,1.56,.64,1)}.js-sidebar-transitioning *{pointer-events:none}.js-sidebar-ready{transition:all var(--mojo-transition-base)}@media (prefers-color-scheme: dark){.mojo-sidebar-theme-auto .sidebar{background-color:var(--bs-dark);color:var(--bs-light);border-right:1px solid var(--bs-gray-800)}.mojo-sidebar-theme-auto .sidebar-nav .nav-link{color:var(--bs-gray-300)}.mojo-sidebar-theme-auto .sidebar-nav .nav-link:hover{background-color:#ffffff1a;color:var(--bs-white)}}.mojo-sidebar-collapsed .nav-link:focus-visible{outline:2px solid var(--bs-primary);outline-offset:-2px;z-index:1}.mojo-skip-to-content{position:absolute;top:-40px;left:6px;background:var(--bs-primary);color:#fff;padding:8px;text-decoration:none;z-index:var(--mojo-zindex-tooltip);border-radius:var(--mojo-border-radius);font-size:.875rem}.mojo-skip-to-content:focus{top:6px}.portal-container.mobile-layout:not(.hide-sidebar){overflow:hidden}.portal-container.mobile-layout:not(.hide-sidebar) .portal-body{pointer-events:none}.group-selection-sidebar{background:#fff;border-right:1px solid var(--bs-border-color)}.group-selection-sidebar .form-control-sm{font-size:.875rem}.group-item{cursor:pointer;transition:all .2s ease;border-bottom:1px solid rgba(0,0,0,.05);position:relative}.group-item:last-child{border-bottom:none}.group-item:hover{background-color:#f8f9fa!important;border-left:3px solid var(--bs-primary)}.group-item:active{background-color:#e9ecef!important;transform:translate(1px)}.group-item .bi-chevron-right{opacity:0;transition:opacity .2s ease}.group-item:hover .bi-chevron-right{opacity:1}.group-header{margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(0,0,0,.1)}.group-header .cursor-pointer{cursor:pointer;padding:.5rem;border-radius:.375rem;transition:all .2s ease}.group-header .cursor-pointer:hover{background-color:#f8f9fa!important}.group-header .bi-chevron-down{transition:transform .2s ease}.group-header .cursor-pointer:hover .bi-chevron-down{transform:rotate(180deg)}.sidebar-dark .group-selection-sidebar{background:#2c3e50;border-right-color:#34495e}.sidebar-dark .group-item{border-bottom-color:#ffffff0d}.sidebar-dark .group-item:hover{background-color:#34495e!important}.sidebar-dark .group-item:active{background-color:#3d566e!important}.sidebar-dark .group-header{border-bottom-color:#ffffff1a}.sidebar-dark .group-header .cursor-pointer:hover{background-color:#34495e!important}.sidebar-dark .text-muted{color:#a9d0f6bf!important}.group-selection-sidebar .spinner-border-sm{width:1rem;height:1rem}.group-selection-sidebar .text-center{color:var(--bs-secondary)}.group-selection-sidebar .form-control:focus{border-color:var(--bs-primary);box-shadow:0 0 0 .2rem rgba(var(--bs-primary-rgb),.25)}.group-selection-sidebar .bi-inbox,.group-selection-sidebar .bi-search{color:var(--bs-secondary)}.group-selection-sidebar .bg-light{background-color:#00000005!important}.sidebar-dark .group-selection-sidebar .bg-light{background-color:#ffffff05!important}.group-selection-sidebar .text-decoration-none:hover{color:var(--bs-primary)!important}.simple-search-view{background-color:var(--bs-body-bg);color:var(--bs-body-color);border-right:1px solid var(--bs-border-color);box-shadow:var(--bs-box-shadow)}.modal-body .simple-search-view>div:first-child{position:sticky;top:0;z-index:10;background-color:var(--bs-body-bg)}[data-bs-theme=dark] .modal-body .simple-search-view>div:first-child{background-color:var(--bs-body-bg)}.collapse-sidebar .simple-search-view{background-color:var(--mojo-topnav-bg)!important}.collapse-sidebar .simple-search-view>*{display:none!important}.simple-search-item{cursor:pointer;transition:background-color .15s ease-in-out,transform .15s ease-in-out;border-radius:.25rem}.simple-search-item:hover{background-color:#0000320d;transform:translateY(-1px)}[data-bs-theme=dark] .simple-search-item:hover{background-color:#ffffff1a}.simple-search-exit-btn{width:20px;height:20px;margin-top:-5px}.simple-search-clear-btn{width:24px;height:24px;border-radius:50%}.navbar-nav .nav-item button[data-action=show-selector]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:250px;display:inline-flex;align-items:center}.navbar-nav .nav-item button[data-action=show-selector] .group-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 768px){.navbar-nav .nav-item button[data-action=show-selector]{max-width:150px}}.timeline{position:relative;padding-left:2rem}.timeline:before{content:"";position:absolute;left:.75rem;top:0;bottom:0;width:2px;background-color:#dee2e6}.timeline-item{position:relative;margin-bottom:1.5rem}.timeline-marker{position:absolute;left:-2rem;top:.125rem;width:1.5rem;height:1.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;color:#fff;border:2px solid white;box-shadow:0 2px 4px #0000001a}.timeline-marker-info{background-color:#0dcaf0}.timeline-marker-primary{background-color:#0d6efd}.timeline-marker-success{background-color:#198754}.timeline-marker-danger{background-color:#dc3545}.timeline-marker-warning{background-color:#ffc107;color:#000}.timeline-marker-secondary{background-color:#6c757d}.timeline-content{background-color:#f8f9fa;padding:1rem;border-radius:.375rem;border:1px solid #dee2e6}.job-status-indicator{display:inline-flex;align-items:center;gap:.5rem}.job-health-indicator{width:12px;height:12px;border-radius:50%;display:inline-block}.health-healthy{background-color:#198754}.health-warning{background-color:#ffc107}.health-critical{background-color:#dc3545}.health-unknown{background-color:#6c757d}.job-stats-header .card{transition:transform .2s ease,box-shadow .2s ease}.job-stats-header .card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026!important}.job-health-header .health-indicator{animation:pulse 2s infinite}@keyframes pulse{0%{opacity:1}50%{opacity:.7}to{opacity:1}}.logs-container{background-color:#1e1e1e!important;color:#d4d4d4!important}.logs-container .text-info{color:#9cdcfe!important}.logs-container .text-warning{color:#dcdcaa!important}.logs-container .text-danger{color:#f14c4c!important}.logs-container .text-success{color:#4ec9b0!important}.job-details-view pre code{font-size:.875rem;line-height:1.4}@media (max-width: 768px){.timeline{padding-left:1.5rem}.timeline-marker{left:-1.75rem;width:1.25rem;height:1.25rem;font-size:.625rem}.timeline-content{padding:.75rem}}.channel-status-badge{font-size:.75rem;padding:.25rem .5rem}.runner-utilization{height:4px;background-color:#e9ecef;border-radius:2px;overflow:hidden}.runner-utilization-fill{height:100%;transition:width .3s ease}.runner-utilization-low{background-color:#198754}.runner-utilization-medium{background-color:#ffc107}.runner-utilization-high{background-color:#fd7e14}.runner-utilization-critical{background-color:#dc3545}.mojo-select-cell,.mojo-select-all-cell{background-color:transparent;cursor:pointer;transition:background-color .2s ease;text-align:center;vertical-align:middle;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.mojo-select-cell.selected,.mojo-select-all-cell.selected{background-color:transparent}.mojo-checkbox{height:20px;width:20px;border-radius:6px;border:2px solid var(--bs-border-color);background-color:var(--bs-body-bg);display:flex;align-items:center;justify-content:center;transition:all .2s ease}.mojo-checkbok:focused,.mojo-checkbok:hover{box-shadow:0 0 0 .25rem #3874ff40}.mojo-select-cell:hover .mojo-checkbox{box-shadow:0 0 0 .25rem #3874ff40}.mojo-select-cell.selected .mojo-checkbox,.mojo-select-all-cell.selected .mojo-checkbox{color:#fff;background-color:var(--bs-primary);border-color:var(--bs-primary)}.mojo-checkbox i{font-size:1rem;opacity:0;transition:opacity .2s ease}.mojo-select-cell.selected .mojo-checkbox i,.mojo-select-all-cell.selected .mojo-checkbox i{opacity:1}.mojo-select-all-cell.indeterminate .mojo-checkbox{border-color:var(--bs-primary);background-color:var(--bs-primary)}.mojo-select-all-cell.indeterminate .mojo-checkbox i{opacity:1;color:#fff}.table-page-container{position:relative}.mojo-table-wrapper{padding:1rem}.mojo-table-loading{position:absolute;top:0;left:0;right:0;background-color:var(--bs-body-bg);opacity:.8;height:100%}.table-page-header{border-bottom:1px solid var(--bs-border-color);padding-bottom:1rem;margin-bottom:1.5rem}.table-container{position:relative;transition:opacity .3s ease}.table-container.is-loading{opacity:.7;pointer-events:none}.table-status-bar.table-status-top{border-top:none;border-bottom:1px solid var(--bs-border-color);padding-top:0;padding-bottom:.75rem;margin-bottom:1rem}.status-info{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.table-loading-overlay{position:absolute;inset:0;background:var(--bs-body-bg);opacity:.9;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.loading-content{padding:2rem;text-align:center}.loading-message{margin-top:1rem;color:var(--bs-secondary-color);font-size:.95rem}.loading-indicator{display:inline-flex;align-items:center;gap:.5rem}.error-indicator{animation:mojo-pulse 2s ease-in-out infinite;display:inline-flex;align-items:center;gap:.25rem}.table-actions-bottom{border-bottom:none;border-top:1px solid var(--bs-border-color);padding-top:1rem;padding-bottom:0;margin-top:1rem;margin-bottom:0}.batch-actions-panel{position:sticky;bottom:10px;box-shadow:0 1rem 3rem #0006;background-color:var(--bs-body-bg);height:60px;z-index:20;margin:0 8px}div.batch-select-count{font-size:1.5rem!important;background-color:var(--bs-primary);color:var(--bs-white);min-width:50px;text-align:center;height:60px;line-height:60px}div.batch-select-title{font-size:1.5rem!important;line-height:60px;height:60px}div.batch-select-action{cursor:pointer;color:var(--bs-primary-text-emphasis);transition:color .2s ease}div.batch-select-action:hover{color:var(--bs-primary)}div.batch-select-end{border-radius:0 4px 4px 0;background-color:var(--bs-primary);height:60px;width:10px}.batch-actions-panel-top{border-left:4px solid var(--bs-primary);border-color:var(--bs-info-border-subtle);margin:0!important;padding:.4rem;animation:slideDown .3s ease-out}.batch-actions-panel-top .batch-select-count{font-weight:700;color:var(--bs-primary);font-size:1.1rem}.batch-actions-panel-top button{transition:transform .2s ease,box-shadow .2s ease}.batch-actions-panel-top button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.btn-refresh:not(:disabled):hover .bi-arrow-clockwise{animation:mojo-spin .5s ease-in-out}.btn-add:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 .25rem .5rem #0000001a}.btn-export:not(:disabled):hover .bi-download,.btn-import:not(:disabled):hover .bi-upload{animation:mojo-bounce .5s ease-in-out}.collection-select-view{position:relative}.collection-select-view .form-control.is-invalid{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath d='m5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.collection-select-view .dropdown-item:has(.spinner-border){justify-content:center;align-items:center;min-height:3rem}.collection-select-view .dropdown-item:focus-visible{outline:2px solid var(--bs-primary);outline-offset:-2px}.collection-select-view .dropdown-menu::-webkit-scrollbar{width:6px}.collection-select-view .dropdown-menu::-webkit-scrollbar-track{background:var(--bs-secondary-bg);border-radius:var(--bs-border-radius-sm)}.collection-select-view .dropdown-menu::-webkit-scrollbar-thumb{background:var(--bs-border-color);border-radius:var(--bs-border-radius-sm)}.collection-select-view .dropdown-menu::-webkit-scrollbar-thumb:hover{background:var(--bs-secondary)}.collection-select-view .btn[data-action=clear-selection]{width:1.5rem;height:1.5rem;padding:0;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--bs-secondary);transition:color .15s ease-in-out}.collection-select-view .btn[data-action=clear-selection]:hover{color:var(--bs-danger)}.collection-select-view .btn[data-action=clear-selection]:focus{box-shadow:none;outline:2px solid var(--bs-primary);outline-offset:2px}.collection-select-view .btn[data-action=clear-selection] i{font-size:1rem}.collection-select-view .form-control.pe-5{padding-right:2.5rem!important}.text-truncate-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.data-view-item .data-view-label{font-size:.6rem}.table-container::-webkit-scrollbar{height:8px;width:8px}.table-container::-webkit-scrollbar-track{background:var(--bs-secondary-bg);border-radius:var(--bs-border-radius-sm)}.table-container::-webkit-scrollbar-thumb{background:var(--bs-border-color);border-radius:var(--bs-border-radius-sm)}.table-container::-webkit-scrollbar-thumb:hover{background:var(--bs-secondary-color)}@keyframes mojo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes mojo-pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes mojo-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@media (max-width: 768px){.table-page-header{padding-bottom:.75rem;margin-bottom:1rem}.batch-actions-panel-top{padding:.75rem!important}.batch-actions-panel-top .d-flex{flex-direction:column;gap:.75rem}.batch-actions-panel-top .batch-select-count{font-size:1rem}.page-title{font-size:1.5rem}.page-description{font-size:.9rem}.table-status-bar{padding:.5rem .75rem}.status-info{flex-direction:column;align-items:flex-start;gap:.5rem}.collection-select-view .dropdown-menu{max-height:200px}.collection-select-view .dropdown-item{padding:.75rem 1rem;font-size:1rem}}@media (max-width: 576px){.table-container{overflow-x:auto}.page-title{font-size:1.25rem}.loading-content{padding:1rem}.batch-actions-panel-top button{font-size:.875rem;padding:.25rem .5rem}.batch-actions-panel-top .btn-group{flex-wrap:wrap}}[data-bs-theme=dark] .table-loading-overlay{background:var(--bs-dark);opacity:.9}[data-bs-theme=dark] .batch-actions-panel{background-color:var(--bs-dark)}[data-bs-theme=dark] .batch-actions-panel-top{background-color:#0d6efd1a;border-color:#0d6efd4d}[data-bs-theme=dark] .collection-select-view .dropdown-menu::-webkit-scrollbar-track{background:var(--bs-secondary-bg)}[data-bs-theme=dark] .collection-select-view .dropdown-menu::-webkit-scrollbar-thumb{background:var(--bs-border-color)}[data-bs-theme=dark] .collection-select-view .dropdown-menu::-webkit-scrollbar-thumb:hover{background:var(--bs-secondary-color)}[data-bs-theme=dark] .collection-select-view .btn[data-action=clear-selection]{color:var(--bs-secondary)}[data-bs-theme=dark] .collection-select-view .btn[data-action=clear-selection]:hover{color:var(--bs-danger)}[data-bs-theme=dark] .collection-select-view .btn[data-action=clear-selection]:focus{outline-color:var(--bs-primary)}[data-bs-theme=dark] .table-container::-webkit-scrollbar-track{background:var(--bs-secondary-bg)}[data-bs-theme=dark] .table-container::-webkit-scrollbar-thumb{background:var(--bs-border-color)}[data-bs-theme=dark] .table-container::-webkit-scrollbar-thumb:hover{background:var(--bs-secondary-color)}.table-fullscreen{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;z-index:9999!important;background:var(--bs-body-bg)!important;padding:1rem!important;overflow:auto!important}.table-fullscreen .mojo-table-wrapper{height:100%;display:flex;flex-direction:column;padding:0}.table-fullscreen .table-container{flex:1;overflow:auto;margin-bottom:1rem}.table-fullscreen .table{margin-bottom:0}.table-fullscreen .table-status-bar{flex-shrink:0;margin-top:auto;border-top:1px solid var(--bs-border-color);padding-top:1rem;background:var(--bs-body-bg)}.btn-fullscreen{transition:transform .2s ease,box-shadow .2s ease}.btn-fullscreen:hover{transform:scale(1.05)}.table-fullscreen .btn-fullscreen{background-color:var(--bs-primary);color:var(--bs-white);border-color:var(--bs-primary)}.table-fullscreen .btn-fullscreen:hover{background-color:var(--bs-primary);border-color:var(--bs-primary);opacity:.9}.table-fullscreen .table-container::-webkit-scrollbar{width:12px;height:12px}.table-fullscreen .table-container::-webkit-scrollbar-track{background:var(--bs-secondary-bg)}.table-fullscreen .table-container::-webkit-scrollbar-thumb{background:var(--bs-secondary);border-radius:6px}.table-fullscreen .table-container::-webkit-scrollbar-thumb:hover{background:var(--bs-secondary-color)}[data-bs-theme=dark] .table-fullscreen{background:var(--bs-dark)!important}[data-bs-theme=dark] .table-fullscreen .table-status-bar{background:var(--bs-dark)}.table-totals-row{background-color:var(--bs-light);border-top:2px solid var(--bs-primary);font-weight:500}.table-footer-label{color:var(--bs-emphasis-color);font-weight:600}.table-footer-total{color:var(--bs-primary);font-weight:600;text-align:right}[data-bs-theme=dark] .table-totals-row{background-color:var(--bs-dark);border-top-color:var(--bs-primary)}[data-bs-theme=dark] .table-footer-label{color:var(--bs-light)}[data-bs-theme=dark] .table-footer-total{color:var(--bs-primary)}.editable-cell{cursor:pointer;position:relative}.editable-cell:hover{background-color:#0d6efd0d}.editable-cell.editing{background-color:#0d6efd1a}.cell-editor{width:100%;max-width:100%}.cell-editor .form-control,.cell-editor .form-select{flex:1;min-width:0}.cell-editor .btn{white-space:nowrap;flex-shrink:0;min-width:auto;width:2rem;height:2rem;padding:0;display:flex;align-items:center;justify-content:center}.cell-editor .form-check{margin-bottom:0}.cell-editor .form-control:focus,.cell-editor .form-select:focus{border-color:#0d6efd;box-shadow:0 0 0 .25rem #0d6efd40}.cell-editor .d-flex.gap-1>*{flex-shrink:0}.cell-editor .form-switch .form-check-input{margin-left:0}.editable-cell .cell-content{padding:2px 4px;border-radius:3px;transition:background-color .15s ease-in-out}.editable-cell:hover .cell-content{background-color:#0d6efd1a}.editable-cell:after{content:"";position:absolute;top:4px;right:4px;width:0;height:0;border-left:4px solid transparent;border-top:4px solid rgba(108,117,125,.3);opacity:0;transition:opacity .15s ease-in-out}.editable-cell:hover:after{opacity:1}.cell-editor.saving{opacity:.7;pointer-events:none}.cell-editor.saving .btn{disabled:true}.cell-editor.saving-error{border-left:3px solid var(--bs-danger);background-color:#dc35451a}.cell-editor.saving-error .form-control,.cell-editor.saving-error .form-select{border-color:var(--bs-danger)}[data-bs-theme=dark] .editable-cell:hover{background-color:#0d6efd1a}[data-bs-theme=dark] .editable-cell.editing,[data-bs-theme=dark] .editable-cell:hover .cell-content{background-color:#0d6efd26}[data-bs-theme=dark] .editable-cell:after{border-top-color:#ffffff4d}@media (prefers-contrast: high){.collection-select-view .dropdown-item.active{background-color:var(--bs-emphasis-color);color:var(--bs-body-bg)}.mojo-checkbox{border-width:2px}}@media (prefers-reduced-motion: reduce){.table-container,.mojo-checkbox,.batch-select-action,.batch-actions-panel-top,.batch-actions-panel-top button{transition:none}@keyframes slideDown{0%,to{opacity:1;transform:none}}.btn-refresh:not(:disabled):hover .bi-arrow-clockwise,.btn-export:not(:disabled):hover .bi-download,.btn-import:not(:disabled):hover .bi-upload{animation:none}}.toast-service-success{--bs-toast-bg: rgba(248, 249, 250, .98);--bs-toast-border-color: rgba(25, 135, 84, .3);color:var(--bs-body-color);border-left:4px solid rgba(25,135,84,.8)}.toast-service-error{--bs-toast-bg: rgba(248, 249, 250, .98);--bs-toast-border-color: rgba(220, 53, 69, .3);color:var(--bs-body-color);border-left:4px solid rgba(220,53,69,.8)}.toast-service-warning{--bs-toast-bg: rgba(248, 249, 250, .98);--bs-toast-border-color: rgba(255, 193, 7, .3);color:var(--bs-body-color);border-left:4px solid rgba(255,193,7,.9)}.toast-service-info{--bs-toast-bg: rgba(248, 249, 250, .98);--bs-toast-border-color: rgba(13, 110, 253, .3);color:var(--bs-body-color);border-left:4px solid rgba(13,110,253,.8)}.toast-service-plain{--bs-toast-bg: rgba(248, 249, 250, .98);--bs-toast-border-color: rgba(0, 0, 0, .08);color:var(--bs-body-color)}.toast-service-icon{width:20px;height:20px;flex-shrink:0}.toast-service-success .toast-service-icon{color:#198754e6}.toast-service-error .toast-service-icon{color:#dc3545e6}.toast-service-warning .toast-service-icon{color:#ffc107}.toast-service-info .toast-service-icon{color:#0d6efde6}.toast-service-plain .toast-service-icon{color:#6c757dcc}.toast-service-close{filter:none;opacity:.6}.toast-service-close:hover{opacity:1}.toast-container{max-width:400px}.toast{transition:all .3s ease-in-out}.toast.showing{opacity:0;transform:translate(100%)}.toast.show{opacity:1;transform:translate(0)}.toast.hide{opacity:0;transform:translate(100%)}@media (max-width: 576px){.toast-container{max-width:calc(100vw - 20px);left:10px!important;right:10px!important;transform:none!important}.toast-container.position-fixed.top-0.start-50.translate-middle-x,.toast-container.position-fixed.bottom-0.start-50.translate-middle-x{left:10px!important;right:10px!important;transform:none!important;width:calc(100% - 20px)}}.toast-header{padding:.5rem .75rem;border-bottom:1px solid rgba(0,0,0,.1)}.toast-service-success .toast-header,.toast-service-error .toast-header,.toast-service-info .toast-header,.toast-service-warning .toast-header{border-bottom-color:#0000000f}.toast-body{padding:.75rem;word-wrap:break-word}.toast-body .toast-message{line-height:1.4}.toast-container .toast+.toast{margin-top:.5rem}@media (prefers-color-scheme: dark){.toast-service-plain{--bs-toast-bg: rgba(33, 37, 41, .95);--bs-toast-border-color: rgba(255, 255, 255, .1);color:var(--bs-body-color)}}.toast-progress{position:absolute;bottom:0;left:0;height:3px;background-color:#ffffff4d;border-radius:0 0 .375rem .375rem;transition:width linear}.toast-actions{padding:.25rem .75rem .75rem;display:flex;gap:.5rem}.toast-actions .btn{font-size:.875rem;padding:.25rem .75rem}.chat-view{display:flex;flex-direction:column;height:100%}.chat-container{display:flex;flex-direction:column;height:100%;width:100%;border:1px solid #dee2e6;border-radius:8px;overflow:hidden;background:#fff}.chat-messages{flex:1;overflow-y:auto;overflow-x:hidden;padding:20px;background:#fff}.chat-input-wrapper{flex-shrink:0}.chat-theme-compact .message-item{display:flex;padding:12px;border-bottom:1px solid #f1f3f5;transition:background-color .15s ease}.chat-theme-compact .message-item:hover{background:#f8f9fa}.chat-theme-compact .message-item:last-child{border-bottom:none}.chat-theme-compact .message-avatar{width:36px;height:36px;border-radius:50%;background:#6c757d;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600;margin-right:12px;flex-shrink:0;overflow:hidden}.chat-theme-compact .message-content{flex:1;min-width:0}.chat-theme-compact .message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;gap:8px}.chat-theme-compact .message-author{font-weight:600;font-size:.9rem;color:#212529}.chat-theme-compact .message-time{font-size:.75rem;color:#6c757d;white-space:nowrap}.chat-theme-compact .message-text{font-size:.9rem;color:#212529;line-height:1.5;word-wrap:break-word;white-space:pre-wrap}.chat-theme-compact .chat-message-system{background:#f8f9fa;border-left:3px solid #0d6efd;margin:8px 0;padding:8px 12px}.chat-theme-bubbles .chat-message{margin-bottom:12px}.chat-theme-bubbles .message-bubble-wrapper{display:flex;flex-direction:column;max-width:70%}.chat-theme-bubbles .message-left .message-bubble-wrapper{align-items:flex-start}.chat-theme-bubbles .message-right .message-bubble-wrapper{align-items:flex-end;margin-left:auto}.chat-theme-bubbles .message-meta{font-size:.75rem;color:#6c757d;margin-bottom:4px;padding:0 4px}.chat-theme-bubbles .message-right .message-meta{text-align:right}.chat-theme-bubbles .message-bubble{padding:10px 14px;border-radius:18px;word-wrap:break-word;max-width:100%}.chat-theme-bubbles .message-left .message-bubble{background:#e9ecef;color:#212529}.chat-theme-bubbles .message-right .message-bubble{background:#0d6efd;color:#fff}.chat-theme-bubbles .message-text{font-size:.9rem;line-height:1.5;white-space:pre-wrap}.chat-theme-bubbles .chat-message-system{max-width:100%;margin:16px auto}.chat-input-view{border-top:1px solid #dee2e6;background:#f8f9fa;width:100%}.chat-input-container{padding:15px;position:relative;width:100%}.chat-input-container.drag-over{background:#e7f3ff;border-color:#0d6efd}.chat-input-container.drag-active:before{content:"Drop files here";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.2rem;color:#0d6efd;font-weight:600;pointer-events:none;z-index:10}.chat-input-wrapper{position:relative;display:flex;align-items:flex-end;gap:8px}.chat-input{flex:1;border:1px solid #ced4da;border-radius:20px;padding:10px 15px;resize:none;max-height:150px;font-size:.9rem;transition:border-color .15s ease}.chat-input:focus{outline:none;border-color:#0d6efd;box-shadow:0 0 0 .2rem #0d6efd40}.chat-send-btn{width:40px;height:40px;border-radius:50%;padding:0;display:flex;align-items:center;justify-content:center;flex-shrink:0}.chat-send-btn i{font-size:1rem}.chat-input-footer{margin-top:8px;font-size:.85rem}.chat-input-attachments{margin-bottom:10px}.attachment-preview{display:inline-flex;align-items:center;gap:8px;background:#e9ecef;padding:8px 12px;border-radius:8px;margin-right:8px;margin-bottom:8px;font-size:.85rem}.attachment-preview.upload-complete{background:#d1e7dd}.attachment-preview.upload-error{background:#f8d7da}.attachment-info{display:flex;align-items:center;gap:6px}.attachment-name{font-weight:500;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-size{color:#6c757d;font-size:.75rem}.attachment-progress{min-width:100px}.attachment-remove{padding:0;margin:0;line-height:1}.message-text .file-attachment,[data-container=attachments] .file-attachment{display:inline-block;margin-top:8px;padding:8px 12px;background:#0000000d;border:1px solid rgba(0,0,0,.1);border-radius:8px;font-size:.85rem;transition:background-color .15s ease}.message-text .file-attachment:hover,[data-container=attachments] .file-attachment:hover{background:#0000001a}.message-text .file-attachment i,[data-container=attachments] .file-attachment i{margin-right:6px}.chat-theme-bubbles .message-right .file-attachment{background:#fff3;border-color:#ffffff4d;color:#fff}.chat-message-system{text-align:center;padding:8px 12px;margin:12px 0}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{background:#f1f3f5}.chat-messages::-webkit-scrollbar-thumb{background:#adb5bd;border-radius:4px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#6c757d}@media (max-width: 768px){.chat-theme-bubbles .message-bubble-wrapper{max-width:85%}.chat-theme-compact .message-avatar{width:32px;height:32px;font-size:.75rem}.attachment-name{max-width:150px}}.badge-sm{font-size:.7rem;padding:2px 6px}.mojo-task-management-page{padding:0}.mojo-task-management-container{max-width:100%;margin:0}.mojo-task-stats-header .card{transition:all .2s ease-in-out;border:1px solid var(--bs-border-color)}.mojo-task-stats-header .card:hover{transform:translateY(-2px);box-shadow:0 .25rem .75rem #0000001a!important}.mojo-task-stats-header .card-body{padding:1.5rem}.mojo-task-stats-header h3{font-size:2rem;font-weight:700;color:var(--bs-dark)}.mojo-task-stats-header .badge{font-size:.75rem;padding:.375rem .5rem;border-radius:.375rem}.mojo-task-stats-header .fs-2{opacity:.6;font-size:2.5rem!important}.task-runners-section .mojo-task-runner-list{max-height:400px;overflow-y:auto}.task-runners-section .mojo-task-runner-item{border:1px solid var(--bs-gray-200);transition:all .2s ease-in-out}.task-runners-section .mojo-task-runner-item:hover{border-color:var(--bs-primary);background-color:var(--bs-gray-50)!important}.task-runners-section .mojo-task-runner-info{min-width:0;flex:1}.task-runners-section .mojo-task-runner-name{font-size:.95rem;margin-bottom:.25rem}.task-runners-section .mojo-task-runner-channels{word-break:break-all;line-height:1.3}.task-runners-section .mojo-task-runner-list::-webkit-scrollbar{width:6px}.task-runners-section .mojo-task-runner-list::-webkit-scrollbar-track{background:var(--bs-gray-100);border-radius:3px}.task-runners-section .mojo-task-runner-list::-webkit-scrollbar-thumb{background:var(--bs-gray-400);border-radius:3px}.task-runners-section .mojo-task-runner-list::-webkit-scrollbar-thumb:hover{background:var(--bs-gray-500)}.task-runners-section .mojo-task-runner-status .badge{font-size:.8rem;padding:.5rem .75rem;border-radius:.5rem;font-weight:500}.task-runners-section .mojo-task-runner-actions{display:flex;align-items:center;gap:.5rem}.task-runners-section .dropdown-toggle{border:1px solid var(--bs-border-color);background:#fff;transition:all .2s ease}.task-runners-section .dropdown-toggle:hover{background:var(--bs-gray-50);border-color:var(--bs-primary)}.task-runners-section .dropdown-menu{box-shadow:0 .5rem 1rem #00000026;border:1px solid var(--bs-border-color);border-radius:.5rem;min-width:160px}.task-runners-section .dropdown-item{padding:.5rem 1rem;transition:all .2s ease}.task-runners-section .dropdown-item:hover{background-color:var(--bs-gray-100)}.task-runners-section .dropdown-item i{width:1rem;text-align:center}.mojo-task-charts-section .card{border:1px solid var(--bs-border-color);transition:all .2s ease-in-out}.mojo-task-charts-section .card:hover{box-shadow:0 .25rem .75rem #00000014!important}.mojo-task-charts-section .card-body{padding:1.5rem}.mojo-task-management-page .tab-view .nav-tabs{border-bottom:2px solid var(--bs-gray-200);margin-bottom:1.5rem}.mojo-task-management-page .tab-view .nav-link{color:var(--bs-gray-600);border:none;padding:.75rem 1.5rem;margin-right:.5rem;border-radius:.5rem .5rem 0 0;transition:all .2s ease;font-weight:500}.mojo-task-management-page .tab-view .nav-link:hover{color:var(--bs-primary);background-color:var(--bs-gray-50)}.mojo-task-management-page .tab-view .nav-link.active{color:var(--bs-primary);background-color:#fff;border-bottom:2px solid var(--bs-primary);transform:translateY(1px)}.mojo-task-management-page .tab-content{min-height:400px}.mojo-task-management-page .table-container{background:#fff;border-radius:.5rem}.badge.mojo-task-status-pending{background-color:var(--bs-primary)!important;color:#fff}.badge.mojo-task-status-running{background-color:var(--bs-success)!important;color:#fff}.badge.mojo-task-status-completed{background-color:var(--bs-info)!important;color:#fff}.badge.mojo-task-status-error{background-color:var(--bs-danger)!important;color:#fff}.mojo-task-management-page .btn-group .btn{transition:all .2s ease}.mojo-task-management-page .btn-group .btn:hover{transform:translateY(-1px)}.mojo-task-management-page .btn-sm{padding:.375rem .75rem;font-size:.875rem;border-radius:.375rem}.mojo-task-management-page .bi-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinning{animation:spin 1s linear infinite}@media (max-width: 768px){.mojo-task-stats-header .card-body{padding:1rem}.mojo-task-stats-header h3{font-size:1.5rem}.task-runners-section .mojo-task-runner-item .row{margin:0}.task-runners-section .mojo-task-runner-item .col-md-8,.task-runners-section .mojo-task-runner-item .col-md-4{padding-left:0;padding-right:0}.task-runners-section .mojo-task-runner-channels small{font-size:.75rem}.mojo-task-management-page .btn-group{flex-direction:column;width:100%}.mojo-task-management-page .btn-group .btn{margin-bottom:.25rem}}@media (max-width: 576px){.mojo-task-management-container{padding:.5rem}.mojo-task-stats-header .col-12{margin-bottom:.5rem!important}.mojo-task-charts-section .col-xl-6{margin-bottom:1rem!important}.mojo-task-management-page .tab-view .nav-link{padding:.5rem 1rem;margin-right:.25rem;font-size:.875rem}.task-runners-section .mojo-task-runner-item{padding:1rem!important}.task-runners-section .mojo-task-runner-name{font-size:.9rem}.task-runners-section .mojo-task-runner-channels small{font-size:.7rem;display:block;margin-top:.25rem}}.admin-dashboard-page,.admin-page{background-color:var(--bs-gray-50);min-height:100vh}.admin-page .card{border:1px solid var(--bs-border-color);box-shadow:0 .125rem .25rem #00000013;transition:all .2s ease-in-out}.admin-page .card:hover{box-shadow:0 .25rem .5rem #0000001a}.admin-page .card-header{background-color:#fff;border-bottom:1px solid var(--bs-border-color);padding:1rem 1.5rem}.admin-page .card-body{padding:1.5rem}.admin-page h1,.admin-page .h3{color:var(--bs-dark);font-weight:600}.admin-page .text-muted{color:var(--bs-gray-600)!important}.admin-page .alert{border:none;border-radius:.5rem;padding:1rem 1.5rem}.admin-page .alert-success{background-color:#1987541a;color:var(--bs-success-text-emphasis)}.admin-page .alert-info{background-color:#0dcaf01a;color:var(--bs-info-text-emphasis)}.admin-page .alert-warning{background-color:#ffc1071a;color:var(--bs-warning-text-emphasis)}.admin-page .alert-danger{background-color:#dc35451a;color:var(--bs-danger-text-emphasis)}.admin-page .text-truncate{max-width:200px}.admin-page .small-text{font-size:.875rem}.admin-page .micro-text{font-size:.75rem}.admin-page .breadcrumb{background-color:transparent;padding:0;margin-bottom:1rem}.admin-page .breadcrumb-item+.breadcrumb-item:before{color:var(--bs-gray-500)}.admin-page .breadcrumb-item a{color:var(--bs-primary);text-decoration:none}.admin-page .breadcrumb-item a:hover{text-decoration:underline}.mojo-task-details-modal .modal-dialog{max-width:800px}.mojo-task-details-modal .fw-mono{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9rem}.mojo-task-details-modal .log-entry{border-left:3px solid var(--bs-gray-300);transition:all .2s ease}.mojo-task-details-modal .log-entry:hover{border-left-color:var(--bs-primary);background-color:var(--bs-gray-50)!important}.mojo-task-details-modal pre code{font-size:.85rem;line-height:1.4}.mojo-task-details-modal .badge{font-weight:500}.mojo-runner-details-modal .modal-dialog{max-width:1200px}.mojo-runner-details-modal .performance-metric{transition:all .3s ease}.mojo-runner-details-modal .performance-metric:hover{transform:translateY(-2px);box-shadow:0 .25rem .5rem #0000001a}.runner-detailsPrint Styles */ .mojo-task-details-view,.mojo-runner-details-view{max-height:70vh;overflow-y:auto}.mojo-task-details-view .card,.mojo-runner-details-view .card{border:1px solid var(--bs-border-color)}.mojo-task-details-view .card-header,.mojo-runner-details-view .card-header{background-color:var(--bs-gray-50);font-weight:500}.mojo-task-details-view .log-entry,.mojo-runner-details-view .log-entry{transition:background-color .2s ease}.mojo-task-details-view .log-entry:hover,.mojo-runner-details-view .log-entry:hover{background-color:var(--bs-gray-50)!important}.mojo-task-details-view .progress,.mojo-runner-details-view .progress{border-radius:10px;overflow:hidden}.mojo-task-details-view .progress-bar,.mojo-runner-details-view .progress-bar{transition:width .3s ease}.mojo-task-details-view .badge,.mojo-runner-details-view .badge{font-weight:500}.mojo-task-details-view pre{font-size:.875rem;line-height:1.4;border:1px solid var(--bs-border-color)}.mojo-task-details-view pre code,.mojo-runner-details-view pre code{color:var(--bs-gray-800)}.mojo-runner-details-view .progress{background-color:var(--bs-gray-200)}.mojo-runner-details-view .progress-bar{font-size:.875rem;font-weight:500}.mojo-task-details-view .table,.mojo-runner-details-view .table{font-size:.875rem}.mojo-task-details-view .table th,.mojo-runner-details-view .table th{font-weight:600;color:var(--bs-gray-700);font-size:.8rem;text-transform:uppercase;letter-spacing:.5px}.mojo-task-details-view .table td,.mojo-runner-details-view .table td{vertical-align:middle}.mojo-task-details-view .btn-group-sm .btn,.mojo-runner-details-view .btn-group-sm .btn{padding:.25rem .5rem;font-size:.8rem}.mojo-runner-details-view .btn-group .btn.active{background-color:var(--bs-primary);border-color:var(--bs-primary);color:#fff}.mojo-task-logs-container,.mojo-runner-logs-container{border:1px solid var(--bs-border-color);border-radius:.375rem}.mojo-task-logs-container::-webkit-scrollbar,.mojo-runner-logs-container::-webkit-scrollbar{width:6px}.mojo-task-logs-container::-webkit-scrollbar-track,.mojo-runner-logs-container::-webkit-scrollbar-track{background:var(--bs-gray-100);border-radius:3px}.mojo-task-logs-container::-webkit-scrollbar-thumb,.mojo-runner-logs-container::-webkit-scrollbar-thumb{background:var(--bs-gray-400);border-radius:3px}.mojo-task-logs-container::-webkit-scrollbar-thumb:hover,.mojo-runner-logs-container::-webkit-scrollbar-thumb:hover{background:var(--bs-gray-500)}@media print{.admin-page .btn,.admin-page .dropdown,.admin-page .card-header .btn-group{display:none!important}.admin-page .card{border:1px solid #000!important;box-shadow:none!important}.admin-page{background-color:#fff!important}.mojo-task-details-view,.mojo-runner-details-view{max-height:none;overflow:visible}}