@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&display=swap');


@font-face {
    font-family: 'montserratregular';
    src: url('../fonts/montserrat-regular-webfont.woff2') format('woff2'),
         url('../fonts/montserrat-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

body {
    width: 100%;
    background: rgb(237 237 237 / 22%);
    /* font-family: 'montserrat'; */
    color: #333;
    font-weight: 500;
}

span.deletebtn {
    margin-left: 2%;
    color: #d52f2f;
}

.w-100{ width: 100% !important;}

.verifyOtp-btn {
	border: none;
	padding: 10px 20px;
	border-radius: 12px;
	background: #393;
	color: #fff;
	margin-bottom: 20px;
}

#process-tab {
	background: #fff;
	padding: 10px 70px;
	margin-top: 20px;
}
.text-sm {
	/* width: 100%; */
	font-size: 14px;
	color: #5f5c5c;
}
h3 .emoji {
	width: 30px !important;
	height: auto !important;
}
.p-6 {
	padding: 6px;
}
.p-10 {
	padding: 15px;
}
.p-15 {
	padding: 15px;
}
.mb-0{
    margin-bottom: 0px!important;
}
.flex-col {
	flex-direction: column;
}
.text-xs {
	font-size: 18px;
}
.text-xl {
	font-size: 19px;
}
.font-bold {
	font-weight: bold;
}

u{ text-decoration-skip-ink: none;}


p:last-child{padding-bottom:0}
h1{font-size:50px;line-height:60px;color:#000;font-family: 'PT Serif';font-weight: bold;}
h2{font-size:35px;line-height:45px;color:#000;}
img{max-width: 100%;}
.mb-10{margin-bottom:10px;}
.mb-15{margin-bottom:15px;}
.mb-20{margin-bottom:20px;}
.mb-30{margin-bottom:30px;}
.mb-40{margin-bottom:40px;}
.mb-50{margin-bottom:50px;}
.mb-60{margin-bottom:60px;}
.mb-70{margin-bottom:70px;}
.mb-80{margin-bottom:80px;}
.mb-90{margin-bottom:90px;}
.mb-100{margin-bottom:100px;}
.mt-10{margin-top:10px;}
.mt-15{margin-top:15px;}
.mt-20{margin-top:20px;}
.mt-30{margin-top:30px;}
.mt-40{margin-top:40px;}
.mt-50{margin-top:50px;}
.mt-60{margin-top:60px;}
.mt-70{margin-top:70px;}
.mt-80{margin-top:80px;}
.mt-90{margin-top:90px;}
.mt-100{margin-top:100px;}
.pr{position:relative;}
.pa{position:absolute;}
.pt-10{padding-top: 10px;}
.pt-20{padding-top: 20px;}
.pt-30{padding-top: 30px;}
.pt-40{padding-top: 40px;}
.pt-50{padding-top: 50px;}
.pt-60{padding-top: 60px;}
.pt-70{padding-top: 70px;}
.pt-80{padding-top: 80px;}
.pt-90{padding-top: 90px;}
.pt-100{padding-top: 100px;}
.pb-10{padding-bottom: 10px;}
.pb-20{padding-bottom: 20px;}
.pb-30{padding-bottom: 30px;}
.pb-40{padding-bottom: 40px;}
.pb-50{padding-bottom: 50px;}
.pb-60{padding-bottom: 60px;}
.pb-70{padding-bottom: 70px;}
.pb-80{padding-bottom: 80px;}
.pb-90{padding-bottom: 90px;}
.pb-100{padding-bottom: 100px;}
.pl-10{padding-left:10px;}
.pl-20{padding-left:20px;}
.pl-30{padding-left:30px;}
.pl-40{padding-left:40px;}
.pl-50{padding-left:50px;}
.ptb-30{padding-top: 30px;padding-bottom:30px;}
.ptb-40{padding-top: 40px;padding-bottom:40px;}
.ptb-50{padding-top: 50px;padding-bottom:50px;}
.box-shadow {
   box-shadow: 0px 0px 0px 0px rgb(0 0 0 / 25%);
}
.pl-0{padding-left:0;}
.pl-20{padding-left:20px;}
.pl-30{padding-left:30px;}
.pr-0{padding-right:0px!important;}
.pr-20{padding-right:20px;}
.pr-30{padding-right:30px;}
.plr-15{padding-left:15px;padding-right:15px;}
.plr-30{padding-left:30px;padding-right:30px;}
.blue-clr{color:#02568e;}
.pt-serif-bold{font-family: 'PT Serif';font-weight:bold}
.white h1,.white p,.white{color:#fff;}
.clear{clear:both;}
.no-repeat{background-repeat:no-repeat;background-size:cover;background-position:center center;}

.hidden{overflow:hidden;}
.zindex{z-index:9;}
.padding-20{padding:20px;}
.padding-30{padding:30px;}

p.blue-bg{background:#ddf3ff;
border-top-right-radius: 3px;
    border-top-left-radius: 3px;
	padding: 10px 15px;
	color:#000;
	font-size:17px;
	line-height:27px;
	font-family:'Montserrate';
	margin-bottom: 0;font-weight:600;
	border-bottom: 1px solid #b5e1fa!important;
	text-align:left;
	}
	select option{padding-top:3px!important;}
	
	
	.sticky-plan
	{
		position: sticky;
		top: 90px;
	}
	.plan-data section
	{
		padding-bottom: 30px;
	}
	#sortrides
	{
		display: block !important;
    margin: 20px auto;
	}
	div#plan-data section {
    margin-bottom: 30px;
}

	
select {
    border-radius: 7px;
    padding: 12px 9px;
    border-color: #ccc;
}

p.or-bg {
    background: #0089cf;
    border-radius: 100px;
    padding: 10px 8px 7px 6px;
    text-align: center;
    color: #fff;
    width: 35px;
	height: 35px;
    display: block;
    margin: 0 auto;
    line-height: 18px;
    font-size: 13px;
}	
	
.form_input {
    margin-bottom: 30px;
}	

.sec6 input {
    border: 1px solid #ccc;
    border-radius: 7px;
    padding: 12px 9px;
    width: 100%;
}

input#newbreak_leaving {
    margin-top: 0px;
}

textarea#newbreak_notes {
    border-radius: 5px;
}
.save-button, .optimize-button {
	color: #fff;
	padding: 10px 20px;
	border-radius: 12px;
	font-size: 16px;
	line-height: 27px;
	border: none;
	cursor: pointer;
	transition: 0.2s;
	margin: 14px auto 25px;
	background: #f5af29;
    font-weight: 600;
}

.resulttbl th {
    background: #ddf3ff;
    color: #000;
    font-size: 13px;
}
.save-button:focus, .optimize-button:focus{
	outline:none;
}

.no_ride {
    color: #8e4e1e;
    font-weight: normal;
    font-size: 14px;
    justify-content: center;
    height: 100%;
    padding: 15px;
    text-align: left;
}
.save-button:hover{text-decoration:none;}	
	
a.optimize-button:hover{
    text-decoration:none;
}	
		
#sortable {
    width: 100%;
}
.divsaveplan_cls{
	text-align: center;
}
.formcolumn input, select#new_rest_time, textarea#newbreak_notes {
    border-radius: 7px !important;
    border: 1px solid #ccc !important;
    width: 100% !important;
}

