body {
    font-family: Arial, sans-serif;
    background: #f4f6f9;
    margin: 0;
    padding: 0;
}

.container {
    width: 90%;
    max-width: 1000px;
    margin: auto;
    padding: 20px;
}

.header {
    text-align: center;
    background: #0b3d91;
    color: white;
    padding: 20px;
    border-radius: 8px;
    font-size: 22px;
    font-weight: bold;
}

/* ROUTE TRACKER */
.route {
    margin: 40px 0;
    position: relative;
}

.route-line {
    height: 4px;
    background: #ccc;
    position: relative;
}

.progress {
    height: 4px;
    background: #0b3d91;
    width: 0%;
    transition: width 2s ease;
}


.tim {
    font-weight: bolder;
}

.ogi {
    margin-bottom: 5px;
}



/* DOTS ON ROUTE */
.stop {
    position: relative;
}

.dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: white;
    border: 2px solid #0b3d91;
    position: absolute;
    top: -18px;
    left: 50%;
    transform: translateX(-50%);
}

/* Final destination (Tokyo) */
.stop.active .dot {
    background: green;
    border-color: green;
}

.stops {
    display: flex;
    justify-content: space-between;
    margin-top: -10px;
}

.stop {
    text-align: center;
    font-size: 12px;
}

.stop img {
    width: 30px;
    display: block;
    margin: auto;
}


/* Completed stops turn green */
.stop.completed .dot {
    background: green;
    border-color: green;
}








/* DETAILS */
.section {
    background: white;
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 20px;
}

.person {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}

.person img {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    margin-right: 15px;
}

/* COST TABLE */
.cost-table {
    width: 100%;
    border-collapse: collapse;
}

.cost-table td {
    padding: 8px;
    border-bottom: 1px solid #ddd;
}

.total {
    font-weight: bold;
    font-size: 18px;
}

/* BUTTONS */
.actions {
    text-align: center;
    margin-top: 20px;
}

button {
    padding: 12px 20px;
    margin: 10px;
    border: none;
    border-radius: 6px;
    background: #0b3d91;
    color: white;
    cursor: pointer;
}

button:hover {
    background: #092f6b;
}

.contact {
    margin-top: 10px;
    font-size: 14px;
}



