body{
      background:#e9e9e9;
      font-family: Arial, Helvetica, sans-serif;
    }

    .registration-box{
      max-width: 900px;
      margin: 80px auto;
      background:#f7f7f7;
      border:1px solid #000;
      border-radius:20px;
      padding:60px 40px;
      position:relative;
      text-align:center;
    }

    .logo-text span.eat{
      color:#e6007e;
      font-weight:800;
      font-size:50px;
    }

    .logo-text span.local{
      color:#f39c12;
      font-weight:800;
      font-size:50px;
    }

    .main-title{
      font-size:34px;
      font-weight:700;
      margin-top:15px;
    }
     .checkbox-area {
    font-size: 20px;
    margin: 0;font-weight: 700;
    font-size: 20px;
}
    .sub-text{
      font-size:20px;
      margin:0 0 15px 0;    font-weight: 700;
    font-size: 20px;
    }

    .highlight{
      font-size:40px;
      font-weight:800;
      margin:20px 0;
    }

    .agent-label{
      font-size:20px;
      margin-top:30px;
    }

    .agent-input{
      width:220px;
      height:45px;
      border-radius:8px;
      border:1px solid #555;
      text-align:center;
    }

    .optional{
      font-size:14px;
      margin-top:8px;
    }


.form-title{
    font-size:38px;
    font-weight:800;
    letter-spacing:1px;
    margin-bottom:32px;
}

