* {
    padding: 0;
    margin: 0;
}

body {
    font-family: 'Poppins', sans-serif;
}
a {
    text-decoration: none;
    color: #00CEFB;
}

.op-7 {
    opacity: 0.7;
    letter-spacing: 1px;
}

.op-6 {
    opacity: 0.6;
}
.op-1{
    opacity: 1;
}
.ls-1 {
    letter-spacing: 1px;
}

.ps-10 {
    padding-left: 100px !important;
}

.pe-10 {
    padding-right: 100px !important;
}

.fs-1 {
    font-size: 12px !important;
}

.text-white {
    color: #fff;
}

.bold-text {
    font-weight: 800;
}

.card {
    border: none;
    box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.25);
    border-radius: 10px;
}
.card-login{
    box-shadow: 0px 3px 20px 0px rgba(0, 0, 0, 0.25);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.213);
    padding: 50px 30px;
}

.input-field {
    border: none;
    padding: 15px 20px;
    border-radius: 40px;
    box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.16);
}

.btn-style {
    background: linear-gradient(339.56deg, #FF7A00 0%, #FFB800 50.35%, #FFD600 100%);
    box-shadow: 0px 7px 29px rgba(100, 100, 111, 0.2);
    border-radius: 20px;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 20px;
    padding: 8px 30px;
    border: none;
}

.section-1 {
    background-image: url('../images/bg-img.png');
    background-position: center;
    background-size: cover;
    height: 100vh;
}

.section-1-row {
    padding: 200px 0px;
}

.mirror-effect {
    padding: 25px 10px;
    background: rgba(0, 0, 0, 0.368);
    border-radius: 10px;
}

.section-1 h2 {
    font-size: 40px;
    font-weight: 900;
    text-align: center;
    background: linear-gradient(339.56deg, #FF7A00 0%, #FFB800 50.35%, #FFD600 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
}

.tag-line {
    font-size: 20px;
    text-align: center;
    background: linear-gradient(339.56deg, #FF7A00 0%, #FFB800 50.35%, #FFD600 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
}

.section-2 h4 {
    font-size: 25px;
    font-weight: 800;
    text-align: center;
    background: linear-gradient(339.56deg, #FF7A00 0%, #FFB800 50.35%, #FFD600 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
}

.section-3 {
    background-image: url('../images/bg-img-1.png');
    background-position: center;
    background-size: cover;
    height: 30vh;
}

.line {
    position: absolute;
    margin-left: 20px;
    z-index: -1;
    height: 250px;
}
.line1 {
    position: absolute;
    margin-left: 20px;
    z-index: -1;
    height: 550px;
}

.footer-menu {
    background-color: #fff;
    padding: 10px 0px;
    box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.465);
}

.footer-menu a {
    color: rgb(167, 167, 167);
}

.footer-menu a.active {
    color: #000;
}

.nav-pills .nav-item {
    width: 50%;
}

.nav-pills .nav-link {
    border: 1px solid #FF7A00;
    width: 100%;
    border-radius: 15px;
    color: #000;
    font-weight: 700;
}

.nav-pills .nav-link.active,
.nav-pills .show>.nav-link {
    background-image: linear-gradient(339.56deg, #FF7A00 0%, #FFB800 50.35%, #FFD600 100%) !important;
    border-radius: 15px;
    width: 100%;
    border: none;
}

.head-low {
    background: rgba(0, 171, 7, 0.2);
    box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.16);
    border-radius: 12px;
    padding: 5px 20px;
}
.head-high {
    background: rgba(213, 0, 0, 0.2);
    box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.16);
    border-radius: 12px;
    padding: 5px 20px;
}
.head-mild{
    background: rgba(255, 183, 0, 0.172);
    box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.16);
    border-radius: 12px;
    padding: 5px 20px;
}
.head-extreme{
    background: rgba(81, 0, 9, 0.2);
    box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.16);
    border-radius: 12px;
    padding: 5px 20px;
}
.text-extreme{
    color: #510009;
    font-weight: 700;
}
.tab-pane i{
    font-size: 15px;
}
.find-section{
    background-image: url('../images/bg-img-2.png');
    background-position: center;
    background-size: cover;
    padding: 20px 0px;
    border-radius: 15px;
}
.sos-section-1{
    background-image: url('https://5.imimg.com/data5/SELLER/Default/2022/6/DP/UR/CV/133906112/ticketing-software-500x500.jpg');
    background-position: center;
    background-size: cover;
    height: 100px;
    border-radius: 15px;
}
.account-1{
    background-image: url('../images/bg-img-1.png');
    background-position: center;
    background-size: cover;
    height: 100vh;
}
.profile-img img{
    width: 100px;
    height: 100px;
    border-radius: 50%;
}
@media screen and (max-width: 600px) {
a {
    text-decoration: none;
    color: #00CEFB;
}

.op-7 {
    opacity: 0.7;
    letter-spacing: 1px;
}

.op-6 {
    opacity: 0.6;
}
.op-1{
    opacity: 1;
}
.ls-1 {
    letter-spacing: 1px;
}

.ps-10 {
    padding-left: 100px !important;
}

.pe-10 {
    padding-right: 100px !important;
}

.fs-1 {
    font-size: 12px !important;
}

.text-white {
    color: #fff;
}

.bold-text {
    font-weight: 800;
}

.card {
    border: none;
    box-shadow: 0px 3px 20px 0px rgba(0, 0, 0, 0.25);
    border-radius: 10px;
}

.input-field {
    border: none;
    padding: 15px 20px;
    border-radius: 40px;
    box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.16);
}