#resultTable_breaks thead:first-child {
    background: #0089cf;
}
#sortable {
    border: 1px solid #bbb;
}
table#sortable th {
    font-weight: normal;
}
#resultTable_breaks th {
    font-weight: normal;
}
.resulttbl td {
    text-align: left;
    border: 1px solid #bbb;
    padding: 12px 10px 0px 10px
}

.sec3 .container, .sec4 .container, .sec6 .container
{
	padding: 15px 15px; 
}
.sec4 .row
{
	align-items: center;
}

div#park_ride {
    padding: 0px 0 15px;
}

#resultTable_breaks td
{
	border: 1px solid #000;
}
#sortable th
{
	border:1px solid #b5e1fa;
}
#sortable td {
    border: 1px solid #b5e1fa;
}
.mob-menu-bars	
{
	position: absolute;
    top: -40px;
    right: 0;
    display: none;
    z-index: 11;
    max-width: 32px;
}
.mob-inner-menu
{
	position: relative;
}
	div#plan-list-table table thead tr th {
    background: #eaf0f4;
    color: #000;
}
	

/* new css */

.sec2 .row{ margin:0;justify-content:center;}

.side-panel {
    padding: 7px 0;
    border-radius: 0;
}
.all-plan li a.plan-link.active {
    background: #0089cf;
    border-radius: 0;
}
.all-plan li a:hover {
    background: rgb(0 137 207 / 17%);
    border-radius: 0;
    text-decoration: none;
}
.ui-widget.ui-widget-content {
    border: 1px solid #b5e1fa;
}




.containe_blk #pmpro_account_loggedin{display:none;}
.pmpro_actions_nav{display:none;}
.containe_blk .pmpro_checkout-h3-name{display:none !important;}
.containe_blk .pmpro_form .pmpro_checkout-field{float:left;width:50%;}
.email-btn{cursor:pointer;}
.containe_blk form.pmpro_form .input, form.pmpro_form textarea, form.pmpro_form select{display: inline-block;max-width: 90%; border: 1px solid #ccc;
    height: 35px;width:100%;padding: 0 10px;
}
.plr-15{padding-left:15px !important;
    padding-right:15px !important;}
form.pmpro_form select{max-width: 94% !important;}

.header_section .container{max-width:1330px; margin: 0 auto;box-sizing: border-box;}
.header_section .row{
    display: flex;
    justify-content: space-between;
	    align-items: center;
}
.header_section{padding: 10px 0px 13px 0px;box-shadow:0px 11px 17px -8px rgba(0, 0, 0, 0.18);}
.header_section .navigation-top li{list-style:none;display: inline-block;
    margin-left: 35px;}