.gradient-btn{
    background:linear-gradient(45deg,#ff0080,#ff1493);
    color:#fff;
    border:none;
    padding:10px 35px;
    border-radius:10px;
    font-weight:600;
    font-size:18px;
}

.back-btn{
    position:absolute;
    top:30px;
    left:50px;
}

.next-btn{
    position:absolute;
    top:30px;
    right:50px;
}

.step{
    display:none;
}

.step.active{
    display:block;
}

.step-text{
    font-size:26px;
    font-weight:700;
    margin-top:70px;
}

input, select, textarea{
    max-width:450px;
    margin:0 auto;
}

.day-row{
    margin-bottom:20px;
    align-items:center;
}

.day-label{
    width:70px;
    font-weight:600;
}

.status-btn{
    padding:6px 15px;
    border-radius:8px;
    border:1px solid #000;
    font-weight:600;
    min-width:80px;
}

.open{
    background:#59b34c;
    color:#fff;
}

.closed{
    background:#e52424;
    color:#fff;
}

.select-btn{
    background:#fff;
}

.time-input{
    border:1px solid #000;
    border-radius:10px;
    height:42px;
    width:100px;font-size: 14px;
}

.apply-link{
    color:#1e9bd7;
    font-weight:600;
    cursor:pointer;
}

.bottom-fields{
    margin-top:30px;
}

.small-input{
    width:90px;
    border:1px solid #000;
    border-radius:10px;
    height:42px;
    text-align:center;
}

.step-text{
    text-align:center;
    font-size:26px;
    font-weight:700;
    margin-top:40px;
}
.category-list{
    max-width:900px;
    margin:0 auto;
}

.form-check{
    margin-bottom:20px;
    font-size:18px;text-align: left;
}

.form-check-input{
    width:20px;
    height:20px;
    border:1px solid #000;
}
.upload-section{
    margin-top:30px;
}

.upload-box{
    margin-bottom:30px;
}

.upload-title{
    font-size:22px;
    font-weight:600;
    margin-bottom:15px;
}

.custom-file-input{
    display:none;
}

.upload-btn{
    border:1px solid #000;
    border-radius:10px;
    padding:10px 25px;
    font-weight:600;
    background:#fff;
    cursor:pointer;
}

.upload-btn:hover{
    background:#f0f0f0;
}
.postcode-input{
    max-width:400px;
    margin:0 auto 40px;
}

.postcode-input input{
    border-radius:8px;
    border:1px solid #444;
    padding:10px 15px;
    font-size:18px;
    text-align:center;
}
.description{margin-top:16px;    font-weight: 700;
    font-size: 20px;}
.description-text{
    max-width:700px;
    margin:0 auto;
    font-size:22px;
    font-weight:600;
}
button.gradient-btn.yellow-btn {
    background: #FF9800;
}
.category-list .col-md-12 {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;   /* THIS CENTERS ALL CATEGORY BOXES */
}
.category-list .col-md-12 .form-check{margin:0}
.form-select{font-weight:700;background: url(../images/arrow.jpg) right center no-repeat; background-size: 26px;}
select.status-select {padding: 10px 0 10px 5px;border-radius: 8px;border: 1px solid #444;font-size: 14px;}
.new-margin-2{margin-top: 0rem;}
.new-margin{margin-top: 1rem;}
.new-margin-bottom{margin-bottom: 0rem;}
@media (max-width:767px){
  .registration-box { margin: 20px auto;padding: 100px 20px 60px 20px;}
  .main-title { font-size: 28px;line-height: 1.2;}
  .next-btn {top: 20px; right: 20px;}
  .back-btn {top: 20px; left: 20px;}
  .highlight { font-size: 30px;line-height: 1.2;}
  .form-title {font-size: 30px; line-height: 1.2;}
  .form-label { text-align: left;}
  .row.day-row > div {text-align: left;align-items: flex-start !important; justify-content: start !important;
    flex-direction: column;}
  select.status-select { width: 100%;}
  .time-input {width: 100%;}
  .bottom-fields {text-align: left !important;gap: 10px;}
  .form-left{text-align: left;}
  .new-margin-2{margin-top: 1rem;}
  .new-margin{margin-top: 0rem;}
  .new-margin-bottom{margin-bottom: 1rem;}
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .registration-box {padding: 90px 40px 60px 40px;}
  .day-row .col-md-6 { width: 100%; text-align: left;  margin: 10px 0;}
}
.category-list .form-check {
    width: calc(33.33% - 76px);
}
/* --- MOBILE VERSION: 2 boxes per row --- */
@media (max-width: 767px) {
    .category-list .col-md-12 {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 15px;
    }

    .category-list .form-check {
        width: calc(50% - 15px);   /* 2 per row */
        text-align: center;
        justify-content: center;
    }
	
	.bottom-fields .col-md-3 {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        margin-bottom: 5px;
    }

    .bottom-fields .small-input {
        width: 120px;
        margin-top: 8px;
    }

    .bottom-fields input[type="checkbox"] {
        margin-top: 5px;
    }
}
.registration-errormsg{display:none; border:2px solid red; padding:4px 5px; color:red; margin-top:10px;}
.checkerror{border:2px solid red; padding:4px 5px; color:red; margin-bottom:10px;}
.error{border:2px solid red; padding:4px 5px; color:red; margin-bottom:10px;}
.upload-size {
    display: block;
    font-size: 14px;
    color: #666;
}
.fake-autofill {
    display: none !important;
    opacity: 0 !important;
    height: 0 !important;
    pointer-events: none !important;
}
.img-fluid{max-width: 260px;}
.file-name {
    margin-top: 8px;
    font-size: 14px;
    font-weight: 500;
    color: #444;
    word-break: break-all; /* handles long names */
}
.status-select option {
    background-color: white !important;
    color: black !important;
}
/*----------------------------------------new css added -------------------------------------*/
/* FULL SCREEN MOBILE FIX */
/* ALL iPad + Tablets (Portrait + Landscape) */
/* Target iPads and tablets in both portrait and landscape */
@media (min-width: 768px) and (max-width: 1080px) {
    html, body {
        height: 100%;
        margin: 0;
        padding: 0;
    }

    .container {
        padding: 0;
        margin: 0;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        max-width: 100%;
        overflow-x: hidden;
    }

    .registration-box {
        margin: 0;
        min-height: 100vh;
        padding: 10vh 20px 8vh 20px; /* responsive top/bottom padding */
        width: 100%;
        max-width: none;
        border-radius: 0;
    }


    /* Safe area for iOS devices with notches */
    @supports(padding: max(0px)) {
        body {
            padding-top: env(safe-area-inset-top);
            padding-bottom: env(safe-area-inset-bottom);
        }
    }
}
@media (max-width: 767px) {

    html, body {
        height: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .container {
        padding: 0 !important;
        margin: 0 !important;
        min-height: 100vh !important;
        display: flex !important;
        flex-direction: column !important;
        max-width: 100% !important; /* IMPORTANT */
    }

    .registration-box {
        margin: 0 !important;
        padding: 100px 20px 80px 20px !important;
        min-height: 100vh !important;
        width: 100% !important;
        max-width: none !important; /* Stops desktop CSS */
        border-radius: 0 !important;
    }


    /* Safe area for iPhone notch */
    @supports(padding: max(0px)) {
        body {
            padding-top: env(safe-area-inset-top);
            padding-bottom: env(safe-area-inset-bottom);
        }
    }
}
#scrollTop {
  position: fixed;
  bottom: 30px;
  right: 30px;
  display: none;
  padding: 10px 15px;
  font-size: 18px;
  cursor: pointer;
  border: none;
  background: #fff;
  box-shadow: 0 0 12px #00000030;
  border-radius: 50rem;
  width: 60px;
  height: 60px;
}
/* Full page overlay */
#pageloader {
    display: none; 
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    z-index: 999999;
    justify-content: center;
    align-items: center;
    text-align: center;
}
.newpageloaderclass .divLoader {
    padding: 20px;
}
.newpageloaderclass .divLoader .timer {
    position: relative;
    width: auto;
    height: auto;
}
.newpageloaderclass .divLoader .timer p {
    color: #ffffff;
    font-size: 20px;
    margin: 0;
}