.btn-style {
    background: linear-gradient(339.56deg, #FF7A00 0%, #FFB800 50.35%, #FFD600 100%);
    box-shadow: 0px 7px 29px rgba(100, 100, 111, 0.2);
    border-radius: 20px;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 20px;
    padding: 8px 30px;
    border: none;
}

.section-1 {
    background-image: url('../images/bg-img.png');
    background-position: center;
    background-size: cover;
    height: 100vh;
}

.section-1-row {
    padding: 200px 0px;
}

.mirror-effect {
    padding: 25px 10px;
    background: rgba(0, 0, 0, 0.368);
    border-radius: 10px;
}

.section-1 h2 {
    font-size: 40px;
    font-weight: 900;
    text-align: center;
    background: linear-gradient(339.56deg, #FF7A00 0%, #FFB800 50.35%, #FFD600 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
}

.section-1 .tag-line {
    font-size: 20px;
    text-align: center;
    background: linear-gradient(339.56deg, #FF7A00 0%, #FFB800 50.35%, #FFD600 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
}

.section-2 h4 {
    font-size: 25px;
    font-weight: 800;
    text-align: center;
    background: linear-gradient(339.56deg, #FF7A00 0%, #FFB800 50.35%, #FFD600 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
}

.section-3 {
    background-image: url('../images/bg-img-1.png');
    background-position: center;
    background-size: cover;
    height: 30vh;
}

.line {
    position: absolute;
    z-index: -1;
    margin-left: 20px;
    height: fit-content;
}

.footer-menu {
    background-color: #fff;
    padding: 10px 0px;
    box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.465);
}

.footer-menu a {
    color: rgb(167, 167, 167);
}

.footer-menu a.active {
    color: #000;
}

.nav-pills .nav-item {
    width: 50%;
}

.nav-pills .nav-link {
    border: 1px solid #FF7A00;
    width: 100%;
    border-radius: 15px;
    color: #000;
    font-weight: 700;
}

.nav-pills .nav-link.active,
.nav-pills .show>.nav-link {
    background-image: linear-gradient(339.56deg, #FF7A00 0%, #FFB800 50.35%, #FFD600 100%) !important;
    border-radius: 15px;
    width: 100%;
    border: none;
}

.head-low {
    background: rgba(0, 171, 7, 0.2);
    box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.16);
    border-radius: 12px;
    padding: 8px 10px;
    overflow-wrap: anywhere;
}
.head-high {
    background: rgba(213, 0, 0, 0.2);
    box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.16);
    border-radius: 12px;
    padding: 8px 10px;
    overflow-wrap: anywhere;
}
.head-mild{
    background: rgba(255, 184, 0, 0.26);
    box-shadow: 0px 1px 4px #00000029;
    border-radius: 12px;
    padding: 8px 10px;
    overflow-wrap: anywhere;
}
.head-extreme{
    background: rgba(81, 0, 9, 0.2);
    box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.16);
    border-radius: 12px;
    padding: 8px 10px;
    overflow-wrap: anywhere;
}
.tab-pane i{
    font-size: 15px;
}
.find-section{
    background-image: url('../images/bg-img-2.png');
    padding: 20px 0px;
    border-radius: 15px;
}
.sos-section-1{
    background-image: url('../images/bg-img-3.png');
    background-position: center;
    background-size: cover;
    height: 100px;
    border-radius: 15px;
}
.account-1{
    background-image: url('../images/bg-img-5.png');
    background-position: center;
    background-size: cover;
    height: 100vh;
}
.profile-img img{
    width: 100px;
    height: 100px;
    border-radius: 50%;
}
#securityMap{
    height: 300px !important;
}
.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas {
    width: 100% !important;
}
.travel-hero .text-end{
    text-align: start !important;
}
.sidebar.collapsed{
    display: none !important;
}
.sidebar{
    position: fixed !important;
    z-index: 9 !important;
}
.mobile-display{
    display: block !important;
}
}
@media (min-width: 200px) and (max-width: 375px) {
    .section-3{
        height: 45vh !important;
    }
    .logo{
        width: 150px !important;
    }
}