.header_section .navigation-top li a {
    font-family: 'Montserrat', sans-serif;
    color: #000000;
    font-weight: 500;
    transition: .2s;
	text-decoration: none;
}
.header_section .navigation-top li a:hover{color: #8e4e1e;}
.header_section .navigation-top ul{padding:0;display:flex;margin:0;}
.footer_section {
    background: #D6FBFF;
    text-align: center;
    padding: 20px;
	position:relative;
	margin-top:60px;
}
.footer_section::before {
    position: absolute;
    content: "";
    left: 0;
    top: -88px;
    background-image: url("../img/footer-bg.png");
    width: 100%;
    height: 88px;
}
.footer_section p{font-size:15px;font-family: 'Montserrat', sans-serif;margin:10px 0;}
.containe_blk, .default_template{
    width: 1140px;
    margin: 0 auto;
	padding: 40px 0;
	box-sizing: border-box;
}
.subcript_btn{outline: none;background: #ff2727;padding: 6px 15px;border-radius: 3px;color: #fff;font-family: 'Montserrat', sans-serif;font-weight: 500;margin-right: 0px;
font-size: 13px;border: none;cursor:pointer;}
.subcript_btn:hover{background:#dd3c3c}
.containe_blk .pmpro_message {
    background-color: #f7f6f7;
    border-top: 3px solid #1e85be !important;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border-radius: 0;
    color: #000;
    font-size: 15px;
    font-family: 'Montserrat', sans-serif;
	border:none;
	padding:15px 15px;
}
.containe_blk .pmpro_checkout-fields p {
    font-family: 'Montserrat', sans-serif;
}
.containe_blk .pmpro_message a {
    color: #007bff;
    text-decoration: none;
    font-weight: 500;
}
.containe_blk .pmpro_form label {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: normal;
    color: #212529;
    margin-bottom: 10px;
}
.containe_blk span.pmpro_asterisk {
    color: red;
}
.containe_blk #pmpro_billing_address_fields hr {
    display: none;
}
.containe_blk #pmpro_billing_address_fields .pmpro_checkout-fields {
    display: flex;
    flex-wrap: wrap;
	width: 100%;
	margin-top: 30px;
    box-sizing: border-box;
}
.containe_blk .pmpro_submit {
    display: inline-block;
    width: 100%;
}
.containe_blk .pmpro_payment-expiration {
    display: flex;
    flex-wrap: wrap;
}
.containe_blk .pmpro_payment-expiration select {
    width: 47%;
    margin-left: 10px;
}
.containe_blk .pmpro_payment-expiration label{width:100% !important;}
.containe_blk #pmpro_payment_information_fields {
    display: inline-block;
    width: 100%;
    background: #ebe9eb;
    padding:11px 31px 20px;
    box-sizing: border-box;
	margin-top: 15px;
}
.containe_blk #pmpro_payment_information_fields hr{display:none;}
.containe_blk .pmpro_submit hr{display:none;}
.containe_blk #pmpro_pricing_fields {
    background: #1e85be;
    padding: 6px 24px;
    color: #fff;
    border-radius: 7px;
    margin-top: 23px;
	text-align: center;
}
.containe_blk #pmpro_btn-submit {
    background: #1e85be;
    color: #fff;
    padding: 16px 20px;
    font-size: 15px;
    box-shadow: 0 4px 0 rgb(0 0 0 / 20%);
    text-transform: uppercase;
}
.containe_blk .pmpro_checkout-field.pmpro_payment-account-number {
    width: 66%!important;
}
.containe_blk .pmpro_checkout-field.pmpro_payment-expiration {
    width: 63%!important;
}
.containe_blk .pmpro_checkout h3 span.pmpro_checkout-h3-msg {
    font-family: 'Montserrat', sans-serif;
    font-style: normal;
    font-size: 18px;
    margin-bottom: 20px;
    display: inline-block;
}
.containe_blk #ExpirationMonth {
    margin-left: 0;
}
.containe_blk a{font-family: 'Montserrat', sans-serif;}
.pmpro_actions_nav a{background: #1e85be;
    color: #fff;
    padding: 16px 20px;
    font-size: 15px;
    box-shadow: 0 4px 0 rgb(0 0 0 / 20%);
    text-transform: uppercase;font-family: 'Montserrat', sans-serif;text-decoration:none;border-radius:4px;display: inline-block;margin-top:20px;}
	.pmpro_confirmation_wrap p {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    line-height: 22px;
}
.pmpro_confirmation_wrap{font-family: 'Montserrat', sans-serif;}
.pmpro_confirmation_wrap ul li {
    margin-bottom: 10px;
}
.pmpro_invoice_details {
    background: #ebe9eb;
    padding: 20px;
    border-radius: 5px;
    margin-top: 22px;
}
.pmpro_confirmation_wrap hr{display:none;}

.process-model li.active i, .process-model li.visited i {
	border-color: #f5af29;
	position: relative;
	background: #f5af29  !important;
	color: #fff !important;
	font-weight: 300;
}
.process-model li i, .process-model li.active p, .process-model li.visited p{color:#6ab3fc;}
.process-model li p{font-size:16px !important;letter-spacing:0.3px;}
.process-model li.visited:before{background:#6ab3fc;}
.process-model li i, .process-model:before{background: #e8f3ff;}

p.blue-bg{background: #6ab3fc;
    border-top-right-radius: 3px;
    border-top-left-radius: 3px;
    padding: 10px 15px;
    color: #000;
    font-size: 17px !important;
    line-height: 27px;
    margin-bottom: 0;
    font-weight: 500;
    border-bottom: 1px solid #6ab3fc!important;
    text-align: left;
    color: #fff;
}

.time_sec_cls select {
	width: 95%;
	padding: 12px 15px;
	border: 1px #ccc solid;
	border-radius: 10px;
}	
.ui-widget-header {
    font-weight: bold;
    background: #ffffff;
    border: none;
    font-size: 18px;
    padding: 12px !important;
}
a:not([href]):not([tabindex]):focus, a:not([href]):not([tabindex]):hover {
	background: #ffff;
	border: none;
}
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span {
    top: 69% !important;
    margin-top: 0px !important;
}

.ui-widget.ui-widget-content {
    border: 1px solid #c5c5c5;
}

.p-text{
	font-size: 17px;
	padding: 20px 0px;
}
.time_sec_cls label {
    text-align: left !important;
    font-weight: 600;
}

.park-logo{width: 100px;
    transform: rotate(-30deg);
    position: absolute;
    left: -110px;
    top: 0px}

.sec1{position:relative;}
.sec6 label {
    text-align:left !important;
    display: inline-block;
    width: 100%;
    margin-bottom: 10px;
}
.sec6 .form_input{
    text-align:left !important;
}

.resulttbl th {
    background: #6ab3fc;
    color: #fff;
    font-size: 13px;
    padding: 10px 10px;
}
#sortable th {
    border: 1px solid #8ac5ff;
}
#sortable{border:none;}

#sortable td {
    border: 0.5px solid #6ab3fc;
}


/* image section css start*/
.img-section {
    width: 100%;
    height: 270px;
    border: 2px solid #ddd;
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 10px auto;
    cursor: pointer;
    overflow: hidden;
    transition: transform 0.3s ease, border-color 0.3s ease;
    text-align: center;
    padding: 10px;
}

/* Title */
.img-section h4 {
    font-size: 20px;
    padding: 10px 0;
}

/* Hide original radio button */
.img-section input[type="radio"] {
    display: none;
}

/* Hover effect */
.img-section:hover {
    transform: scale(0.95);
    border-color: #6ab3f8;
}

/* Selected border */
.img-section.active {
	border-color: #6ab3f8 !important;
	box-shadow: 0 0 8px rgba(0, 123, 255, 0.23);
}

/* Image styling */
.img-section img {
    width: 70%;
    transition: transform 0.3s ease;
}



/* image section css end */
.white-bg {
    background-color: #fff;
}

p.blue-bg {
    background: #6ab3fc;
    border-top-right-radius: 3px;
    border-top-left-radius: 3px;
    padding: 10px 15px;
    color: #000;
    font-size: 17px;
    line-height: 27px;
    margin-bottom: 0;
    font-weight: 500;
    border-bottom: 1px solid #6ab3fc!important;
    text-align: left;
    color: #fff;
}

input.saveplan_cls {
	margin: 18px 0;
}
.sec1 p.blue-bg{margin-bottom:0px;}



/* plan list css */
#tab-2 {
	width: 90%;
	margin: 0px auto;
}
h2.ppb_menu_title { margin: 0px;}

