 /*########### varialble formation started here ###################*/

 :root {
     /*############# Home page avriables started here #################*/

     /*######### colors and background colors variables started here ##########*/

     --primary-color1: rgba(229, 57, 53, 1);
     --secondary-color1: rgba(248, 35, 72, 1);
     --tertiary-color1: rgba(217, 217, 217, 1);
     --quartenary-color1: rgba(255, 255, 255, 1);
     --quinary-color1: rgba(110, 114, 122, 1);
     --sextary-color1: rgba(84, 101, 225, 1);
     --septenary-color1: rgba(23, 23, 24, 1);
     --transparant-colour1: #d3d3eb80;

     --mainheading-color: var(--quartenary-color1);
     --subheading-color: var(--primary-color1);
     --card-heading-color: var(--secondary-color1);
     --card-content-color: var(--quartenary-color1);
     --paragraph-primary-color: var(--quartenary-color1);
     --paragraph-secondary-color: var(--tertiary-color1);



     --primary-background-color1: rgba(14, 13, 12, 1);
     --secondary-background-color1: rgb(85, 67, 67);
     --tertiary-background-color1: rgb(247, 248, 259, 1);


     --background-color-gredient: linear-gradient(90deg, rgba(23, 23, 24, 0.5) 0%, rgba(23, 23, 24, 0) 100%);

     /*######### colors and background colors variables ended here ##########*/


     /*########## border image gradient started here ##############*/
     --border-image-gradient-color: linear-gradient(180deg, rgba(255, 255, 255, 0.2) 0%, rgba(102, 102, 102, 0.4) 100%);
     /*################ border image gradient started here ##################*/

     /*############### button variables started here #####################*/
     --button-background-color: var(--primary-color1);
     --button-text-color: var(--quartenary-color1);

     /*############# button variables started here #############*/

     /*######### font family  variables started here ##########*/

     --font-family-primary: 'Avenir LT Std', sans-serif;
     ;

     /*######### font family variables ended here ##########*/

     /*################## Home page avriables ended here #######################*/

     /* boder color variables started from here */
     --border-color: var(--primary-color1);
     /* boder color variables ended from here */

     /*######### box shadow and blur variables started here ##########*/

     --box-shadow-primary1: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);

     /*######### box shadow variables ended here ##########*/

     /*########## login registration forms variables started here ##########*/

     --forms-mainheading-fontsize: 28px;
     --forms-input-fontsize: var(--font-small);

     /*############ login registration forms variables ended here #########*/

     /*########## chef detail page variables started here ##########*/
     --chef-detail-card-background: var(--septenary-color1);
     --chef-title-background: var(--primary-color1);
     /*########## chef detail page variables ended here ##########*/

     /*########## enquiry form 5 variables started here ##########*/

     --enquiry-icon-background: var(--tertiary-background-color1);
     --enquiry-icon-color: var(--quartenary-color1);

     /*########## enquiry form variables ended here ##########*/

     /*########## footer variables started here ##########*/

     --footer-text-color: var(--quartenary-color1);

     /*########## footer variables ended here ##########*/
 }



 /*########### varialble formation ended here ###################*/
 .inp {
     position: relative;
     padding-left: 3.4rem;
     border: 2px solid var(--border-color);

     background-color: rgba(0, 0, 0, 0.04);
     backdrop-filter: blur(20px);
     height: 3rem;
     font-size: 14px;
     color: var(--tertiary-color1);

     font-family: var(--font-family-primary);
     font-weight: lighter !important;
 }

 .inp:focus {
     background-color: rgba(0, 0, 0, 0.04);
     color: var(--tertiary-color1);
     border: 2px solid var(--border-color);

     outline: 0;
     box-shadow: none;
 }

 .inp::placeholder {
     font-size: var(--forms-input-fontsize);
     color: var(--tertiary-color1);
     font-family: var(--font-family-primary);

 }

 /* ######################### Captcha ####################### */
 .captcha_text {
     color: var(--paragraph-primary-color);
     font-size: x-small;
     margin-bottom: 20px;
     margin-top: 2px;
 }




 /* ############################## Login Whole Section #################################      */
 .login_sect {
     background-image: url(/assets/images/Registration/Registration.png);
     background-position: center;
     background-repeat: no-repeat;
     background-size: cover;
     position: relative;
     top: 0px;
     left: 0px;
     bottom: 0px;
     right: 0px;
     padding: 0;
 }

 /* ############################## Login Whole Content #################################      */


 .login_cont {
    border: 1px solid #4b4a4a;
    /* border-image-source: linear-gradient(180deg, rgba(255, 255, 255, 0.1), rgba(102, 102, 102, 0.3)); */
    border-image-slice: 2;
     /* border: 1px solid #E53935; */
     border-radius: 14px;
     background-color: rgba(0, 0, 0, 0.1);
     backdrop-filter: blur(20px);
     box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2);
     /* border: 1px solid rgba(255, 255, 255, 0.3); */
     transition: all 0.3s ease;
 }

 .login_contadmin {
     border: none;
     border-radius: 8px;
     background-color: unset !important;
     backdrop-filter: blur(10px);
     border: 1px solid var(--border-color);
     box-shadow: var(--box-shadow-primary1);

 }

 /* ################### Main heading ###################### */
 .m_heading {
     font-family: var(--font-family-primary);
     /* font-weight: lighter !important; */
     color: var(--tertiary-color1);
     font-size: 24px;
     font-style: italic;
     font-weight: 500 !important;
 }


 /* ############################## Icons Adjustments #################################      */

 /*
  * Leading field icons (user / email / etc.)
  * Pin inside a relative wrapper (.guest-input-control / .field-input-wrap).
  * Never use translateY hacks — they drift with margin, errors, and viewport size.
  */
 .field-input-wrap {
     position: relative !important;
     display: block;
     width: 100%;
 }

 .guest-input-control > i:has(.field_icons),
 .field-input-wrap > i:has(.field_icons),
 .password-input-wrap > i:has(.field_icons),
 .auth-input-control > i:has(.field_icons) {
     position: absolute !important;
     left: 14px !important;
     top: 0 !important;
     bottom: auto !important;
     right: auto !important;
     height: 100% !important; /* match the input row only — never the error text */
     width: 2.25rem;
     margin: 0 !important;
     padding: 0 !important;
     display: inline-flex !important;
     align-items: center !important;
     justify-content: center !important;
     pointer-events: none;
     z-index: 5;
     line-height: 0 !important;
 }

 .guest-input-control .field_icons,
 .field-input-wrap .field_icons,
 .password-input-wrap .field_icons,
 .auth-input-control .field_icons,
 .field_icons {
     position: static !important;
     translate: none !important;
     transform: none !important;
     width: 1.125rem !important;
     max-width: 1.125rem;
     height: auto !important;
     max-height: 1.25rem;
     display: block;
     margin: 0 !important;
     object-fit: contain;
 }

 .field_icons_up {
     position: absolute;
     right: 15%;
     transform: translateY(-20px);
     cursor: pointer;
     color: var(--tertiary-color1);
 }

 /*
  * Password show/hide toggles — permanently pinned inside the input.
  * Never rely on static-position + translateY (that parks the eye on the next field's top border).
  */
 .password-input-wrap,
 .guest-input-control,
 .field-input-wrap {
     position: relative !important;
     display: block;
     width: 100%;
 }

 .password-input-wrap > .inp,
 .password-input-wrap > .form-control,
 .guest-input-control > .inp,
 .guest-input-control > .form-control,
 .field-input-wrap > .inp,
 .field-input-wrap > .form-control {
     margin-bottom: 0 !important;
 }

 /*
  * Spacing must live on the wrappers. Inputs keep margin-bottom: 0 so leading
  * icons and the password eye stay vertically aligned to the field, not the error text.
  */
 .login_cont .guest-input-control {
     margin-bottom: 1rem;
 }

 .login_cont .password-input-wrap > .guest-input-control,
 .login_cont .field-input-wrap > .guest-input-control {
     margin-bottom: 0;
 }

 .login_cont form > .row {
     --bs-gutter-x: 1rem;
     --bs-gutter-y: 1rem;
     margin-bottom: 1rem;
 }

 .login_cont form > .row .guest-input-control {
     margin-bottom: 0;
 }

 .login_cont .password-input-wrap,
 .login_cont .field-input-wrap {
     margin-bottom: 1rem;
 }

 .login_cont .mb-3.password-input-wrap,
 .login_cont .mb-3.field-input-wrap,
 .login_cont .mb-3 > .password-input-wrap,
 .login_cont .mb-2 > .password-input-wrap {
     margin-bottom: 0;
 }

 .login_cont .button-fill {
     margin-top: 0.25rem;
 }

 .password-input-wrap > .inp,
 .password-input-wrap > .form-control,
 .guest-input-control > .inp[type="password"],
 .guest-input-control > .form-control[type="password"] {
     padding-right: 3rem;
 }

 .password-input-wrap .field_icons_down,
 .password-input-wrap .field_icons_down2,
 .guest-input-control .field_icons_down,
 .guest-input-control .field_icons_down2,
 .field_icons_down,
 .field_icons_down2 {
     position: absolute !important;
     right: 14px !important;
     left: auto !important;
     top: 0 !important;
     bottom: auto !important;
     height: 100% !important; /* pin to input row height only */
     max-height: 3rem;
     width: 2rem;
     margin: 0 !important;
     padding: 0 !important;
     transform: none !important;
     translate: none !important;
     display: inline-flex !important;
     align-items: center !important;
     justify-content: center !important;
     cursor: pointer;
     color: var(--tertiary-color1);
     z-index: 6;
     line-height: 0 !important;
     pointer-events: auto;
     background: transparent !important;
     border: 0 !important;
     box-shadow: none !important;
     appearance: none;
     -webkit-appearance: none;
 }

 .password-input-wrap .field_icons_down i,
 .password-input-wrap .field_icons_down2 i,
 .guest-input-control .field_icons_down i,
 .guest-input-control .field_icons_down2 i,
 .field_icons_down i,
 .field_icons_down2 i {
     font-size: 1rem;
     line-height: 1;
     pointer-events: none;
 }

 @media (max-width: 768px) {
     .field_icons_up {
         position: absolute;
         right: 20%;
         transform: translateY(-32px);
         cursor: pointer;
         color: var(--tertiary-color1);
     }

     .password-input-wrap .field_icons_down,
     .password-input-wrap .field_icons_down2,
     .guest-input-control .field_icons_down,
     .guest-input-control .field_icons_down2,
     .field_icons_down,
     .field_icons_down2 {
         right: 14px !important;
         top: 0 !important;
         height: 100% !important;
         max-height: 3rem;
         transform: none !important;
     }
 }

 @media (max-width: 400px) {
     .password-input-wrap .field_icons_down,
     .password-input-wrap .field_icons_down2,
     .guest-input-control .field_icons_down,
     .guest-input-control .field_icons_down2,
     .field_icons_down,
     .field_icons_down2 {
         right: 12px !important;
         top: 0 !important;
         height: 100% !important;
         max-height: 3rem;
         transform: none !important;
     }
 }

 .field_icons_up2 {
     position: absolute;
     right: 9%;
     transform: translateY(-77px);
     cursor: pointer;
     color: var(--tertiary-color1);
 }

 .E_icon {
     background-image: url(/assets/images/Registration/key.png);
     background-repeat: no-repeat;
     background-size: 1.125rem auto !important;
     background-position: 18px center !important;
 }

 /*
  * Bootstrap .is-invalid draws its own feedback glyph and overrides background-*.
  * That fights our leading icons (key / user images). Keep our icons; text errors cover validation.
  */
 .inp.is-invalid,
 .form-control.inp.is-invalid {
     background-image: none !important;
     padding-right: 0.75rem;
 }

 .inp.E_icon.is-invalid,
 .form-control.inp.E_icon.is-invalid {
     background-image: url(/assets/images/Registration/key.png) !important;
     background-repeat: no-repeat !important;
     background-size: 1.125rem auto !important;
     background-position: 18px center !important;
     padding-right: 3rem !important;
 }

 .guest-input-control > .inp[type="password"].is-invalid,
 .password-input-wrap > .inp.is-invalid,
 .password-input-wrap .inp.is-invalid {
     padding-right: 3rem !important;
 }

 .guest-field-error {
     position: static !important;
     margin-top: 0.35rem !important;
     margin-bottom: 0 !important;
     line-height: 1.3;
 }

 .Alr_have_acc {
     display: flex;
     justify-content: center;
     align-items: center;
     gap: 0.5rem;
     font-family: var(--font-family-primary);

 }

 .Alr_have_acc p {
     color: var(--tertiary-color1);
     font-family: var(--font-family-primary);

     margin-bottom: 0;
 }

 .Alr_have_acc a {
     color: var(--border-color);
     font-family: var(--font-family-primary);
     text-decoration: none;
     font-weight: bold !important;
 }


 /* ##################### User Login Page Styling  ##################### */

 .final_config1 :first-child p {
     font-size: smaller;
     color: var(--tertiary-color1);
     font-family: var(--font-family-primary);

 }

 .final_config1 {
     margin-top: -14px;
 }

 .final_config1 :first-child {
     display: flex;
     justify-content: start;
     align-items: center;
     gap: 8px;
     padding-left: 8px;
 }

 .final_config1 :nth-child(2) {
     display: flex;
     align-items: start;
     font-family: var(--font-family-primary);
     /* padding-top: 3px; */
     margin-bottom: 9px;
 }

 .final_config1 :nth-child(2) a {
     font-size: 12px;
     /* color: var(--quinary-color1); */
     color: rgb(192 199 207);
     text-decoration: none;
     margin-bottom: 1rem;
     font-family: var(--font-family-primary);

 }

 .final_config1 input[type="checkbox"] {
     accent-color: var(--border-color);
     margin-bottom: 1rem;
     height: 20px;
     width: 20px;
     margin-top: -1px;
     appearance: none;
     margin-bottom: 0px;
     /* border: 1.5px solid var(--border-color); */
     border: 1.5px solid white;
     border-radius: 4px;
 }
 .form-check-input:checked{
    background-color: var(--border-color) !important;
    border-color: transparent !important;
 }
 .form-check-input:focus{
    border-color: transparent !important;
 }
 .form-check-input:active{
    border-color: transparent !important;
 }

 .checkbox-para {
     font-size: x-small;
     font-family: var(--font-family-primary);

 }

 /* ##################### User Login Page Styling  ##################### */




 /* ##################### Chef Registration Page Styling  ##################### */
 .login_sect_chef {
     background-image: url(/assets/images/Registration/chef_page_bg.jpeg);
     background-position: center;
     background-repeat: no-repeat;
     background-size: cover;
     height: 100vh;
     padding: 0;
 }

 .login_sect_chef2 {
     /* background-image: url(/assets/images/Registration/chef_page_bg.jpeg); */
     background-position: center;
     background-repeat: no-repeat;
     background-size: cover;
     height: 110vh;
     padding: 0;
 }

 .j_o_tribe {
     text-align: center;
     color: var(--paragraph-primary-color);
     padding-top: 0%;
     font-family: var(--font-family-secondary);

 }

 .j_o_tribe h5 {
     text-align: center;
     color: var(--paragraph-primary-color);
     padding-top: 15px;
     font-family: var(--font-family-primary);
     font-weight: lighter !important;
     letter-spacing: 1.5px;

 }

 .text-changer {
     background-color: transparent !important;
     backdrop-filter: blur(20px);
 }

 .confirm-top {
     margin-top: -17px;
 }

 .verify-message2 {
     color: var(--tertiary-color1);
 }




 .text-danger {
     color: rgba(229, 57, 53, 1) !important;
 }

 /* ##################### chef Registration Page Styling  ##################### */
 input:-webkit-autofill {
     background: transparent;
     -webkit-text-fill-color: rgba(217, 217, 217, 1) !important;
     transition: background-color 5000s ease-in-out 0s;
 }

 /* Profile Picture Upload Styles */
 .profile-picture-upload-wrapper {
     margin-bottom: 30px;
 }

 .profile-picture-label {
     display: block;
     font-size: 1rem;
     font-weight: 600;
     color: var(--paragraph-primary-color);
     margin-bottom: 12px;
     font-family: var(--font-family-primary);
 }

 .profile-picture-container {
     display: flex;
     flex-direction: column;
     align-items: center;
     gap: 15px;
 }

 .profile-picture-preview {
     position: relative;
     width: 150px;
     height: 150px;
     border-radius: 50%;
     overflow: hidden;
     border: 3px solid var(--primary-color1);
     background: rgba(255, 255, 255, 0.05);
     display: flex;
     align-items: center;
     justify-content: center;
     cursor: pointer;
     transition: all 0.3s ease;
     box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
 }

 .profile-picture-preview:hover {
     transform: scale(1.05);
     box-shadow: 0 6px 20px rgba(229, 57, 53, 0.3);
     border-color: rgba(229, 57, 53, 0.8);
 }

 .profile-picture-placeholder {
     width: 100%;
     height: 100%;
     display: flex;
     flex-direction: column;
     align-items: center;
     justify-content: center;
     color: var(--paragraph-primary-color);
     position: relative;
 }

 .profile-picture-placeholder i.fa-user-circle {
     font-size: 80px;
     opacity: 0.6;
     margin-bottom: 5px;
 }

 .profile-picture-placeholder .upload-icon {
     position: absolute;
     bottom: 10px;
     right: 10px;
     background: var(--primary-color1);
     color: #fff;
     width: 40px;
     height: 40px;
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 16px;
     box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
 }

 .profile-picture-preview img {
     width: 100%;
     height: 100%;
     object-fit: cover;
 }

 .profile-picture-input {
     display: none;
 }

 .profile-picture-actions {
     display: flex;
     gap: 10px;
     flex-wrap: wrap;
     justify-content: center;
 }

 .btn-upload-profile,
 .btn-remove-profile {
     padding: 10px 20px;
     border: 2px solid var(--primary-color1);
     background: transparent;
     color: var(--primary-color1);
     border-radius: 25px;
     font-size: 0.9rem;
     font-weight: 600;
     cursor: pointer;
     transition: all 0.3s ease;
     font-family: var(--font-family-primary);
     display: inline-flex;
     align-items: center;
     gap: 8px;
 }

 .btn-upload-profile:hover {
     background: var(--primary-color1);
     color: #fff;
     transform: translateY(-2px);
     box-shadow: 0 4px 12px rgba(229, 57, 53, 0.4);
 }

 .btn-remove-profile {
     border-color: #dc3545;
     color: #dc3545;
 }

 .btn-remove-profile:hover {
     background: #dc3545;
     color: #fff;
     transform: translateY(-2px);
     box-shadow: 0 4px 12px rgba(220, 53, 69, 0.4);
 }

 .profile-picture-help {
     text-align: center;
     margin-top: 5px;
 }

 .profile-picture-help small {
     font-size: 0.85rem;
     font-family: var(--font-family-primary);
     color: #fff !important;
 }

 .profile-picture-error {
     color: #dc3545;
     font-size: 0.9rem;
     text-align: center;
     margin-top: 5px;
     font-family: var(--font-family-primary);
     padding: 8px 12px;
     background: rgba(220, 53, 69, 0.1);
     border-radius: 5px;
     border: 1px solid rgba(220, 53, 69, 0.3);
 }

 .profile-picture-loading {
     color: var(--primary-color1);
     font-size: 0.9rem;
     text-align: center;
     margin-top: 5px;
     font-family: var(--font-family-primary);
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 8px;
 }

 /* Responsive Design */
 @media (max-width: 768px) {
     .profile-picture-preview {
         width: 120px;
         height: 120px;
     }

     .profile-picture-placeholder i.fa-user-circle {
         font-size: 60px;
     }

     .profile-picture-placeholder .upload-icon {
         width: 35px;
         height: 35px;
         font-size: 14px;
     }

     .btn-upload-profile,
     .btn-remove-profile {
         padding: 8px 16px;
         font-size: 0.85rem;
     }
 }

 /* End Name : Abdul Ahad Qureshi Emp Id: 320 */