/* HERO SECTION */

.travel-hero{
background-image: url('https://static.vecteezy.com/system/resources/thumbnails/036/054/418/small/ai-generated-landing-a-plane-against-a-golden-sky-at-sunset-passenger-aircraft-flying-up-in-sunset-light-travelling-and-business-concept-photo.jpg');
background-position: center;
background-size: cover;
border-radius:10px;
color:white;
padding:20px;
}

/* FLIGHT ROUTE */

.route-container{
background:white;
border-radius:12px;
padding: 5px;
margin-top:20px;
position:relative;
}

.route-line{
position:relative;
height: 10px;
background:#e5e7eb;
margin: 5px 0;
border-radius:5px;
overflow:hidden;
background-color: transparent;
}

/* animated line */

.route-progress{
position:absolute;
height:100%;
width:0%;
background:#f39c12;
animation:routeMove 6s infinite linear;
}

@keyframes routeMove{
0%{width:0%;}
100%{width:100%;}
}

/* airplane animation */

.plane{
position:absolute;
top: -2px;
font-size:15px;
color:#f39c12;
animation:planeMove 6s infinite linear;
}

@keyframes planeMove{
0%{left:0%;}
100%{left:100%;}
}

/* CITY */

.city{
text-align:center;
}

.city h5{
font-weight:600;
color: #faa844;
}
.city h6{
color:#969696;
font-size: 13px;
margin-bottom: 1px;
}
.city small{
color:#777;
font-size: 11px;
}

/* ALERT CARDS */

.alert-card{
border-radius:10px;
box-shadow:0 5px 15px rgba(0,0,0,0.08);
}

/* STATUS */

.status-good{
color:#28a745;
}

.status-warning{
color:#dc3545;
}

/* TRAVEL PLAN */

.plan-card{
border-radius:12px;
box-shadow:0 5px 15px rgba(0,0,0,0.08);
background-color: transparent;
}

.plan-icon{
width:45px;
height:45px;
background:#f39c12;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
color:rgb(255, 255, 255);
font-size:20px;
}

/* subtle hover */

.card:hover{
transform:translateY(-3px);
transition:.3s;
}

.bg-extreme{
background-color: #510009;
}
.navbar{
    position: sticky;
    top: 0;
    z-index: 2;
}
.navbar-collapse{
    flex-grow: 0;
}
.navbar-expand-lg .navbar-nav{
    align-items: center;
}
.btn{
    height: fit-content;
}