div#myModal {
    margin-top: 110px;
}
a.email-btn, a.email-btn:hover {
    outline: none;
    background: #31892b;
    padding: 8px 15px;
    border-radius: 3px;
    color: #fff;
    font-family: 'Roboto';
    font-weight: 500;
    margin-right: 0;
    margin-left: 0;
    font-size: 13px !important;
    border: none;
}

/*plan list css end */

/*---- Main Css ------*/



.bg-primary\/10 {
	background-color: hsl(var(--primary) / .1);
}
.justify-center {
	justify-content: center;
}
.items-center {
	align-items: center;
}
.w-10 {
	width: 2.5rem;
}
.h-10 {
	height: 2.5rem;
}
.flex {
	display: flex;
}
.text-lg {
	font-size: 1.125rem;
	line-height: 1.75rem;
}
.ml-10 {
    margin-left: 10px;
}
p {
    font-size: 16px !important;
}
/* 1st page form css start */
/* LEFT PANEL */
.left-card {
    background: #ffffff;
    width: 45%;
    padding: 30px 25px;
    border-radius: 16px;
}

.left-card h3 {
    font-size: 18px;
    margin-bottom: 12px;
}

.dropdown {
    width: 100%;
    padding: 12px;
    border-radius: 8px;
    border: 1px solid #ccc;
    margin-bottom: 20px;
}

.label {
    font-weight: 500;
    margin-bottom: 5px;
}

.left-card label {
    display: block;
    margin-top: 10px;
    margin-bottom: 5px;
    font-size: 16px;
}

.left-card input {
    width: 100%;
    padding: 12px;
    border-radius: 8px;
    border: 1px solid #ccc;
    margin-bottom: 15px;
    font-size: 14px;
}

.login-btn {
    width: 100%;
    padding: 14px;
    background: #f7a400;
    color: white;
    border: none;
    border-radius: 8px;
    font-weight: 600;
    margin-top: 5px;
    cursor: pointer;
}

.create-account {
    display: block;
    margin-top: 12px;
    text-align: center;
    font-size: 14px;
    color: #0077cc;
}

.small-info {
    margin-top: 20px;
    font-size: 14px !important;
}

div#register-message {
    color: #ef4343;
}

div#register-message p {
    margin: 0px;
}
/* RIGHT PANEL */
.right-card {
    width: 55%;
    padding: 30px 0px;
}

.hero-box {
    background: linear-gradient(120deg, #edf8df, #d9eee4);
    padding: 25px;
    border-radius: 16px;
    text-align: center;
    width: 90%;
    margin: 0px auto;
}

.hero-box h1 {
    margin: 0;
    font-size: 32px;
    line-height: 1.2;
}
.hero-box h1 .blue {
    font-weight: 900;
    font-size: 40px;
}

.blue {
    color: #0099dd;
}

.yellow {
    color: #ffb800;
}

.tagline {
    margin-top: 10px;
    color: #444;
}

.perfect-day {
    margin-top: 22px;
    text-align: center;
    font-size: 24px;
}

.description {
    text-align: center;
    max-width: 90%;
    margin: 0 auto;
    color: #767676;
    font-size: 15px !important;
}

.features {
    display: flex;
    justify-content: center;
    gap: 30px;
    margin: 35px 0;
}

.feature-box {
    background: #fff;
    padding: 25px 20px;
    width: 160px;
    text-align: center;
    border-radius: 12px;
    box-shadow: 0 6px 16px rgba(0,0,0,0.07);
    font-size: 14px;
}

.icon {
    margin-bottom: 8px;
    text-align: center;
    position: relative;
}

.icon .feature-box-fa {
	font-size: 20px;
    color: #f7a400;
    background: #f7a4004d;
    padding: 10px 9px 10px 10px;
    border-radius: 50%;
}

.benefits {
    background: #eff8ff;
    padding: 20px;
    border-radius: 14px;
    font-size: 15px;
    color: #555;
    max-width: 85%;
    margin: 0 auto;
}
.benefits p {
    margin-bottom: 10px;
}
.benefits-fa {
    font-size: 18px;
    color: #f7a400;
	margin-right: 6px;
}

/* 1st page form css end */

/* tab css start */
/* TAB CONTAINER */
div#tabdataid {
    width: 90%;
    margin: 0px auto;
}

