{"id":1016,"date":"2026-07-01T11:25:22","date_gmt":"2026-07-01T11:25:22","guid":{"rendered":"https:\/\/midnightblue-weasel-516787.hostingersite.com\/?page_id=1016"},"modified":"2026-09-17T19:31:58","modified_gmt":"2026-09-17T19:31:58","slug":"employment-rules-template","status":"publish","type":"page","link":"https:\/\/aixworkspace.net\/ar\/employment-rules-template\/","title":{"rendered":"Employment Rules Template"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1016\" class=\"elementor elementor-1016\" data-elementor-settings=\"{&quot;element_pack_global_tooltip_width&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;element_pack_global_tooltip_width_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;element_pack_global_tooltip_width_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;element_pack_global_tooltip_padding&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_padding_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_padding_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_border_radius&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_border_radius_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;element_pack_global_tooltip_border_radius_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true}}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-89b7b56 e-con e-atomic-element e-flexbox-base e-default-div e-ea57014 \" data-id=\"89b7b56\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"89b7b56\">\n    \t\t<div class=\"elementor-element elementor-element-bff1bb4 elementor-widget elementor-widget-html\" data-id=\"bff1bb4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!DOCTYPE html>\r\n<html lang=\"en\" dir=\"ltr\">\r\n<head>\r\n<meta charset=\"UTF-8\">\r\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n\r\n<title>Upload Hiring Rules<\/title>\r\n\r\n<!-- AIX Workspace Font -->\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap\" rel=\"stylesheet\">\r\n\r\n<style>\r\n\r\n  \/*\r\n   * ============================================================\r\n   * AIX WORKSPACE - HIRING RULES ADMIN UPLOAD\r\n   * Elementor-safe and fully responsive.\r\n   *\r\n   * All styles are scoped to .hra-wrapper\r\n   * so they do not interfere with WordPress\/Elementor styles.\r\n   *\r\n   * AIX WORKSPACE BRAND COLORS:\r\n   * Primary Dark Blue : #18bbf4\r\n   * Secondary Orange  : #fe8826\r\n   * Third Yellow      : #ffe552\r\n   * Fourth Light Blue : #5fd0fe\r\n   * ============================================================\r\n   *\/\r\n\r\n  .hra-wrapper {\r\n\r\n    \/* AIX Workspace Brand Colors *\/\r\n    --hra-primary: #18bbf4;\r\n    --hra-orange: #fe8826;\r\n    --hra-yellow: #ffe552;\r\n    --hra-light-blue: #5fd0fe;\r\n\r\n    \/* Supporting Colors *\/\r\n    --hra-bg: #f5f9fc;\r\n    --hra-surface: #ffffff;\r\n    --hra-ink: #10233d;\r\n    --hra-ink-soft: #64748b;\r\n    --hra-line: #dce7ef;\r\n    --hra-line-2: #cbd8e3;\r\n    --hra-primary-dark: #0798d3;\r\n    --hra-primary-soft: #e8f8fe;\r\n    --hra-error: #dc3f4d;\r\n    --hra-error-soft: #fff0f1;\r\n    --hra-warn: #a16207;\r\n    --hra-warn-soft: #fff9df;\r\n\r\n    --hra-radius: 18px;\r\n\r\n    font-family: 'Plus Jakarta Sans',\r\n      -apple-system,\r\n      BlinkMacSystemFont,\r\n      'Segoe UI',\r\n      Roboto,\r\n      Arial,\r\n      sans-serif;\r\n\r\n    color: var(--hra-ink);\r\n\r\n    width: 100% !important;\r\n    max-width: 100% !important;\r\n\r\n    display: flex !important;\r\n    justify-content: center !important;\r\n    align-items: flex-start;\r\n\r\n    margin: 0 auto !important;\r\n\r\n    padding: 50px 20px 80px;\r\n\r\n    box-sizing: border-box;\r\n\r\n    direction: ltr !important;\r\n    text-align: left;\r\n\r\n    -webkit-font-smoothing: antialiased;\r\n    -moz-osx-font-smoothing: grayscale;\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     RESET\r\n     ============================================================ *\/\r\n\r\n  .hra-wrapper *,\r\n  .hra-wrapper *::before,\r\n  .hra-wrapper *::after {\r\n    box-sizing: border-box;\r\n    margin: 0;\r\n    padding: 0;\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     CARD\r\n     ============================================================ *\/\r\n\r\n  .hra-card {\r\n\r\n    width: 100%;\r\n    max-width: 620px;\r\n\r\n    margin-left: auto !important;\r\n    margin-right: auto !important;\r\n\r\n    background: var(--hra-surface);\r\n\r\n    border: 1px solid var(--hra-line);\r\n\r\n    border-radius: var(--hra-radius);\r\n\r\n    box-shadow:\r\n      0 2px 4px rgba(16, 35, 61, 0.04),\r\n      0 24px 60px -28px rgba(16, 35, 61, 0.30);\r\n\r\n    overflow: hidden;\r\n\r\n    position: relative;\r\n\r\n    animation:\r\n      hra-rise 0.55s cubic-bezier(.2,.8,.2,1) both;\r\n  }\r\n\r\n\r\n  @keyframes hra-rise {\r\n\r\n    from {\r\n      opacity: 0;\r\n      transform: translateY(18px);\r\n    }\r\n\r\n    to {\r\n      opacity: 1;\r\n      transform: none;\r\n    }\r\n\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     HEADER\r\n     ============================================================ *\/\r\n\r\n  .hra-head {\r\n\r\n    position: relative;\r\n\r\n    padding: 46px 44px 40px;\r\n\r\n    color: #ffffff;\r\n\r\n    overflow: hidden;\r\n\r\n    text-align: center;\r\n\r\n    background:\r\n      radial-gradient(\r\n        circle at 10% 0%,\r\n        rgba(95, 208, 254, 0.35),\r\n        transparent 38%\r\n      ),\r\n      radial-gradient(\r\n        circle at 95% 100%,\r\n        rgba(254, 136, 38, 0.22),\r\n        transparent 38%\r\n      ),\r\n      linear-gradient(\r\n        145deg,\r\n        #071c32 0%,\r\n        #0b2e4a 48%,\r\n        #07577c 100%\r\n      );\r\n  }\r\n\r\n\r\n  .hra-head::before {\r\n\r\n    content: \"\";\r\n\r\n    position: absolute;\r\n\r\n    width: 180px;\r\n    height: 180px;\r\n\r\n    right: -70px;\r\n    top: -90px;\r\n\r\n    border-radius: 50%;\r\n\r\n    background: rgba(24, 187, 244, 0.20);\r\n\r\n    pointer-events: none;\r\n  }\r\n\r\n\r\n  .hra-head::after {\r\n\r\n    content: \"\";\r\n\r\n    position: absolute;\r\n\r\n    width: 130px;\r\n    height: 130px;\r\n\r\n    left: -65px;\r\n    bottom: -65px;\r\n\r\n    border-radius: 50%;\r\n\r\n    background: rgba(254, 136, 38, 0.16);\r\n\r\n    pointer-events: none;\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     KICKER\r\n     ============================================================ *\/\r\n\r\n  .hra-kicker {\r\n\r\n    position: relative;\r\n    z-index: 2;\r\n\r\n    display: inline-flex;\r\n\r\n    align-items: center;\r\n    justify-content: center;\r\n\r\n    gap: 8px;\r\n\r\n    font-size: 11px;\r\n\r\n    letter-spacing: 0.08em;\r\n\r\n    font-weight: 700;\r\n\r\n    color: var(--hra-light-blue);\r\n\r\n    margin-bottom: 16px;\r\n\r\n    text-transform: uppercase;\r\n  }\r\n\r\n\r\n  .hra-kicker .dot {\r\n\r\n    width: 8px;\r\n    height: 8px;\r\n\r\n    border-radius: 50%;\r\n\r\n    background: var(--hra-yellow);\r\n\r\n    box-shadow:\r\n      0 0 0 4px rgba(255, 229, 82, 0.16);\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     HEADING\r\n     ============================================================ *\/\r\n\r\n  .hra-head h1 {\r\n\r\n    position: relative;\r\n    z-index: 2;\r\n\r\n    font-family: 'Plus Jakarta Sans',\r\n      -apple-system,\r\n      BlinkMacSystemFont,\r\n      'Segoe UI',\r\n      sans-serif;\r\n\r\n    font-weight: 800;\r\n\r\n    font-size: 31px;\r\n\r\n    line-height: 1.2;\r\n\r\n    letter-spacing: -0.025em;\r\n\r\n    color: #ffffff;\r\n\r\n    text-align: center;\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     DESCRIPTION\r\n     ============================================================ *\/\r\n\r\n  .hra-head p {\r\n\r\n    position: relative;\r\n    z-index: 2;\r\n\r\n    margin: 13px auto 0;\r\n\r\n    font-size: 14px;\r\n\r\n    line-height: 1.75;\r\n\r\n    color: rgba(255,255,255,0.78);\r\n\r\n    max-width: 500px;\r\n\r\n    text-align: center;\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     FORM\r\n     ============================================================ *\/\r\n\r\n  .hra-form {\r\n\r\n    padding: 32px 44px 40px;\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     WARNING BOX\r\n     ============================================================ *\/\r\n\r\n  .hra-warn-box {\r\n\r\n    display: flex;\r\n\r\n    align-items: flex-start;\r\n\r\n    gap: 11px;\r\n\r\n    background: var(--hra-warn-soft);\r\n\r\n    border: 1.5px solid rgba(255, 229, 82, 0.75);\r\n\r\n    border-radius: 12px;\r\n\r\n    padding: 14px 16px;\r\n\r\n    margin-bottom: 27px;\r\n\r\n    direction: ltr;\r\n\r\n    text-align: left;\r\n  }\r\n\r\n\r\n  .hra-warn-box .w-ico {\r\n\r\n    font-size: 17px;\r\n\r\n    line-height: 1.5;\r\n\r\n    flex: 0 0 auto;\r\n  }\r\n\r\n\r\n  .hra-warn-box .w-txt {\r\n\r\n    font-size: 12.5px;\r\n\r\n    line-height: 1.65;\r\n\r\n    color: var(--hra-warn);\r\n\r\n    font-weight: 600;\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     FIELD\r\n     ============================================================ *\/\r\n\r\n  .hra-field {\r\n\r\n    margin-bottom: 24px;\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     LABEL\r\n     ============================================================ *\/\r\n\r\n  .hra-label {\r\n\r\n    display: flex;\r\n\r\n    align-items: center;\r\n\r\n    flex-wrap: wrap;\r\n\r\n    gap: 6px;\r\n\r\n    font-size: 13.5px;\r\n\r\n    font-weight: 700;\r\n\r\n    letter-spacing: 0.005em;\r\n\r\n    margin-bottom: 9px;\r\n\r\n    direction: ltr;\r\n\r\n    text-align: left;\r\n  }\r\n\r\n\r\n  .hra-label .req {\r\n\r\n    color: var(--hra-orange);\r\n\r\n    font-weight: 800;\r\n  }\r\n\r\n\r\n  .hra-hint {\r\n\r\n    font-weight: 400;\r\n\r\n    color: var(--hra-ink-soft);\r\n\r\n    font-size: 12px;\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     PASSWORD\r\n     ============================================================ *\/\r\n\r\n  .hra-pass-wrap {\r\n\r\n    position: relative;\r\n  }\r\n\r\n\r\n  .hra-form input[type=\"text\"],\r\n  .hra-form input[type=\"password\"] {\r\n\r\n    width: 100%;\r\n\r\n    font-family: 'Plus Jakarta Sans',\r\n      -apple-system,\r\n      BlinkMacSystemFont,\r\n      'Segoe UI',\r\n      sans-serif;\r\n\r\n    font-size: 14px;\r\n\r\n    color: var(--hra-ink);\r\n\r\n    background: var(--hra-field-bg);\r\n\r\n    border: 1.5px solid var(--hra-line-2);\r\n\r\n    border-radius: 11px;\r\n\r\n    padding: 13px 46px 13px 14px;\r\n\r\n    direction: ltr;\r\n\r\n    text-align: left;\r\n\r\n    transition:\r\n      border-color 0.18s ease,\r\n      box-shadow 0.18s ease,\r\n      background 0.18s ease;\r\n  }\r\n\r\n\r\n  .hra-form input::placeholder {\r\n\r\n    color: #9aa7b5;\r\n  }\r\n\r\n\r\n  .hra-form input:focus {\r\n\r\n    outline: none;\r\n\r\n    background: #ffffff;\r\n\r\n    border-color: var(--hra-primary);\r\n\r\n    box-shadow:\r\n      0 0 0 3px rgba(24, 187, 244, 0.14);\r\n  }\r\n\r\n\r\n  .hra-eye {\r\n\r\n    position: absolute;\r\n\r\n    top: 50%;\r\n\r\n    transform: translateY(-50%);\r\n\r\n    right: 12px;\r\n\r\n    border: none;\r\n\r\n    background: none;\r\n\r\n    cursor: pointer;\r\n\r\n    font-size: 16px;\r\n\r\n    color: var(--hra-ink-soft);\r\n\r\n    padding: 4px;\r\n\r\n    line-height: 1;\r\n  }\r\n\r\n\r\n  .hra-eye:hover {\r\n\r\n    color: var(--hra-primary-dark);\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     DROPZONE\r\n     ============================================================ *\/\r\n\r\n  .hra-drop {\r\n\r\n    border: 1.5px dashed var(--hra-line-2);\r\n\r\n    border-radius: 12px;\r\n\r\n    background: var(--hra-field-bg);\r\n\r\n    padding: 29px 18px;\r\n\r\n    text-align: center;\r\n\r\n    cursor: pointer;\r\n\r\n    transition:\r\n      border-color 0.18s ease,\r\n      background 0.18s ease,\r\n      transform 0.18s ease;\r\n  }\r\n\r\n\r\n  .hra-drop:hover,\r\n  .hra-drop.drag {\r\n\r\n    border-color: var(--hra-primary);\r\n\r\n    background: var(--hra-primary-soft);\r\n\r\n    transform: translateY(-1px);\r\n  }\r\n\r\n\r\n  .hra-drop .d-ico {\r\n\r\n    font-size: 27px;\r\n\r\n    line-height: 1;\r\n  }\r\n\r\n\r\n  .hra-drop .d-main {\r\n\r\n    font-weight: 700;\r\n\r\n    font-size: 14px;\r\n\r\n    margin-top: 10px;\r\n\r\n    color: var(--hra-ink);\r\n  }\r\n\r\n\r\n  .hra-drop .d-main span {\r\n\r\n    color: var(--hra-primary-dark);\r\n\r\n    text-decoration: underline;\r\n\r\n    text-underline-offset: 2px;\r\n  }\r\n\r\n\r\n  .hra-drop .d-sub {\r\n\r\n    font-size: 12px;\r\n\r\n    color: var(--hra-ink-soft);\r\n\r\n    margin-top: 5px;\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     FILE PREVIEW\r\n     ============================================================ *\/\r\n\r\n  .hra-file-pill {\r\n\r\n    display: none;\r\n\r\n    align-items: center;\r\n\r\n    gap: 12px;\r\n\r\n    border: 1.5px solid var(--hra-line-2);\r\n\r\n    border-radius: 12px;\r\n\r\n    background: #ffffff;\r\n\r\n    padding: 12px 14px;\r\n\r\n    direction: ltr;\r\n  }\r\n\r\n\r\n  .hra-file-pill.show {\r\n\r\n    display: flex;\r\n  }\r\n\r\n\r\n  .hra-file-pill .f-ico {\r\n\r\n    width: 40px;\r\n    height: 40px;\r\n\r\n    border-radius: 9px;\r\n\r\n    background: var(--hra-primary-soft);\r\n\r\n    color: var(--hra-primary-dark);\r\n\r\n    display: grid;\r\n\r\n    place-items: center;\r\n\r\n    font-weight: 800;\r\n\r\n    font-size: 10px;\r\n\r\n    flex: 0 0 auto;\r\n\r\n    font-family: 'Plus Jakarta Sans', sans-serif;\r\n  }\r\n\r\n\r\n  .hra-file-pill .f-meta {\r\n\r\n    flex: 1;\r\n\r\n    min-width: 0;\r\n  }\r\n\r\n\r\n  .hra-file-pill .f-name {\r\n\r\n    font-weight: 700;\r\n\r\n    font-size: 13px;\r\n\r\n    white-space: nowrap;\r\n\r\n    overflow: hidden;\r\n\r\n    text-overflow: ellipsis;\r\n  }\r\n\r\n\r\n  .hra-file-pill .f-size {\r\n\r\n    font-size: 11.5px;\r\n\r\n    color: var(--hra-ink-soft);\r\n\r\n    margin-top: 2px;\r\n  }\r\n\r\n\r\n  .hra-file-pill .f-x {\r\n\r\n    border: none;\r\n\r\n    background: none;\r\n\r\n    cursor: pointer;\r\n\r\n    color: var(--hra-ink-soft);\r\n\r\n    font-size: 18px;\r\n\r\n    padding: 4px;\r\n\r\n    line-height: 1;\r\n\r\n    border-radius: 6px;\r\n\r\n    transition:\r\n      color 0.18s ease,\r\n      background 0.18s ease;\r\n  }\r\n\r\n\r\n  .hra-file-pill .f-x:hover {\r\n\r\n    color: var(--hra-error);\r\n\r\n    background: var(--hra-error-soft);\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     ERRORS\r\n     ============================================================ *\/\r\n\r\n  .hra-err {\r\n\r\n    display: none;\r\n\r\n    color: var(--hra-error);\r\n\r\n    font-size: 12px;\r\n\r\n    margin-top: 8px;\r\n\r\n    font-weight: 600;\r\n\r\n    line-height: 1.5;\r\n  }\r\n\r\n\r\n  .hra-err.show {\r\n\r\n    display: block;\r\n  }\r\n\r\n\r\n  .hra-field.invalid input,\r\n  .hra-field.invalid .hra-drop {\r\n\r\n    border-color: var(--hra-error);\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     SUBMIT BUTTON\r\n     ============================================================ *\/\r\n\r\n  .hra-submit {\r\n\r\n    width: 100%;\r\n\r\n    cursor: pointer;\r\n\r\n    font-family: 'Plus Jakarta Sans',\r\n      -apple-system,\r\n      BlinkMacSystemFont,\r\n      'Segoe UI',\r\n      sans-serif;\r\n\r\n    font-size: 15px;\r\n\r\n    font-weight: 800;\r\n\r\n    color: #ffffff;\r\n\r\n    background: linear-gradient(\r\n      135deg,\r\n      var(--hra-primary) 0%,\r\n      var(--hra-primary-dark) 100%\r\n    );\r\n\r\n    border: none;\r\n\r\n    border-radius: 12px;\r\n\r\n    padding: 16px;\r\n\r\n    margin-top: 8px;\r\n\r\n    display: flex;\r\n\r\n    align-items: center;\r\n\r\n    justify-content: center;\r\n\r\n    gap: 10px;\r\n\r\n    transition:\r\n      background 0.18s ease,\r\n      transform 0.12s ease,\r\n      box-shadow 0.18s ease;\r\n\r\n    box-shadow:\r\n      0 12px 28px -12px rgba(24, 187, 244, 0.65);\r\n  }\r\n\r\n\r\n  .hra-submit:hover:not(:disabled) {\r\n\r\n    background: linear-gradient(\r\n      135deg,\r\n      #2fc3f6 0%,\r\n      #078bc2 100%\r\n    );\r\n\r\n    transform: translateY(-1px);\r\n\r\n    box-shadow:\r\n      0 15px 32px -12px rgba(24, 187, 244, 0.75);\r\n  }\r\n\r\n\r\n  .hra-submit:active:not(:disabled) {\r\n\r\n    transform: translateY(0);\r\n  }\r\n\r\n\r\n  .hra-submit:disabled {\r\n\r\n    opacity: 0.65;\r\n\r\n    cursor: not-allowed;\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     BACK BUTTON\r\n     ============================================================ *\/\r\n\r\n  .hra-back {\r\n\r\n    width: 100%;\r\n\r\n    cursor: pointer;\r\n\r\n    font-family: 'Plus Jakarta Sans',\r\n      -apple-system,\r\n      BlinkMacSystemFont,\r\n      'Segoe UI',\r\n      sans-serif;\r\n\r\n    font-size: 14px;\r\n\r\n    font-weight: 700;\r\n\r\n    color: var(--hra-ink-soft);\r\n\r\n    background: #ffffff;\r\n\r\n    border: 1.5px solid var(--hra-line-2);\r\n\r\n    border-radius: 12px;\r\n\r\n    padding: 14px;\r\n\r\n    margin-top: 12px;\r\n\r\n    display: flex;\r\n\r\n    align-items: center;\r\n\r\n    justify-content: center;\r\n\r\n    text-decoration: none;\r\n\r\n    transition:\r\n      border-color 0.18s ease,\r\n      background 0.18s ease,\r\n      color 0.18s ease,\r\n      transform 0.18s ease;\r\n  }\r\n\r\n\r\n  .hra-back:hover {\r\n\r\n    border-color: var(--hra-primary);\r\n\r\n    background: var(--hra-primary-soft);\r\n\r\n    color: var(--hra-primary-dark);\r\n\r\n    transform: translateY(-1px);\r\n  }\r\n\r\n\r\n  .hra-back:active {\r\n\r\n    transform: translateY(0);\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     SPINNER\r\n     ============================================================ *\/\r\n\r\n  .hra-spinner {\r\n\r\n    width: 17px;\r\n    height: 17px;\r\n\r\n    border-radius: 50%;\r\n\r\n    border: 2.5px solid rgba(255,255,255,0.40);\r\n\r\n    border-top-color: #ffffff;\r\n\r\n    animation:\r\n      hra-spin 0.7s linear infinite;\r\n\r\n    display: none;\r\n  }\r\n\r\n\r\n  .hra-submit.loading .hra-spinner {\r\n\r\n    display: block;\r\n  }\r\n\r\n\r\n  @keyframes hra-spin {\r\n\r\n    to {\r\n      transform: rotate(360deg);\r\n    }\r\n\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     FOOTER\r\n     ============================================================ *\/\r\n\r\n  .hra-foot {\r\n\r\n    text-align: center;\r\n\r\n    font-size: 11.5px;\r\n\r\n    color: var(--hra-ink-soft);\r\n\r\n    padding: 0 44px 30px;\r\n\r\n    direction: ltr;\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     STATUS SCREEN\r\n     ============================================================ *\/\r\n\r\n  .hra-status {\r\n\r\n    display: none;\r\n\r\n    padding: 55px 44px 60px;\r\n\r\n    text-align: center;\r\n\r\n    animation:\r\n      hra-rise 0.4s ease both;\r\n\r\n    direction: ltr;\r\n  }\r\n\r\n\r\n  .hra-status.show {\r\n\r\n    display: block;\r\n  }\r\n\r\n\r\n  .hra-status .s-ring {\r\n\r\n    width: 68px;\r\n    height: 68px;\r\n\r\n    margin: 0 auto 22px;\r\n\r\n    border-radius: 50%;\r\n\r\n    display: grid;\r\n\r\n    place-items: center;\r\n\r\n    font-size: 30px;\r\n\r\n    font-weight: 800;\r\n  }\r\n\r\n\r\n  .hra-status.ok .s-ring {\r\n\r\n    background: var(--hra-primary-soft);\r\n\r\n    color: var(--hra-primary-dark);\r\n\r\n    box-shadow:\r\n      0 0 0 7px rgba(24,187,244,0.08);\r\n  }\r\n\r\n\r\n  .hra-status.bad .s-ring {\r\n\r\n    background: var(--hra-error-soft);\r\n\r\n    color: var(--hra-error);\r\n  }\r\n\r\n\r\n  .hra-status h2 {\r\n\r\n    font-family: 'Plus Jakarta Sans',\r\n      -apple-system,\r\n      BlinkMacSystemFont,\r\n      'Segoe UI',\r\n      sans-serif;\r\n\r\n    font-weight: 800;\r\n\r\n    font-size: 23px;\r\n\r\n    line-height: 1.3;\r\n\r\n    letter-spacing: -0.02em;\r\n\r\n    color: var(--hra-ink);\r\n  }\r\n\r\n\r\n  .hra-status p {\r\n\r\n    color: var(--hra-ink-soft);\r\n\r\n    font-size: 13.5px;\r\n\r\n    line-height: 1.7;\r\n\r\n    margin-top: 11px;\r\n\r\n    max-width: 460px;\r\n\r\n    margin-left: auto;\r\n\r\n    margin-right: auto;\r\n\r\n    word-break: break-word;\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     TRY AGAIN BUTTON\r\n     ============================================================ *\/\r\n\r\n  .hra-again {\r\n\r\n    margin-top: 27px;\r\n\r\n    cursor: pointer;\r\n\r\n    font-family: 'Plus Jakarta Sans',\r\n      -apple-system,\r\n      BlinkMacSystemFont,\r\n      'Segoe UI',\r\n      sans-serif;\r\n\r\n    font-size: 13px;\r\n\r\n    font-weight: 700;\r\n\r\n    color: var(--hra-primary-dark);\r\n\r\n    background: #ffffff;\r\n\r\n    border: 1.5px solid var(--hra-line-2);\r\n\r\n    border-radius: 11px;\r\n\r\n    padding: 11px 24px;\r\n\r\n    transition:\r\n      border-color 0.18s ease,\r\n      background 0.18s ease,\r\n      transform 0.18s ease;\r\n  }\r\n\r\n\r\n  .hra-again:hover {\r\n\r\n    border-color: var(--hra-primary);\r\n\r\n    background: var(--hra-primary-soft);\r\n\r\n    transform: translateY(-1px);\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     TABLET\r\n     ============================================================ *\/\r\n\r\n  @media (max-width: 700px) {\r\n\r\n    .hra-wrapper {\r\n\r\n      padding: 35px 16px 60px;\r\n    }\r\n\r\n\r\n    .hra-card {\r\n\r\n      max-width: 100%;\r\n    }\r\n\r\n\r\n    .hra-head {\r\n\r\n      padding: 40px 32px 35px;\r\n    }\r\n\r\n\r\n    .hra-form {\r\n\r\n      padding: 28px 32px 35px;\r\n    }\r\n\r\n\r\n    .hra-foot {\r\n\r\n      padding-left: 32px;\r\n      padding-right: 32px;\r\n    }\r\n\r\n\r\n    .hra-status {\r\n\r\n      padding-left: 32px;\r\n      padding-right: 32px;\r\n    }\r\n\r\n\r\n    .hra-head h1 {\r\n\r\n      font-size: 28px;\r\n    }\r\n\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     MOBILE\r\n     ============================================================ *\/\r\n\r\n  @media (max-width: 540px) {\r\n\r\n    .hra-wrapper {\r\n\r\n      padding: 20px 12px 45px;\r\n    }\r\n\r\n\r\n    .hra-card {\r\n\r\n      border-radius: 15px;\r\n    }\r\n\r\n\r\n    .hra-head {\r\n\r\n      padding: 34px 22px 30px;\r\n    }\r\n\r\n\r\n    .hra-head h1 {\r\n\r\n      font-size: 24px;\r\n\r\n      line-height: 1.25;\r\n    }\r\n\r\n\r\n    .hra-head p {\r\n\r\n      font-size: 13px;\r\n\r\n      line-height: 1.7;\r\n\r\n      max-width: 100%;\r\n    }\r\n\r\n\r\n    .hra-kicker {\r\n\r\n      font-size: 10px;\r\n\r\n      margin-bottom: 13px;\r\n    }\r\n\r\n\r\n    .hra-form {\r\n\r\n      padding: 25px 22px 30px;\r\n    }\r\n\r\n\r\n    .hra-warn-box {\r\n\r\n      padding: 12px 13px;\r\n\r\n      margin-bottom: 23px;\r\n    }\r\n\r\n\r\n    .hra-warn-box .w-txt {\r\n\r\n      font-size: 11.5px;\r\n    }\r\n\r\n\r\n    .hra-label {\r\n\r\n      font-size: 12.5px;\r\n    }\r\n\r\n\r\n    .hra-hint {\r\n\r\n      font-size: 11px;\r\n\r\n      width: 100%;\r\n\r\n      margin-top: 1px;\r\n    }\r\n\r\n\r\n    .hra-drop {\r\n\r\n      padding: 25px 14px;\r\n    }\r\n\r\n\r\n    .hra-drop .d-main {\r\n\r\n      font-size: 13px;\r\n    }\r\n\r\n\r\n    .hra-drop .d-sub {\r\n\r\n      font-size: 11.5px;\r\n    }\r\n\r\n\r\n    .hra-submit {\r\n\r\n      font-size: 14px;\r\n\r\n      padding: 15px;\r\n    }\r\n\r\n\r\n    .hra-back {\r\n\r\n      font-size: 13px;\r\n\r\n      padding: 13px;\r\n    }\r\n\r\n\r\n    .hra-foot {\r\n\r\n      padding: 0 22px 25px;\r\n\r\n      font-size: 10.5px;\r\n    }\r\n\r\n\r\n    .hra-status {\r\n\r\n      padding: 45px 22px 50px;\r\n    }\r\n\r\n\r\n    .hra-status h2 {\r\n\r\n      font-size: 21px;\r\n    }\r\n\r\n\r\n    .hra-status p {\r\n\r\n      font-size: 12.5px;\r\n    }\r\n\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     SMALL MOBILE\r\n     ============================================================ *\/\r\n\r\n  @media (max-width: 380px) {\r\n\r\n    .hra-wrapper {\r\n\r\n      padding-left: 8px;\r\n      padding-right: 8px;\r\n    }\r\n\r\n\r\n    .hra-head {\r\n\r\n      padding-left: 18px;\r\n      padding-right: 18px;\r\n    }\r\n\r\n\r\n    .hra-head h1 {\r\n\r\n      font-size: 22px;\r\n    }\r\n\r\n\r\n    .hra-form {\r\n\r\n      padding-left: 18px;\r\n      padding-right: 18px;\r\n    }\r\n\r\n\r\n    .hra-warn-box {\r\n\r\n      gap: 8px;\r\n    }\r\n\r\n\r\n    .hra-file-pill {\r\n\r\n      gap: 9px;\r\n\r\n      padding: 10px;\r\n    }\r\n\r\n\r\n    .hra-file-pill .f-ico {\r\n\r\n      width: 35px;\r\n      height: 35px;\r\n    }\r\n\r\n\r\n    .hra-file-pill .f-name {\r\n\r\n      font-size: 12px;\r\n    }\r\n\r\n\r\n    .hra-file-pill .f-size {\r\n\r\n      font-size: 10.5px;\r\n    }\r\n\r\n\r\n    .hra-back {\r\n\r\n      font-size: 12.5px;\r\n\r\n      padding: 12px;\r\n    }\r\n\r\n\r\n    .hra-status {\r\n\r\n      padding-left: 18px;\r\n      padding-right: 18px;\r\n    }\r\n\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     REDUCED MOTION\r\n     ============================================================ *\/\r\n\r\n  @media (prefers-reduced-motion: reduce) {\r\n\r\n    .hra-card,\r\n    .hra-status {\r\n\r\n      animation: none !important;\r\n    }\r\n\r\n\r\n    .hra-drop,\r\n    .hra-submit,\r\n    .hra-back,\r\n    .hra-again {\r\n\r\n      transition: none !important;\r\n    }\r\n\r\n  }\r\n\r\n<\/style>\r\n<\/head>\r\n\r\n\r\n<body>\r\n\r\n<!-- ============================================================\r\n     AIX WORKSPACE - HIRING RULES UPLOAD\r\n     Paste this entire block into an Elementor HTML widget.\r\n     ============================================================ -->\r\n\r\n<div class=\"hra-wrapper\">\r\n\r\n  <div class=\"hra-card\">\r\n\r\n\r\n    <!-- ========================================================\r\n         HEADER\r\n         ======================================================== -->\r\n\r\n    <div class=\"hra-head\">\r\n\r\n      <span class=\"hra-kicker\">\r\n        <span class=\"dot\"><\/span>\r\n        Admin Panel\r\n      <\/span>\r\n\r\n      <h1>Upload Hiring Rules<\/h1>\r\n\r\n      <p>\r\n        Upload a PDF containing your hiring rules and role guidelines.\r\n        The contents of this file will replace the current rules in the database.\r\n      <\/p>\r\n\r\n    <\/div>\r\n\r\n\r\n    <!-- ========================================================\r\n         FORM\r\n         ======================================================== -->\r\n\r\n    <form\r\n      class=\"hra-form\"\r\n      id=\"hraForm\"\r\n      novalidate\r\n    >\r\n\r\n\r\n      <!-- Warning -->\r\n\r\n      <div class=\"hra-warn-box\">\r\n\r\n        <span class=\"w-ico\">\u26a0\ufe0f<\/span>\r\n\r\n        <span class=\"w-txt\">\r\n          Warning: This operation will completely replace all existing\r\n          hiring rules. The previous rules will be deleted before the\r\n          new file is uploaded.\r\n        <\/span>\r\n\r\n      <\/div>\r\n\r\n\r\n      <!-- ======================================================\r\n           ADMIN PASSWORD\r\n           ====================================================== -->\r\n\r\n      <div\r\n        class=\"hra-field\"\r\n        id=\"hf-pass\"\r\n      >\r\n\r\n        <div class=\"hra-label\">\r\n\r\n          Admin Password\r\n\r\n          <span class=\"req\">*<\/span>\r\n\r\n        <\/div>\r\n\r\n\r\n        <div class=\"hra-pass-wrap\">\r\n\r\n          <input\r\n            type=\"password\"\r\n            id=\"hra_pass\"\r\n            placeholder=\"Enter admin password\"\r\n            autocomplete=\"off\"\r\n          >\r\n\r\n\r\n          <button\r\n            type=\"button\"\r\n            class=\"hra-eye\"\r\n            id=\"hraEye\"\r\n            aria-label=\"Show password\"\r\n          >\r\n            \ud83d\udc41\r\n          <\/button>\r\n\r\n        <\/div>\r\n\r\n\r\n        <div\r\n          class=\"hra-err\"\r\n          id=\"he-pass\"\r\n        >\r\n          Please enter the admin password.\r\n        <\/div>\r\n\r\n      <\/div>\r\n\r\n\r\n      <!-- ======================================================\r\n           PDF UPLOAD\r\n           ====================================================== -->\r\n\r\n      <div\r\n        class=\"hra-field\"\r\n        id=\"hf-pdf\"\r\n      >\r\n\r\n        <div class=\"hra-label\">\r\n\r\n          Hiring Rules File (PDF)\r\n\r\n          <span class=\"req\">*<\/span>\r\n\r\n          <span class=\"hra-hint\">\r\n            \u2014 PDF only, maximum 25 MB\r\n          <\/span>\r\n\r\n        <\/div>\r\n\r\n\r\n        <!-- Drop Zone -->\r\n\r\n        <div\r\n          class=\"hra-drop\"\r\n          id=\"hraDrop\"\r\n        >\r\n\r\n          <div class=\"d-ico\">\r\n            \ud83d\udcc4\r\n          <\/div>\r\n\r\n\r\n          <div class=\"d-main\">\r\n\r\n            <span>Click to upload<\/span>\r\n\r\n            or drag and drop\r\n\r\n          <\/div>\r\n\r\n\r\n          <div class=\"d-sub\">\r\n\r\n            PDF files only\r\n\r\n          <\/div>\r\n\r\n        <\/div>\r\n\r\n\r\n        <!-- Hidden File Input -->\r\n\r\n        <input\r\n          type=\"file\"\r\n          id=\"hra_pdf\"\r\n          accept=\"application\/pdf,.pdf\"\r\n          hidden\r\n        >\r\n\r\n\r\n        <!-- Selected File -->\r\n\r\n        <div\r\n          class=\"hra-file-pill\"\r\n          id=\"hraPill\"\r\n        >\r\n\r\n          <div class=\"f-ico\">\r\n            PDF\r\n          <\/div>\r\n\r\n\r\n          <div class=\"f-meta\">\r\n\r\n            <div\r\n              class=\"f-name\"\r\n              id=\"hraFName\"\r\n            >\r\n              rules.pdf\r\n            <\/div>\r\n\r\n\r\n            <div\r\n              class=\"f-size\"\r\n              id=\"hraFSize\"\r\n            >\r\n              0 KB\r\n            <\/div>\r\n\r\n          <\/div>\r\n\r\n\r\n          <button\r\n            type=\"button\"\r\n            class=\"f-x\"\r\n            id=\"hraFX\"\r\n            aria-label=\"Remove file\"\r\n          >\r\n            \u2715\r\n          <\/button>\r\n\r\n        <\/div>\r\n\r\n\r\n        <div\r\n          class=\"hra-err\"\r\n          id=\"he-pdf\"\r\n        >\r\n          Please upload the hiring rules PDF file.\r\n        <\/div>\r\n\r\n      <\/div>\r\n\r\n\r\n      <!-- ======================================================\r\n           SUBMIT\r\n           ====================================================== -->\r\n\r\n      <button\r\n        type=\"submit\"\r\n        class=\"hra-submit\"\r\n        id=\"hraSubmit\"\r\n      >\r\n\r\n        <span class=\"hra-spinner\"><\/span>\r\n\r\n        <span class=\"hra-btn-label\">\r\n          Upload Rules\r\n        <\/span>\r\n\r\n      <\/button>\r\n\r\n\r\n      <!-- ======================================================\r\n           BACK\r\n           ====================================================== -->\r\n\r\n      <a\r\n        href=\"https:\/\/aixworkspace.net\/usecases\/\"\r\n        class=\"hra-back\"\r\n        id=\"hraBack\"\r\n      >\r\n        Back\r\n      <\/a>\r\n\r\n\r\n    <\/form>\r\n\r\n\r\n    <!-- ========================================================\r\n         STATUS\r\n         ======================================================== -->\r\n\r\n    <div\r\n      class=\"hra-status\"\r\n      id=\"hraStatus\"\r\n    >\r\n\r\n      <div\r\n        class=\"s-ring\"\r\n        id=\"hraSRing\"\r\n      ><\/div>\r\n\r\n\r\n      <h2\r\n        id=\"hraSTitle\"\r\n      ><\/h2>\r\n\r\n\r\n      <p\r\n        id=\"hraSText\"\r\n      ><\/p>\r\n\r\n\r\n      <button\r\n        class=\"hra-again\"\r\n        id=\"hraAgain\"\r\n      >\r\n        Upload Another File\r\n      <\/button>\r\n\r\n    <\/div>\r\n\r\n\r\n    <!-- Footer -->\r\n\r\n    <div\r\n      class=\"hra-foot\"\r\n      id=\"hraFoot\"\r\n    >\r\n      \ud83d\udd12 This page is restricted to authorized administrators only.\r\n    <\/div>\r\n\r\n\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n\r\n<script>\r\n\r\n(function() {\r\n\r\n  \/* ============================================================\r\n     n8n WEBHOOK URL\r\n     ============================================================ *\/\r\n\r\n  var WEBHOOK_URL =\r\n    \"https:\/\/n8n.aixworkspace.net\/webhook\/hiring-rules-upload\";\r\n\r\n\r\n  \/* ============================================================\r\n     ELEMENT HELPERS\r\n     ============================================================ *\/\r\n\r\n  var g = function(id) {\r\n    return document.getElementById(id);\r\n  };\r\n\r\n\r\n  var form   = g('hraForm');\r\n  var fileIn = g('hra_pdf');\r\n  var drop   = g('hraDrop');\r\n  var pill   = g('hraPill');\r\n\r\n\r\n  \/* ============================================================\r\n     PASSWORD REVEAL\r\n     ============================================================ *\/\r\n\r\n  g('hraEye').addEventListener('click', function() {\r\n\r\n    var p = g('hra_pass');\r\n\r\n    p.type =\r\n      (p.type === 'password')\r\n        ? 'text'\r\n        : 'password';\r\n\r\n  });\r\n\r\n\r\n  g('hra_pass').addEventListener(\r\n    'input',\r\n    function() {\r\n\r\n      clearErr('hf-pass');\r\n\r\n    }\r\n  );\r\n\r\n\r\n  \/* ============================================================\r\n     FILE HANDLING\r\n     ============================================================ *\/\r\n\r\n  drop.addEventListener(\r\n    'click',\r\n    function() {\r\n\r\n      fileIn.click();\r\n\r\n    }\r\n  );\r\n\r\n\r\n  drop.addEventListener(\r\n    'dragover',\r\n    function(e) {\r\n\r\n      e.preventDefault();\r\n\r\n      drop.classList.add('drag');\r\n\r\n    }\r\n  );\r\n\r\n\r\n  drop.addEventListener(\r\n    'dragleave',\r\n    function() {\r\n\r\n      drop.classList.remove('drag');\r\n\r\n    }\r\n  );\r\n\r\n\r\n  drop.addEventListener(\r\n    'drop',\r\n    function(e) {\r\n\r\n      e.preventDefault();\r\n\r\n      drop.classList.remove('drag');\r\n\r\n\r\n      if (e.dataTransfer.files.length) {\r\n\r\n        handleFile(\r\n          e.dataTransfer.files[0]\r\n        );\r\n\r\n      }\r\n\r\n    }\r\n  );\r\n\r\n\r\n  fileIn.addEventListener(\r\n    'change',\r\n    function() {\r\n\r\n      if (fileIn.files.length) {\r\n\r\n        handleFile(\r\n          fileIn.files[0]\r\n        );\r\n\r\n      }\r\n\r\n    }\r\n  );\r\n\r\n\r\n  g('hraFX').addEventListener(\r\n    'click',\r\n    clearFile\r\n  );\r\n\r\n\r\n  \/* ============================================================\r\n     FILE VALIDATION\r\n     ============================================================ *\/\r\n\r\n  function handleFile(file) {\r\n\r\n    if (\r\n      file.type !== 'application\/pdf' &&\r\n      !file.name.toLowerCase().endsWith('.pdf')\r\n    ) {\r\n\r\n      showErr(\r\n        'hf-pdf',\r\n        'Only PDF files are accepted.'\r\n      );\r\n\r\n      clearFile();\r\n\r\n      return;\r\n    }\r\n\r\n\r\n    \/* Maximum file size: 25 MB *\/\r\n\r\n    if (\r\n      file.size >\r\n      25 * 1024 * 1024\r\n    ) {\r\n\r\n      showErr(\r\n        'hf-pdf',\r\n        'The file size exceeds the 25 MB limit.'\r\n      );\r\n\r\n      clearFile();\r\n\r\n      return;\r\n    }\r\n\r\n\r\n    \/*\r\n     * Keep the selected file in the\r\n     * original file input.\r\n     *\/\r\n\r\n    var dt =\r\n      new DataTransfer();\r\n\r\n    dt.items.add(file);\r\n\r\n    fileIn.files =\r\n      dt.files;\r\n\r\n\r\n    g('hraFName').textContent =\r\n      file.name;\r\n\r\n\r\n    g('hraFSize').textContent =\r\n      fmtSize(file.size);\r\n\r\n\r\n    pill.classList.add('show');\r\n\r\n    drop.style.display = 'none';\r\n\r\n\r\n    clearErr('hf-pdf');\r\n\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     CLEAR FILE\r\n     ============================================================ *\/\r\n\r\n  function clearFile() {\r\n\r\n    fileIn.value = '';\r\n\r\n    pill.classList.remove('show');\r\n\r\n    drop.style.display = '';\r\n\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     FILE SIZE FORMAT\r\n     ============================================================ *\/\r\n\r\n  function fmtSize(b) {\r\n\r\n    if (b < 1024) {\r\n\r\n      return b + ' B';\r\n\r\n    }\r\n\r\n\r\n    if (b < 1048576) {\r\n\r\n      return (\r\n        b \/ 1024\r\n      ).toFixed(1) + ' KB';\r\n\r\n    }\r\n\r\n\r\n    return (\r\n      b \/ 1048576\r\n    ).toFixed(1) + ' MB';\r\n\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     ERROR HELPERS\r\n     ============================================================ *\/\r\n\r\n  function showErr(id, msg) {\r\n\r\n    var f = g(id);\r\n\r\n    f.classList.add('invalid');\r\n\r\n\r\n    var e =\r\n      f.querySelector('.hra-err');\r\n\r\n\r\n    if (e) {\r\n\r\n      if (msg) {\r\n\r\n        e.textContent = msg;\r\n\r\n      }\r\n\r\n      e.classList.add('show');\r\n\r\n    }\r\n\r\n  }\r\n\r\n\r\n  function clearErr(id) {\r\n\r\n    var f = g(id);\r\n\r\n    f.classList.remove('invalid');\r\n\r\n\r\n    var e =\r\n      f.querySelector('.hra-err');\r\n\r\n\r\n    if (e) {\r\n\r\n      e.classList.remove('show');\r\n\r\n    }\r\n\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     FORM VALIDATION + SUBMISSION\r\n     ============================================================ *\/\r\n\r\n  form.addEventListener(\r\n    'submit',\r\n    function(ev) {\r\n\r\n      ev.preventDefault();\r\n\r\n\r\n      var ok = true;\r\n\r\n\r\n      \/* Password *\/\r\n\r\n      if (\r\n        !g('hra_pass').value\r\n      ) {\r\n\r\n        showErr('hf-pass');\r\n\r\n        ok = false;\r\n\r\n      }\r\n\r\n\r\n      \/* PDF *\/\r\n\r\n      if (\r\n        !fileIn.files.length\r\n      ) {\r\n\r\n        showErr(\r\n          'hf-pdf',\r\n          'Please upload the hiring rules PDF file.'\r\n        );\r\n\r\n        ok = false;\r\n\r\n      }\r\n\r\n\r\n      if (!ok) {\r\n\r\n        return;\r\n\r\n      }\r\n\r\n\r\n      \/* ======================================================\r\n         FormData\r\n         ====================================================== *\/\r\n\r\n      var fd =\r\n        new FormData();\r\n\r\n\r\n      fd.append(\r\n        'admin_password',\r\n        g('hra_pass').value\r\n      );\r\n\r\n\r\n      fd.append(\r\n        'hiring_rules_pdf',\r\n        fileIn.files[0],\r\n        fileIn.files[0].name\r\n      );\r\n\r\n\r\n      \/* Loading state *\/\r\n\r\n      setLoading(true);\r\n\r\n\r\n      \/* ======================================================\r\n         SEND TO n8n\r\n         ====================================================== *\/\r\n\r\n      fetch(\r\n        WEBHOOK_URL,\r\n        {\r\n          method: 'POST',\r\n          body: fd\r\n        }\r\n      )\r\n\r\n      .then(\r\n        function(res) {\r\n\r\n          \/*\r\n           * The n8n workflow responds with JSON.\r\n           *\r\n           * Success:\r\n           * {\r\n           *   status: \"...\",\r\n           *   completed_at: \"...\",\r\n           *   source: \"...\"\r\n           * }\r\n           *\r\n           * Invalid password:\r\n           * {\r\n           *   error: \"Unauthorized...\"\r\n           * }\r\n           *\/\r\n\r\n          return res\r\n            .json()\r\n            .catch(\r\n              function() {\r\n                return {};\r\n              }\r\n            )\r\n            .then(\r\n              function(data) {\r\n\r\n                return {\r\n                  httpOk: res.ok,\r\n                  status: res.status,\r\n                  data: data\r\n                };\r\n\r\n              }\r\n            );\r\n\r\n        }\r\n      )\r\n\r\n\r\n      .then(\r\n        function(r) {\r\n\r\n          if (!r.httpOk) {\r\n\r\n            throw new Error(\r\n              'HTTP ' + r.status\r\n            );\r\n\r\n          }\r\n\r\n\r\n          \/*\r\n           * n8n returned an application error.\r\n           *\/\r\n\r\n          if (\r\n            r.data &&\r\n            r.data.error\r\n          ) {\r\n\r\n            setLoading(false);\r\n\r\n            showStatus(\r\n              'bad',\r\n              r.data.error\r\n            );\r\n\r\n          }\r\n\r\n          \/*\r\n           * Successful upload.\r\n           *\/\r\n\r\n          else {\r\n\r\n            showStatus(\r\n              'ok',\r\n              (r.data && r.data.status) || ''\r\n            );\r\n\r\n          }\r\n\r\n        }\r\n      )\r\n\r\n\r\n      .catch(\r\n        function(err) {\r\n\r\n          setLoading(false);\r\n\r\n          showStatus(\r\n            'bad',\r\n            err.message\r\n          );\r\n\r\n        }\r\n      );\r\n\r\n    }\r\n  );\r\n\r\n\r\n  \/* ============================================================\r\n     LOADING STATE\r\n     ============================================================ *\/\r\n\r\n  function setLoading(on) {\r\n\r\n    var btn =\r\n      g('hraSubmit');\r\n\r\n\r\n    btn.classList.toggle(\r\n      'loading',\r\n      on\r\n    );\r\n\r\n\r\n    btn.disabled = on;\r\n\r\n\r\n    btn.querySelector(\r\n      '.hra-btn-label'\r\n    ).textContent =\r\n\r\n      on\r\n        ? 'Uploading and indexing...'\r\n        : 'Upload Rules';\r\n\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     STATUS SCREEN\r\n     ============================================================ *\/\r\n\r\n  function showStatus(\r\n    kind,\r\n    detail\r\n  ) {\r\n\r\n    form.style.display =\r\n      'none';\r\n\r\n\r\n    g('hraFoot').style.display =\r\n      'none';\r\n\r\n\r\n    var s =\r\n      g('hraStatus');\r\n\r\n\r\n    s.className =\r\n      'hra-status show ' + kind;\r\n\r\n\r\n    \/* Success *\/\r\n\r\n    if (kind === 'ok') {\r\n\r\n      g('hraSRing').textContent =\r\n        '\u2713';\r\n\r\n\r\n      g('hraSTitle').textContent =\r\n        'Hiring Rules Uploaded Successfully';\r\n\r\n\r\n      g('hraSText').textContent =\r\n        detail ||\r\n        'The hiring rules have been replaced and indexed in the database.';\r\n\r\n\r\n      g('hraAgain').textContent =\r\n        'Upload Another File';\r\n\r\n    }\r\n\r\n\r\n    \/* Error *\/\r\n\r\n    else {\r\n\r\n      g('hraSRing').textContent =\r\n        '\u26a0';\r\n\r\n\r\n      g('hraSTitle').textContent =\r\n        'Unable to Upload Hiring Rules';\r\n\r\n\r\n      g('hraSText').textContent =\r\n\r\n        detail\r\n          ? detail\r\n          : 'An error occurred while connecting to the server. Please check your connection and try again.';\r\n\r\n\r\n      g('hraAgain').textContent =\r\n        'Try Again';\r\n\r\n    }\r\n\r\n  }\r\n\r\n\r\n  \/* ============================================================\r\n     RESET \/ TRY AGAIN\r\n     ============================================================ *\/\r\n\r\n  g('hraAgain').addEventListener(\r\n    'click',\r\n    function() {\r\n\r\n      form.reset();\r\n\r\n\r\n      clearFile();\r\n\r\n\r\n      g('hra_pass').type =\r\n        'password';\r\n\r\n\r\n      [\r\n        'hf-pass',\r\n        'hf-pdf'\r\n      ].forEach(clearErr);\r\n\r\n\r\n      setLoading(false);\r\n\r\n\r\n      g('hraStatus').className =\r\n        'hra-status';\r\n\r\n\r\n      form.style.display =\r\n        '';\r\n\r\n\r\n      g('hraFoot').style.display =\r\n        '';\r\n\r\n    }\r\n  );\r\n\r\n\r\n})();\r\n\r\n<\/script>\r\n\r\n<\/body>\r\n<\/html>\t\t\t\t<\/div>\n\t\t\n<\/div>\n\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Upload Hiring Rules Admin Panel Upload Hiring Rules Upload a PDF containing your hiring rules and role guidelines. The contents of this file will replace the current rules in the database. \u26a0\ufe0f Warning: This operation will completely replace all existing hiring rules. The previous rules will be deleted before the new file is uploaded. Admin [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1016","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/aixworkspace.net\/ar\/wp-json\/wp\/v2\/pages\/1016","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/aixworkspace.net\/ar\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/aixworkspace.net\/ar\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/aixworkspace.net\/ar\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/aixworkspace.net\/ar\/wp-json\/wp\/v2\/comments?post=1016"}],"version-history":[{"count":23,"href":"https:\/\/aixworkspace.net\/ar\/wp-json\/wp\/v2\/pages\/1016\/revisions"}],"predecessor-version":[{"id":2125,"href":"https:\/\/aixworkspace.net\/ar\/wp-json\/wp\/v2\/pages\/1016\/revisions\/2125"}],"wp:attachment":[{"href":"https:\/\/aixworkspace.net\/ar\/wp-json\/wp\/v2\/media?parent=1016"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}