body {
  font-family: "Nunito", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  background-color: #e9e9e9ae;
}

.content{
    padding-top: 20px;
}

.content .card{
    background-color: #fff;
}
.nav-tabs{
    border-bottom: none;
}
.nav-tabs .nav-link{
    color: #9c9b9b;
    background-color: rgb(221, 221, 221);
}
.nav-tabs .nav-link.active{
    color: #f3b712;
    font-weight: 600;
    background-color: transparent;
    border: none;
    border-bottom: 3px solid #f39c12;
}

.gauge {
    width: 160px;
    margin: auto;
}

.gauge-body {
    width: 100%;
    height: 80px;
    background: #eee;
    border-top-left-radius: 160px;
    border-top-right-radius: 160px;
    overflow: hidden;
    position: relative;
}

.gauge-fill {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 100%;
    transform-origin: center top;
    transform: rotate(0deg);
    transition: transform 0.7s ease;

    background: linear-gradient(
        90deg,
        #28a745,
        #ffc107,
        #fd7e14,
        #dc3545
    );
}

.gauge-cover {
    width: 75%;
    height: 75%;
    background: #fff;
    border-radius: 50%;
    position: absolute;
    top: 25%;
    left: 12.5%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 600;
}

.blink-dot {
    height: 8px;
    width: 8px;
    background: white;
    border-radius: 50%;
    display: inline-block;
    animation: blink 1s infinite;
}
@keyframes blink {
    0% {opacity: 1;}
    50% {opacity: 0.3;}
    100% {opacity: 1;}
}

.timeline {
    position: relative;
    padding-left: 30px;
}

.timeline::before {
    content: '';
    position: absolute;
    left: 12px;
    top: 0;
    bottom: 0;
    width: 3px;
    background: #dee2e6;
}

.timeline-item {
    position: relative;
    margin-bottom: 20px;
}

.timeline-dot {
    position: absolute;
    left: 5px;
    top: 10px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
}

.timeline-content {
    background: #f8f9fa;
    padding: 10px 20px;
    border-radius: 6px;
    border-left: 4px solid;
    font-size: 14px;
}

#riskBar {
    animation: pulseRisk 1.5s infinite;
}

@keyframes pulseRisk {
    0% { opacity: 1; }
    50% { opacity: 0.7; }
    100% { opacity: 1; }
}

/* SIDEBAR */
.sidebar {
    width: 240px;
    height: 100vh;
    transition: all 0.3s ease;
    position: sticky;
    bottom: 0;
    top: 0;
    left: 0;
    z-index: 2;
}

/* COLLAPSED SIDEBAR */
.sidebar.collapsed {
    width: 70px;
}

/* MAIN CONTENT */
.main-content {
    width: calc(100% - 240px);
    transition: all 0.3s ease;
}

/* WHEN SIDEBAR COLLAPSED */
.main-content.expanded {
    width: calc(100% - 70px);
}

/* HIDE TEXT */
.sidebar.collapsed .menu-text,
.sidebar.collapsed .sidebar-title {
    display: none;
}

/* CENTER ICONS */
.sidebar .nav-link{
    font-size: 14px;
    color: #ffffffd9 !important;
}
.sidebar.collapsed .nav-link {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* ACTIVE LINK */
.sidebar .nav-link.active {
    background: #e7e7e73b;
    border-radius: 6px;
    color: #ffd836 !important;
}

/* HOVER */
.sidebar .nav-link:hover {
    background: rgba(255,255,255,0.1);
}

.ticket-card {
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    transition: 0.3s;
}
.ticket-card:hover {
    transform: translateY(-3px);
}

.ticket-status {
    font-size: 12px;
    padding: 5px 10px;
    border-radius: 20px;
}

.status-pending { background: #fff3cd; color: #856404; }
.status-resolved { background: #d4edda; color: #155724; }
.status-progress { background: #cce5ff; color: #004085; }

.table-blue{
    background-color: #0a4483;
    color: white;
}
table thead{
    vertical-align: top !important;
}
table th{
    font-size: 14px;

}

table td{
    font-size: 13px;
}