.tab-wrapper {
    display: flex;
    justify-content: center;
    margin-bottom: 20px;
    margin-top: 30px;
}

.tabs {
    display: inline-flex;
    background: #f7f7f9;
    padding: 6px;
    border-radius: 12px;
    list-style: none;
    gap: 6px;
    margin: 0;
}

/* INDIVIDUAL TAB */
.tabs .tab-link {
    padding: 10px 22px;
    border-radius: 10px;
    cursor: pointer;
    font-size: 15px;
    color: #6b7280;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: all .25s ease;
}

/* HOVER EFFECT */
.tabs .tab-link:hover {
    background: #ffffffbb;
    color: #333;
}

/* ACTIVE TAB */
.tabs .tab-link.active {
    background: #ffffff;
    color: #111827;
    font-weight: 600;
    box-shadow: 0 3px 10px rgba(0,0,0,0.08);
}

/* CONTENT */
.main-tab-content {
    display: none;
}

.main-tab-content.active {
    display: block;
}


/* inner tab css */

.progress-steps {
    display: flex;
    justify-content: space-between;
    list-style: none;
    padding: 0;
    margin: 40px 0 40px;
    position: relative;
}

/* Connector Line */
.progress-steps::before {
    content: "";
    position: absolute;
    top: 24px;
    left: 11%;
    width: 78%;
    height: 4px;
    background: #e6e6e6;
    z-index: 1;
    border-radius: 2px;
}

.progress-steps li {
    text-align: center;
    flex: 1;
    cursor: pointer;
    position: relative;
}

.progress-steps li span {
    display: block;
    margin-top: 8px;
    font-weight: 600;
    color: #777;
}

/* Step Connector highlight */

.progress-steps li.completed::before {
    content: "";
    position: absolute;
    top: 24px;
    left: 50%;
    width: 100%;
    height: 4px;
    background: #4CAF50; /* Yellow highlight */
    z-index: 2;
}
.progress-steps li.active::before {
    background: #4CAF50 !important;
}

.progress-steps li:first-child::before {
    display: none;
}

/* Step Icons */
.icon-circle {
    width: 48px;
    height: 48px;
    background: #e6e6e6;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: auto;
    font-size: 18px;
    color: #777;
    z-index: 3;
    position: relative;
    transition: .3s;
}

/* ACTIVE STEP */
.progress-steps li.active .icon-circle {
    background: #FFB300;
    color: white;
}

/* COMPLETED STEP */
.progress-steps li.completed .icon-circle {
    background: #4CAF50;
    color: white;
}

/* ACTIVE/COMPLETED LABEL */
.progress-steps li.active span {
    color: #FFB300;
}

.progress-steps li.completed span {
    color: #4CAF50;
}


/* BUTTONS */
.next-btn, .prev-btn {
    background: #FFB300;
    padding: 12px 20px;
    color: #fff;
    font-weight: 700;
    border-radius: 8px;
    border: none;
    cursor: pointer;
    margin-top: 20px;
}

.prev-btn {
    background: #ccc;
    color: #444;
    margin-right: 10px;
}


/* inner tab css end */
   

/* tab 2 css*/

.epa-notice {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    background: #fff6e9;
    border: 1px solid #f2c48d;
    border-radius: 8px;
    padding: 14px 16px;
    max-width: 100%;
    margin-bottom: 15px;
    font-family: Arial, sans-serif;
}

.epa-icon {
  width: 22px;
  height: 22px;
  border: 1px solid #f0a84c;
  color: #f0a84c;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  font-size: 14px;
  flex-shrink: 0;
}

.epa-title {
  font-weight: 600;
  color: #333;
  margin-bottom: 4px;
}

.epa-text {
  color: #6b6b6b;
  font-size: 14px;
}

.epa-notice .star {
  color: #f5b301;
  font-size: 14px;
  margin: 0 2px;
}


.ride-card {
    display: block;
    padding: 14px 16px;
    cursor: pointer;
    background: #fff;
    transition: all 0.3s ease;
    position: relative;
}

.ride-card.earlyAdmissionRide {
    border: 2px solid #f1cca6;
    border-radius: 12px;
}


.ride-card input[type="checkbox"] {
    position: absolute;
    left: 15px;
    top: 18px;
}

.ride-content {
    padding-left: 30px;
}

.ride-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.ride-title {
    font-weight: 600;
    font-size: 16px;
    color: #222;
}

.ride-star {
    color: #f5a623;
    font-size: 20px;
}

.ride-meta {
    margin-top: 4px;
    font-size: 13px;
    color: #666;
}

.ride-land {
    margin-right: 10px;
}

.ride-time {
    color: #f5a623;
    font-weight: 500;
}

.ride-note {
    margin-top: 6px;
    font-size: 12px;
    color: #8a8a8a;
    font-style: italic;
}

.ride-info {
    margin-top: 6px;
    font-size: 12px;
    color: #ff7a00;
}

.ride-card:hover {
    background: #fff7ef;
}

.ride-card input[type="checkbox"]:checked + .ride-content {
    font-weight: 600;
}

/* tab2 css end */
/* tab css end */


/* section 5 */

.hover-lift {
    transition: all 0.3s ease;
    transform: translateY(-4px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.08);
}


/* ---------- MAIN CONTAINER CARD ---------- */
.gradient-hero {
    /* background: #ffffff; */
    /* padding: 20px; */
    /* border-radius: 18px; */
    /* box-shadow: 0 10px 30px rgba(0,0,0,0.06); */
    border-bottom: 1px solid #f0f0f0;
    margin-bottom: 25px;
    padding: 10px 0px 10px;
}
/* ---------- TITLE + ICON ---------- */
.gradient-hero h3 {
    display: flex;
    align-items: center;
    gap: 12px;
    font-weight: 700;
    color: #111827;
}

