        
        body:has(.rep-track-wrapper) #page { min-height: 0 !important; }
        body:has(.rep-track-wrapper) .ast-container { padding-bottom: 80px; }

        
        .rep-track-wrapper { font-family: 'Inter', system-ui, -apple-system, sans-serif; width: 100%; margin: 0 auto; color: #1a1a1a; }
        .rep-track-title { font-size: 27px; font-weight: 700; color: #201C1C; margin-bottom: 25px; margin-top: 5px; border-bottom: 1px solid #F8F9FA; padding-bottom: 15px; line-height: 23px; }
        .rep-form-card { background: #ffffff; padding: 40px; border-radius: 12px; box-shadow: 0 10px 40px rgba(0,0,0,0.06); transition: all 0.3s ease; }
        @media(max-width: 600px) { .rep-form-card { padding: 25px; } }
        
        .stepper { display: flex; justify-content: space-between; margin-bottom: 35px; margin-top: 10px; position: relative; }
        .step { position: relative; text-align: center; flex: 1; z-index: 2; }
        .step:not(:last-child)::after { content: ''; position: absolute; top: 16px; left: calc(50% + 20px); width: calc(100% - 40px); height: 2px; background: #e9ecef; z-index: -1; }
        .step-circle { width: 33px; height: 33px; box-sizing: border-box; border-radius: 50%; background: #ffffff; border: 2px solid #e9ecef; color: #adb5bd; display: flex; align-items: center; justify-content: center; margin: 0 auto 8px; font-weight: 700; font-size: 16px; transition: 0.3s; }
        .step.active .step-circle { background: #E0382D; border-color: #E0382D; color: #fff; }
        .step.completed .step-circle { background: #E0382D; border-color: #E0382D; color: transparent !important; font-size: 0 !important; position: relative; }
        .step.completed .step-circle::after { content: ''; position: absolute; width: 24px; height: 19px; top: 3px; left: 6px; background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="19" viewBox="0 0 24 19" fill="none"><path d="M2.5 11.1154L8.08824 16.5L21.5 2.5" stroke="white" stroke-width="5" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center; background-size: contain; }
        .step-label {
            font-family: 'Inter', sans-serif;
            font-weight: 700;
            font-size: 16px;
            line-height: 23px;
            letter-spacing: 0%;
            text-align: center;
            color: #adb5bd;
            transition: 0.3s;
        }
        .step.active .step-label, .step.completed .step-label { color: #201C1C; }
        
        .step-content { display: none; }
        .step-content.active { display: block; animation: fadeIn 0.4s; }
        @keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        
        
        .cjs-servis-auth-box { background: #F6F6F6; border: 1px solid #E5E5E5; border-radius: 12px; padding: 18px 20px; margin-bottom: 28px; }
        .cjs-servis-auth-question { font-size: 14px; font-weight: 600; color: #201C1C; margin-bottom: 12px; }
        .cjs-servis-auth-actions { display: flex; gap: 10px; }
        .cjs-servis-auth-btn-login,
        .cjs-servis-auth-btn-register { flex: 1; height: 42px; border-radius: 45px; font-family: 'Inter', sans-serif; font-weight: 700; font-size: 14px; cursor: pointer; display: flex; align-items: center; justify-content: center; text-decoration: none !important; box-sizing: border-box; transition: opacity 0.2s; }
        .cjs-servis-auth-btn-login { border: 1px solid #E0382D; background: #fff; color: #E0382D !important; }
        .cjs-servis-auth-btn-login:hover { opacity: 0.8; }
        .cjs-servis-auth-btn-register { border: none; background: linear-gradient(90deg, #E0382D 51.75%, #BB2530 100%); color: #fff !important; }
        .cjs-servis-auth-btn-register:hover { opacity: 0.9; }
        .cjs-servis-auth-hint { font-size: 12px; color: #6c757d; margin-top: 10px; }

        
        .cjs-servis-auth-user-box { display: flex; align-items: center; gap: 12px; background: #F6F6F6; border: 1px solid #E5E5E5; border-radius: 12px; padding: 14px 18px; margin-bottom: 28px; flex-wrap: wrap; }
        .cjs-servis-auth-avatar { width: 44px; height: 44px; border-radius: 50%; background: #fff; border: 1.5px solid #e5e5e5; color: #9a9a9a; display: flex; align-items: center; justify-content: center; font-weight: 600; font-size: 18px; flex: none; }
        .cjs-servis-auth-details { min-width: 0; flex: 1 1 140px; }
        .cjs-servis-auth-name { font-size: 15px; font-weight: 800; color: #1a1a1a; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: 1.2; }
        .cjs-servis-auth-email { font-size: 13px; color: #8a8a8a; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin-top: 2px; }
        .cjs-servis-auth-user-actions { display: flex; gap: 8px; flex-wrap: wrap; }
        .cjs-servis-auth-profile-btn,
        .cjs-servis-auth-logout-btn { display: inline-flex !important; align-items: center !important; justify-content: center !important; height: 33px !important; padding: 0 16px !important; border-radius: 45px !important; font-family: 'Inter', sans-serif !important; font-size: 13px !important; font-weight: 700 !important; text-decoration: none !important; cursor: pointer !important; box-sizing: border-box !important; transition: opacity 0.2s, background 0.2s !important; white-space: nowrap; }
        .cjs-servis-auth-profile-btn { background: linear-gradient(90deg, #E0382D 51.75%, #BB2530 100%) !important; color: #fff !important; border: none !important; }
        .cjs-servis-auth-profile-btn:hover { opacity: 0.9 !important; }
        .cjs-servis-auth-logout-btn { background: #fff !important; color: #E0382D !important; border: 1px solid #E0382D !important; }
        .cjs-servis-auth-logout-btn:hover { background: #fdf1f0 !important; }

        
        input[type=number]::-webkit-inner-spin-button, 
        input[type=number]::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
        input[type=number] { -moz-appearance: textfield; }

        .rep-input-group { margin-bottom: 32px; }
        .floating-group { position: relative; margin-bottom: 32px; }
        .rep-grid-2 > div { margin-bottom: 0; }
        .rep-grid-2 > .floating-group { margin-bottom: 0; }
        .floating-group.no-margin { margin-bottom: 0; }
        
        .rep-input { width: 100% !important; box-sizing: border-box !important; padding: 0 16px !important; font-size: 16px !important; font-weight: 600 !important; line-height: 23px !important; border: 1px solid transparent !important; background-clip: padding-box !important; border-radius: 12px !important; color: #201C1C !important; transition: 0.2s; background: transparent !important; font-family: 'Inter', sans-serif !important; box-shadow: none !important; }
        
        .rep-input:focus { outline: none !important; box-shadow: none !important; }
        
        
        .rep-notch { position: absolute; top: -6px; bottom: 0; left: 0; right: 0; margin: 0; padding: 0 10px; border: 1px solid #ced4da; border-radius: 12px; pointer-events: none; transition: 0.2s ease all; z-index: 1; }
        .rep-input:focus ~ .rep-notch { border-color: #E0382D; border-width: 1px; }
        
        
        .rep-notch legend { display: block !important; width: auto !important; padding: 0 !important; height: 12px !important; font-size: 12px !important; font-weight: 600 !important; line-height: 0 !important; visibility: hidden !important; max-width: 0.01px; transition: none; white-space: nowrap !important; border: none !important; margin: 0 !important; }
        .rep-notch legend > span { padding: 0 4px; display: inline-block; }
        
        .rep-input:focus ~ .rep-notch legend,
        .rep-input:not(:placeholder-shown) ~ .rep-notch legend { max-width: 100%; }
        
        input[type="date"] ~ .rep-notch legend { max-width: 100%; }
        
        
        .rep-input:-webkit-autofill,
        .rep-input:-webkit-autofill:hover, 
        .rep-input:-webkit-autofill:focus, 
        .rep-input:-webkit-autofill:active {
            -webkit-box-shadow: 0 0 0 30px white inset !important;
            -webkit-text-fill-color: #181818 !important;
            transition: background-color 5000s ease-in-out 0s;
        }

        input.rep-input, select.rep-input { height: 48px !important; padding: 0 16px !important; }
        
        .rep-input::placeholder { color: transparent !important; opacity: 1; transition: 0.2s; }
        .rep-input:focus::placeholder { color: #adb5bd !important; }

        
        .rep-label { position: absolute; top: 50%; left: 12px; transform: translateY(-50%); background: transparent !important; padding: 0 4px; font-family: 'Inter', sans-serif; font-size: 16px; font-weight: 600; line-height: 23px; color: #7F7F7F; pointer-events: none; transition: 0.2s ease all; margin-bottom: 0; z-index: 5; }
        
        .rep-input:focus ~ .rep-label,
        .rep-input:not(:placeholder-shown) ~ .rep-label { top: -2px; font-size: 11px; font-weight: 600; color: #7F7F7F; line-height: 23px; }
        .rep-input:not(:focus):not(:placeholder-shown) ~ .rep-label { color: #7F7F7F; }
        
        textarea.rep-input ~ .rep-label { top: 24px; }
        textarea.rep-input:focus ~ .rep-label,
        textarea.rep-input:not(:placeholder-shown) ~ .rep-label { top: -2px; transform: translateY(-50%); }

        input[type="date"] ~ .rep-label { top: -2px; font-size: 11px; font-weight: 600; color: #7F7F7F; }
        input[type="date"]:focus ~ .rep-label { color: #7F7F7F; }


        .static-label { display: block; font-size: 15px; font-weight: 600; color: #212529; margin-bottom: 8px; position: static; transform: none; padding: 0; pointer-events: auto; background: transparent; }
        
        select.rep-input { cursor: pointer; appearance: none; background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23495057%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E"); background-repeat: no-repeat; background-position: right 14px top 50%; background-size: .65em auto; padding-right: 35px; }

        .rep-textarea { min-height: 100px; resize: vertical; padding: 10px 14px !important; }

        .rep-grid-2 { display: flex; gap: 16px; margin-bottom: 32px; align-items: flex-start; }
        .rep-grid-2 > div { flex: 1; min-width: 0; }
        @media (max-width: 600px) { .rep-grid-2 { flex-direction: column; gap: 32px; align-items: stretch; } }

        .rep-checkbox-wrapper { display: flex; align-items: center; margin-bottom: 32px; font-size: 14px; font-weight: 600; color: #212529; cursor: pointer; }
        .rep-checkbox-wrapper input[type="checkbox"] {
            appearance: none; -webkit-appearance: none; -moz-appearance: none;
            width: 18px; height: 18px; border-radius: 6px; border: 1px solid #D6D6D6;
            margin-right: 10px; cursor: pointer; transition: 0.2s; background: #fff;
            display: inline-block; vertical-align: middle; flex-shrink: 0;
        }
        
        .rep-checkbox-wrapper input[type="checkbox"]:checked {
            border-color: #E0382D;
            background-color: #fff !important;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E0382D' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
            background-size: 14px; background-position: center; background-repeat: no-repeat;
        }
        
        .radio-group { display: flex; gap: 20px; background: #f8f9fa; padding: 20px 20px; border-radius: 12px; margin-bottom: 25px; }
        .radio-inline { display: flex; align-items: center; font-size: 15px; font-weight: 600; color: #212529; cursor: pointer; }
        .radio-inline input[type="radio"] { margin-right: 10px; width: 18px; height: 18px; accent-color: #E0382D; cursor: pointer; }
        @media (max-width: 600px) { .radio-group { flex-direction: column; gap: 15px; } }

        
        
        .rep-submit-btn { appearance: none; -webkit-appearance: none; -moz-appearance: none; height: 42px; display: inline-flex; align-items: center; justify-content: center; padding: 0 25px; background: linear-gradient(90deg, #E0382D 51.75%, #BB2530 100%) !important; color: #ffffff; border: none; border-radius: 45px; font-family: 'Inter', sans-serif; font-size: 15px; font-weight: 700; cursor: pointer; transition: 0.2s; white-space: nowrap; }
        .rep-submit-btn:hover { filter: brightness(0.9); color: white !important; }
        .rep-submit-btn:focus { outline: none !important; }
        .rep-btn-next { width: 90px; padding: 0 !important; font-size: 14px !important; margin-left: auto !important; }
        .bg-white { background-color: #ffffff !important; }
        .btn-outline { background: #ffffff !important; color: #E0382D; border: 1px solid #E0382D; }
        .btn-outline:hover { background: #fdf2f2 !important; color: #E0382D !important; }
        .btn-outline-dark, .btn-outline-dark:visited { background: #ffffff !important; color: #1a1a1a !important; border: 1px solid #E0382D; text-decoration: none !important; }
        .btn-outline-dark:hover { background: #f8f9fa !important; color: #1a1a1a !important; }
        .success-box-actions { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; }
        .rep-btn-blue { height: 100%; background: #f8f9fa; color: #495057; border: 1px solid #ced4da; border-radius: 8px; cursor: pointer; font-weight: 600; font-size: 14px; padding: 0 15px; transition: 0.2s;}
        .rep-btn-blue:hover { background: #e9ecef; }
        .rep-input-ico { padding-right: 150px !important; }
        .rep-btn-ares { position: absolute; right: 6px; top: 6px; bottom: 6px; width: 138px; background: linear-gradient(90deg, #E0382D 51.75%, #BB2530 100%) !important; border-radius: 8px; border: none; font-family: 'Inter', sans-serif; font-weight: 700; font-size: 12px; line-height: 13px; color: #FFFFFF; padding: 0; cursor: pointer; transition: 0.2s; display: inline-flex; align-items: center; justify-content: center; z-index: 10; box-sizing: border-box; text-align: center; }
        .rep-btn-ares:disabled { background: #D6D6D6 !important; cursor: not-allowed; pointer-events: none; }
        .rep-btn-ares.loaded { background: linear-gradient(90deg, #2BCF36 51.75%, #2FC038 100%) !important; pointer-events: none; }
        @media (max-width: 768px) {
            .rep-input-ico { padding-right: 80px !important; }
            .rep-btn-ares { width: 68px; font-size: 11px; }
        }
        
        .step-footer { display: flex !important; justify-content: flex-end !important; gap: 15px; margin-top: 35px; }
        .step-footer.between { justify-content: space-between !important; }
        @media (max-width: 500px) { .step-footer { flex-direction: column-reverse !important; } .step-footer button { width: 100% !important; margin-left: 0 !important; } }

        .upload-area { border: 2px dashed #ced4da; border-radius: 8px; padding: 30px; text-align: center; cursor: pointer; background: #fdfdfe; transition: 0.2s; position: relative; }
        .upload-area:hover, .upload-area.dragover { border-color: #E0382D; background: #fffcfc; }
        .upload-area input[type="file"] { position: absolute; width: 100%; height: 100%; top: 0; left: 0; opacity: 0; cursor: pointer; }
        .upload-icon { margin-bottom: 15px; color: #adb5bd; }
        .upload-icon svg { width: 32px; height: 32px; }
        .upload-text { font-size: 15px; font-weight: 600; color: #495057; margin-bottom: 5px; }
        .upload-sub { font-size: 13px; color: #6c757d; }
        .upload-preview { display: none; align-items: center; justify-content: space-between; background: #f8f9fa; border: 1px solid #ced4da; padding: 10px 15px; border-radius: 8px; margin-top: 10px; }
        .upload-preview span { font-size: 14px; font-weight: 500; color: #495057; word-break: break-all; }
        .upload-preview button { background: none; border: none; color: #dc3545; cursor: pointer; font-weight: 700; font-size: 14px; padding: 5px; }

        .rep-error-msg { display: none; background: #f8d7da; color: #721c24; padding: 15px; border-radius: 8px; margin-bottom: 25px; font-size: 14px; text-align: center; }
        .success-box { text-align: center; padding: 40px 10px; display: none; }
        .success-icon { display: flex; align-items: center; justify-content: center; margin: 0 auto 25px auto; }
        .success-title-top {
            font-family: 'Inter', sans-serif;
            font-weight: 900;
            font-size: 22px;
            line-height: 100%;
            letter-spacing: 0%;
            text-align: center;
            text-transform: uppercase;
            color: #201C1C;
            margin-bottom: 8px;
            margin-top: 0;
        }
        .success-title-main {
            font-family: 'Inter', sans-serif;
            font-weight: 900;
            font-size: 45px;
            line-height: 100%;
            letter-spacing: 0%;
            text-align: center;
            text-transform: uppercase;
            color: #201C1C;
            margin-bottom: 30px;
            margin-top: 0;
        }
        .case-number-box {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 100%;
            max-width: 294px;
            height: 39px;
            border: 1px solid transparent;
            border-radius: 45px;
            background-image: linear-gradient(#ffffff, #ffffff), linear-gradient(90deg, #2BCF36 51.75%, #2FC038 100%);
            background-origin: border-box;
            background-clip: padding-box, border-box;
            margin: 0 auto 30px auto;
            cursor: pointer;
            transition: opacity 0.2s;
            box-sizing: border-box;
            user-select: none;
            white-space: nowrap;
        }
        .case-number-box:hover {
            opacity: 0.8;
        }
        .case-number-box .label {
            font-family: 'Inter', sans-serif;
            font-weight: 600;
            font-size: 16px;
            line-height: 23px;
            letter-spacing: 0%;
            color: #201C1C;
            margin-right: 5px;
        }
        .case-number-box .num {
            font-family: 'Inter', sans-serif;
            font-weight: 800;
            font-size: 16px;
            line-height: 23px;
            letter-spacing: 0%;
            color: #201C1C;
        }
        @media (max-width: 500px) {
            .case-number-box .label {
                font-size: 15px;
            }
            .case-number-box .num {
                font-size: 15px;
            }
            .step-label {
                font-size: 14px;
            }
            .success-title-top {
                font-size: 20px;
            }
            .success-title-main {
                font-size: 40px;
            }
        }

        
        .cjs-servis-page-title { text-align: center; margin: 0 0 40px; }
        .cjs-servis-page-eyebrow { font-family: 'Inter', sans-serif; font-weight: 700; font-size: 15px; line-height: 18px; text-align: center; color: #E0382D; max-width: 445px; margin: 0 auto; }
        .cjs-servis-page-heading {
            font-family: 'Inter', sans-serif;
            font-weight: 900;
            font-size: clamp(23px, 14.5px + 2.12vw, 45px);
            line-height: clamp(28px, 18px + 2.5vw, 54px);
            text-align: center;
            text-transform: uppercase;
            color: #201C1C;
            max-width: clamp(402px, 347px + 13.75vw, 545px);
            margin: 10px auto 0;
        }
        .cjs-servis-page-heading span { color: #E0382D; }