.gradient-hero i {
    background: #e7fdec;
    color: #2dbd4e;
    padding: 10px;
    border-radius: 50%;
    font-size: 18px;
}

/* ---------- RADIO CONTAINER BOX ---------- */
.div-cls {
    background: #ffffff;
    border: 1px solid #e6e9ef;
    padding: 18px;
    border-radius: 12px;
    margin-bottom: 18px;
    transition: all 0.25s ease;
}
span.parkname {
    color: #3684cd;
    font-size: 14px;
    font-weight: 600;
}
.div-cls:hover {
    border-color: #b7c4ff;
    box-shadow: 0 6px 14px rgba(0,0,0,0.04);
}

/* ---------- RADIO LABEL ---------- */
.radio_cont {
    display: block;
    cursor: pointer;
    font-size: 17px;
    font-weight: 600;
    color: #111827;
}

.radio_cont .text-sm {
    display: block;
    margin-left: 26px;
    margin-top: 5px;
    color: #6b7280;
    font-size: 14px;
}

/* ---------- RADIO INPUT ---------- */
.radio_cont input[type="radio"] {
    margin-right: 10px;
    accent-color: #2563eb; /* blue selection */
    transform: scale(1.2);
}

/* ---------- DISABLED OPTION ---------- */
.radio_cont input[disabled] + span,
.radio_cont input[disabled] {
    opacity: 0.6;
}
.save-button.disabled{
 pointer-events: none !important;
 background: #ebd7b2 !important;
}
/* ---------- TOOLTIP ---------- */
.tooltipcls {
    position: relative;
}

.tooltipcls .tooltiptext {
    visibility: hidden;
    background-color: #000000e0;
    color: #fff;
    padding: 4px 10px;
    border-radius: 5px;
    position: absolute;
    left: 0;
    top: 100%;
    margin-top: 5px;
    font-size: 14px;
}

.tooltipcls:hover .tooltiptext {
    visibility: visible;
}


.info-tooltip {
    position: relative;
    display: inline-block;
    margin-left: 6px;
}

.info-icon {
    font-size: 14px;
    color: #007cba;
    cursor: pointer;
}

.info-tooltip .tooltiptext {
    visibility: hidden;
    opacity: 0;
    min-width: 120px;
    background-color: #333;
    color: #fff;
    text-align: center;
    padding: 6px 8px;
    border-radius: 4px;
    font-size: 12px;

    position: absolute;
    bottom: 120%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 999;

    transition: opacity 0.2s ease;
}

.info-tooltip:hover .tooltiptext {
    visibility: visible;
    opacity: 1;
}






/* Container */
.default-break-cls {
    padding: 10px 50px;
}

/* Card-style label */
.break-radio-cls {
    display: flex !important;
    align-items: center;
    padding: 15px 20px;
    border-radius: 12px;
    cursor: pointer;
    transition: transform 0.2s, box-shadow 0.2s;
    background: linear-gradient(135deg, #fceabb, #f8b500); /* default gradient */
    margin-bottom: 15px;
    position: relative;
    font-family: 'Arial', sans-serif;
}

/* Hover effect */
.break-radio-cls:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 15px rgba(0,0,0,0.1);
}

/* Text */
.break-radio-cls span {
    display: flex;
    flex-direction: column;
}

.break-radio-cls span .break-title {
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 3px;
}

.break-radio-cls span .break-time {
    font-size: 14px;
    color: #555;
}

/* Different gradient for Lunch / Dinner / Snack */
.break-radio-cls.lunch {
    background: linear-gradient(135deg, #d4f1f4, #a0e1e8);
}
.break-radio-cls.snack {
    background: linear-gradient(135deg, #ffe0b3, #ffb84d);
}
.break-radio-cls.dinner {
    background: linear-gradient(135deg, #e8d4f4, #cfa0e8);
}

/* Optional icon */
.break-radio-cls .icon {
    width: 24px;
    height: 24px;
    margin-right: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
}


/* HIDE the actual checkbox */
.break-radio-cls input[type="checkbox"] {
    display: none;
}

/* Circle */
.break-radio-cls .checkmark {
    width: 20px;
    height: 20px;
    border: 2px solid #FFA500;
    border-radius: 50%;
    margin-right: 12px;
    background: #fff;
    transition: 0.2s;
    position: relative;
}

/* CHECKED STATE — show filled circle */
.break-radio-cls input:checked + .checkmark {
    background: #FFA500;
    border-color: #FFA500;
}

/* Check symbol */
.break-radio-cls input:checked + .checkmark::after {
    content: "";
    position: absolute;
    top: 4px;
    left: 7px;
    width: 4px;
    height: 8px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}


/* List Page css start */

/* ---------- Main Wrapper ---------- */
.standard_wrapper {
    margin: 20px auto;
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid #ddd;
}

/* ---------- Header Bar ---------- */
.table-header {
    background: #f7b219;
    padding: 20px 25px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #000;
}
.row.parkplan-order-card {
    width: 100%;
    margin: 0px auto 10px;
    padding: 10px;
    border: 1px #ccc solid;
    border-radius: 7px;
}
.table-header h2 {
	margin: 0;
	display: flex;
	align-items: center;
	font-size: 20px;
	color: #fff;
}

.table-header img {
    height: 45px;
    margin-right: 10px;
}

/* Park + Date text */
.park-selection,
.date-selection {
    font-size: 17px;
    margin-right: 5px;
}

/* ---------- Buttons on Right ---------- */
.btn-wrap form {
    display: flex;
    gap: 10px;
}

.add-btn,
.email-btn,
.del-btn {
    padding: 8px 15px;
    border: none;
    border-radius: 5px;
    color: white;
    cursor: pointer;
    font-weight: 600;
}

.add-btn { background: #007bff; }
.email-btn { background: #28a745; }
.del-btn { background: #dc3545; }

/* ---------- Ride Rows ---------- */
.resultdiv {
    padding: 20px 25px;
    border-bottom: 1px solid #e6e6e6;
}

.resultdiv p {
    margin-bottom: 8px;
    font-size: 18px;
}

.ride-timing {
    display: flex;
    flex-wrap: wrap;
}

.ride-timing > div {
    width: 25%; 
    margin: 5px 0;
}

/* ---------- Break Row (yellow highlight) ---------- */
.break_cls {
    background: #ffe9a8;
    border-left: 5px solid #f0b400;
}

/* ---------- Show Row ---------- */
.selectedshowview{ display: none; }
.show-item {
	background: #fff9e6;
	border-radius: 14px;
	padding: 15px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 96%;
	margin: 12px auto;
}

.show-info h4 {
    margin: 0;
    font-size: 16px;
}

.show-info span {
    font-size: 13px;
    color: #666;
}

.remove {
    color: red;
    cursor: pointer;
}

.filter-container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #ffffff;
	border: 1px solid #e6e8eb;
	border-radius: 14px;
	padding: 16px 20px;
	max-width: 100%;
	font-family: Arial, sans-serif;
	margin-bottom: 20px;
}

.filter-left {
    display: flex;
    align-items: center;
    gap: 10px;
}

.filter-icon {
    font-size: 16px;
}

.filter-left label {
    font-size: 14px;
    color: #555;
}

.filter-left select {
    padding: 6px 12px;
    border-radius: 10px;
    border: 1px solid #dcdfe4;
    font-size: 14px;
    background: #f9fafb;
    cursor: pointer;
}

.filter-right {
    font-size: 14px;
    color: #6b7280;
}

.show_cls {
    background: #ffe9a8;
    border-left: 5px solid #f0b400;
}
.earlyMessage_cls {
	background: #c9e4e8;
}

/* Make timing text cleaner */
.ride-timing span {
    font-size: 15px;
}


/* List Page css end */

.ui-datepicker table {
	width: 100%;
	font-size: .9em;
	border-collapse: collapse;
	margin: 0 !important;
}


/* NO PLAN CARD */
.no-plan-box {
    background: #fff;
    padding: 40px 30px;
    border-radius: 16px;
    width: 40%;
    text-align: center;
    margin: 0px auto;
    border: 1px solid #f0f0f0;
    box-shadow: 0px 4px 20px rgba(0,0,0,0.04);
}

.no-plan-icon {
    background: #fff5da;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    margin: 0 auto 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 36px;
    color: #ff9900;
}

.no-plan-box h2 {
    margin: 10px 0;
    font-size: 22px;
    color: #222;
    font-weight: 700;
}

.no-plan-box p {
    color: #666;
    margin-bottom: 25px;
}

/* BUTTON */
.create-plan-btn {
    background: #ff9900;
    color: #fff;
    font-size: 16px;
    padding: 12px 28px;
    border: none;
    border-radius: 10px;
    font-weight: 600;
    cursor: pointer;
    transition: 0.2s;
}

.create-plan-btn:hover {
    background: #e68900;
}



.beautiful-modal {
    border-radius: 12px;
    overflow: hidden;
    border: none;
}

.modal-header {
    background: #f8f9fc;
    padding: 18px 25px;
    border-bottom: 1px solid #e7e7e7;
}

.modal-title {
    font-size: 20px;
    font-weight: 700;
    color: #333;
}

.modal-body {
    padding: 20px 25px;
    max-height: 350px;
    overflow-y: auto;
}

/* PLAN ITEM BOX */
.plan-item {
    display: flex;
    align-items: center;
    background: #fff;
    border: 1px solid #eee;
    padding: 15px 18px;
    border-radius: 10px;
    margin-bottom: 12px;
    transition: 0.2s;
}

.plan-item:hover {
    background: #f8f8ff;
    border-color: #dcdcff;
}

/* CHECKBOX CUSTOM */
.plan-check {
    position: relative;
    display: inline-block;
    margin-right: 15px;
}

.plan-check input {
    opacity: 0;
    width: 0;
    height: 0;
}

.checkmark {
    width: 20px;
    height: 20px;
    border-radius: 4px;
    border: 2px solid #666;
    display: inline-block;
    position: relative;
    cursor: pointer;
}

.plan-check input:checked ~ .checkmark {
    background: #4CAF50;
    border-color: #4CAF50;
}

.plan-check input:checked ~ .checkmark:after {
    content: "";
    position: absolute;
    left: 5px;
    top: 1px;
    width: 6px;
    height: 12px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

/* PLAN INFO */
.plan-info {
    font-size: 15px;
    line-height: 1.6;
}

.plan-info strong {
    color: #111;
}

/* FOOTER BUTTONS */
.modal-footer {
    padding: 15px 25px;
}

.btn-green {
    background: #28a745;
    border: none;
    padding: 8px 22px;
    color: #fff;
    border-radius: 6px;
    font-weight: 600;
    cursor: pointer;
    transition: 0.2s;
}

.btn-green:hover {
    background: #218838;
}

.btn-grey {
    background: #6c757d;
    border: none;
    padding: 8px 22px;
    color: #fff;
    border-radius: 6px;
    font-weight: 600;
    cursor: pointer;
}

.btn-grey:hover {
    background: #5a6268;
}

.sendmultipleemails_btn.btn {
	background: #31892b;
	color: #fff;
	padding: 10px 15px;
	border-radius: 10px;
	border-radius: 12px;
	font-size: 16px;
	line-height: 27px;
	font-weight: 600;
	border: none;
	cursor: pointer;
	transition: 0.2s;
	margin: 22px auto 25px;
}
.container {
    max-width: 1330px !important;
}
/* tab 4 css */

.park-alerts {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 20px;
  margin-bottom: 25px;
}

.epa-option {
  cursor: pointer;
}

.epa-option input[type="radio"] {
  display: none;
}

/* Base alert */
.park-alert {
  display: flex;
  gap: 14px;
  padding: 16px 18px;
  border-radius: 12px;
  border: 1px solid;
  align-items: flex-start;
  font-family: inherit;
}

/* Icon */
.alert-icon {
  font-size: 18px;
  line-height: 1;
  margin-top: 2px;
}

/* Text */
.alert-title {
  font-weight: 600;
  margin-bottom: 4px;
}

.alert-text {
  font-size: 14px;
  line-height: 1.5;
  color: #5f6b7a;
}

/* Warning style (yellow) */
.park-alert.warning {
  background: #fff7ed;
  border-color: #fdba74;
  color: #92400e;
}

/* Warning style (yellow) */
.park-alert.info {
  background: #3b82f61a;
  border-color: #3b82f64d;
  color: #1d4d9d;
}

/* Caution style (orange/red) */
.park-alert.caution {
  background: #fff1f2;
  border-color: #fda4af;
  color: #9f1239;
}


.park-disclaimer {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  background: #f7f9fc;
  border: 1px solid #e3e8f0;
  border-radius: 8px;
  padding: 18px 20px;
  max-width: 1000px;
  font-family: Arial, sans-serif;
}

.pd-icon {
  color: #f59e0b;
  font-size: 18px;
  margin-top: 2px;
  flex-shrink: 0;
}

.pd-title {
  font-weight: 600;
  color: #1f2937;
  margin-bottom: 6px;
}

.pd-text {
  color: #6b7280;
  font-size: 14px;
  margin-bottom: 10px;
}

.pd-list {
  margin: 0;
  padding-left: 18px;
  color: #6b7280;
  font-size: 14px;
}

.pd-list li {
  margin-bottom: 8px;
  line-height: 1.5;
}

.pd-list strong {
  color: #374151;
}

/* PARK ITEM */
.park-item {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:16px;
  border-radius:12px;
  margin-bottom:12px;
}

.park-left {
  display:flex;
  align-items:center;
  gap:14px;
}

.park-arrows {
  display:flex;
  flex-direction:column;
  font-size:12px;
  color:#6b7280;
  cursor:pointer;
}

.park-drag {
  font-size:18px;
  color:#9ca3af;
  cursor:grab;
}

.park-name {
  font-weight:600;
}

.park-meta {
  font-size:13px;
  color:#6b7280;
}

.park-code {
  background:#ffffff90;
  padding:6px 10px;
  border-radius:8px;
  font-size:12px;
  font-weight:600;
}

/* COLORS */
.USF { background:#e6f0ff; }
.IOA { background:#dcf7ea; }
.EU  { background:#f1e8ff; }

.park-item .park-image {
    position: relative;
    max-width: 15%;
}

/* TRAVEL TIME */
.travel-time {
  text-align:center;
  font-size:13px;
  color:#6b7280;
  margin:8px 0 14px;
}

.epa-options {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.epa-option {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  cursor: pointer;
  transition: 0.2s ease;
  position: relative;
}

.epa-option:hover {
  border-color: #f59e0b;
}

.epa-option.active {
  border: 2px solid #f59e0b;
  background: #fffaf0;
}

.park-icon img {
    width: 45px;
}
.park-name {
  font-weight: 600;
}

.park-code {
  font-size: 12px;
  color: #6b7280;
}

.sun {
  position: absolute;
  right: 14px;
  color: #f59e0b;
}

/* responsive */
@media (max-width: 600px) {
  .epa-options {
    grid-template-columns: 1fr;
  }
}

/* Mobile css start */

@media only screen and (max-width:768px){
	
	.right-card, .table-header, .no-plan-box {
        width: 100%;
    }
    .ride-timing > div {
        width: 100%;
    }
    .left-card {
        width: 100%;
        padding: 10px 0px;
    }
    
    .hero-box {
        padding: 15px;
        width: 100%;
    }
    .hero-box h1 {
        margin: 0;
        font-size: 20px;
        line-height: 1.5;
    }
    .hero-box h1 .blue {
        font-weight: 800;
        font-size: 35px;
    }
    .description {
        max-width: 100%;
        font-size: 16px !important;
    }
    .features {
        gap: 10px;
        margin: 25px 0;
    }
    .feature-box {
        padding: 15px 12px;
        width: 164px;
    }
    .benefits {
        padding: 12px;
        max-width: 100%;
    }
    .table-header, .table-header h2 {
        text-align: center;
    }
    .gradient-hero h3 {
        gap: 2px;
        font-size: 16px;
    }
    .time_sec_cls {
        margin-bottom: 20px;
    }
    .text-xl {
        font-size: 18px;
    }
   
    .table-header, .table-header h2, .btn-wrap form {
        display: inline-block;
    }
    .resultdiv {
        padding: 7px 0px;
    }
    .park-selection, .date-selection {
        font-size: 16px;
        margin-right: 0px;
        display: block;
    }
    #datepicker .ui-datepicker td {
        font-size: 12px !important;
    }
    .sec1, .sec2, .sec32, .sec3, .sec4, .sec5, .sec6, .sec8 {
        padding: 17px 15px;
    }
    .default-break-cls {
        padding: 10px 20px;
    }
    .table-header {
        padding: 7px 0px;
    }
    .table-header img {
        height: 100%;
        width: 40%;
        margin-right: 10px;
    }
    .tooltipcls .tooltiptext {
        left: 60px;
        top: 0%;
    }

}



/* Mobile css end */